Claude Code przygotuje dla ciebie skill, subagenta albo hook na zwykłą prośbę, więc trudniej jest wybrać właściwy mechanizm, niż go zbudować. Nazwy niewiele tu pomagają: „skill” brzmi jak umiejętność, „subagent” jak szpieg niższego rzędu, a „hook” po polsku nie mówi nic. O wyborze decydują dwie rzeczy, których w nazwie nie widać – kto uruchamia mechanizm i ile miejsca zajmuje on w twojej rozmowie. Pokazujemy, kiedy przydaje się każdy z nich.
Dwa pytania zamiast trzech nazw
Pierwsze pytanie przy wyborze między skillem, subagentem i hookiem brzmi: kto ma uruchamiać mechanizm? Skill uruchamiasz ty, wpisując jego nazwę po ukośniku, albo uruchamia go sam Claude Code, gdy uzna, że opis skilla pasuje do zadania. Subagenta wywołuje zwykle sam Claude Code w trakcie pracy, choć możesz też wskazać go wprost. Hooka nie musi uruchamiać nikt z was: hook uruchamia się sam przy zdarzeniu, do którego go przypisano.
Drugie pytanie przy wyborze mechanizmu brzmi: ile miejsca zajmie on w kontekście, czyli w tym, co Claude Code ma przed sobą w bieżącej rozmowie? Według dokumentacji, gdy w kontekście jest za dużo informacji, Claude pomija twoje zasady albo nie sięga po właściwy skill.
| Kto uruchamia | Co zajmuje miejsce w rozmowie | Kiedy pasuje | |
|---|---|---|---|
| Skill | ty albo Claude Code | opis w każdej rozmowie, cała treść od chwili uruchomienia | procedura, którą powtarzasz co jakiś czas |
| Subagent | zwykle Claude Code, ale możesz też wskazać go wprost | opis w każdej rozmowie i wynik – samą pracę subagent wykonuje w osobnym kontekście | zadanie, w którym trzeba przeczytać dużo, a wystarczy krótki wynik |
| Hook | nikt – hook uruchamia się sam przy zdarzeniu, na przykład gdy wyślesz wiadomość albo agent AI skończy pracę | nic, chyba że hook przekaże coś do rozmowy | coś, co ma się dziać zawsze i tak samo |
Najpierw sprawdź, czy wystarczy jedna zasada w CLAUDE.md
Claude Code czyta plik CLAUDE.md w całości na początku każdej rozmowy, więc to, co w nim stoi, zajmuje miejsce zawsze. W CLAUDE.md zapisujesz krótkie zasady, które obowiązują w każdej rozmowie: format dat, język odpowiedzi, zakaz ruszania wybranego folderu bez pytania. Na takie rzeczy skill jest za duży. Jak zdecydować, czy zasada należy do CLAUDE.md, piszemy w Poradzie o instrukcjach w czacie i w pliku. Wystarczy jedno pytanie: czy jutro, przy innym zadaniu, napiszesz to samo?
Granica między zasadą w CLAUDE.md a skillem przebiega tam, gdzie zasada zamienia się w procedurę. Dokumentacja Claude Code podpowiada, że gdy po raz trzeci wklejasz do czatu tę samą listę kroków, pora zapisać ją jako skill.
Powtarzalna procedura, którą uruchamiasz na żądanie: skill
Skill to zapisana procedura, po którą sięgasz co jakiś czas – na przykład wtedy, gdy co miesiąc przygotowujesz dla biura rachunkowego arkusz z kosztami na podstawie faktur z jednego folderu. Za każdym razem to te same kilka kroków, ale potrzebujesz ich tylko raz w miesiącu. Dlatego skill zajmuje w rozmowie niewiele miejsca: na starcie Claude Code ma przed sobą tylko jego nazwę i krótki opis z początku pliku, a całą treść wczytuje dopiero po uruchomieniu i od tej chwili trzyma ją w rozmowie.
Pliku skilla nie piszesz ręcznie – prosisz o niego Claude Code, najlepiej na końcu rozmowy, w której właśnie udało się wykonać zadanie. Skill pozostaje przy tym instrukcją: Claude Code interpretuje jej kroki, więc wynik może się za każdym razem trochę różnić.
Oprócz własnych skilli możesz korzystać z tych wbudowanych w Claude Code, z tych, które są częścią pluginów, i z tych z twojego konta na claude.ai. Wszystkie działają tak samo. Własne komendy (custom commands) z folderu commands, na które możesz trafić w starszych poradnikach, to dziś także skille, tylko zapisane w dawnym folderze.
Jak poprosić Claude Code o pierwszy skill i czym różni się skill globalny od lokalnego, pokazujemy w lekcji o pierwszym skillu.
Ciężkie zadanie, które zapycha rozmowę: subagent
Subagent przydaje się wtedy, gdy trzeba przeczytać wiele plików, a tobie wystarczy krótkie podsumowanie. Na przykład masz kilkadziesiąt ofert wysłanych w ciągu roku i chcesz zestawić w jednej tabeli usługi, kwoty oraz to, które oferty zostały przyjęte. Gdyby agent AI czytał te oferty w głównej rozmowie, ich treść zostałaby w kontekście, choć do dalszej pracy wystarczy sama tabela. Subagent czyta wszystko we własnym kontekście i przekazuje do rozmowy tylko podsumowanie.
Subagent to w praktyce osobne AI, które Claude Code uruchamia do jednego zadania. Nie widzi waszej rozmowy: zaczyna od zera, z własnymi instrukcjami i plikiem CLAUDE.md, a o zadaniu wie tylko tyle, ile Claude Code napisze mu w zleceniu. Gdy skończy, przekazuje Claude Code tylko wynik, bez wszystkiego, co przeczytał i sprawdził po drodze. Przy każdym kolejnym uruchomieniu subagent zaczyna od zera i nie pamięta poprzedniego zlecenia. Wyjątek to sytuacja, w której poprosisz Claude Code o kontynuowanie pracy tego samego subagenta – wtedy subagent wraca z całą swoją wcześniejszą historią. Dlatego subagent dobrze radzi sobie z zadaniem, które da się opisać w kilku zdaniach, a gorzej z takim, do którego potrzebna jest znajomość całej waszej rozmowy.
Pliku subagenta też nie piszesz ręcznie – opisujesz Claude Code, czym subagent ma się zajmować i jaki wynik ma przekazywać, a Claude Code przygotuje jego plik. Claude Code ma też kilku wbudowanych subagentów, których uruchamia bez twojego udziału, na przykład do szybkiego przeszukiwania plików.
Subagent oszczędza miejsce w rozmowie, ale nie zmniejsza zużycia limitu w twoim planie Claude. Jego zapytania wliczają się do tego samego limitu co zapytania w głównej rozmowie.
Jaki model wybrać dla subagenta i jak powierzyć mu część zadania, które wykonuje skill, pokazujemy w lekcji „Skill i subagent – podział pracy”.
Coś, co ma się dziać zawsze, bez pamiętania o tym: hook
Hook to mechanizm dla bardziej zaawansowanych – jeśli dopiero oswajasz się ze skillami, możesz tę część pominąć i wrócić do niej później. Hooki przypisuje się do zdarzeń w czasie pracy Claude Code, takich jak początek sesji, wysłanie przez ciebie wiadomości, zakończenie pracy przez agenta AI czy moment tuż przed zmianą pliku. Przy każdym takim zdarzeniu Claude Code uruchamia przypisany do niego hook. Hook to zwykle skrypt, czyli polecenie dla komputera, które działa bez udziału AI. Dzięki temu nie zużywa tokenów, nawet jeśli uruchamia się przy każdej twojej wiadomości.
Hook różni się od zasady zapisanej w CLAUDE.md tym, że nie zależy od tego, czy AI o niej pamięta. Zdanie „nie zmieniaj niczego w folderze z podpisanymi umowami” zapisane w CLAUDE.md jest prośbą, której Claude Code zwykle się trzyma. Hook blokujący taką zmianę uruchamia się za każdym razem, gdy Claude Code sięga po narzędzie do edycji plików, bez względu na to, co AI ma w tej chwili w kontekście – dokumentacja ujmuje to wprost: instrukcja jest prośbą, a hook egzekwuje zasadę. Hook reaguje przy tym tylko na zdarzenie, do którego go przypisano: jeśli Claude Code zmieni plik poleceniem w terminalu, hook przypisany do narzędzia do edycji plików nie wykryje tej zmiany. A że hook działa poza rozmową, nie zajmuje w niej miejsca, chyba że sam coś do niej przekaże.
Hooka trudno napisać ręcznie: to wpis w pliku ustawień, często z poleceniem dopasowanym do twojego systemu, a jeden zbędny przecinek wystarczy, żeby nie zadziałał. Dlatego o hook tym bardziej prosisz Claude Code. Na naszych szkoleniach pokazujemy najpierw dwa hooki: pierwszy dopisuje do każdej twojej wiadomości aktualną datę i godzinę, żeby AI zawsze wiedziało, która jest godzina, a drugi odtwarza krótki dźwięk, gdy agent AI skończy pracę.
Hook działa z twoimi uprawnieniami i uruchamia się bez pytania, dlatego proś tylko o takie hooki, których działanie rozumiesz. Niektóre hooki przychodzą też razem z pluginami.
Na koniec, w skrócie
Zanim poprosisz Claude Code o nowy mechanizm, odpowiedz sobie na dwa pytania: kto ma go uruchamiać i ile miejsca ma zajmować w rozmowie. Jedno zdanie, które ma obowiązywać zawsze, trafia do CLAUDE.md. Procedura z kilku kroków, po którą sięgasz co jakiś czas, to skill. Gdy trzeba przeczytać dużo, a wystarczy krótki wynik, zleć to subagentowi. A jeśli coś ma się dziać przy każdym określonym zdarzeniu, bez niczyjego przypominania, ustaw hook.