Lekcja 4 · Delegowanie zamiast płacenia za wszystko naraz
W glosariuszu subagent jest zdefiniowany jako "wyspecjalizowany asystent w osobnym, świeżym oknie kontekstu". Ta lekcja pokazuje, co dokładnie to znaczy w praktyce: co subagent widzi, co wraca do Ciebie, i kiedy delegowanie zadania faktycznie oszczędza tokeny, a kiedy tylko dodaje opóźnienie.
Subagent startuje z pustym oknem kontekstu — nie widzi historii Twojej rozmowy, plików, które już przeczytałeś, ani skilli, które już wywołałeś. Dostaje tylko własny system prompt i wiadomość zlecającą zadanie, którą pisze Claude. Po zakończeniu pracy do głównej rozmowy wraca wyłącznie streszczenie wyniku — cały research, logi, przeczytane pliki zostają w kontekście subagenta i znikają razem z nim.
| Explore | Plan | general-purpose | |
|---|---|---|---|
| Model | Haiku (szybki) | dziedziczy z rozmowy | dziedziczy z rozmowy |
| Narzędzia | tylko odczyt | tylko odczyt | wszystkie |
| Do czego | szukanie i analiza kodu | research w trybie planowania | zadania wieloetapowe ze zmianami |
| CLAUDE.md i git status | pomija | pomija | ładuje |
Explore i Plan celowo pomijają CLAUDE.md i status gita — to research jednorazowy, ma być tani i szybki. Ty (w głównej rozmowie) i tak czytasz ich wynik z pełnym kontekstem CLAUDE.md, więc te reguły nie muszą docierać do subagenta. Wyjątek: jeśli reguła musi dotrzeć do subagenta (np. "pomiń katalog vendor/"), trzeba ją powtórzyć wprost w zleceniu.
| Zostań w głównej rozmowie, gdy… | Deleguj do subagenta, gdy… |
|---|---|
| Zadanie wymaga częstego dialogu i doprecyzowań | Praca produkuje dużo tekstu, którego nie potrzebujesz później |
| Kolejne fazy dzielą dużo wspólnego kontekstu | Chcesz wymusić ograniczenia narzędzi (np. tylko odczyt) |
| Liczy się szybkość odpowiedzi | Zadanie jest samodzielne i da się streścić w wyniku |
Subagent startuje "na zimno", więc dla szybkiej, punktowej zmiany w toczącej się rozmowie zwykle nie warto — narzut na zebranie kontekstu od zera przewyższa oszczędność.
Claude deleguje automatycznie, gdy treść zadania pasuje do pola description subagenta. Możesz też wymusić wybór:
| Sposób | Efekt |
|---|---|
| Nazwij subagenta w zdaniu ("użyj Explore, żeby…") | Claude zwykle deleguje, ale decyduje samo |
@nazwa-subagenta | gwarantuje, że użyty zostanie ten konkretny subagent |
claude --agent nazwa | cała sesja działa jako ten subagent (prompt, narzędzia, model) |
Podobnie jak skille, subagenty projektowe mieszkają w .claude/agents/nazwa.md i wersjonują się w git, żeby zespół dostał ten sam zestaw. Wymagane są tylko dwa pola frontmatteru:
| Pole | Do czego służy |
|---|---|
name | Unikalny identyfikator (małe litery, myślniki) |
description | Kiedy Claude ma delegować do tego subagenta — jedyne pole, które Claude widzi przed wywołaniem |
tools | Opcjonalnie: lista dozwolonych narzędzi (bez tego — dziedziczy wszystkie) |
model | Opcjonalnie: sonnet, opus, haiku albo inherit (domyślne) |
Reszta pliku to markdown — system prompt subagenta, dokładnie tak jak treść SKILL.md jest promptem skilla.
Fork (/fork) to jedyny subagent, który dziedziczy całą dotychczasową rozmowę zamiast zaczynać od zera — widzi ten sam system prompt, narzędzia i historię, co główna sesja. Dzięki temu jego pierwsze zapytanie współdzieli prompt cache z główną sesją, więc jest tańszy niż zwykły subagent do zadań wymagających tego samego tła. Cena: traci izolację wejścia, którą dają nazwane subagenty.
W tej samej rozmowie, poproś mnie wprost, np.:
Użyj subagenta Explore, żeby znaleźć wszystkie miejsca w tym repo, gdzie wspominamy o hookach
/context zaraz po. Sprawdź, czy szczegóły wyszukiwania (nie tylko wynik) wylądowały w Twoim głównym oknie.1. Subagent (nie fork) kończy pracę po przeszukaniu 40 plików. Co trafia do Twojej głównej rozmowy?
2. Które subagenty wbudowane pomijają CLAUDE.md i status gita przy starcie?
3. Piszesz szybką, jednolinijkową poprawkę w trakcie trwającej dyskusji o kodzie. Co zrobisz?
4. Które pola frontmatteru są wymagane, żeby zdefiniować własny subagent w .claude/agents/?
name i description są obowiązkowe. tools i model to pola opcjonalne — bez nich subagent dziedziczy wszystkie narzędzia i model z głównej rozmowy.5. Czym różni się fork od zwykłego, nazwanego subagenta pod względem kosztu?