Caveman Claude vs rzeczywistość — co pokazuje README, a co tsbench
README Cavemana mówi o 65-75% redukcji. Issue
Caveman Claude ma 41 000 gwiazdek, #1 na Hacker News i omówienia w Decrypt. I liczbę “75% oszczędności” w każdym miejscu, w którym się o nim pisze. Tyle że to liczba na wybranym wycinku tokenów wyjściowych, a nie na całej sesji. Realny wpływ: 4-10%. Tu pokazuję, skąd ta rozbieżność i kiedy Caveman faktycznie ma sens.
Wracamy do głównego artykułu: Claude Code — jak przestać palić tokeny.
Co dokładnie mówi README
Strona juliusbrussee/caveman mówi dwie rzeczy. Tytuł repo: ”🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman”.
Sekcja benchmark mówi o średnio 65% oszczędności na tokenach wyjściowych (output tokens), zakres 22-87%, 10 zadań testowych, tokenizer tiktoken, model Claude API. Tweety i omówienia prasowe podciągają to do okrągłych 75%.
Obie liczby są prawdziwe, ale tylko w kontekście, w jakim zostały zmierzone. Ten kontekst jest mocno niereprezentatywny dla typowej sesji Claude Code.
Issue #234 — co zarzuca Kanevry
Issue #234, otwarty od tygodni, nierozwiązany. Zgłaszający (Kanevry) pobrał własne repo ewaluacyjne autora — evals/snapshots/results.json — i przeliczył dane inaczej.
Autor porównuje caveman vs domyślny Claude. Ale dostępny jest też wariant __terse__ — to po prostu prompt “be concise, no pleasantries, no filler”. To jest właściwa grupa kontrolna: jeśli chcesz zmierzyć wartość Cavemana ponad prosty prompt o zwięzłość, porównaj do __terse__, nie do rozwlekłego wariantu domyślnego.
Wynik Kanevry’ego:
- Caveman vs domyślny Claude: -65% (tak jak mówi README)
- Caveman vs
__terse__(poprawna kontrola): mediana -50%
Czyli połowę oszczędności Caveman dostarczyłby zwykły prompt “bądź zwięzły”. Druga połowa to wartość dodana od struktury “jaskiniowca” (fragmenty, bez rodzajników).
-50% vs __terse__ to nadal wartość. Ale nie jest to -75%, które widzisz w marketingu.
Dlaczego “proza to ~25% sesji”
Druga warstwa problemu: nawet -50% na tokenach wyjściowych prozy nie przekłada się liniowo na oszczędność sesji. Sesja Claude Code dzieli się mniej więcej tak (mój pomiar na trzech różnych typach zadań, estymacja tiktoken):
| Składnik sesji | Udział | Czy Caveman to kompresuje? |
|---|---|---|
| system prompt + tools + CLAUDE.md | 15-25% | nie (bazowe obciążenie) |
| historia konwersacji (ponowne czytanie) | 20-40% | tylko częściowo |
wyjścia narzędzi (git, testy, cat) | 25-45% | nie (to kod/dane, nie proza) |
| wyjście Claude’a (proza, wyjaśnienia) | 15-30% | tak |
| thinking tokens (extended thinking) | 5-20% | nie |
Caveman łapie tylko prozę w odpowiedzi modelu, czyli 15-30% sesji. Jeśli na tym kawałku oszczędzi 50% (po skorygowaniu do uczciwego punktu odniesienia), to:
0.5 × 0.25 = 0.125 → ~12,5% całej sesji
Wariant optymistyczny: tak. Wariant pesymistyczny: 4-8%. Co pokrywa się z niezależnymi analizami na Medium i blogach, które próbowały odtworzyć ten benchmark na realnych sesjach.
Co Caveman nie robi
Punkty, na które warto zwrócić uwagę zanim zainstalujesz:
- Nie tyka kodu. Kod, ścieżki, URL-e, komendy, nagłówki — nietknięte. To dobrze (nie psuje wyjścia), ale ogranicza zasięg.
- Nie tyka thinking tokens. Extended thinking jest wewnętrzny dla modelu, Caveman nic z tym nie zrobi.
- Nie tyka wyjścia narzędzi.
git logClaude’a dostaje taki sam, bo to narzędzia, nie model. - Nie skraca historii ponownego czytania. Kontekst rośnie tak samo, tylko każda turę jest trochę krótsza w odpowiedzi.
Mierzalny punkt styku: tekstowe fragmenty wypluwane przez model po kompresji. Reszta sesji idzie “obok”.
Kiedy Caveman faktycznie pomaga
Tak, są typy zadań, gdzie to ma sens:
- Długie wyjaśnienia architektoniczne — gdy Claude tłumaczy czemu polecił X zamiast Y, na pół strony
- Code review — Caveman tnie “Let me explain what I see in this code…” do “Look: auth missing rate limit. Fix: middleware layer. Test: simulate 1000 req/s.”
- Dyskusje planowe — gdy planujesz funkcjonalność i Claude ma skłonność do rozwlekania
- Programowanie w parach w trybie konwersacyjnym — gdzie długość odpowiedzi ma znaczenie, bo czytasz ją na bieżąco
Tu oszczędność jest wyraźna i natychmiast widoczna. Subiektywnie też lepiej się to czyta — fragmentaryczny styl pasuje do debugowania i rozwiązywania problemów.
Typy zadań, w których Caveman jest prawie niewidzialny:
- Implementacja z testami — dominują wywołania narzędzi i kod
- Debugowanie błędów uruchomieniowych — wyjście to głównie stacktrace’y (nie proza)
- Migracje — kod + kod + kod, prawie zero prozy
Porównanie z prostym promptem
Zanim zainstalujesz pluginy, hooki i skills, sprawdź, czy samym promptem nie osiągniesz porównywalnego efektu. Dodaj do CLAUDE.md:
# Response style
- Be concise. Fragments OK.
- No preamble, no pleasantries, no "Let me...", no "I'll...".
- Skip explanations unless I ask.
- Technical substance exact. Drop filler.
To daje realnie ~50-60% tego, co Caveman, bez instalacji, bez hooków, bez ryzyka Ultra "slips" (Issue #233 — w długich sesjach poziom Ultra “wycieka” i Claude wraca do normalnego stylu).
Jeśli po tym eksperymencie widzisz, że chcesz jeszcze mocniej — Caveman jest krokiem dalej. Ale zacznij od promptu.
Tryb Wenyan — ciekawostka z gwiazdką
Caveman ma poziom wenyan — klasyczną chińszczyznę. Wenyan to wariant literacki, znacznie bardziej skondensowany niż mandaryński, każdy znak niesie więcej znaczenia. Claude potrafi używać go poprawnie i teoretycznie kompresja jest większa niż w angielskim Ultra.
Problemy:
- Jeśli nie czytasz po chińsku, czytasz własne wyjście przez translator
- Czasem model miesza wenyan z mandaryńskim albo japońskim kanji
- Dla zadań technicznych (Rust lifetimes, TypeScript generics) znaki chińskie nie są oczywistym medium do opisu
To bardziej ciekawostka niż praktyczna funkcja. Ale jeśli czytasz po chińsku — warto sprawdzić.
Co instaluję razem z Cavemanem
Jeśli już decydujesz się na Cavemana, nie zatrzymuj się na nim samym. Połącz z czymś, co faktycznie robi ciężką robotę:
- Caveman + RTK — Caveman tnie prozę, RTK tnie wyjście narzędzi. Razem dają 30-50% łącznej oszczędności.
- Caveman + Context Mode — Caveman tnie wyjście modelu, Context Mode tnie dane wchodzące. Komplementarne.
- Caveman sam — dla dyskusji architektonicznych i code review to wystarcza.
Czego nie robić: instalować Cavemana + Token Optimizer MCP + Token Optimizer (alexgreensh) jednocześnie. Powstaje konflikt hooków, a Caveman sam w sobie już modyfikuje instrukcję systemową.
Werdykt
Caveman nie jest oszustwem. Ma mierzalny efekt, jest na licencji MIT, dobrze utrzymywany, a instalacja to dwie komendy. Problem jest tylko z liczbami w marketingu.
Realistyczne oczekiwania:
- Oszczędność wyłącznie na prozie w odpowiedzi modelu
- ~50% na tym wycinku względem wariantu kontrolnego “bądź zwięzły”
- ~12% całej sesji w optymistycznym wariancie
- Najlepiej widoczny na sesjach dyskusyjnych, nie implementacyjnych
Jeśli wchodzisz z nastawieniem “75% oszczędności” — będziesz rozczarowany. Jeśli wchodzisz z nastawieniem “ciekawa modyfikacja stylu, oszczędność przy okazji, fajnie się czyta” — dostaniesz to, po co przyszedłeś.
Wracając do głównego artykułu: Claude Code — jak przestać palić tokeny. Konkretne narzędzia, które oszczędzają więcej: RTK i Claude Context offline.