Przejdź do głównej zawartości

Skille do dyscypliny kontekstu i tokenów: caveman, handoff, karpathy-guidelines

Skille do kontekstu i tokenów to Agent Skills, które kontrolują, co agent programistyczny pisze, co czyta i co traci między sesjami. caveman skraca prozę agenta, handoff zapisuje przenośny brief, od którego startuje świeża sesja, a karpathy-guidelines ogranicza każdy diff do tego, o co proszono. Żaden z nich nie dowodzi poprawności pracy; tego nadal dowodzą testy i CI.

Od trzech godzin prowadzisz z agentem migrację ponawiania webhooków. Licznik kontekstu pokazuje 70%, agent komentuje każde wywołanie narzędzia w czterech akapitach, a najbliższe kompaktowanie ściśnie uzasadnienie sześciu decyzji do jednej linijki podsumowania. Jutrzejsza sesja będzie te decyzje wyprowadzać od nowa albo po cichu im zaprzeczy. Ta strona jest dla developerów, którzy prowadzą długie sesje z agentem, i dla tech leadów, którzy chcą jednego, wspólnego dla zespołu sposobu przenoszenia pracy z sesji do sesji.

  • Mapę pięciu skilli i jednej wtyczki: co każdy oszczędza, ile kosztuje i kiedy jest złym narzędziem
  • Tabelę decyzyjną na granicę etapu: kompaktować, wyczyścić, rozwidlić czy przekazać
  • Polecenia instalacji dla Claude Code, Codex i Cursora, sprawdzone ze skills CLI 1.7.0 w dniu 2026-09-26
  • Rozpisane przekazanie pracy przy 70% kontekstu, z promptami, które je piszą, weryfikują i wznawiają
  • Workflow na wiele sesji, w którym stan niosą commity i testy, a nie rozmowa

Który skill do kontekstu i tokenów rozwiązuje który problem?

Dział zatytułowany „Który skill do kontekstu i tokenów rozwiązuje który problem?”

Każdy skill łata inny wyciek. Wybieraj po objawie, który widzisz, a nie po liczbie instalacji.

Skill (repozytorium)Co zmieniaKiedy się uruchamiaWybierz go, gdy
caveman (JuliusBrussee/caveman)Agent odpowiada krótkimi urywkami. Kod, polecenia, ścieżki i dokładne komunikaty błędów zostają dosłownie; ostrzeżenia bezpieczeństwa i potwierdzenia nieodwracalnych operacji wracają pełnymi zdaniamiNa /caveman, „be brief” albo „less tokens”; wtyczka dla Claude Code włącza go na starcie każdej sesjiRozmowę wypełnia proza, a nie kod
caveman-compress (to samo repozytorium)Przepisuje plik pamięci, na przykład CLAUDE.md, w formie skompresowanej i zachowuje czytelną kopięNa /caveman-compress <plik>Plik pamięci ładowany do każdej sesji mocno urósł
handoff (mattpocock/skills)Zapisuje dokument przekazania, który odsyła do specyfikacji, planów i commitów zamiast je kopiować, dodaje sekcję „suggested skills” i usuwa sekretyTylko gdy wpiszesz /handoff (disable-model-invocation: true)Praca musi przetrwać sesję: noc, inne narzędzie, kolegę z zespołu albo odgałęzione zadanie poboczne
karpathy-guidelines (multica-ai/andrej-karpathy-skills)Cztery zasady: najpierw pomyśl, potem koduj; prostota przede wszystkim; zmiany chirurgiczne; praca do celu z krokiem weryfikacji dla każdego punktu planuGdy agent pisze, przegląda albo refaktoryzuje kodDiffy się rozrastają, a każdy rozrośnięty diff kosztuje kontekst przy czytaniu i czas przy weryfikacji
Agent Skills for Context Engineering (muratcankoylan)17 skilli o projektowaniu kontekstu, m.in. context-degradation, context-compression, filesystem-context i multi-agent-patternsGdy projektujesz albo debugujesz harness agentaBudujesz agentów albo układy subagentów, a nie tylko z nich korzystasz
planning-with-files (OthmanAdi)Trzyma na dysku task_plan.md, findings.md i progress.md i w trakcie pracy wraca do planuPolecenia i hooki wtyczkiZadanie trwa dniami i potrzebuje trwałego planu; opisane w wtyczkach trwałej pamięci

Popularność na dzień 2026-09-26: łączna liczba instalacji na skills.sh wynosiła 869 575 dla handoff i 539 286 dla caveman. Obie liczby pochodzą z zewnętrznego zrzutu LinklyAI/best-skills z tego dnia (źródło wtórne; sprawdź aktualne wartości na skills.sh). Gwiazdki na GitHubie tego samego dnia: multica-ai/andrej-karpathy-skills 215,2 tys., JuliusBrussee/caveman 107,9 tys., OthmanAdi/planning-with-files 27,1 tys., muratcankoylan/Agent-Skills-for-Context-Engineering około 18 tys. Gwiazdki mierzą zainteresowanie repozytorium, a nie użycie pojedynczego skilla.

Każda opcja poza „pracuj dalej” zamienia rozmowę w podsumowanie. Różnica polega na tym, gdzie to podsumowanie żyje i kto może je przeczytać. Na większości granic wystarcza /compact; plik przekazania jest potrzebny dopiero wtedy, gdy praca musi się przemieścić.

RuchCo przetrwaKiedy go użyć
Pracuj dalejWszystkoZadanie skończy się spokojnie w obrębie okna
/compact [fokus]Podsumowanie w tej samej sesji, sterowane twoim tekstem fokusuTo samo narzędzie, ten sam katalog, to samo zadanie i zostajesz w pętli
/clearNic z rozmowy; pliki pamięci projektu ładują się ponownieZakończony etap jest do wyrzucenia
/fork, /branch (Claude Code), /fork lub codex fork (Codex)Dokładna kopia kontekstuEksperyment poboczny na tej samej maszynie i w tym samym narzędziu
/handoffPlik, który możesz przeczytać, poprawić, przenieść i udostępnićNastępna sesja startuje później, w innym narzędziu albo z inną osobą
Plan na dysku (planning-with-files albo własny plik planu)Plan i postęp, aktualizowane w trakcie pracyZadanie trwa dniami, niezależnie od tego, co robisz na każdej granicy

Claude Code 2.1.283 nie ma wbudowanego polecenia /handoff (sprawdzone w dokumentacji poleceń 2026-09-26), więc /handoff zawsze oznacza skill.

Przenośny sposób instalacji to skills CLI (pakiet npm skills 1.7.0), które instaluje skille do folderu każdego agenta: .claude/skills/ dla Claude Code, .agents/skills/ dla Codex, i zapisuje je w skills-lock.json. Instaluj w zakresie projektu, żeby zestaw przechodził review i trafiał do repozytorium jak kod.

  1. Zainstaluj skille w katalogu głównym repozytorium.

    Okno terminala
    # handoff: przenośna kopia, wywoływana jako /handoff
    npx skills add mattpocock/skills --skill handoff -a claude-code -y
    # caveman: tylko styl odpowiedzi i kompresor plików pamięci
    npx skills add JuliusBrussee/caveman --skill caveman caveman-compress -a claude-code -y
    # karpathy-guidelines jako wtyczka (droga zalecana w README)
    claude plugin marketplace add multica-ai/andrej-karpathy-skills
    claude plugin install andrej-karpathy-skills@karpathy-skills
    # context engineering: wskaż skille po nazwie; --full-depth jest wymagane
    npx skills add muratcankoylan/Agent-Skills-for-Context-Engineering --full-depth \
    --skill context-degradation context-compression -a claude-code -y

    Alternatywy: claude plugin install mattpocock-skills --scope project instaluje wszystkie 25 skilli Pococka z przestrzenią nazw, jako /mattpocock-skills:handoff. claude plugin marketplace add JuliusBrussee/caveman && claude plugin install caveman@caveman instaluje wtyczkę caveman, której hooki SessionStart i UserPromptSubmit uruchamiają skrypty Node i włączają caveman w każdej sesji.

  2. Sprawdź, co się zainstalowało. npx skills list pokazuje zainstalowane skille. W Claude Code claude plugin details andrej-karpathy-skills@karpathy-skills wypisuje zawartość wtyczki i prognozowany koszt kontekstu, a /context przed instalacją i po niej pokazuje różnicę w bieżącej sesji.

  3. Przeczytaj pliki, potem je zacommituj. Skille działają z uprawnieniami agenta, a caveman-compress zawiera skrypty Pythona, które wywołują Claude. Commituj .agents/skills/, .claude/skills/ i skills-lock.json (albo .claude/settings.json w przypadku wtyczek) i przeglądaj zmiany w nich w pull requestach. Listę kontrolną znajdziesz w artykule o bezpieczeństwie łańcucha dostaw skilli.

Poniższy przykład ilustruje kroki; nie jest zapisem prawdziwej sesji. Repozytorium, commity i nazwy plików są zmyślone na potrzeby przykładu.

Dlaczego 70%: w tym momencie agent wciąż pisze przekazanie z pełnej rozmowy, a nie z wcześniejszego podsumowania po kompaktowaniu, i zostaje miejsce na samo przekazanie. To praktyczna reguła, a nie próg ustalony przez dostawcę. Claude Code na modelu z natywnym oknem 1M domyślnie kompaktuje przy około 967 tys. tokenów, więc czekanie na automatyczne kompaktowanie oznacza długie czekanie z dużą ilością nieaktualnego kontekstu.

  1. Postaw licznik tam, gdzie go widzisz. W Claude Code dodaj linię statusu do ~/.claude/settings.json; przykład pochodzi z dokumentacji linii statusu Claude Code:

    {
    "statusLine": {
    "type": "command",
    "command": "jq -r '\"[\\(.model.display_name)] \\(.context_window.used_percentage // 0)% context\"'"
    }
    }

    used_percentage liczy się względem pełnego okna modelu. Jeśli ustawisz CLAUDE_CODE_AUTO_COMPACT_WINDOW, procent przestaje mówić, kiedy nastąpi kompaktowanie. /context pokazuje pełny rozkład. W Codex dodaj zużycie kontekstu do stopki poleceniem /statusline i przekazuj pracę przy tych samych 70% zużycia; /status pokazuje zużycie tokenów. W Cursorze przekazuj pracę na każdej granicy etapu, zamiast czekać na konkretną liczbę.

  2. Najpierw dojdź do zielonego punktu kontrolnego. Dokończ bieżący wycinek, uruchom testy i zrób commit. Przekazanie napisane w połowie edycji opisuje stan, którego nie ma w żadnym commicie.

  3. Napisz przekazanie. Podaj zadanie następnej sesji jako argument, żeby skill zachował rozumowanie, które go dotyczy.

  4. Przenieś plik w trwałe miejsce. SKILL.md tego skilla każe agentowi zapisywać do katalogu tymczasowego systemu operacyjnego, a nie do obszaru roboczego. Restart, reset kontenera albo sandbox, który porzuca /tmp, usuwa ten plik. Skopiuj go do ignorowanego przez git folderu w repozytorium:

    Okno terminala
    mkdir -p .handoffs && grep -qx '.handoffs/' .gitignore || echo '.handoffs/' >> .gitignore
    cp /tmp/handoff-webhook-retry.md .handoffs/2026-09-26-webhook-retry.md

    Zastąp /tmp/handoff-webhook-retry.md ścieżką, którą podał agent.

  5. Zweryfikuj przekazanie przed wyczyszczeniem sesji. Następny agent traktuje dokument jak umowę i go nie sprawdza. Przekonanie zapisane jako fakt („endpoint replay jest gotowy”) staje się fałszywym założeniem.

  6. Zacznij od nowa i wznów pracę. Wyczyść sesję: /clear webhook-retry-day1 w Claude Code (nazwa oznacza starą rozmowę w wyborze /resume), /new w Codex albo nowy czat Agenta w Cursorze. Potem wskaż nowej sesji plik; nie wklejaj podsumowania do polecenia powłoki, bo backticki i $(...) zostaną zniekształcone.

Dobre przekazanie dla tego zadania jest krótkie, bo ustalone szczegóły są już w specyfikacji i planie:

# Handoff: webhook retry, slice 4
## Goal for the next session
Dead-letter table and replay endpoint (docs/plans/webhook-retry.md, slice 4).
## Verified
- Slices 1-3 merged on branch feat/webhook-retry at 4f5e6a7.
- `npm test -- webhooks` passes at 4f5e6a7 (41 tests).
## Assumed, not checked
- Migration 021 (dead_letter table) is drafted in db/migrations/, not applied.
## Decisions and why
- Retries stop after 6 attempts: spec docs/specs/webhook-retry.md section 3.
- Replay is admin-only: ADR docs/adr/0012-replay-auth.md.
## Next steps
1. Apply migration 021 locally; run the migration test.
2. Write the failing test for POST /admin/webhooks/:id/replay.
## Suggested skills
tdd, diagnosing-bugs

Jak prowadzić długie zadanie przez wiele sesji bez utraty kontekstu przy kompaktowaniu?

Dział zatytułowany „Jak prowadzić długie zadanie przez wiele sesji bez utraty kontekstu przy kompaktowaniu?”

Utrata kontekstu przy kompaktowaniu to objaw stanu, który żyje tylko w rozmowie. Rozwiązaniem jest przeniesienie stanu do artefaktów, które następna sesja przeczyta, a CI sprawdzi, i traktowanie każdej granicy sesji jak punktu kontrolnego.

  1. Planuj na dysku. Przed budowaniem zapisz specyfikację i plan podzielony na wycinki; skill Pococka, który do tego prowadzi, to grill-me. Przy pracy na wiele dni planning-with-files utrzymuje aktualne pliki planu, ustaleń i postępu, gdy agent pracuje.

  2. Buduj małymi wycinkami. karpathy-guidelines każe agentowi wypowiedzieć założenia, dotykać tylko tego, czego wymaga zadanie, i podać krok weryfikacji dla każdego punktu planu. Mały diff kosztuje mniej kontekstu przy czytaniu teraz i mniej czasu review później.

  3. Kończ każdy wycinek na zielono i commitem. Punktem kontrolnym są commit i przechodzące testy. Rozmowa nim nie jest.

  4. Trzymaj okno w ryzach. Włącz /caveman lite na długie etapy debugowania i eksploracji, w których dominuje narracja. Uruchom raz /caveman-compress CLAUDE.md, jeśli plik pamięci mocno urósł, a potem przejrzyj diff linijka po linijce: ten plik steruje każdą sesją. Dodawaj tekst fokusu przy kompaktowaniu, na przykład /compact keep the decisions list, open questions, and failing test names.

  5. Na granicy etapu wybierz ruch z tabeli decyzyjnej. To samo narzędzie i to samo zadanie: kompaktuj. Następna sesja jutro, w innym narzędziu albo dla kogoś innego: przekaż, zweryfikuj i wyczyść.

  6. Wznawiaj od uruchomienia testów, a nie od streszczenia. Pierwszą czynnością każdej nowej sesji jest polecenie testowe z przekazania. Zielony wynik zgodny z przekazaniem pozwala kontynuować; niezgodność zatrzymuje pracę.

Polecenia sesji różnią się między narzędziami; pętla pozostaje ta sama.

Licznik: context_window.used_percentage w linii statusu albo /context. Granica etapu: /compact [fokus], /clear [nazwa], /fork, /branch, /resume. Wcześniejsze kompaktowanie ustawisz przez /autocompact 500k (od 100 tys. do 1M) albo CLAUDE_AUTOCOMPACT_PCT_OVERRIDE, które może próg tylko obniżyć. Koszt sesji: /usage.

Kolekcja context engineering jest dla tech leada, który projektuje harness: układ subagentów, pamięć, opisy narzędzi i ewaluacje. context-degradation nazywa pięć wzorców awarii (lost-in-middle, poisoning, distraction, confusion i clash). context-compression zaleca optymalizowanie tokenów na zadanie, łącznie z kosztem ponownego pobrania tego, co wypadło z podsumowania, a nie tokenów na zapytanie. Każdy uruchomiony skill jest duży (około 18–19 KB SKILL.md), więc instaluj dwa lub trzy po nazwie, a nie całą kolekcję.

Jak udowodnić, że wznowiona praca nadal jest poprawna?

Dział zatytułowany „Jak udowodnić, że wznowiona praca nadal jest poprawna?”

Krótsza rozmowa nie jest dowodem. Te skille zmieniają to, jak agent mówi i co niesie ze sobą; dowód pozostaje poza agentem.

  • Przekazanie jest sprawdzane z repozytorium. Każda linia w „Verified” wskazuje commit i przechodzący test. Prompt weryfikacyjny powyżej przenosi resztę do założeń przed /clear, a prompt wznowienia uruchamia testy przed pierwszą edycją.
  • Bramką jest CI. caveman nigdy nie przepisuje bloków kodu, a karpathy-guidelines tylko kształtuje diff. Pull request nadal przechodzi typecheck, lint i testy oraz niesie pakiet dowodów, który reviewer sprawdza bez ponownego czytania diffa.
  • Oszczędności mierzysz na własnej pracy. Liczby oszczędności tokenów w README caveman pochodzą od autora i od stron trzecich w takiej formie, w jakiej README je przytacza; ta strona ich nie weryfikowała. Samo README przyznaje, że w sesjach agentowych oszczędność jest dużo mniejsza niż w czacie, bo większość tokenów to kod i wywołania narzędzi, których skill nie dotyka. Zanim wprowadzisz skill w zespole, porównaj /usage i /context na podobnych zadaniach z nim i bez niego.
  • karpathy-guidelines widać w diffie. Śledź liczbę zmienionych plików i linii na pull request przed wdrożeniem i po nim. README wymienia jako sygnały mniej niezamówionych zmian i pytania doprecyzowujące zadawane przed implementacją, a nie po błędach.

Kto zatwierdza. Developer, który pisze przekazanie, weryfikuje je przed wyczyszczeniem sesji. Reviewer zatwierdza pull request na podstawie zielonego CI i pakietu dowodów. Tech lead odpowiada za zacommitowany zestaw skilli i zmienia go przez review.

Ile kontekstu kosztują skille do kontekstu i tokenów?

Dział zatytułowany „Ile kontekstu kosztują skille do kontekstu i tokenów?”

Nazwa i opis skilla ładują się do każdej sesji; treść ładuje się, gdy skill się uruchamia. Rozmiary SKILL.md na gałęzi main, 2026-09-26:

Co się ładujeKiedyRozmiar
handoffGdy wpiszesz /handoff894 bajty
cavemanPo aktywacji, potem zostaje w rozmowie7061 bajtów
caveman-compressGdy kompresujesz plik4697 bajtów
karpathy-guidelinesGdy agent pisze, przegląda albo refaktoryzuje kod2518 bajtów
context-degradation / context-compressionGdy skill się uruchomi19 180 / 18 214 bajtów
Wtyczka mattpocock-skills (25 skilli)W każdej sesjiokoło 1609 tokenów (claude plugin details, Claude Code 2.1.283)
Wtyczka planning-with-filesW każdej sesjiokoło 1124 tokenów (ten sam pomiar)

Przy mniej więcej czterech bajtach na token aktywny caveman kosztuje około 1800 tokenów wejścia. Zwraca się tylko wtedy, gdy wycina więcej tokenów prozy, niż sam kosztuje, dlatego pasuje do długich, gadatliwych sesji, a nie do krótkich, zdominowanych przez kod.

Co się psuje, gdy używasz skilli do kontekstu i tokenów?

Dział zatytułowany „Co się psuje, gdy używasz skilli do kontekstu i tokenów?”

Przekazanie zniknęło. Katalog tymczasowy został wyczyszczony między sesjami albo przez restart. Naprawa: kopiuj plik do .handoffs/ zaraz po zapisaniu (krok 4) i za każdym razem proś agenta o ścieżkę bezwzględną.

Nowa sesja wierzy w fałszywe „gotowe”. Przekazanie zapisało założenie jako fakt, a następny agent na nim zbudował. Naprawa: przed /clear uruchom prompt weryfikacyjny; w prompcie wznowienia wymagaj uruchomienia testów i zatrzymania przy każdej niezgodności.

caveman zaciemnia odpowiedzi. Na poziomie ultra kolejność kroków w wieloetapowej instrukcji może się rozmyć. Skill każe modelowi wracać do pełnych zdań przy ostrzeżeniach bezpieczeństwa, nieodwracalnych operacjach i niejednoznacznych sekwencjach kroków, ale to model ocenia, kiedy sekwencja jest niejednoznaczna. Naprawa: używaj /caveman lite albo powiedz stop caveman na czas dyskusji o projekcie i wszystkiego, co później czyta człowiek.

Skompresowany CLAUDE.md zgubił regułę. caveman-compress zachowuje nagłówki, kod, ścieżki i polecenia, ale przepisuje prozę wokół nich, a kopia zapasowa ląduje poza repozytorium, w $XDG_DATA_HOME/caveman-compress/backups/. Naprawa: przejrzyj diff w gicie przed commitem i przywracaj z gita, nie z folderu kopii.

Skille się nakładają i spierają. surgical-patch z caveman i karpathy-guidelines regulują zakres edycji; dwie procedury na jednym wyzwalaczu sprawiają, że agent dryfuje między nimi. Naprawa: jeden skill na jedną sprawę, a drugi usuń przez npx skills remove.

Kontekst i tak szybko się zapełnia. Te skille zajmują się prozą i granicami sesji, a nie największymi konsumentami: schematami narzędzi MCP, odczytami dużych plików i długim wyjściem poleceń. Naprawa: sprawdź /context, przytnij serwery MCP i pliki pamięci, jak opisuje artykuł o zarządzaniu oknem kontekstu, a wyszukiwania, które zalewają kontekst wynikami, zlecaj subagentom.