Claude Code 2.1.295 lar hooks som krasjer blokkere i stedet for å slippe handlingen gjennom
fredag 9. oktober · KI-generert · Kilde: Claude Code på GitHub
Slå på onFailure "block" for hooks du bruker som vakt, slik at en hook som krasjer eller går ut på tid stopper handlingen i stedet for å slippe den gjennom.
Til nå har en command-hook i Claude Code som krasjet eller gikk ut på tid, som regel sluppet handlingen gjennom. Med versjon 2.1.295, som Anthropic la ut på GitHub 8. oktober, kan du snu det: command- og HTTP-hooks får onFailure: "block", og da blokkerer en hook som ikke starter, går ut på tid eller avslutter med en uventet exit-kode. Endringsloggen har over 140 punkter, men dette er det som endrer sikkerhetsmodellen.
Standardoppførselen står i dokumentasjonen. For de fleste hook-hendelser er exit-kode 2 det eneste som blokkerer, og en HTTP-hook som får feilstatus eller ikke når fram, gir også bare en ikke-blokkerende feil.
«Uten gyldig JSON på stdout behandler Claude Code exit-kode 1 som en ikke-blokkerende feil og fortsetter med handlingen» — Anthropic, i hooks-dokumentasjonen for Claude Code
En vakt som krasjer på en manglende avhengighet eller et tregt API, har altså ikke stoppet noe.
Flere punkter i samme versjon gjelder vakter. En mods hook kunne få dypt nestet verktøy-input avkuttet uten feilmelding, så vakten kunne godkjenne innhold den aldri så. Flaggene --tools og --restricted gjaldt heller ikke innebygde verktøy som registreres etter oppstart.
Kjører du agenter headless, er det mer å hente. Remote MCP-servere i headless- og SDK-økter ble stående frakoblet etter brudd på over 15 sekunder, og kobler seg nå til igjen med backoff på opptil 30 sekunder. claude -p kunne miste tidligere svar i tekstutdata når bakgrunnsarbeid startet en ny tur. MCP-verktøybeskrivelser som lastes via tool search, kuttes nå ved 16 384 tegn i stedet for 2 048, og subagenter forhåndslaster maks 32 skills.
Hva bør du gjøre?
- Oppdater til 2.1.295 og legg
onFailure: "block"på command- og HTTP-hooks som skal nekte noe, for eksempel enPreToolUse-vakt mot hemmeligheter i kode. - Test vakten ved å la den feile med vilje, med exit-kode 1 eller en timeout, og sjekk at verktøykallet faktisk stoppes.
- Bruker du
claude -pi skript, kjør dem på nytt etter oppdateringen og se om utdataene nå inneholder svar som manglet før.