Terug naar podcastsClaude
Claude Code subagents
Effectieve subagenten ontwerpen
Now that you know how to create sub aents, let's look at patterns that lead to effective sub aents.
Nu je weet hoe je subagents maakt, kijken we naar patronen die leiden tot effectieve subagents.
First, let's get a better idea of how subit data in the sub aent config file is used.
Laten we eerst beter begrijpen hoe de configuratiedata van de subagent wordt gebruikt.
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.
Elke keer dat je een bericht stuurt naar de hoofdagent, worden de naam en beschrijving van elke subagent opgenomen in de 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.
Als je beter wilt bepalen wanneer de hoofdagent automatisch een subagent start, pas dan de naam en beschrijving aan.
Next, remember that when a sub agent is launched, the main agent writes an input prompt.
Onthoud ook dat wanneer een subagent wordt gestart, de hoofdagent een input prompt schrijft.
When writing this input prompt, it uses the description as guidance.
Bij het schrijven van die input prompt gebruikt hij de beschrijving als leidraad.
So, if you want to better control when the main agent launches a sub agent automatically, you should modify the name and description.
Dus als je beter wilt bepalen wanneer de hoofdagent automatisch een subagent start, pas dan de naam en beschrijving aan.
Let's consider our review sub aent again.
Laten we onze review-subagent nog eens bekijken.
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.
Op dit moment, wanneer de hoofdagent deze subagent uitvoert, krijgt de subagent een input prompt die hem opdraagt git diff te gebruiken om de huidige wijzigingen te vinden.
If we wanted the main agent to more reliably tell the sub agent exactly which files to review, we would update the description.
Als we wilden dat de hoofdagent de subagent betrouwbaarder zou vertellen welke bestanden hij moet reviewen, zouden we de beschrijving aanpassen.
You must tell the agent precisely which files you want it to review.
Je moet de agent precies vertellen welke bestanden je wilt dat hij reviewt.
Now, if we ask claw to run the code reviewer agent, we'll see a different input.
Als we Claude nu vragen de code reviewer-agent te starten, zien we een andere input.
You can also influence what the main thread tells a sub agent through the description.
Je kunt via de beschrijving ook beïnvloeden wat de hoofdthread een subagent vertelt.
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.
Door 'retourneer bronnen die geciteerd kunnen worden' toe te voegen aan de beschrijving van een webzoek-subagent, zorgt de hoofdthread ervoor dat die instructie wordt meegestuurd bij het delegeren van de taak.
The most important improvement that you can make is defining an output format in the system prompt.
De belangrijkste verbetering die je kunt maken, is een output format definiëren in de system prompt.
This creates natural stopping points for the sub aent.
Dit creëert natuurlijke stoppunten voor de subagent.
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.
Zonder een gedefinieerd output format hebben subagents moeite te bepalen wanneer er genoeg onderzoek is gedaan en ze lopen veel langer door dan subagents met een output format.
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.
Wanneer een subagent een oplossing ontdekt voor een probleem, zoals het oplossen van een dependency-probleem of het ontdekken dat een commando speciale flags nodig heeft, moeten deze details in de samenvatting staan.
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.
Anders moet de hoofdthread dezelfde oplossingen opnieuw ontdekken: tegengekomen obstakels, setup-problemen, gevonden workarounds, eigenaardigheden van de omgeving, commando's die speciale flags nodig hadden en dependencies of imports die problemen veroorzaakten.
Explicitly asking for obstacle reporting in the output format surfaces this information.
Expliciet om obstacle reporting vragen in het output format brengt deze informatie naar voren.
A readonly sub aent using just glob grap read cannot accidentally modify files.
Een readonly subagent die alleen glob, grep en read gebruikt, kan bestanden niet per ongeluk wijzigen.
This constraint clarifies that the sub aents role and prevents unintended side effects.
Deze beperking verduidelijkt de rol van de subagent en voorkomt onbedoelde neveneffecten.
So think about what sub aents actually needs to do.
Denk dus na over wat een subagent eigenlijk moet doen.
If it's just researching it only needs to read files.
Als hij alleen onderzoek doet, hoeft hij alleen bestanden te lezen.
So keep it read only.
Houd het dan read-only.
That way it can't accidentally modify anything while exploring.
Zo kan hij niets per ongeluk wijzigen tijdens het verkennen.
A reviewer needs to run get diff to see what changed.
Een reviewer moet git diff uitvoeren om te zien wat er is veranderd.
So give it bash access, but it still doesn't need to edit files.
Geef hem dan bash-toegang, maar hij hoeft nog steeds geen bestanden te bewerken.
Only give edit and write to sub aents that should actually change your code, like a styling agent applying CSS updates.
Geef edit en write alleen aan subagents die je code daadwerkelijk moeten aanpassen, zoals een styling-agent die CSS-updates toepast.
This also helps clarify what each sub aent is for when you have several of them.
Dit helpt ook verduidelijken waarvoor elke subagent is wanneer je er meerdere hebt.
So effective sub aents use structured output report obstacles have specific descriptions and limit tool access.
Effectieve subagents gebruiken gestructureerde output, rapporteren obstakels, hebben specifieke beschrijvingen en beperken toegang tot tools.