Aller au contenu
Aller au contenu

Référence / CLI

Page traduite automatiquement

Cette page a été traduite automatiquement, elle peut donc contenir des erreurs ou se lire un peu bizarrement. La version anglaise fait foi. Lire l'original en anglais.

verbatra studio

Lance Verbatra Studio, le tableau de bord local de traduction, pour voir l'état du projet et la file de relecture dans ton navigateur, sans dépense non validée.

Lance Verbatra Studio, un tableau de bord web local sur ton projet : un aperçu de la couverture, de la dernière exécution et de l'historique des exécutions avec son coût nouveau, l'état des traductions avec la liste des clés, la file de relecture, le glossaire et ta configuration résolue, en direct sur les fichiers du disque, y compris .verbatra-local/run-history.jsonl. Modifier les fichiers de locale et un glossaire stocké dans un fichier marche d'emblée ; seules les dépenses chez le fournisseur sont optionnelles, derrière --allow-spend.

Synopsis

verbatra studio [flags]

Exemples

# lance Verbatra Studio sur le port par défaut
verbatra studio

# active les actions qui appellent le fournisseur, sur un port précis
verbatra studio --allow-spend --port 6000

# laisse un agent de navigateur utiliser les actions de relecture
verbatra studio --expose-agent-tools

Options

OptionArgumentDéfautEffet
--port<n>5849écoute sur ce port ; doit être un entier entre 1 et 65535
--allow-spendaucundésactivé, ou VERBATRA_STUDIO_ALLOW_SPENDautorise Studio à appeler un fournisseur de traduction (retraduire une clé, traduire les changements en attente)
--expose-agent-toolsaucundésactivé, ou VERBATRA_STUDIO_AGENT_TOOLSenregistre les actions de relecture de Studio comme outils WebMCP pour qu'un agent IA du navigateur puisse les utiliser
--verboseaucundésactivéaffiche en plus une ligne stderr par requête, avec le jeton de session masqué

Accepte aussi les options globales --cwd et --config.

Comportement

L'URL affichée

Avant de démarrer, studio charge les fichiers d'environnement et résout ta config une fois ; une erreur de config sort avec 2 avant qu'un serveur ne démarre. Studio écoute uniquement sur 127.0.0.1 et, dès qu'il écoute, affiche une ligne sur stdout :

Verbatra Studio running at http://127.0.0.1:5849/?token=<token>

Ouvre exactement cette URL. Le jeton n'est accepté que comme ?token= au premier chargement de la page : le serveur le vérifie, pose un cookie de session HttpOnly et redirige vers /. Chaque requête suivante a besoin de ce cookie. Le jeton n'est pas à usage unique, traite donc l'URL comme un secret tant que Studio tourne. Rien n'est affiché avant que le port soit réservé, donc un démarrage raté ne divulgue jamais de jeton.

Un échec de réservation du port est signalé sur stderr sous la forme verbatra: error [<code>] <message> : PORT_IN_USE quand un autre processus tient le port (passe --port <n> ou arrête ce processus), ou BIND_FAILED quand le socket s'est ouvert sur une autre adresse que 127.0.0.1.

Chaque page se rafraîchit en direct quand un fichier de locale, le fichier de verrouillage, le fichier de provenance ou le fichier de limites change (Relire dans Studio décrit la notification), et Run history and cost se relit quand le fichier d'historique change, que l'onglet retrouve le focus ou qu'une exécution se termine.

Overview, Translations, Review, Glossary et Settings sont des liens dans l'en-tête, avec un tiroir de menu sous 1280px de large. La recherche de l'en-tête ouvre Translations filtré par ce que tu tapes, et le bouton de thème alterne entre système, clair et sombre. Translations et Review gardent leur état dans l'adresse, tu peux donc y faire un lien : #/translations?locale=de&status=missing&key=nav.title&q=text (status peut se répéter) et #/review?locale=de.

Ce qu'il affiche sur stderr

La ligne de l'URL est la seule sortie sur stdout. Ensuite, stderr indique quelles capacités sont actives et comment activer celles qui ne le sont pas :

Sortie
verbatra: spend tools off (pass --allow-spend to retranslate from Studio)
verbatra: agent tools off (pass --expose-agent-tools to register them)

Avec --allow-spend et le fournisseur none, la première ligne devient verbatra: spend tools off (provider none). Dans un terminal interactif, il ajoute verbatra: press Ctrl-C to stop et affiche verbatra: Studio stopped après l'arrêt. --verbose transmet une ligne par requête (comme GET / 200, ou POST /rpc status.check 200 qui nomme la méthode RPC, jamais ses paramètres) ; la ligne de démarrage propre à Studio est toujours écartée. --quiet ne garde que la ligne de l'URL. Une ligne verbatra: studio error: ..., affichée quand une action par lot du tableau de bord s'arrête sur une erreur serveur inattendue, apparaît toujours, même avec --quiet. Voir Sortie dans le terminal.

Dépenses et outils d'agent

Sans --allow-spend, Studio lit VERBATRA_STUDIO_ALLOW_SPEND ; --expose-agent-tools se rabat de la même façon sur VERBATRA_STUDIO_AGENT_TOOLS. Pour les deux, 1, true, yes ou on (sans tenir compte de la casse ni des espaces autour) vaut activé, et l'option l'emporte toujours sur la variable. Sans l'un ni l'autre, Studio ne contacte jamais de fournisseur. Studio charge d'abord les fichiers d'environnement, donc les deux variables peuvent se trouver dans .env.local ou .env.

Une dépense lancée par un agent exige les deux options ; aucune n'implique l'autre. Une config avec provider: { id: "none" } désactive la traduction automatique par politique : Studio retient alors les dépenses même avec --allow-spend, et la page Settings le signale. Voir Piloter Studio avec un agent de navigateur pour le catalogue d'outils et le modèle de sécurité.

Installation

@verbatra/studio est un paquet à part, chargé par un import dynamique pour que le reste de la CLI fonctionne sans lui. Installe-le à côté de la CLI avec npm install --save-dev @verbatra/cli @verbatra/studio. S'il manque, verbatra studio sort avec 2 et ce message :

Verbatra Studio requires @verbatra/studio. Install it alongside the CLI with: npm install --save-dev @verbatra/studio, or run both without installing with: npx -y -p @verbatra/cli -p @verbatra/studio verbatra studio

Avec pnpm, cette installation réussit mais sort avec 1 et ERR_PNPM_IGNORED_BUILDS, et laisse un pnpm-workspace.yaml sans réponse ; la correction, à faire une seule fois, est dans Dépannage. npm et yarn n'ont pas ce problème.

Codes de sortie

CodeSignification
0arrêté proprement par une seule interruption (Ctrl-C ou SIGTERM)
1l'arrêt a échoué : la fermeture du serveur a levé une erreur pendant l'arrêt
2démarrage impossible : une erreur de config, @verbatra/studio non installé, le port occupé ou un --port invalide (INVALID_PORT)
130arrêt forcé par une seconde interruption pendant l'arrêt

Voir Codes de sortie pour le contrat que suit chaque commande.

Voir aussi

Modifier sur GitHub

Sur cette page