Claude Code — jak wymusić wysoką jakość odpowiedzi
Workaroundy na spadek jakości Claude Code po zmianach z lutego/marca 2026. Effort, adaptive thinking, settings.json.
W lutym i marcu 2026 Anthropic cicho zmienił trzy rzeczy w Claude Code, które obniżyły jakość odpowiedzi o 67%. Tu opisuję co się stało, dlaczego i jak to naprawić.
Co się stało
Między 9 lutego a 12 marca 2026 Anthropic wrzucił trzy zmiany naraz:
- Adaptive thinking (9 luty) — model sam decyduje ile „myśli” przy każdym turnie. Wcześniej budżet tokenów na reasoning był stały.
- Domyślny effort spadł do medium (3 marca) — bez żadnego ogłoszenia. Wcześniej default to było
high. - Thinking redaction (5-12 marca) — bloki reasoning zostały ukryte z UI. Nie widać nawet, że model myśli płycej.
Twarde dane
Stella Laurenzo z AMD (inżynier pracujący z MLIR/IREE) przeanalizowała 6 852 sesji, 17 871 bloków thinking i 234 760 tool calls. To nie jest „feels worse”, to statystyka:
- Mediana głębokości thinking spadła z ~2200 do ~720 znaków (67% mniej)
- Stosunek read:edit spadł z 6.6 do 2.0 — model przestał czytać kontekst przed edycją
- Model zaczął fabrykować wersje API, SHA-ki commitów, nazwy pakietów — bo na turnach z zerowym thinking po prostu zmyśla
Boris Cherny (head of Claude Code) potwierdził zmiany i udostępnił workaroundy.
Szybki fix — dwa ustawienia
Jeśli odczuwasz spadek jakości, te dwa ustawienia rozwiązują 90% problemu:
1. Ustaw effort na max
Na początku sesji Claude Code:
/effort max
Albo przez zmienną środowiskową (trwale):
export CLAUDE_CODE_EFFORT_LEVEL=max
Uwaga: max dostępny jest tylko na Opus. Na Sonnet najwyższy to high. Effort max nie persystuje między sesjami — resetuje się po zamknięciu. Jeśli chcesz trwale high, dodaj to do settings.json (szczegóły w podartykule o settings.json).
2. Wyłącz adaptive thinking
export CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1
To wymusza stały budżet tokenów na reasoning zamiast pozwalać modelowi decydować per-turn. Bez tego adaptive thinking potrafi przydzielić zero tokenów na myślenie — co prowadzi do halucynacji.
Oba ustawienia można też wrzucić do settings.json, żeby nie ustawiać ich za każdym razem:
{
"effortLevel": "high",
"env": {
"CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING": "1"
}
}
Plik settings.json wrzuć do ~/.claude/settings.json (globalnie) albo .claude/settings.json (per projekt).
Co kontroluje effort
Effort to nie jest jedno ustawienie — zmienia trzy rzeczy naraz:
| Effort | Głębokość thinking | Apetyt na narzędzia | Długość odpowiedzi |
|---|---|---|---|
low | Pomija reasoning | Minimalny | Krótkie |
medium | Myśli gdy trzeba, pomija gdy nie | Umiarkowany | Zbalansowane |
high | Prawie zawsze myśli | Czyta powiązane pliki sam z siebie | Szczegółowe |
max | Pełny budżet, bez limitu | Eksploruje agresywnie | Najdłuższe (tylko Opus) |
Thinking triggers — słowa w prompcie
Oprócz /effort możesz wpływać na głębokość reasoning słowami w prompcie:
| Słowo | Efekt |
|---|---|
think | Lekki boost reasoning |
think hard | Średni boost, zbliżony do high |
think harder | Extended thinking, zbliżony do max |
ultrathink | Maksymalna głębokość reasoning |
Używaj ich selektywnie na trudne problemy. Na rutynowych zadaniach ultrathink spowolni pracę bez realnej korzyści.
Szczegółowe przewodniki
- Settings.json i zmienne środowiskowe — pełna referenca settings.json, hierarchia konfiguracji, zmienne kontrolujące thinking, kontekst i output
- CLAUDE.md i wzorce pracy — jak pisać CLAUDE.md żeby Claude go nie ignorował, workflow patterns, typowe błędy
Tradeoff: wyłączanie adaptive thinking
Warto wiedzieć o jednym kompromisie. Adaptive thinking na Opus 4.6 włącza „interleaved thinking” — model myśli między wywołaniami narzędzi, nie tylko na początku turnu. Wyłączenie adaptive thinking wyłącza też interleaved thinking, cofając model do starszej ścieżki kodu.
W praktyce dla większości użytkowników stały budżet reasoning z effort high daje lepsze wyniki niż adaptive thinking, które na części turnów przydziela zero tokenów. Ale jeśli pracujesz z bardzo prostymi zadaniami (formatowanie, drobne edycje), adaptive thinking oszczędza czas i tokeny.
Rekomendacja: wyłącz adaptive thinking na złożone sesje inżynieryjne, zostawiaj włączone na rutynowe zadania.
Zależność od pory dnia
Wiele osób (w tym nasz zespół) zauważyło, że jakość spada w europejskich godzinach porannych (8:00-12:00 CET). To pokrywa się z nocnymi godzinami w San Francisco, kiedy Anthropic prawdopodobnie przerzuca zasoby na inne workloady. To nie jest oficjalnie potwierdzone, ale community udokumentowało korelację.
Jeśli masz wybór, praca w godzinach popołudniowych CET (kiedy SF budzi się) zwykle daje lepsze wyniki.
Źródła
- GitHub Issue #42796 — analiza Stelli Laurenzo — 790 punktów na HN, must-read
- Analiza bloków thinking — lilting.ch — deep dive w dane
- DEV Community — techniczny breakdown
- Boris Cherny (Anthropic) na Hacker News — oficjalna odpowiedź
- Adaptive thinking — dokumentacja Anthropic
- Effort levels — dokumentacja Anthropic
- Claude Code best practices — oficjalna dokumentacja
- shanraisshan/claude-code-best-practice — GitHub — 60+ settings, 170+ env vars