Ce que c'est et pourquoi ça compte
Un subagent est un assistant que Claude lance pour une tâche précise. Il a son propre contexte : il ouvre des fichiers, cherche, lit, et à la fin vous ne recevez que le résumé. Tout ce qu'il a lu pour y arriver reste chez lui et ne finit pas dans votre conversation.
Pourquoi ça compte : la conversation principale a une place limitée. Si Claude ouvre cinquante fichiers pour comprendre où se trouve la connexion, tout ce texte remplit la conversation et, au bout d'un moment, Claude a plus de mal à suivre le fil. Avec un subagent, c'est l'assistant qui cherche, et vous recevez une réponse de quelques lignes.
« Petit » veut dire ici qu'il fait une seule tâche, pas qu'il est moins capable : un subagent utilise en général le même modèle que la conversation principale. Dans les sessions normales, il travaille généralement en arrière-plan, et pendant ce temps vous continuez à parler avec Claude.
Claude Code en a déjà quelques-uns tout prêts. Celui que j'utilise le plus, c'est Explore : il sert à chercher et à comprendre le code, et il est en lecture seule, c'est-à-dire qu'il ne peut ni écrire ni modifier de fichiers. Ensuite, il y a ceux que vous créez vous-même, on les voit plus bas.
1. Chercher sans remplir la conversation
C'est le cas le plus simple. Je dois comprendre où se trouve quelque chose dans le projet, et je n'ai pas besoin de voir tous les fichiers que Claude ouvre pour le trouver.
Utilise un subagent Explore pour trouver où la connexion est gérée. Donne-moi seulement les fichiers et les lignes.
La deuxième phrase compte autant que la première. « Donne-moi seulement les fichiers et les lignes » dit à l'assistant ce qu'il doit rapporter. Si vous ne le dites pas, vous recevez un long résumé qui remplit la conversation quand même.
Gardez en tête qu'Explore ne voit pas votre conversation et démarre aussi sans le fichier CLAUDE.md du projet, pour rester rapide. Mettez donc dans la phrase ce dont il a besoin : ce que vous cherchez, dans quelle partie de l'app, et ce que vous voulez en retour.
2. Trois tâches en même temps
Quand j'ai plusieurs tâches qui ne dépendent pas les unes des autres, je les lance en parallèle. Chaque assistant a son propre contexte et sa propre tâche, et à la fin Claude rassemble les résultats.
Lance trois subagents en parallèle : un cherche où la connexion est gérée, un lit les logs de la dernière erreur et me donne la cause, un écrit les tests de la page des tarifs. Quand ils ont fini, fais-moi un résumé des trois.
Ça marche parce que les trois tâches ne se croisent pas : trouver la connexion ne sert pas à lire les logs, et aucune des deux ne touche aux tests des tarifs. Si la deuxième tâche a besoin du résultat de la première, ce n'est pas une tâche parallèle : faites-la après.
3. Ctrl+B et /tasks
Si une tâche prend du temps et vous bloque, par exemple une commande qui tourne depuis des minutes, appuyez sur Ctrl+B : elle passe en arrière-plan et vous continuez à écrire. Ctrl+B marche aussi bien avec les commandes qu'avec les assistants. Si vous utilisez tmux, appuyez deux fois.
Pour voir qui est en train de travailler, tapez :
/tasks
Ça vous montre le travail en arrière-plan de la session : les commandes en cours et les subagents, y compris ceux qui viennent de finir. De là, vous pouvez ouvrir le travail d'un assistant et lire ce qu'il a fait, ou l'arrêter s'il est parti dans la mauvaise direction.
4. Un assistant permanent
Si vous répétez souvent une tâche, un assistant permanent vaut le coup. C'est un fichier dans le dossier .claude/agents du projet : en haut, il y a le nom, une description de quand l'utiliser et les outils qu'il peut utiliser, en dessous les instructions écrites avec des mots simples. Pas besoin de l'écrire à la main : vous le demandez à Claude.
Crée-moi un subagent dans .claude/agents qui relit le code sans rien modifier, et appelle-le code-reviewer.
Le résultat ressemble à ceci :
--- name: code-reviewer description: Relit le code et signale les problèmes. Ne modifie aucun fichier. tools: Read, Grep, Glob --- Tu es un relecteur de code. Lis les modifications que je t'indique et cherche les bugs, les cas non gérés et les passages peu clairs. Pour chaque problème, donne-moi le fichier, la ligne et comment tu le corrigerais. Ne modifie rien.
La ligne qui compte, c'est tools : ce sont les outils que l'assistant peut utiliser. Pour un relecteur, ceux pour lire et chercher suffisent, c'est-à-dire Read, Grep et Glob. Write et Edit ne doivent pas y être, ni Bash, parce qu'on peut aussi modifier des fichiers depuis le terminal. Si vous n'êtes pas sûr, demandez :
Ouvre le fichier du subagent code-reviewer et dis-moi quels outils il peut utiliser. S'il y a quelque chose qui lui permet de modifier des fichiers, enlève-le.
Ensuite, vous l'utilisez comme ça, quand vous avez fini un morceau de travail :
Fais vérifier les dernières modifications par le subagent code-reviewer.
Dans le fichier, vous pouvez aussi ajouter une ligne model pour choisir le modèle : haiku pour les tâches simples et rapides, sonnet ou opus pour les plus lourdes, inherit pour utiliser le même que la conversation.
Un fichier dans .claude/agents vaut pour ce projet. Si vous le mettez dans ~/.claude/agents, vous le retrouvez dans tous vos projets. Il existe aussi la commande /agents, mais le plus simple reste de demander à Claude ou d'ouvrir le fichier.
5. Quand je ne les lance pas
- Les petites tâches : changer un texte, une couleur, une ligne. Un assistant part de zéro et doit d'abord comprendre le projet : ça prend plus de temps que de le faire directement.
- Les tâches qui touchent les mêmes fichiers : deux assistants sur le même fichier se marchent sur les pieds. Faites-les l'un après l'autre, ou chacun dans sa propre copie du projet, les worktrees. Pour un assistant permanent, il suffit d'ajouter la ligne isolation: worktree dans son fichier.
- Quand je veux suivre chaque étape : l'assistant vous apporte le résultat à la fin. Si je dois le corriger à chaque étape, je reste dans la conversation principale.
- Quand il faut tout ce qu'on s'est dit : un assistant comme Explore part avec un contexte vide et ne voit pas notre conversation. Il faut tout lui réexpliquer, alors expliquez bien dans la phrase.
Une règle
Chaque assistant consomme ses propres tokens, et ils comptent dans les mêmes limites d'utilisation que la conversation principale. Trois assistants avec chacun une tâche claire, oui. Dix lancés « juste comme ça », non.
Les erreurs les plus courantes
- Lancer un assistant pour une modification d'une ligne : faites-la directement, ça va plus vite.
- Écrire une phrase vague comme « regarde la connexion » : dites quoi chercher, où, et ce que vous voulez en retour.
- Supposer que l'assistant sait ce que vous vous êtes dit : il ne voit pas la conversation, donc mettez-lui le contexte dans la phrase.
- Mettre deux assistants sur les mêmes fichiers en même temps : faites-les travailler l'un après l'autre, ou chacun dans son worktree.
- Faire confiance à un relecteur « en lecture seule » sans regarder la ligne tools : ouvrez le fichier et vérifiez que Write, Edit et Bash n'y sont pas.
- En lancer beaucoup « juste comme ça » : chacun consomme ses propres tokens, alors ne lancez que ceux qui ont une tâche claire.
Check-list
- La tâche est assez grande pour valoir un assistant
- La phrase dit quoi chercher et quoi rapporter
- Le contexte nécessaire est écrit dans la phrase
- Les tâches en parallèle ne touchent pas les mêmes fichiers
- Je sais que /tasks me montre qui travaille
- Le relecteur permanent n'a que des outils de lecture
Questions fréquentes
Subagent et Explore, c'est la même chose ?
Non. Explore est l'un des subagents fournis avec Claude Code : il sert à chercher et à lire le code, et il ne peut pas modifier de fichiers. Vous pouvez en créer d'autres vous-même dans .claude/agents, avec les outils et les instructions que vous voulez.
L'assistant voit-il notre conversation ?
Un subagent comme Explore, non : il part de zéro et ne voit que la phrase avec laquelle Claude le lance. Il existe aussi un type d'assistant, le fork, qui démarre avec toute la conversation, mais pour commencer vous n'en avez pas besoin : écrivez bien la phrase, c'est tout.
S'ils travaillent en arrière-plan, peuvent-ils faire des choses sans que je le sache ?
Les demandes d'autorisation vous arrivent quand même : quand un assistant doit faire quelque chose qui demande votre autorisation, la demande apparaît dans votre conversation avec son nom. Avec /tasks, vous voyez ce qu'il fait et vous pouvez l'arrêter.