Obnova Claude Code: bezpečný režim, /cd a záložné modely
MarkdownDiagnostika problémov Claude Code pomocou bezpečného režimu, príkazu /cd, záložných modelov a obnovy nastavení. Poradie kontrol a pôvodné obmedzenia.
Prečítať celý článok
Praktické materiály o práci s agentmi: Dokumentácia Ailoot.
Čo sa mení v Claude Code v júni 2026?
Kľúčové poznatky
Dňa 8. júna 2026 pridala spoločnosť Anthropic v Claude Code v2.1.169 príznak --safe-mode a príkaz /cd. O dva dni skôr, vo verzii v2.1.166, pribudli záložné modely, až 3 v jednom reťazci. Tieto tri funkcie riešia najčastejší problém vibe coderov: „všetko sa pokazilo, neviem, kto za to môže, a nechcem stráviť hodinu preinštalovaním“.
Predtým, keď sa Claude Code začalo správať čudne—nekonečný indikátor načítavania, pád pri spustení, agent ignoroval pravidlá v CLAUDE.md, hook sa potichu nespúšťal—existovalo len jedno východisko: ručne zakomentovať časti súboru .claude/settings.json, postupne vypínať servery MCP alebo v najhoršom prípade odstrániť ~/.claude a všetko znova nainštalovať. V jednom opísanom prípade sa odstránil adresár ~/.claude a stratila sa konfigurácia serverov MCP, ktorej zostavenie trvalo hodinu a pol. Neskôr sa ukázalo, že za to mohol jeden riadok v CLAUDE.md a že sa dal nájsť za 10 sekúnd—vyšlo to však najavo až po úplnej obnove.
V júni 2026 zaviedla spoločnosť Anthropic tri mechanizmy, ktoré tento scenár menia. Stručný prehľad toho, čo pribudlo a kedy:
| Verzia | Dátum | Čo pribudlo |
|---|---|---|
| 2.1.166 | 6. júna 2026 | Nastavenie fallbackModel + príznak --fallback-model pre interaktívne relácie |
| 2.1.169 | 8. júna 2026 | Príznak --safe-mode a premenná prostredia CLAUDE_CODE_SAFE_MODE, príkaz /cd |
| 2.1.176 | 12. júna 2026 | Oprava: /cd a prepínanie worktree prestali zobrazovať starú vetvu git |
Nižšie je každý mechanizmus vysvetlený krok za krokom spolu s poradím, v akom ich použiť, keď sa relácia Claude Code vymkne spod kontroly.
Čo najčastejšie pokazí Claude Code?
Kľúčové poznatky
Podľa opísaných skúseností sa Claude Code vibe coderom zvyčajne pokazí pre jednu zo štyroch príčin: príliš rozsiahly CLAUDE.md s protichodnými pravidlami, hook s nesprávnym návratovým kódom, server MCP, ktorý zlyhá bez hlásenia, alebo prekrývajúce sa nastavenia v troch úrovniach súboru settings.json. Na vine je jeden konkrétny prvok, diagnostika trvá niekoľko minút, no panika ľudí núti hneď siahnuť po rm -rf.
V opísanom príklade mal súbor CLAUDE.md pôvodne 80 riadkov—a mesiac fungoval. V druhom mesiaci si všimli, že Claude raz za týždeň poruší každé nastavené pravidlo: dotkne sa .env, spustí git push --force, prehrabáva sa v node_modules. Nie zo zlomyseľnosti—jednoducho zabudne. Raz sa odstránil .gitignore a dôvod nebol hneď jasný. Tomuto scenáru sa podrobnejšie venuje sprievodca súborom CLAUDE.md.
Keď má CLAUDE.md viac než 400 riadkov, začína potichu spôsobovať problémy: pri spustení relácie zaberá významnú časť kontextového okna a dôležité pokyny sa strácajú medzi vedľajšími. Claude súbor formálne stále číta, takže zvonka to vyzerá, akoby „pravidlá existovali, ale nefungovali“—čo je typický príznak príliš rozsiahlej zmluvy.
Druhým častým zdrojom problémov sú hooky. Claude Code hooks majú jednu zvláštnosť, ktorú Anthropic dostatočne nezdôrazňuje.
To znamená, že sys.exit(1) v hooku Python (alebo akékoľvek konvenčné unixové označenie „zlyhalo s chybou“) Claude nezastaví. Blokuje iba kód 2. V opísanom prípade sa hook považoval za „prísny zákaz“, no v praxi len zaznamenal sťažnosť a povolil akciu.
Servery MCP sú treťou vrstvou a zlyhávajú svojím vlastným spôsobom.
Príznak často vyzerá rovnako: príkazy MCP sú dostupné, ale vracajú failed bez výpisu zásobníka. Ďalšie informácie o konfigurácii MCP a pridávaní serverov pomocou príkazu claude mcp add nájdete v samostatnom sprievodcovi.
Štvrtým zdrojom problémov je trojúrovňová hierarchia súboru settings.json. Máte ~/.claude/settings.json (používateľská úroveň), .claude/settings.json v koreňovom adresári projektu (projektová úroveň), .claude/settings.local.json (lokálna úroveň) a prípadne spravované nastavenia od firemného správcu. Kombinujú sa podľa pravidiel priority. Keď niekto pridá server MCP na projektovej úrovni, zatiaľ čo na používateľskej úrovni máte podobnú položku s inou konfiguráciou spustenia, vznikne tichý konflikt, ktorý vyzerá, akoby „Claude Code nefungoval“.
Ako funguje --safe-mode a čo vypína?
Kľúčové poznatky
Príkaz claude --safe-mode spustí Claude Code so všetkými prispôsobeniami úplne vypnutými: CLAUDE.md, plugins, skills, hooks, servery MCP, používateľské príkazy, agents, štýly výstupu, workflows a klávesové skratky. Autorizácia, výber modelu, vstavané nástroje a oprávnenia zostávajú aktívne. Je to diagnostický nástroj: ak problém v bezpečnom režime zmizne, na vine je jedna z vrstiev, ktoré ste pridali.
Pôvodné znenie v zázname zmien verzie v2.1.169 od Anthropic znie:
Pridaný príznak
--safe-mode(aCLAUDE_CODE_SAFE_MODE) na spustenie Claude Code s vypnutými prispôsobeniami (CLAUDE.md, plugins, skills, hooks, servery MCP) na diagnostické účely.
Anthropic to objasňuje v dokumentácii ku konfigurácii modelu:
Ak chcete overiť, či sú na vine prispôsobenia, spustite reláciu pomocou `claude --safe-mode`, ktorý vypne
CLAUDE.md, skills, servery MCP a hooks. Stav git a názvy adresárov sa nepovažujú za prispôsobenia a zostávajú dostupné.
Je to diagnostický nástroj, nie „čisté prostredie“. Bezpečný režim pomáha zodpovedať jednu otázku: spočíva problém v predvolenom správaní Claude Code alebo v pridaných prispôsobeniach? Je to súčasť kontextového inžinierstva—riadenia toho, čo Claude v danom okamihu vidí a nevidí. Ak v bezpečnom režime všetko funguje, treba skontrolovať jednotlivé vrstvy pomocou binárneho vyhľadávania. Ak to nefunguje, problém sa týka samotnej inštalácie, autorizácie, siete alebo infraštruktúry; v takom prípade má zmysel pozrieť sa na claude doctor a logy.
Čo bezpečný režim vypína (oficiálny zoznam Anthropic—5 hlavných vrstiev):
CLAUDE.mdna všetkých úrovniach (používateľ / projekt)- Plugins
- Skills
- Hooks
- Servery MCP
Čo zostáva funkčné:
- Autorizácia (vaša relácia OAuth alebo kľúč API)
- Výber modelu (
--model sonnet,--model opus) - Vstavané nástroje (Read, Write, Bash, Grep a ďalšie)
- Oprávnenia
- Stav git
- Názvy adresárov
Dôležitá podrobnosť: bezpečný režim nevypína spravované nastavenia/politiky firemného správcu. Ak pracujete v tíme, kde Bedrock GovCloud alebo konfigurácia MDM nastavuje availableModels, tieto obmedzenia zostanú v platnosti—bezpečný režim vypína iba vaše prispôsobenia, nie firemné politiky.
Ako izolovať vrstvu a nájsť vinníka za 60 sekúnd?
Kľúčové poznatky
Krok 1: spustite claude --safe-mode v rovnakom priečinku, v ktorom sa vyskytol problém. Ak funguje, problém je v prispôsobeniach; zapínajte ich postupne: CLAUDE.md -> hooks -> MCP -> skills. Ak nefunguje ani v bezpečnom režime, problém sa týka autorizácie, verzie, siete alebo operačného systému. V takom prípade spustite claude doctor na automatickú diagnostiku a nedotýkajte sa rm -rf.
Diagnostický postup pre prípad, keď Claude Code „prestalo počúvať“. Minimálna verzia pre všetky nasledujúce príkazy je Claude Code v2.1.169. Ak máte staršiu verziu, najprv ju aktualizujte (npm update -g @anthropic-ai/claude-code alebo pomocou natívneho inštalátora Anthropic).
- Otvorte rovnaký priečinok, v ktorom sa vyskytol problém.
- Spustite
claude --safe-mode. - Ak sa spustí bez problémov, skontrolujte pôvodnú požiadavku. Fungovala? Potom je na vine jedna z vrstiev. Prejdite na krok 4.
- Ak v bezpečnom režime stále nefunguje, nedotýkajte sa konfigurácií. Najprv spustite
claude doctor; skontrolujte autorizáciu, verziu a konfliktné inštalácie.
Keď sa bezpečný režim spustí bez problémov, zapínajte jednotlivé vrstvy postupne, počnúc najpravdepodobnejším vinníkom. Poradie podľa opísaných skúseností:
CLAUDE.md. Spustiteclaudebez bezpečného režimu, ale súbor dočasne premenujte:mv CLAUDE.md CLAUDE.md.bak. Ak potom všetko funguje, príčinou je tento súbor. Následne môžete použiť binárne vyhľadávanie: ponechajte polovicu riadkov a otestujte ju.- Hooks. Otvorte
.claude/settings.jsona v častihooksdočasne nastavte[]. Reštartujteclaude. Funguje? Potom je na vine jeden z hookov. Zapínajte ich po jednom. - Servery MCP. Podobne v súbore
~/.claude.jsonalebo.claude/settings.jsondočasne nastavte prázdny objekt v častimcpServers, reštartujte a skontrolujte výsledok. - Skills. Presuňte
.claude/skills/do dočasného priečinka. Spustite aplikáciu a skontrolujte ju.
Čo znamená „dočasné premenovanie“: počas diagnostiky sa súbory neodstraňujú. Pomocou mv alebo git stash môžete všetko obnoviť jediným príkazom, ak sa ukáže, že daná vrstva nebola na vine.
Ako zmeniť pracovný priečinok pomocou /cd bez straty kontextu?
Kľúčové poznatky
Príkaz /cd <path> v Claude Code 2.1.169+ zmení pracovný priečinok v aktívnej relácii bez straty vyrovnávacej pamäte promptu. Hodí sa, keď je konfigurácia aktuálneho projektu poškodená: môžete prejsť do čistého priečinka, skontrolovať, či Claude funguje, a vrátiť sa. Predtým ste museli reláciu ukončiť a spustiť znova.
Zo záznamu zmien v2.1.169 z 8. júna:
Pridaný príkaz
/cdna prepnutie relácie do nového pracovného priečinka bez resetovania vyrovnávacej pamäte promptu uprostred relácie.
Prečo je to užitočné pri riešení problémov. Predstavte si, že ste v priečinku projektu ~/work/myapp a Claude Code sa správa čudne. Predtým ste mohli overiť, „či vôbec funguje“, iba tak, že ste reláciu zavreli, prešli do iného priečinka a spustili ju znova. Prišli ste o kontext, históriu aj zahriatu vyrovnávaciu pamäť promptu. Teraz:
# In the same session:
/cd ~/sandbox/test
Claude prejde do nového priečinka a prečíta jeho CLAUDE.md (ak existuje) ako správu, nie ako náhradu systémového promptu—vyrovnávacia pamäť sa teda zachová. Ak všetko funguje v ~/sandbox/test, je jasné, že problém spočíval v konfigurácii priečinka ~/work/myapp.
Dňa 12. júna opravila verzia v2.1.176 nepríjemnú regresiu—príkaz /cd zobrazoval starú vetvu git až do úplného reštartu. Ak máte staršiu verziu, buď ju aktualizujte, alebo prvých niekoľko správ po prepnutí jednoducho ignorujte git status—stav sa zosúladí.
Ako nakonfigurovať záložné modely pre chybu 529?
Kľúčové poznatky
Vo verzii v2.1.166 pridala spoločnosť Anthropic nastavenie fallbackModel—reťazec až 3 modelov, ktoré sa skúšajú postupne, keď je primárny model preťažený alebo nedostupný. Reťazec sa aktivuje iba pri preťažení a neopakovateľných chybách servera. Chyby autorizácie, fakturácie, limitu požiadaviek a prenosu reťazec záložných modelov neaktivujú—riadia sa bežnou logikou opakovaných pokusov.
V opísanom scenári raz týždenne beží v projekte dlhá úloha na Opus; po 10 minútach API vráti chybu 529 Overloaded a relácia zlyhá. Predtým ste museli buď čakať, alebo ručne prepnúť na Sonnet pomocou --model sonnet a prísť o celý zahriaty kontext. Vo veľkom adresári business/ s usporiadaním druhého mozgu si to vyžaduje približne dvadsať minút práce. Teraz je k dispozícii riadny mechanizmus.
Presný citát z oficiálnej dokumentácie:
Keď je primárny model preťažený, nedostupný alebo vráti inú neopakovateľnú chybu servera, Claude Code môže namiesto zlyhania požiadavky prepnúť na záložný model. Chyby autorizácie, fakturácie, limitu požiadaviek, veľkosti požiadavky a prenosu prepnutie nikdy neaktivujú—riadia sa bežným postupom opakovaných pokusov a spracovania chýb.
Samostatne, ako funguje reťazec:
Nakonfigurujte jeden alebo viac záložných modelov a Claude Code ich skúša v danom poradí, pričom pri prepnutí zobrazí upozornenie. Prepnutie platí iba pre aktuálny ťah—nasledujúca správa znova skúsi primárny model. Po odstránení duplicitných položiek môže reťazec obsahovať najviac tri modely; ďalšie položky sa ignorujú.
Nastaviť ho možno dvoma spôsobmi. Cez CLI:
claude --fallback-model sonnet,haiku
Cez súbor ~/.claude/settings.json:
{
"fallbackModel": ["claude-sonnet-4-6", "claude-haiku-4-5"]
}
Osobitná poznámka k limitom požiadaviek. Anthropic zámerne neposiela chybu 429 do reťazca, aby ste limit požiadaviek nemohli obísť prepnutím na ďalší model. Záložný model sa použije iba vtedy, keď je primárny model preťažený, nedostupný alebo vracia neopakovateľnú chybu servera (napríklad 529 Overloaded). Limity požiadaviek sa riadia bežnou logikou opakovania a exponenciálneho čakania.
Ešte jedna poznámka—12. júna opravila verzia v2.1.174 regresiu: kompakcia nerešpektovala --fallback-model. Ak máte dlhú reláciu a počas preťaženia sa skompaktuje, pred touto opravou sa záložný model nezavolal. Ak pracujete s dlhými reláciami (/compact, /loop cez noc), aktualizujte aspoň na v2.1.174.
Čo opraviť, keď je na vine CLAUDE.md, hook, MCP alebo skill?
Kľúčové poznatky
Keď bezpečný režim identifikuje problémovú vrstvu, oprava závisí od danej vrstvy. V prípade CLAUDE.md použite binárne vyhľadávanie alebo sa vráťte k hotovej šablóne s menej než 200 riadkami. Pri hooku skontrolujte návratový kód (2 blokuje, 1 nie) a logiku. Pri MCP odstráňte jeden server a skontrolujte výsledok. V prípade skillu skontrolujte, či súbor SKILL.md nie je v rozpore s CLAUDE.md.
Konkrétne stratégie pre jednotlivé vrstvy.
Ak je na vine CLAUDE.md
Otvorte súbor a skontrolujte jeho veľkosť. Podľa opísaných skúseností udržujte aktívny súbor CLAUDE.md na maximálne 200 riadkoch; zvyšok presuňte do smerovacích a podporných dokumentov vedľa projektu (úplná štruktúra druhého mozgu je v sprievodcovi druhým mozgom). Ak má viac než 400 riadkov, takmer určite je na vine. Postup:
- Vytvorte zálohu:
cp CLAUDE.md CLAUDE.md.full. - Vráťte sa ku krátkej funkčnej šablóne. Hotovú nájdete v sprievodcovi „Ako nakonfigurovať CLAUDE.md“.
- Reštartujte Claude Code. Skontrolujte výsledok.
- Ak funguje, obnovujte pravidlá v malých blokoch po 10–20 riadkoch a po každom bloku všetko skontrolujte.
- Nájdite blok, ktorý narúša správanie. Prepíšte ho na hook so správnym návratovým kódom (návratovým kódom hookov sa zaoberá nasledujúca podsekcia tejto H2).
Ak je na vine hook
Hlavná otázka je, či je návratový kód správny. Hooky Claude Code používajú:
- Kód 0 — všetko je v poriadku; akcia pokračuje.
- Kód 1 — chyba, ale neblokuje. Claude pokračuje, akoby sa nič nestalo.
- Kód 2 — blokujúca chyba. Akciu zastaví iba tento kód.
Ak ste do shell hooku napísali sys.exit(1) alebo exit 1 v domnení, že akciu blokujete, tento kód v Claude Code funguje ako varovný záznam a akciu nezastaví. Zmeňte ho na 2. Podrobnosti o hookoch a ich konfigurácii bez tejto chyby nájdete v samostatnom sprievodcovi.
Druhým častým prípadom je hook, ktorý vracia neplatný JSON na stdout. Claude Code analyzuje odpoveď hooku ako JSON a ak sa v nej nachádzajú nadbytočné údaje (záznam, indikátor priebehu, emoji), hook sa považuje za zlyhaný a akcia pokračuje. Pravidlo: stdout obsahuje iba JSON; všetko ostatné patrí na stderr.
Tretím prípadom je hook, ktorý číta niečo z ~/.claude/, kam mu bezpečný režim znemožnil prístup. Je to bežný scenár; opravte ho nie úpravou hooku, ale kontrolou os.environ.get('CLAUDE_CODE_SAFE_MODE') na začiatku a ukončením s kódom 0.
Ak je na vine server MCP
Príznaky: príkazy MCP sú dostupné, ale vracajú failed bez jasného výpisu zásobníka. Postup:
- Spustite
claude mcp list—ktoré servery sú definované? - Postupne vypínajte servery v
~/.claude.json: premenujte kľúčclaude-server-Ana_claude-server-A(tým sa server deaktivuje bez odstránenia). - Reštartujte
claude. Skontrolujte, ktoré volania fungujú. - Keď nájdete vinný server, skontrolujte jeho log:
claude mcp logs <name>. - Ak ide o server tretej strany (
@modelcontextprotocol/server-postgresa podobné), skontrolujte, či nemá novú verziu. Ekosystém MCP je stále turbulentný; servery sa po aktualizáciách Claude Code pravidelne pokazia.
Ak narazíte na „pády pri spustení, a to iba pri dvoch MCP“, porovnajte správanie v bezpečnom režime bez MCP.
Ak je na vine skill
Skill tvorí súbor SKILL.md a kód v .claude/skills/<name>/. Medzi príznaky patrí, že Claude skill ignoruje, použije ho v nesprávnom čase alebo ho použije, ale vytvorí nekvalitný výstup. Postup:
- Otvorte
SKILL.md. Skontrolujte opis—mal by mať 1–2 vety a konkrétne uvádzať, kedy sa má skill použiť. Ak hovorí „univerzálny pomocník na všetko“, Claude nevie, kedy ho má použiť. - Skontrolujte rozpory so súborom
CLAUDE.md. AkCLAUDE.mdhovorí „vždy píšte tests“, ale opis skillu hovorí „používajte na rýchle prototypovanie bez tests“, ide o konflikt. - Ak skill používa externé príkazy (npm, python, git), skontrolujte, či sú dostupné v systémovej premennej PATH. Skill má vlastné minimálne prostredie.
Ak bezpečný režim nepomohol: diagnostika a uchovanie stavu pred opravou
Kľúčové poznatky
Ak zlyháva aj bezpečný režim, medzi možnosti patria inštalácia, autorizácia, sieť a infraštruktúra. Spustite claude doctor a prezrite dôkazy. Nerozhodná správa neoprávňuje mazať nastavenia či relácie: najprv uchovajte a overte celý stav a potom opravujte iba diagnostikovanú inštaláciu.
Odstránenie používateľského stavu nie je diagnostická skratka. Nasledujúcimi kontrolami určte chybu; pri nerozhodnom výsledku uchovajte dôkazy a skúmajte ďalej. Oprava inštalácie začína overenou zálohou a zachováva existujúci účet aj identitu úložiska prihlasovacích údajov. Poradie:
claude doctor— automatická diagnostika. Anthropic vo svojej dokumentácii uvádza:
Ak `claude --version` funguje, ale niečo iné sa pokazilo, spustite `claude doctor` a vytvorte automatickú diagnostickú správu.
- Skontrolujte, či nemáte konfliktné inštalácie. Mnohí majú súčasne nainštalovanú globálnu verziu cez npm aj natívny inštalátor:
Viaceré inštalácie Claude Code môžu viesť k nesúladu verzií alebo neočakávanému správaniu.
- Skontrolujte, či
ANTHROPIC_API_KEYnepreberá vašu reláciu OAuth. Toto je častá príčina hlásenia „nič nefunguje, platnosť kľúča vypršala“:
Keď je nastavený `ANTHROPIC_API_KEY` a máte ho potvrdený, Claude Code použije tento kľúč namiesto prihlasovacích údajov OAuth vášho predplatného.
Riešenie: spustite unset ANTHROPIC_API_KEY v aktuálnej relácii shellu alebo ho odstráňte zo súboru ~/.zshrc / ~/.bashrc.
- Opravujte iba diagnostikou určenú inštaláciu; najprv uchovajte celý používateľský stav. Zlyhanie bezpečného režimu ani nerozhodný doctor nedokazujú potrebu odstránenia dát. Pred konzistentnou zálohou zastavte všetky relácie Claude a ostatné zapisujúce procesy. Zachovajte rovnaký účet Unix, HOME, úložisko prihlasovacích údajov OS a účet Anthropic; nerotujte kľúče ani nevytvárajte náhradnú identitu.
Nasledujúca záloha je pre Linux s GNU tar. V macOS či Windows použite nástroj zachovávajúci ACL, rozšírené atribúty, odkazy a metadáta danej platformy a pred pokračovaním overte obnovu; nepredpokladajte podporu príznakov GNU. Archív obsahuje prihlasovacie údaje a prepisy relácií: držte ho súkromne a mimo repozitárov.
# Run as the same user who owns the Claude state, after stopping writers.
set -eu
umask 077
backup_dir=$(mktemp -d "$HOME/.claude-recovery-XXXXXXXX")
set --
if [ -e "$HOME/.claude" ] || [ -L "$HOME/.claude" ]; then
set -- "$@" .claude
fi
if [ -e "$HOME/.claude.json" ] || [ -L "$HOME/.claude.json" ]; then
set -- "$@" .claude.json
fi
[ "$#" -gt 0 ] || exit 1
tar --acls --xattrs --numeric-owner -cpf "$backup_dir/claude-state.tar" -C "$HOME" "$@"
tar --acls --xattrs --compare -f "$backup_dir/claude-state.tar" -C "$HOME"
sha256sum "$backup_dir/claude-state.tar" > "$backup_dir/claude-state.sha256"
(cd "$backup_dir" && sha256sum -c claude-state.sha256)
mkdir "$backup_dir/restore-check"
tar --acls --xattrs -xpf "$backup_dir/claude-state.tar" -C "$backup_dir/restore-check"
tar --acls --xattrs --compare -f "$backup_dir/claude-state.tar" -C "$backup_dir/restore-check"
printf 'Verified recovery directory: %s\n' "$backup_dir"
Všetky príkazy musia uspieť. Archív zahŕňa celý existujúci strom .claude, aj ignorované či nesledované relácie a pluginy, a .claude.json, nie iba nastavenia sledované Gitom. Pri symbolickom odkaze či dátach v inom nastavenom umiestnení zastavte a do rovnakej overenej zálohy zahrňte vyriešený cieľ; záloha samotného odkazu nezálohuje cieľ. Archív neobsahuje macOS Keychain ani iné externé úložisko prihlasovacích údajov, preto ich identity zachovajte na mieste.
Ak diagnostika výslovne určí starú lokálnu inštaláciu ako konfliktnú kópiu, presuňte iba ju do súkromného obnovovacieho priečinka namiesto mazania konfigurácie a relácií:
# Use the verified backup_dir from the previous block.
if [ -d "$HOME/.claude/local" ]; then
mv "$HOME/.claude/local" "$backup_dir/legacy-local"
fi
Inštaláciu npm odstráňte iba pri diagnostikou potvrdenom konflikte a zámere ponechať natívnu. Potom použite zdokumentovaný natívny inštalátor bez mazania .claude či .claude.json:
curl -fsSL https://claude.ai/install.sh | bash
claude --version
claude doctor
Vo Windows zostáva natívny inštalačný príkaz:
irm https://claude.ai/install.ps1 | iex
Obnovujte osobitne. Znovu zastavte zapisujúce procesy. Overte kontrolný súčet archívu, rozbaľte ho do prázdneho obnovovacieho priečinka ako vyššie a pred použitím súborov úspešne porovnajte. Ak treba vrátiť presunutú starú inštaláciu, najprv potvrďte neprítomnosť $HOME/.claude/local a potom vráťte $backup_dir/legacy-local presne tam. Diagnostikovaný súbor nastavení obnovte z overenej extrakcie až po uchovaní aktuálnej náhrady; celý strom neprekrývajte naslepo. Relácie, MCP a pôvodná identita zostávajú zachované. Samotná snímka Gitu nepokrýva ignorované či nesledované prepisy, prihlasovacie údaje ani súborové metadáta.
Čo NEROBIŤ, keď Claude Code nefunguje?
Kľúčové poznatky
Šesť antipatternov z opísaných prípadov podpory: meniť kľúče pred diagnostikou, vykonať úplnú obnovu hneď ako prvý krok, panikáriť pre chybu UI v hooku, zvýšiť návratový kód hooku pred opravou logiky, upravovať CLAUDE.md bez bezpečnostnej poistky v podobe bezpečného režimu a veriť, že „Claude opraví vlastné MCP“. Každý z nich stojí hodiny a ani jeden nie je potrebný.
Nemeňte kľúče pred diagnostikou
V 90 % prípadov je príčinou „nefungujúcej autorizácie“ buď ANTHROPIC_API_KEY, ktorý preberá predplatné, chyba UI hooku alebo zlyhanie MCP. Obnovenie kľúčov nič z toho nevyrieši, ale spôsobí ďalšiu hodinu výpadku: musíte odvolať starý kľúč, vydať nový, znovu nakonfigurovať CI a aktualizovať premenné v produkcii. Najprv spustite claude --safe-mode. Funguje? Potom problém spočíva v prispôsobeniach a kľúčov sa netreba dotýkať.
Nerobte úplnú obnovu pred použitím bezpečného režimu
Bezpečný režim vytvorí izolované prostredie za 1 sekundu. Vymazanie .claude môže zničiť relácie, konfiguráciu MCP a iný nesledovaný stav. Najprv diagnostikujte, overte súkromnú zálohu a vratne presúvajte iba skutočne dotknutú vrstvu inštalácie či konfigurácie.
Nepanikárte pre chybu UI v hooku
Skôr než začnete čokoľvek opravovať, overte, či sa hook naozaj spustil (záznamom do stderr alebo explicitným výpisom), namiesto toho, aby ste sa spoliehali na vizuálny indikátor.
Nezvyšujte návratový kód hooku skôr, než opravíte logiku
Keď blokovací hook neblokuje, je lákavé nastaviť exit 2 a považovať vec za vybavenú. Je to funkčná záplata, ale zakrýva ďalší problém: ak blokovanie celý mesiac nefungovalo, prešlo všetko, čo mal hook zakázať. Najprv prejdite históriu git a zistite, čo presne uniklo. Potom pridajte blokovanie. Samotné zavedenie bloku inak nevráti späť to, čo sa stalo predtým.
Neupravujte produkčný CLAUDE.md bez bezpečnostnej poistky v podobe bezpečného režimu
V opísanom prípade upravíte CLAUDE.md, Claude sa začne správať čudne, spustíte git diff a zistíte, že niekto v ten večer do repozitára pridal aj server MCP a hook. Obviníte svoju úpravu, vrátite ju späť, ale Claude sa stále správa čudne. Pravidlo: pred príkazom git revert spustite claude --safe-mode. Ak problém pretrváva aj v bezpečnom režime, vaša úprava s ním nesúvisela a netreba ju vracať späť.
Neverte, že „Claude opraví vlastné MCP“
Typický scenár: požiadate Claude, aby „pridalo konkrétny nástroj na server MCP“, Claude prepíše funkčnú konfiguráciu, všetko sa pokazí a potom Claude niekoľko ťahov hľadá príčinu škody, ktorú samo spôsobilo—pričom vyčerpá limit relácie. Keď MCP nefunguje, získajte konfiguráciu ručne; nenechávajte to na agenta. Časť jeho nástrojov tiež funguje cez MCP a pokazené MCP znamená pokazený diagnostický nástroj.
Kam pokračovať po oprave?
Kľúčové poznatky
Keď obnovíte Claude Code, pridajte preventívne opatrenia, aby sa problém neopakoval. Minimálne nastavte disableBypassPermissionsMode: "disable" v používateľských nastaveniach, pridajte hooky blokujúce .env a git push --force a sandbox pre dlhé autonómne spustenia. Sprievodca prevenciou je doplnkom tohto článku.
Po analýze incidentu sa nevracajte hneď k práci. Najprv pridajte preventívne opatrenia, aby sa incident neopakoval. Na druhý mozog (priečinok business/ so štruktúrou projektu) a CLAUDE.md môžete minúť hodiny a ich ručné obnovenie je náročné—je to dobrý dôvod konať. Minimálna sada:
~/.claude/settings.jsons nastavenímpermissions.disableBypassPermissionsMode: "disable"—architektonický zákaz režimu obchádzania, takže náhodne spustený--dangerously-skip-permissionsjednoducho nebude fungovať.- Hooky pre
Read(./env*),Bash(git push --force),Write(./node_modules/**)—veci, ktoré treba zachytiť na úrovni zákazu, nie želania. - Konfigurácia sandboxu pre dlhé autonómne spustenia (
/loop,/schedule). /compacts vlastnými pravidlami určujúcimi, čo sa má odstrániť z kontextu, aby sa Claude nevyčerpalo.
Úplná schéma ochrany v štyroch vrstvách je v sprievodcovi „Ako nakonfigurovať Claude Code, aby vám cez noc nepokazilo projekt“. Jeden sprievodca pokrýva prevenciu pred spustením /loop; druhý sa venuje obnove po tom, ako /loop už niečo pokazil. Logická dvojica.
Zdroje
- Záznam zmien Anthropic Claude Code - oficiálny záznam zmien opisujúci v2.1.166 (
fallbackModel), v2.1.169 (bezpečný režim, /cd), v2.1.174 (oprava kompakcie), v2.1.176 (oprava zobrazovania vetvy git v /cd). - Dokumentácia Anthropic – Konfigurácia modelu - časti „Reťazce záložných modelov“, „Kontrola príčiny aktivácie záložného modelu“, „Nastavenie modelu“.
- Dokumentácia Anthropic – Riešenie problémov s inštaláciou a prihlásením - konfliktné inštalácie,
claude doctor, preberanie relácie premennouANTHROPIC_API_KEY.
Praktický materiál: Dokumentácia Ailoot.
Ďalšie materiály a nástroje: Ailoot.
Viac podrobností
Otázky a odpovede: Obnova Claude Code: bezpečný režim, /cd a záložné modely
Znamená zlyhanie bezpečného režimu potrebu vymazať ~/.claude?
Nie. Stále treba preskúmať inštaláciu, autorizáciu, sieť a infraštruktúru. Nerozhodný doctor nedokazuje potrebu odstránenia nastavení či relácií; opravujte iba diagnostikovanú vrstvu.
Čo uchovať pred opravou inštalácie?
Zastavte zapisujúce procesy a zálohujte celý stav Claude vrátane relácií, pluginov/MCP, ignorovaných súborov a metadát. Pred pokračovaním overte súčet aj extrakciu, zachovajte účet a úložisko prihlasovacích údajov a obnovujte iba diagnostikovanú vrstvu bez slepého prekrytia aktuálneho stavu.