Cette page est traduite de la documentation anglaise. Les commandes, identifiants et exemples sont inchangés. Runtime 7.24.4 · SDK 2.6.7. Source anglaise
Catalogue des skills et plugins
Statut : Actif Portée : public, état actuel Dernière revue : 2026-08-12 Responsable : runtime AX Code
Registre découvrable des skills intégrés et de la façon d’ajouter des skills de projet.
Le menu par défaut / est un plan de contrôle (/plan, /review, /debug, /status, /model). Les skills intégrés plus anciens restent réservés à l’agent (outil skill). Le paquet de fiabilité du moteur est aussi listé comme commandes slash.
Skills intégrés (livrés sous packages/ax-code/skills/)
| Skill | Rôle | Commande |
|---|---|---|
debug-n-fix |
Déboguer puis corriger avec vérification | Utiliser /debug |
debug-only |
Investigation sans modification de code | Réservé à l’agent |
improve-overall |
Améliorations de qualité larges | Réservé à l’agent |
improve-security |
Améliorations centrées sur la sécurité | Réservé à l’agent |
mcp |
Conseils de configuration MCP | Utiliser /mcp |
run |
Lancer et observer l’application | Réservé à l’agent |
simplify |
Resserrer le code récemment modifié | Réservé à l’agent |
verify |
Rapport de vérification d’exécution | Réservé à l’agent |
verified-change |
Modifier seulement après un signal d’échec, puis relancer le même contrôle | /verified-change |
safe-db-migration |
Changements de schéma d’expansion, de remplissage ou de contraction, avec notes de retour arrière | /safe-db-migration |
api-contract |
Évolution d’API publique ou de schéma, d’abord additive | /api-contract |
incident-observability |
Diagnostic d’incident d’abord par les preuves, avant un correctif | /incident-observability |
auth-boundaries |
Authentification et autorisation, isolation des locataires, tests négatifs | /auth-boundaries |
queue-worker |
Changements idempotents de file ou de travailleur, et livraison en double | /queue-worker |
ruby-on-rails |
Conventions Rails sans démarrer le processus Rails | Réservé à l’agent |
Les skills utilisent SKILL.md avec un frontmatter YAML (name, description, paths facultatif, allowed-tools).
Skills de projet
Placez les skills sous l’un de ces emplacements :
.ax-code/skill/<name>/SKILL.mdou.ax-code/skills/<name>/SKILL.md.agents/skills/<name>/SKILL.md(compatibilité Agents / Codex).claude/skills/<name>/SKILL.md(compatibilité Claude Code).opencode/skills/<name>/SKILL.md
Lister et valider :
ax-code # TUI skill dialog
# or use the skill tool from a session
Contrôles d'invocation
AX Code lit ces contrôles facultatifs lors de la découverte d’un skill :
| Emplacement | Champ | Effet |
|---|---|---|
frontmatter SKILL.md |
disable-model-invocation: true |
Conserve la commande explicite /skill-name, mais exclut le skill de la découverte par le modèle et des chargements directs par l’outil du modèle. |
frontmatter SKILL.md |
user-invocable: false |
Omet le skill des commandes slash ; l’invocation par le modèle reste disponible sauf désactivation séparée. |
agents/openai.yaml voisin |
policy.allow_implicit_invocation: false |
Exige une invocation slash explicite, y compris pour les skills importés via .agents/skills. |
Utilisez les booléens YAML true et false. Les contrôles absents conservent les valeurs par défaut. Si plusieurs sources divergent, une déclaration restrictive l’emporte. Des types de contrôle invalides ou une politique sidecar mal formée désactivent les deux modes d’invocation et produisent des diagnostics d’invocation dans l’inventaire des skills et les journaux d’exécution. Corrigez les métadonnées avant d’utiliser le skill. Le sidecar facultatif doit faire moins de 64 KiB ; les délimiteurs de document YAML et les alias n’y sont pas pris en charge.
Ces contrôles régissent l’invocation des skills, indépendamment des permissions d’agent existantes. Une mention en langage naturel d’un skill réservé au manuel n’autorise pas le modèle à le charger ; invoquez sa commande slash. Les allowed-tools déclarés restent des instructions de flux de travail et n’accordent pas de permissions.
Découverte bornée
Le modèle reçoit d’abord des résumés de skills, pas les instructions complètes. Chaque bloc de métadonnées de skill dans l’invite système et la description d’outil a un budget de 8,000 caractères. Les descriptions sont raccourcies avant que des entrées soient omises ; les recommandations appariées aux fichiers ont la priorité lorsque la liste dépasse encore ce budget. Un avis d’omission explique comment récupérer d’autres résumés. C’est une limite de caractères, pas un compte de jetons ni une garantie de performance.
L’outil skill a deux modes mutuellement exclusifs :
{"name":"api-contract"}charge un skill à travers le contrôle de permission existant.{"query":"database"}cherche les noms et descriptions éligibles sans charger les corps des skills.{"query":"","offset":20}poursuit une liste en utilisant lenextOffsetexact du résultat précédent.
La recherche est littérale et insensible à la casse. Les requêtes vides listent les skills éligibles. Suivez nextOffset jusqu’à son absence. Les skills réservés au manuel et ceux dont la permission est refusée sont exclus de la découverte par le modèle. Les entrées de métadonnées individuelles trop grandes sont ignorées avec un avis. Les noms et la préséance des sources restent inchangés.
Plugins
Configurez les plugins dans ax-code.json :
{
"plugin": ["file:///absolute/path/to/plugin.js"]
}
Les plugins mettent en œuvre des hooks @ax-code/plugin (tool.execute.before, tool.execute.after, shell.env, authentification, etc.).
Durée de vie des rappels
Les fabriques de plugins reçoivent un lifecycle facultatif dans leur entrée. lifecycle.signal s’abandonne lorsque l’instance est détruite ou que le plugin est retiré. Enregistrez les minuteurs, les observateurs et les abonnements avec lifecycle.onDispose(cleanup). La fonction renvoyée désenregistre ce nettoyage. Les enregistrements s’exécutent au plus une fois ; enregistrer après la destruction lance le nettoyage immédiatement. Les rappels de nettoyage démarrent dans l’ordre inverse d’enregistrement, chacun avec un budget d’une seconde, et peuvent se terminer en concurrence.
Les hooks de transformation reçoivent un troisième argument facultatif, { signal } ; les hooks de configuration et d’événement le reçoivent comme deuxième argument. Ce signal annule le travail pendant que le rappel est en attente ; utilisez lifecycle.signal pour le travail possédé par le plugin au-delà d’un seul rappel. Passez les signaux aux opérations annulables. Les rappels d’initialisation, de configuration, d’événement et de transformation ont une échéance de 15 secondes. Un dépassement retire le plugin pour cette instance et abandonne sa durée de vie. Les fabriques existantes et les hooks de transformation à deux arguments continuent de fonctionner. L’exécution d’outils personnalisés et l’authentification interactive conservent leurs contrats d’exécution existants.
Les entrées de transformation sont des observations en lecture seule de données simples. Mutez le brouillon de sortie et attendez tous les changements avant de retourner. Les mutations de sortie réussies deviennent visibles dans l’ordre d’enregistrement ; les changements échoués ou tardifs sont écartés. Les changements de charge d’événement ne sont jamais publiés. Un refus de permission reste un refus, et les hooks de permission échoués ou retirés exigent une demande, sauf si un refus existe déjà.
Les tableaux et les objets simples sont détachés de l’état d’exécution. Les schémas, les fonctions et les instances de classe conservent leur identité et doivent être traités comme étant en lecture seule. Les plugins restent du JavaScript de confiance qui s’exécute dans le processus du runtime : l’annulation est coopérative et ne peut ni arrêter des boucles infinies synchrones ni défaire des effets externes.
Paquets de hooks
Voir Hooks pour les cinq paquets officiels du cycle de vie (format-after-edit, block-force-push, require-tests-on-stop, protect-env-files, log-bash-commands).
Harnais d'évaluation
Exécutez la suite de porte du runtime agentique et la suite de politique d’ensemble multi-mode :
cd packages/ax-code
pnpm exec vitest run test/harness/agentic-runtime-eval.test.ts
pnpm exec vitest run test/harness/multi-mode-ensemble-eval.test.ts
Voir aussi Modes d’exécution pour local, cloud, hybride, conseil et arène.