Docs / Guides
Page traduite automatiquement
Piloter Studio avec un agent de navigateur
Enregistre les actions de relecture de Verbatra Studio comme outils WebMCP pour qu'un agent IA de navigateur travaille dans ton tableau de bord ouvert.
Sers-t'en pour qu'un agent IA de navigateur, comme Gemini ou Claude dans Chrome, vérifie la dérive, traite la file de relecture et corrige des entrées dans l'onglet Studio que tu as ouvert. Ce n'est pas fait pour configurer un projet ni pour l'accès à distance.
Il te faut :
- Studio lancé sur ton projet (Réviser dans Studio) ;
- Chrome 149 ou plus récent avec
chrome://flags/#enable-webmcp-testingactivé, ou un navigateur qui prend WebMCP en charge nativement, dans une fenêtre normale et non headless.
Expérimental
WebMCP est une nouvelle capacité du navigateur derrière un flag, et sa surface peut encore changer.
Activer les outils
verbatra studio --expose-agent-toolsVERBATRA_ fait la même chose ; Dépenses et outils d'agent explique comment le flag et la variable sont résolus. Ouvre l'URL affichée dans le navigateur WebMCP, et l'agent de cet onglet trouve les outils. Dans un navigateur sans WebMCP, Studio n'enregistre rien et le tableau de bord ne change pas.
Pour que l'agent puisse appeler ton fournisseur, lance aussi Studio avec --allow-spend.
L'agent lit chaque valeur sans masquage, comme la page l'affiche, car un agent dans l'onglet peut de toute façon lire la page. Les exceptions sont les outils de glossaire et verbatra_ : leurs valeurs passent par un masquage des secrets, donc une valeur qui ressemble à une clé d'API revient sous forme de marqueur. Pour cacher les valeurs à un agent, utilise plutôt le serveur MCP avec --redact-values ; pour un projet sous NDA, voir Studio et MCP.
Savoir ce que l'agent peut appeler
Chaque outil est une action Studio avec le préfixe verbatra_. Les outils de lecture sont marqués en lecture seule, les outils d'écriture ne modifient que tes fichiers locaux, et les outils payants ne s'enregistrent qu'avec --allow-spend.
Outils de lecture
| Outil | Ce qu'il fait |
|---|---|
verbatra_ | la config chargée, les capacités et, sous capabilities.limits, les limites de débit de retranslate, reviewDecision et des deux méthodes de remplacement de valeurs |
verbatra_ | la couverture par locale |
verbatra_ | les clés manquantes, modifiées et orphelines par locale |
verbatra_ | le glossaire résolu, secrets masqués |
verbatra_ | l'état du fichier de verrouillage par locale |
verbatra_ | les commits récents sur les fichiers de locale, avec le nom de l'auteur (jamais l'e-mail) |
verbatra_ | les commits d'une clé dans une locale, avec différences par mot, clés masquées nouveau |
verbatra_ | les contrôles de placeholders, de balisage et d'ICU d'une clé, dans les locales où sa source a changé |
verbatra_ | chaque valeur écrite par une machine que personne n'a approuvée, d'après les fichiers versionnés |
verbatra_ | la source et la cible d'une clé, avec qui a écrit la cible |
verbatra_ | la description, les termes du glossaire et le maxLength d'une clé, et le contrôle d'un draft optionnel |
verbatra_ | les valeurs des clés par locale cible, 200 par page par défaut, restreintes par locales, keys ou query |
verbatra_ | chaque traduction qui échoue aux contrôles d'intégrité |
verbatra_ | ce qu'un appel translate-pending enverrait et coûterait, sans appeler de fournisseur |
verbatra_ | la consommation de tokens et le budget de la dernière exécution |
verbatra_ | les exécutions enregistrées, la plus récente d'abord, avec tokens, coût et couverture, en chiffres seulement nouveau |
Outils d'écriture
| Outil | Ce qu'il fait |
|---|---|
verbatra_ | modifie un terme d'un glossaire stocké dans un fichier |
verbatra_ | enregistre l'approbation d'une valeur par une personne nommée |
verbatra_ | enregistre le rejet d'une personne nommée et retire la valeur |
verbatra_ | écrit une valeur via le contrôle d'intégrité |
Outils payants
| Outil | Ce qu'il fait |
|---|---|
verbatra_ | retraduit une clé dans une locale |
verbatra_ | traduit tout ce qui est en attente, éventuellement pour certaines locales et sous un plafond maxTokens |
verbatra_ ne renvoie que les locales où la source de la clé a changé, donc une liste vide signifie qu'il n'y avait rien à vérifier. Ses lignes sont plus plates que celles de key.integrity dans le serveur MCP. Seul le serveur MCP a project.doctor et report.provenance. verbatra_ pagine comme son locale.values, avec les mêmes limit et cursor (Autres entrées et résultats).
Connaître les règles des outils
Chaque appel passe par le RPC loopback authentifié du tableau de bord, avec la même validation des entrées et le même contrôle d'intégrité : une valeur qui échoue à un contrôle est rejetée, pas écrite.
Règles par appel
- Provenance : une modification de l'agent est enregistrée avec l'origine
agentet reste dans la file de relecture ; une modification depuis le tableau de bord esthuman. Les outils de lecture indiquent qui a écrit chaque valeur (Le fichier de verrouillage). - Travail humain : retraduire refuse la valeur d'une personne avec
KEY_(sauf avecPROTECTED humanEdits: "overwrite") et une clé épinglée avecKEY_, et modifier refuse une clé épinglée (Garder les traductions humaines).PINNED - Décisions de relecture : approuver et rejeter ne font que transmettre ta décision. Les deux exigent
reviewer, le nom de la personne, etexpectedValue, le texte relu ; une valeur modifiée est refusée avecREVIEW_.VALUE_ CHANGED - Pas d'outils groupés : Approve selected, Reject selected, Retranslate selected, Approve all in et Search and replace sont réservés aux personnes.
- Estimer d'abord : une locale inconnue est refusée avec
UNKNOWN_avant toute dépense, et c'est le plus bas desLOCALE maxTokensde l'appel et de la config qui s'applique (Estimer le coût avant une exécution). - Limites de débit : par minute glissante, 20 retraductions, 20 modifications, 20 écritures de glossaire, 60 décisions de relecture et 5 appels translate-pending, un à la fois.
Lire un appel échoué
Chaque outil renvoie l'enveloppe du tableau de bord, donc un échec se lit { "ok": false, "error": { "code": ..., "message": ... } }. En plus des codes du SDK, la couche RPC ajoute :
| Code | Signification |
|---|---|
REQUEST_ | la requête ou la réponse n'était pas une enveloppe lisible |
METHOD_ | la méthode n'existe pas dans cette version de Studio |
SPEND_ | une méthode payante alors que la dépense est coupée : Studio tourne sans --allow-spend, ou le fournisseur est none ; le message dit lequel |
PARAMS_ | un paramètre a échoué à la validation ; issues nomme chaque champ |
METHOD_ | limite de débit dépassée ; retryAfterSeconds dit quand l'appel passera |
BATCH_ | un lot dépasse toute une fenêtre de limite ; envoie moins d'entrées |
ALREADY_ | un second appel pour une entrée encore en cours (HTTP 409) |
SESSION_ | Studio a redémarré avec un nouveau token ; ouvre l'URL qu'il a affichée |
INTERNAL | un handler a échoué avec une erreur inattendue (HTTP 500) ; le message est générique |
Réparer les outils dégradés
Si le navigateur rejette un enregistrement, chaque vue affiche un avertissement comme :
Agent tools degraded: 2 of the agent tool registrations failed with SecurityError. The dashboard itself is unaffected. The browser console lists every failing tool.
La console contient une ligne qui nomme chaque échec :
Verbatra agent tools: 2 of 20 tool registrations failed. verbatra_status_diff (SecurityError: ...); verbatra_key_value (SecurityError: ...)Lis d'abord le nom de l'erreur, puis recharge l'onglet, ce qui relance l'enregistrement. Un flag manquant ou un navigateur sans WebMCP n'affiche jamais cet avis ; rien n'est enregistré, en silence. Une session sans --allow-spend tente deux enregistrements de moins, et ce n'est pas un échec.
Mesurer le risque de dépense
Les outils n'ajoutent aucune exposition réseau : Studio n'écoute toujours que sur 127.0.0.1, chaque requête porte le token de session, et les outils qui renvoient du texte du projet le marquent comme non fiable, pour que l'agent le traite comme des données.
Avertissement
Avec --allow-spend et --expose-agent-tools ensemble, un agent peut dépenser chez ton fournisseur sans confirmation par appel, jusqu'aux limites de débit. Studio ne distingue pas l'appel d'un agent de ton clic, il n'ajoute donc aucune boîte de validation. Pour lire et modifier seulement, laisse --allow-spend désactivé.
Voir aussi
- Réviser dans Studio : le même déroulé, à la main.
verbatra studio: chaque flag et le contrat de démarrage.- Connecter un client MCP : le plugin apporte la skill
verbatra-studio-agent-tools, mais c'est toi qui lances Studio.