Roo Code est un agent de programmation courant dans VS Code : plusieurs modes, un modèle assignable à chaque mode et des fournisseurs personnalisés compatibles OpenAI. Pour une équipe, le connecter à une passerelle unifiée permet de fixer le chemin d'accès, de centraliser la facturation et de contrôler les quotas par projet.

Un changement doit être précisé d'emblée : selon l'annonce du dépôt Roo Code, Roo Code Inc. a arrêté l'extension Roo Code le 15 mai 2026, le dépôt principal a été archivé le même jour et la dernière version est la v3.54.0. Le fork communautaire Zoo Code poursuit la maintenance et conserve l'essentiel des méthodes de configuration. Cet article traite principalement Zoo Code et signale les différences avec l'ancienne version Roo Code.

Remarque : Roo Code est une marque de Roo Code, Inc. ; Zoo Code est un projet fork communautaire ; VS Code est une marque de Microsoft Corporation ; OpenAI est une marque d'OpenAI, Inc. Cet article est purement technique et n'implique aucune affiliation ni coopération avec ces entités. L'état du projet, l'interface et les menus relèvent des annonces du dépôt et de la documentation de la version courante.

1. Vérifier si vous utilisez Roo Code ou Zoo Code

Les panneaux et la configuration des fournisseurs sont proches, mais l'état de maintenance diffère :

  • Roo Code : identifiant d'extension RooVeterinaryInc.roo-cline, dépôt principal archivé le 15 mai 2026, extension plus mise à jour. La version installée peut encore fonctionner, mais ne recevra plus de correctifs ni d'adaptation aux nouveaux modèles.
  • Zoo Code : fork de la communauté Roo Code, sous licence Apache-2.0, publié sur le VS Code Marketplace sous ZooCodeOrganization.zoo-code, documentation sur docs.zoocode.dev. Il conserve les modes Code, Architect, Ask, Debug, etc.
  • Le répertoire de réglages d'origine, .roomodes et .rooignore sont conservés ; la migration peut généralement les réutiliser, mais suivez la documentation de migration de Zoo Code.
  • Pour une configuration d'équipe, vérifiez d'abord que tous utilisent la même extension. Mélanger l'ancien Roo Code et Zoo Code peut produire des menus et réglages incohérents.

2. Préparer la clé, l'URL de base et le modèle

Trois éléments sont nécessaires : une clé API, une adresse compatible OpenAI et un identifiant de modèle exact.

  1. Ouvrez la page d'inscription ZSQH AI Gateway, créez un compte et connectez-vous à la console.
  2. Dans « Clés API », créez une clé dont le nom décrit l'usage, par exemple zoo-code-pc-travail.
  3. Définissez un plafond et une date d'expiration. Même pour un compte personnel, cela évite une consommation anormale.
  4. Copiez la clé et enregistrez-la dans un gestionnaire de mots de passe. La console ne l'affiche généralement qu'une fois en entier.
  5. Ouvrez la page tarifs des modèles et notez l'identifiant du modèle voulu. Prix et modèles évoluent : la page courante fait foi.

Les trois paramètres se présentent ainsi :

API Provider: OpenAI Compatible
Base URL:     https://ai.zhongshangqihang.com/v1
API Key:      sk-... (créée dans la console, conservée uniquement dans le gestionnaire de mots de passe)
Model:        identifiant affiché sur la page tarifs des modèles du site

L'URL de base est l'adresse compatible OpenAI, terminée par /v1. N'utilisez pas l'adresse racine d'Anthropic et n'ajoutez pas /chat/completions, sous peine de chemin dupliqué et de 404.

3. Installer l'extension dans VS Code

Zoo Code exige VS Code 1.84.0 ou supérieur. Étapes d'installation :

  1. Ouvrez VS Code et appuyez sur Cmd/Ctrl + Shift + X pour afficher les extensions.
  2. Recherchez Zoo Code, sélectionnez l'entrée dont l'éditeur est ZooCodeOrg et installez-la.
  3. Si vous utilisez encore l'ancien Roo Code, recherchez Roo Code, éditeur RooVeterinaryInc ; sachez qu'il n'est plus maintenu.
  4. Après installation, rechargez VS Code comme proposé. L'icône apparaît dans la barre d'activité ; cliquez pour ouvrir le panneau.
  5. Dans VSCodium, Windsurf ou un éditeur sans Marketplace, cherchez l'extension du même nom sur Open VSX, ou téléchargez le VSIX depuis les Releases et installez-le à la main.
  6. Si l'icône n'apparaît pas, redémarrez VS Code, vérifiez que l'extension est activée, puis consultez View → Output et le canal de sortie de l'extension.

4. Configurer le fournisseur OpenAI Compatible

Ouvrez le panneau de réglages de l'extension et choisissez OpenAI Compatible dans la liste API Provider. Cette option est destinée aux services compatibles sur une adresse non officielle OpenAI ; ce n'est pas la même entrée que le fournisseur OpenAI intégré.

Champs à renseigner et vérifier :

  • Base URL : https://ai.zhongshangqihang.com/v1, sans /chat/completions.
  • API Key : collez la clé créée dans la console, sans espace ni retour à la ligne.
  • Model : l'identifiant de modèle, pas le nom affiché ni une note.
  • Model Configuration : renseignez si besoin Context Window, Max Output Tokens, Image Support, Computer Use et les prix d'entrée/sortie. Les champs de prix n'affectent que l'estimation de coût dans l'interface, pas la facturation réelle ; en cas de doute, laissez vide.
  • Appel d'outils : le fournisseur OpenAI Compatible de Zoo Code et Roo Code ne prend en charge que l'appel d'outils natif OpenAI, sans repli XML. Le modèle choisi doit donc supporter le function calling compatible OpenAI ; sinon, le chat simple peut fonctionner mais l'agent échouera à lire ou écrire des fichiers.

Si la passerelle n'implémente qu'une partie du protocole d'outils, testez d'abord une conversation ordinaire, puis la lecture d'un petit fichier. Ne lancez pas immédiatement un refactoring multi-fichiers : il serait difficile d'isoler la cause.

5. Répartir modèles et modes

Roo Code et Zoo Code gèrent plusieurs modes et permettent d'assigner un modèle distinct à chacun, pour arbitrer entre coût et capacité :

Mode ou scénario Gamme conseillée Point de configuration
Code : modifications quotidiennes Modèle de code principal Appel d'outils obligatoire, fenêtre de contexte exacte
Architect : conception Modèle haut de gamme Contexte élargi possible, surveiller le coût
Ask : explications et questions Modèle léger et rapide Gamme économique suffisante sans outils
Debug : diagnostic Modèle principal ou puissant Sortie assez longue pour éviter les troncatures
Orchestrator : orchestration multi-tâches Modèle stable en appel d'outils Prévoir un modèle de secours

Prévoyez un modèle de secours pour chaque mode. Si le modèle principal est limité ou indisponible, basculer vers un modèle de même protocole et mêmes capacités d'outils est plus stable que de réessayer en boucle. Disponibilité et prix figurent sur la page tarifs des modèles.

6. Vérifier que la configuration est active

Une réponse dans le panneau ne suffit pas : elle peut venir d'un autre mode. Vérifiez dans cet ordre :

  1. Créez une nouvelle tâche pour éviter l'interférence de l'historique.
  2. Sélectionnez explicitement le modèle configuré, sans routage par défaut.
  3. Envoyez une requête courte, par exemple l'explication d'un code de moins de dix lignes.
  4. Consultez les journaux de la passerelle : même heure, même modèle, même clé.
  5. Demandez ensuite la lecture d'un petit fichier pour valider la chaîne d'appel d'outils.
  6. Si aucun journal n'apparaît, la requête n'atteint pas la passerelle : revenez à l'URL de base et au fournisseur.

Erreurs courantes :

  • Invalid API Key : clé erronée, désactivée, quota épuisé ou champ de fournisseur incorrect.
  • Model Not Found : identifiant mal orthographié, ou modèle non ouvert au compte.
  • Connection Errors : URL de base injoignable, ou problème de proxy, TLS ou pare-feu.
  • Erreur d'appel d'outils : modèle sans appel natif, ou passerelle ne couvrant qu'une partie du protocole.
  • Résultat inattendu : vérifiez d'abord le modèle lié au mode courant, puis le prompt et le contexte.

La documentation des deux projets s'appuie surtout sur les messages d'erreur et ne met pas en avant un bouton « Verify » distinct. La requête réelle reste la confirmation finale : un enregistrement réussi ne suffit pas à confirmer l'usage.

7. Permissions et approbation automatique

Un agent de programmation lit et écrit des fichiers et exécute des commandes : les permissions comptent plus que le choix du modèle. Le menu Auto-Approve se trouve près du champ de saisie, avec un interrupteur général Enabled et des catégories Read, Write, Execute, Browser, MCP, etc.

Point de départ sûr :

  • Activez d'abord uniquement Read et vérifiez que le périmètre correspond.
  • Laissez Write désactivé ; activez-le au besoin avec un délai d'écriture d'au moins 1 000 ms.
  • Pour Execute, utilisez liste d'autorisation et liste de refus ; n'ouvrez pas toutes les commandes avec *.
  • Désactivez la lecture/écriture hors espace de travail et l'édition des fichiers protégés.
  • Sur un dépôt de production, un répertoire contenant des secrets ou des données clients, n'activez pas l'approbation automatique.
  • L'approbation automatique saute les confirmations et peut causer perte de données ou corruption ; l'exécution de commandes est particulièrement risquée.

Les exemples de configuration de commandes de la documentation Roo Code utilisent le préfixe roo-cline. :

{
  "roo-cline.allowedCommands": ["git status", "npm run", "python -m pytest"],
  "roo-cline.deniedCommands": ["git push", "npm publish", "rm", "sudo"]
}

Zoo Code conserve les habitudes de réglage, mais les noms de clés et l'emplacement des menus peuvent changer ; référez-vous à la page de réglages. La liste d'autorisation fonctionne par préfixe, les règles de refus sont prioritaires ; une commande à substitution dangereuse est bloquée même si son préfixe correspond.

8. Liste de sécurité

  • Une clé par usage, sans réutilisation entre appareils ou projets.
  • Plafond et expiration définis, rotation régulière ; en cas de suspicion de fuite, désactiver puis enquêter.
  • Ne jamais écrire la clé dans le code, .env, .vscode/settings.json ou un commit.
  • Exclure via .rooignore les .env, identifiants, artefacts de build et journaux, pour réduire les lectures.
  • Ne pas activer l'approbation automatique dans un dépôt non fiable ; confirmer d'abord la confiance dans l'espace de travail.
  • Relire les modifications et commandes de l'agent ; commiter ou créer un point de contrôle avant une opération importante.
  • Faire passer l'équipe par la passerelle, avec une clé par personne et des journaux de requêtes pour l'audit et la récupération après départ.
  • Savoir que code et prompts quittent la machine ; les équipes avec exigences de conservation doivent évaluer au préalable.

9. Questions fréquentes

Roo Code fonctionne-t-il encore ?

Selon l'annonce du dépôt, l'extension Roo Code a été arrêtée le 15 mai 2026 et le dépôt principal archivé. La version installée peut encore tourner, mais sans correctifs ni adaptation aux nouveaux modèles. Pour un nouveau projet, utilisez directement le fork communautaire Zoo Code.

Les étapes de configuration sont-elles les mêmes pour Roo Code et Zoo Code ?

Dans l'ensemble oui : choisir OpenAI Compatible, renseigner URL de base, clé et modèle. Certains noms de menus et clés de réglage diffèrent ; référez-vous à la page de réglages courante et à docs.zoocode.dev.

L'URL de base doit-elle être la racine ou /v1 ?

En protocole compatible OpenAI, renseignez /v1, par exemple https://ai.zhongshangqihang.com/v1. N'ajoutez pas /chat/completions, qui dupliquerait le chemin.

Que faire en cas d'Invalid API Key ou de Model Not Found ?

Vérifiez que la clé est saisie dans le formulaire OpenAI Compatible et que l'URL de base correspond à l'environnement de la clé ; testez l'authentification via /v1/models. Un Model Not Found vient le plus souvent d'un identifiant mal orthographié ou non ouvert.

Pourquoi l'appel d'outils échoue-t-il ?

Le fournisseur OpenAI Compatible ne prend en charge que l'appel natif, sans repli XML. Le modèle ou la passerelle doit supporter le function calling compatible OpenAI ; sinon le chat fonctionne mais la lecture/écriture de fichiers échoue. Essayez un modèle compatible avec les outils.

Prochaines étapes

Commencez par créer un compte ZSQH AI Gateway, générez une clé dédiée à Zoo Code et renseignez l'URL de base et le modèle comme ci-dessus. Après validation d'une conversation ordinaire et de la lecture d'un petit fichier, ajustez les modèles principaux et les quotas de chaque mode selon la page tarifs des modèles.

Lectures associées :

Remarque : Roo Code est une marque de Roo Code, Inc. ; Zoo Code est un projet fork communautaire ; VS Code est une marque de Microsoft Corporation ; OpenAI est une marque d'OpenAI, Inc. Cet article est purement technique et n'implique aucune affiliation ni coopération avec ces entités. L'état du projet, l'interface et le comportement des interfaces peuvent évoluer ; référez-vous aux annonces du dépôt et à la documentation du projet.