Lekce 02.11: Subagenti (Subagents)
🧠 Mentální model & teoretický rozbor
Subagenti představují nejmocnější architektonický nástroj pro ochranu Smart Zone hlavního sezení.
HLAVNÍ SEZENÍ (Orchestrátor / Architekt) - Udržováno čisté ve SMART ZONE │ ├── Potřeba prozkoumat 50 souborů v legacy modulu │ └── 🚀 Vyvolání SUBAGENTA (Izolované, čerstvé sezení) │ • Subagent dostane čisté kontextové okno (0 tokenů) │ • Otevře 50 souborů, spálí 60 000 tokenů balastu │ • Provede syntézu a vytvoří stručný 5řádkový report ▼ Návrat pouze čistého extraktu zpět do hlavního sezení (300 tokenů)Bez subagentů by se oněch 60 000 tokenů ze všech 50 souborů nasypalo do vašeho hlavního kontextu a okamžitě by ho uvrhlo do Dumb Zone. Díky subagentům zůstává hlavní inženýrská smyčka lehká, bystrá a soustředěná.
🏢 Realistický scénář z praxe
Refaktorujete monorepo s 15 balíčky:
Chcete zjistit, které balíčky stále importují starou verzi autentizační utility z @acme/legacy-auth.
- Bez subagenta: Hlavní agent otevře desítky souborů
package.jsona zdrojáků. Váš hlavní kontext je zaplaven balastem. - Se subagentem: Hlavní agent vyvolá subagenta: „Prohledej všechny package.json v balíčcích a vrať seznam těch, které obsahují @acme/legacy-auth.“
- Subagent vrátí: „Nalezeno ve 3 balíčcích: web, admin, api-gateway.“
- Hlavní agent okamžitě pokračuje v cílené úpravě pouze těchto 3 míst.
💻 Konkrétní ukázky kódu & promptů
Jak fungují subagenti v Antigravity vs. Claude Code:
- V Antigravity (
agy): Antigravity má nativní orchestraci subagentů. Můžete vyvolat specializovanéhoresearchsubagenta běžícího na Gemini Flash, který má read-only nástroje (ViewFile,GrepSearch,GlobTool), prozkoumá kód a vrátí strukturovaný extrakt do hlavního orchestrátora bez znečištění kontextu. - V Claude Code (
claude): Claude Code spouští subagenty přes vestavěný nástrojTask(definované v.claude/agents/<name>.md), typicky směrované na Claude 3.5 Haiku.
Ukázka direktivy v AGENTS.md / GEMINI.md:
## Pravidla pro průzkum rozsáhlého kóduKdykoliv je potřeba prozkoumat více než 5 souborů pro zjištění závislostí nebo nalezení příkladů:1. VŽDY deleguj tuto úlohu na subagenta (research agent na modelu Flash).2. Zadání pro subagenta musí být striktně ohraničené a vyžadovat POUZE strukturovaný souhrn.3. Nevtahuj do hlavního kontextu celé zdrojové kódy nalezených souborů.Ukázka výzvy pro aktivaci subagenta v sezení:
Použij subagenta pro průzkum adresáře src/legacy.Úkol pro subagenta:- Najdi všechny soubory, které exportují funkce začínající na `deprecated_`.- Vrať pouze markdown tabulku: Název souboru | Název funkce | Odhadovaná náročnost refaktoru.⚠️ Analýza selhání & Anti-patterns
Anti-pattern: Přidělení implementačních pravomocí neřízenému subagentovi
Někteří vývojáři nechají subagenta samostatně upravovat kód na disku bez dohledu:
- Subagent nemá k dispozici kompletní kontext hlavního sezení ani architektonické souvislosti.
- Může přepsat soubory způsobem, který rozbije rozpracovanou práci v hlavní větvi.
- Pravidlo: Subagenti jsou primárně určeni pro čtení, rešerši, audit a syntézu. Zápis a finální integraci provádí hlavní orchestrátor ve Smart Zone pod vaším dohledem!
🛠️ Inženýrský postup krok za krokem (Playbook)
- Identifikujte „špinavou práci“: Kdykoliv hrozí čtení mnoha souborů, velkých logů nebo rozsáhlé dokumentace, delegujte ji na subagenta.
- Definujte přesný formát výstupu: Požadujte po subagentovi JSON, markdown tabulku nebo číslované odrážky.
- Zpracujte výsledek v hlavním sezení: Využijte čistý extrakt a proveďte chirurgický zásah ve Smart Zone.
🧪 Praktické cvičení (Hands-on Lab)
Úkol:
Ověřte si princip izolace kontextu pomocí subagenta.
Kroky:
- Zadejte agentovi: „Použij subagenta k prohledání všech testovacích souborů v projektu a zjisti, které z nich používají knihovnu vitest a které jest.“
- Sledujte, jak se spustí izolované sezení subagenta.
- Všimněte si, že po dokončení se ve vašem hlavním kontextu objeví pouze stručný seznam a celkový počet tokenů hlavního sezení téměř nevzrostl!