Ensembles d’outils
Un ensemble d’outils est un groupe nommé d’outils liés. Les choix de groupes du profil/de la session et les limites d’accès imposées par la session parente déterminent l’inventaire admissible. La session sélectionne séparément les outils déclarés au modèle et ceux appelables par Codemode.
Valeurs intégrées par défaut
Les groupes intégrés visibles par défaut sont :
| Ensemble | Capacité habituelle |
|---|---|
artifact | Lister, inspecter, épingler et exporter les fichiers de session |
web | Rechercher et récupérer des pages publiques |
sessions | Rechercher les anciennes sessions du profil |
memory | Opérations mémoire du profil |
tasks, automation | Tâches, rappels et travail planifié |
clarify | Questions structurées lorsqu’une entrée manque |
file, terminal | Accès fichiers et exécution directe de commandes |
messaging | Opérations de messagerie tenant compte du canal |
skills | Gérer la bibliothèque du profil ; lecture via read/bash |
subagents | Délégation, arrière-plan et contrôles enfants |
tts | Réponses parlées si TTS est configuré |
Ce sont des groupes produit admissibles, sans promesse que chaque outil soit actif partout. Les noms portables actifs par défaut sont read, bash, edit et write ; les outils produit peuvent ajouter leurs propres entrées actives. L’installation peut contenir plus de groupes ; identifiants et disponibilité des services peuvent encore les limiter.
Inspecter le catalogue
Dashboard → Tools → Built-in montre source, ensemble, définition native et limites de chaque outil. Ouvrez une ligne pour la définition, le délai et les budgets de sortie. C’est un inventaire, pas les déclarations actives de la session. Les définitions restent en lecture seule. Codemode possède une page dédiée pour les valeurs du profil et une session explicitement sélectionnée ; ce n’est pas un éditeur général de réglages par outil.
Dashboard ne propose pas d’éditeur général pour activer/désactiver tous les ensembles par défaut. Les capacités facultatives compatibles mettent à jour leurs groupes produit. La configuration MCP en est indépendante.
Sélection des outils de session
Utilisez les options d’outils de conversation pour changer la sélection :
anyy --tools '+codemode,+tool_search'
anyy --resume SESSION_ID --tools '+codemode,+tool_search'
anyy chat --session SESSION_ID --tools 'read,bash' "Inspect the project"
Les nouvelles sessions partent des valeurs du profil et des options fournies. +name et -name changent ces valeurs, pas les outils actuellement actifs d’une session reprise. L’exemple --resume ci-dessus peut activer Codemode dans une session existante inactive sans entrée en attente ; une nouvelle session n’est pas requise. Sans remplacement, une session active conserve sa sélection. Pour changer uniquement Codemode en conservant les autres noms et règles, utilisez ses paramètres Dashboard au lieu de réappliquer la sélection CLI.
Les règles fournies par options restent sur la session active. Elles ne modifient pas config.yaml et ne persistent pas après redémarrage du Gateway. Les noms actifs précédemment enregistrés peuvent être restaurés depuis la branche sélectionnée selon les règles actuelles du profil. Refaites une association explicite à l’état inactif pour retrouver les mêmes inclusions, exclusions ou absence d’outils.
La sélection ne peut pas élargir le périmètre parent, acteur/session ou livraison. Une ancienne liste de schémas/noms constitue une preuve historique et ne sert plus de barrière supplémentaire contre les outils nouvellement enregistrés ou redéfinis.
Codemode et recherche d’outils
codemode exécute du JavaScript brut avec les outils appelables actuels. tool_search trouve les outils codemode/deferred inactifs et active les correspondances pour la requête suivante. Tous deux sont enregistrés inactifs ; une sélection explicite ou l’activation MCP applicable peut les activer. Ils sont indépendants : changer Codemode ne change ni recherche ni rôle de session.
Ouvrez Dashboard → Tools → Built-in → codemode pour enregistrer les valeurs du profil et le mode partagé on/only. L’enregistrement publie les paramètres pour la prochaine préparation sans redémarrage. Il ne resélectionne pas une session existante ; choisissez-la séparément et utilisez Apply to Session lorsqu’elle est inactive sans entrée en attente. Les paramètres Codemode expliquent les restrictions et la différence entre actions.
Vous pouvez aussi modifier config.yaml manuellement, par exemple :
default_tools:
- "+codemode"
- "+tool_search"
codemode:
mode: on
codemode.mode contrôle la présentation des outils d’une session où Codemode est déjà actif ; ce n’est pas un commutateur d’activation. on conserve les déclarations directes. only masque les déclarations directes appelables dans la requête, mais les outils restent accessibles par Codemode et leurs déclarations canoniques enregistrées. Aucune option CLI ni aucun réglage de rôle ne lui est propre.
Après modification manuelle, redémarrez le Gateway ou enregistrez explicitement via la page Codemode pour publier les valeurs. Le rechargement des fournisseurs ne publie pas les paramètres d’outils. La page distingue les valeurs enregistrées non encore appliquées. Un changement de mode partagé s’applique à la prochaine préparation ; un changement d’activation par défaut laisse la sélection existante intacte. Apply ne change que Codemode selon les règles actuelles ; une session restreinte peut encore refuser l’activation après l’activation par défaut du profil.
Exposition et groupes produit sont distincts :
| Exposition | Comportement de session |
|---|---|
direct | Appelable si actif ; normalement déclaré directement |
codemode, deferred | Appelable depuis l’inventaire enregistré sans déclaration directe |
model-only | Peut être déclaré mais pas appelé par script |
hidden | Ni déclaré ni appelable |
Les serveurs MCP activés fournissent leurs outils natifs selon exposure et les règles ordonnées toolExposure. Ils n’exigent ni ensemble produit mcp-NAME ni activation par liste d’inclusion. Les paramètres MCP applicables peuvent activer automatiquement Codemode ; une exclusion explicite prime toujours. Sans Codemode, une recherche d’outils active autorisée peut encore découvrir les outils MCP indirects. Consultez Serveurs MCP.
Le bac à sable se charge à la première exécution. Son délai inclut chargement et démarrage de VM. Le code compilé peut être réutilisé dans le processus Anyy, mais chaque exécution a sa propre VM JavaScript et ses variables globales. Un chargement échoué peut être réessayé par un appel ultérieur ; annuler un chargement n’annule pas celui d’un autre appel. Aucun Node.js installé n’est nécessaire.
Les valeurs enregistrées par un script réussi appartiennent à la branche sélectionnée et restent lisibles après réouverture de la base. Un script expiré conserve sortie partielle et erreur mais abandonne ses modifications de valeurs. Si la sortie est raccourcie, le chemin complet retourné reste lisible avec read, offset et limit. Les effets d’outils achevés ne sont pas annulés par un échec. Consultez Codemode pour API, limites et exemples, et Recherche d’outils pour les entrées de découverte.
Sessions et Skills
Une session peut porter une sélection explicite d’ensembles. Dans l’implémentation actuelle, un Skill actif peut demander des groupes supplémentaires lorsque la session utilise encore les valeurs du profil. Une sélection explicite du tour ou une session volontairement restreinte prime. Un enfant ne peut pas élargir l’accès permis par son parent.
Si un tour contient des pièces jointes, Anyy peut y ajouter le groupe artifact pour donner accès aux fichiers de ce périmètre.
Les outils activés s’exécutent directement. Identifiants, autorisations système, santé des services et périmètre de session déterminent la disponibilité de l’opération. Un ensemble organise le catalogue du modèle.
Dépannage
| Symptôme | Points à vérifier |
|---|---|
| Outil configuré invisible | Groupe admissible, exposition et sélection de session |
| Serveur MCP connecté mais outils absents | Activation/exposition et activité de Codemode ou de la recherche |
| Outil manquant chez un enfant | Catalogue de la session parente ou règles enfant ne l’autorisaient pas |
| Échec d’appel | Résultat, identifiants, autorisations système et état du service |