agents.
Aperçu
Les sous-agents peuvent être définis de deux façons lors de l’utilisation du SDK :- Par programmation - En utilisant le paramètre
agentsdans vos optionsquery()(recommandé pour les applications SDK) - Basé sur le système de fichiers - En plaçant des fichiers markdown avec frontmatter YAML dans des répertoires désignés (
.claude/agents/)
agents, qui fournit une expérience de développement plus intégrée pour les applications SDK.
Avantages de l’utilisation des sous-agents
Gestion du contexte
Les sous-agents maintiennent un contexte séparé de l’agent principal, empêchant la surcharge d’informations et gardant les interactions focalisées. Cette isolation garantit que les tâches spécialisées ne polluent pas le contexte de conversation principal avec des détails non pertinents. Exemple : Un sous-agentresearch-assistant peut explorer des dizaines de fichiers et de pages de documentation sans encombrer la conversation principale avec tous les résultats de recherche intermédiaires - ne retournant que les découvertes pertinentes.
Parallélisation
Plusieurs sous-agents peuvent fonctionner simultanément, accélérant considérablement les flux de travail complexes. Exemple : Lors d’une revue de code, vous pouvez exécuter les sous-agentsstyle-checker, security-scanner, et test-coverage simultanément, réduisant le temps de revue de minutes à secondes.
Instructions et connaissances spécialisées
Chaque sous-agent peut avoir des invites système personnalisées avec une expertise spécifique, des meilleures pratiques et des contraintes. Exemple : Un sous-agentdatabase-migration peut avoir des connaissances détaillées sur les meilleures pratiques SQL, les stratégies de rollback et les vérifications d’intégrité des données qui seraient du bruit inutile dans les instructions de l’agent principal.
Restrictions d’outils
Les sous-agents peuvent être limités à des outils spécifiques, réduisant le risque d’actions non intentionnelles. Exemple : Un sous-agentdoc-reviewer pourrait n’avoir accès qu’aux outils Read et Grep, garantissant qu’il peut analyser mais ne jamais modifier accidentellement vos fichiers de documentation.
Création de sous-agents
Définition programmatique (Recommandée)
Définissez les sous-agents directement dans votre code en utilisant le paramètreagents :
Configuration AgentDefinition
| Champ | Type | Requis | Description |
|---|---|---|---|
description | string | Oui | Description en langage naturel de quand utiliser cet agent |
prompt | string | Oui | L’invite système de l’agent définissant son rôle et comportement |
tools | string[] | Non | Tableau des noms d’outils autorisés. Si omis, hérite de tous les outils |
model | 'sonnet' | 'opus' | 'haiku' | 'inherit' | Non | Remplacement de modèle pour cet agent. Par défaut au modèle principal si omis |
Définition basée sur le système de fichiers (Alternative)
Vous pouvez également définir les sous-agents comme des fichiers markdown dans des répertoires spécifiques :- Niveau projet :
.claude/agents/*.md- Disponible uniquement dans le projet actuel - Niveau utilisateur :
~/.claude/agents/*.md- Disponible dans tous les projets
agents) ont la priorité sur les agents basés sur le système de fichiers avec le même nom.
Comment le SDK utilise les sous-agents
Lors de l’utilisation du SDK Claude Agent, les sous-agents peuvent être définis par programmation ou chargés depuis le système de fichiers. Claude va :- Charger les agents programmatiques depuis le paramètre
agentsdans vos options - Auto-détecter les agents du système de fichiers depuis les répertoires
.claude/agents/(si non remplacés) - Les invoquer automatiquement basé sur la correspondance des tâches et la
descriptionde l’agent - Utiliser leurs invites spécialisées et restrictions d’outils
- Maintenir un contexte séparé pour chaque invocation de sous-agent
agents) ont la priorité sur les agents basés sur le système de fichiers avec le même nom.
Exemples de sous-agents
Pour des exemples complets de sous-agents incluant des réviseurs de code, des exécuteurs de tests, des débogueurs et des auditeurs de sécurité, voir le guide principal des Sous-agents. Le guide inclut des configurations détaillées et des meilleures pratiques pour créer des sous-agents efficaces.Modèles d’intégration SDK
Invocation automatique
Le SDK invoquera automatiquement les sous-agents appropriés basés sur le contexte de la tâche. Assurez-vous que le champdescription de votre agent indique clairement quand il devrait être utilisé :
Invocation explicite
Les utilisateurs peuvent demander des sous-agents spécifiques dans leurs invites :Configuration d’agent dynamique
Vous pouvez configurer dynamiquement les agents basés sur les besoins de votre application :Restrictions d’outils
Les sous-agents peuvent avoir un accès restreint aux outils via le champtools :
- Omettre le champ - L’agent hérite de tous les outils disponibles (par défaut)
- Spécifier les outils - L’agent ne peut utiliser que les outils listés
Combinaisons d’outils communes
Agents en lecture seule (analyse, revue) :Documentation connexe
- Guide principal des Sous-agents - Documentation complète des sous-agents
- Aperçu du SDK - Aperçu du SDK Claude Agent
- Paramètres - Référence du fichier de configuration
- Commandes Slash - Création de commandes personnalisées