Retour aux podcastsClaude
Claude Code subagents
Concevoir des sous-agents efficaces
Now that you know how to create sub aents, let's look at patterns that lead to effective sub aents.
Maintenant que vous savez comment créer des sous-agents, examinons les modèles qui mènent à des sous-agents efficaces.
First, let's get a better idea of how subit data in the sub aent config file is used.
Commençons par mieux comprendre comment les données du fichier de configuration du sous-agent sont utilisées.
Whenever you send a message to the main context window agent, the name and description of each sub aent is included in the system prompt.
Chaque fois que vous envoyez un message à l'agent principal de fenêtre de contexte, le nom et la description de chaque sous-agent sont inclus dans le system prompt.
So, if you want to better control when the main agent launches a sub agent automatically, you should modify the name and description.
Pour mieux contrôler quand l'agent principal lance automatiquement un sous-agent, vous devez modifier le nom et la description.
Next, remember that when a sub agent is launched, the main agent writes an input prompt.
Ensuite, rappelez-vous que lorsqu'un sous-agent est lancé, l'agent principal rédige un prompt d'entrée.
When writing this input prompt, it uses the description as guidance.
Pour rédiger ce prompt d'entrée, il utilise la description comme guide.
So, if you want to better control when the main agent launches a sub agent automatically, you should modify the name and description.
Pour mieux contrôler quand l'agent principal lance automatiquement un sous-agent, vous devez modifier le nom et la description.
Let's consider our review sub aent again.
Reprenons notre sous-agent de révision.
Right now, when the main agent runs this sub agent, the sub aent is given an input prompt telling it to use get diff to find the current changes.
Actuellement, quand l'agent principal exécute ce sous-agent, celui-ci reçoit un prompt d'entrée lui indiquant d'utiliser get diff pour trouver les changements en cours.
If we wanted the main agent to more reliably tell the sub agent exactly which files to review, we would update the description.
Si nous voulions que l'agent principal indique plus fiablement au sous-agent exactement quels fichiers réviser, nous mettrions à jour la description.
You must tell the agent precisely which files you want it to review.
Vous devez indiquer à l'agent précisément quels fichiers vous souhaitez qu'il révise.
Now, if we ask claw to run the code reviewer agent, we'll see a different input.
Maintenant, si nous demandons à Claude d'exécuter l'agent de révision de code, nous verrons une entrée différente.
You can also influence what the main thread tells a sub agent through the description.
Vous pouvez aussi influencer ce que le fil principal communique à un sous-agent via la description.
So adding return sources that can be cited to a web search sub aents description causes the main thread to include that instruction when delegating the task.
Ainsi, ajouter « retourner des sources citables » à la description d'un sous-agent de recherche web amène le fil principal à inclure cette instruction lors de la délégation de la tâche.
The most important improvement that you can make is defining an output format in the system prompt.
L'amélioration la plus importante que vous puissiez apporter est de définir un format de sortie dans le system prompt.
This creates natural stopping points for the sub aent.
Cela crée des points d'arrêt naturels pour le sous-agent.
Without a defined output format, sub aents struggle to decide when enough research has been done and they tend to run much much longer than sub agents that are given an output format.
Sans format de sortie défini, les sous-agents peinent à décider quand la recherche est suffisante et ont tendance à s'exécuter bien plus longtemps que ceux auxquels on a fourni un format de sortie.
When a sub agent discovers a workaround to some issue like solving a dependency issue or finding that a certain command needs particular flags, these details should appear in the summary.
Quand un sous-agent découvre une solution de contournement à un problème, comme résoudre une dépendance ou trouver qu'une commande nécessite des options particulières, ces détails doivent apparaître dans le résumé.
Otherwise, the main thread has to rediscover the same solutions, obstacles encountered, any setup issues, workarounds discovered or environment quirks, commands that needed special flags or configuration, dependencies or imports that cause problems.
Sinon, le fil principal doit redécouvrir les mêmes solutions : obstacles rencontrés, problèmes de configuration, solutions de contournement trouvées, particularités de l'environnement, commandes nécessitant des options spéciales, dépendances ou imports posant problème.
Explicitly asking for obstacle reporting in the output format surfaces this information.
Demander explicitement un rapport des obstacles dans le format de sortie fait remonter ces informations.
A readonly sub aent using just glob grap read cannot accidentally modify files.
Un sous-agent en lecture seule utilisant uniquement glob, grep et read ne peut pas accidentellement modifier des fichiers.
This constraint clarifies that the sub aents role and prevents unintended side effects.
Cette contrainte clarifie le rôle du sous-agent et prévient les effets de bord non souhaités.
So think about what sub aents actually needs to do.
Réfléchissez donc à ce que les sous-agents doivent réellement faire.
If it's just researching it only needs to read files.
S'il ne fait que de la recherche, il n'a besoin que de lire des fichiers.
So keep it read only.
Gardez-le donc en lecture seule.
That way it can't accidentally modify anything while exploring.
Ainsi, il ne peut pas accidentellement modifier quoi que ce soit lors de l'exploration.
A reviewer needs to run get diff to see what changed.
Un agent de révision doit exécuter get diff pour voir ce qui a changé.
So give it bash access, but it still doesn't need to edit files.
Donnez-lui donc un accès bash, mais il n'a toujours pas besoin de modifier des fichiers.
Only give edit and write to sub aents that should actually change your code, like a styling agent applying CSS updates.
Ne donnez edit et write qu'aux sous-agents qui doivent réellement modifier votre code, comme un agent de style appliquant des mises à jour CSS.
This also helps clarify what each sub aent is for when you have several of them.
Cela aide aussi à clarifier le rôle de chaque sous-agent quand vous en avez plusieurs.
So effective sub aents use structured output report obstacles have specific descriptions and limit tool access.
Ainsi, les sous-agents efficaces utilisent des sorties structurées, signalent les obstacles, ont des descriptions précises et limitent l'accès aux outils.