環境変数

CLAUDE_CODE_STOP_HOOK_BLOCK_CAP

StopまたはSubagentStopフックがターンの終了をブロックできる連続回数の上限を設定します(デフォルトは8回)。

使い方・用途

  • バグのあるフックスクリプトによってClaudeが無限ループに陥り、APIコストが不必要に発生するのを防ぎます。
  • 正常な処理で8回以上の試行が必要な場合に上限を引き上げ、安全に自動化を運用できるようにします。
  • 0を設定すると上限を無効化できますが、課金リスク管理の観点から慎重な設定が推奨されます。
英語原文(公式ドキュメントより)

Maximum number of consecutive times a Stop or SubagentStop hook may block the turn from ending before Claude Code overrides it and ends the turn anyway (default: 8). Set to 0 to disable the cap. Raise this if your hook legitimately needs more iterations to resolve

関連する変更履歴

v2.1.143(1件)

Fixed
ループを繰り返してブロックし続けるStopフックの修正:8回連続でブロックされた場合、警告を表示してターンを終了するようになりました
英語原文を表示
Fixed stop hooks that block repeatedly looping forever — the turn now ends with a warning after 8 consecutive blocks (override via CLAUDE_CODE_STOP_HOOK_BLOCK_CAP)

変更前

Stopフックの設定によっては、Claudeが無限ループに陥り、APIコストが無駄にかかり続けてしまうリスクがありました。

変更後

連続ブロック回数に上限(デフォルト8回、CLAUDE_CODE_STOP_HOOK_BLOCK_CAPで変更可)が設けられ、ループが自動検知されます。

ユーザーへの恩恵

バグのあるフックスクリプトによる意図しない課金の発生を防ぎ、安全に自動化を運用できます。

関連ドキュメント