Claude Code Hooks

103件の変更 / 41バージョン

v2.1.111 (1件)

Changed
Windowsにおいて CLAUDE_ENV_FILE および SessionStart フックで生成された環境変数が正しく適用されるようになりました。
英語原文を表示
Windows: CLAUDE_ENV_FILE and SessionStart hook environment files now apply (previously a no-op)

変更前

Windows環境ではこれらが機能しておらず、仮想環境の自動有効化やカスタム環境変数の永続化が動作していませんでした。

変更後

Linux/macOSと同様の動作がサポートされ、フックを利用した高度なワークフロー構築が可能になりました。

ユーザーへの恩恵

Windows開発者も、プロジェクト開始時にPythonの仮想環境を自動でアクティベートするといった効率化の恩恵を受けられます。

関連ドキュメント

v2.1.110 (2件)

Fixed
PermissionRequestフックによる入力更新後にpermissions.denyルールが再チェックされない問題、およびバイパス設定が制限を無視できる問題を修正
英語原文を表示
Fixed PermissionRequest hooks returning updatedInput not being re-checked against permissions.deny rules; setMode:'bypassPermissions' updates now respect disableBypassPermissionsMode

変更前

フック機能で入力を書き換えた際、禁止ルールをすり抜けてしまう可能性がありました。また、管理ポリシーで禁止されている場合でも、フックから「バイパスモード」へ移行できてしまうセキュリティ上の懸念がありました。

変更後

更新された入力に対して再度厳格な権限チェックが行われ、管理者設定による「バイパス禁止」も常に尊重されるようになりました。

ユーザーへの恩恵

組織で設定したセキュリティポリシーをバイパスされるリスクが解消され、フック機能を安心して業務に組み込めます。

Fixed
ツール実行失敗時にPreToolUseフックから提供された追加コンテキスト(additionalContext)が失われる問題を修正
英語原文を表示
Fixed PreToolUse hook additionalContext being dropped when the tool call fails

変更前

フックを使ってAIに補足情報を与えていても、その直後のツール実行が一度失敗すると、せっかくの補足情報が消えてしまい、AIが状況を正しくリトライできないことがありました。

変更後

ツール実行の成否にかかわらず、フックによって注入されたコンテキストが正しく保持され、AIに共有され続けるようになりました。

ユーザーへの恩恵

失敗の原因をAIがフックの情報を元に深く理解し、より的確に再試行できるようになるため、エラーからの自己復旧率が高まります。

関連ドキュメント

v2.1.105 (1件)

Added
PreCompactフックのサポートを追加し、コード2の終了ステータスまたは特定のJSON返却によってコンパクションをブロックできるようになりました
英語原文を表示
Added PreCompact hook support: hooks can now block compaction by exiting with code 2 or returning {"decision":"block"}

変更前

コンテキストの圧縮(コンパクション)が発生する際、ユーザーがその実行をプログラムで制御したり、特定の条件下で阻止したりする手段がありませんでした。

変更後

PreCompactフックにより、スクリプトがコード2で終了するか「decision:block」を返すことで、圧縮の実行を一時的に止めることが可能になりました。

ユーザーへの恩恵

重要な会話の文脈が自動圧縮で失われるのを防ぎたい自動化スクリプトや、特定のワークフローにおいて、コンテキストの整合性を維持しやすくなります。

関連ドキュメント

v2.1.101 (5件)

Improved
settings.json 内に未定義のフックイベント名があっても、ファイル全体が無視されないように設定の耐性を向上
英語原文を表示
Improved settings resilience: an unrecognized hook event name in settings.json no longer causes the entire file to be ignored

変更前

将来のアップデートで追加されたフック名やタイポが1箇所でもあると、settings.json の設定全体が無効化されてしまう問題がありました。

変更後

認識できない個別の設定のみがスキップされるようになり、他の有効な設定は正しく読み込まれます。

ユーザーへの恩恵

設定ミスによるツール全体の機能不全を防ぎ、より安全にカスタマイズを行えるようになります。

Improved
管理設定で allowManagedHooksOnly が有効な場合でも、強制有効化されたプラグインのフックが実行されるよう改善
英語原文を表示
Improved plugin hooks from plugins force-enabled by managed settings to run when allowManagedHooksOnly is set

変更前

組織のポリシーでユーザーによるフックの追加を制限していると、IT管理者が配布したプラグイン内の必要なフックまでブロックされてしまうことがありました。

変更後

管理者が承認したプラグイン由来のフックは、制限下でも適切に実行されるようになります。

ユーザーへの恩恵

セキュリティを確保しつつ、組織で推奨される自動化ツールを確実に動作させることができます。

関連ドキュメント

Fixed
permissions.deny ルールが PreToolUse フックの permissionDecision: "ask" よりも優先されるよう修正
英語原文を表示
Fixed permissions.deny rules not overriding a PreToolUse hook's permissionDecision: "ask" — previously the hook could downgrade a deny into a prompt

変更前

設定ファイルで特定のコマンドを「拒否(deny)」していても、フックの設定によってはユーザーに「確認(ask)」を求めてしまい、拒否ルールをバイパスできてしまう場合がありました。

変更後

「拒否」ルールが常に最優先されるようになり、フックによって承認待ちにダウングレードされることがなくなります。

ユーザーへの恩恵

セキュリティ設定の優先順位が明確になり、意図しないツールの実行をより確実に防止できます。

Fixed
claude -w <name> で、過去のセッションのクリーンアップ失敗によりディレクトリが残っていると「already exists」エラーで失敗する問題を修正
英語原文を表示
Fixed claude -w <name> failing with "already exists" after a previous session's worktree cleanup left a stale directory

変更前

前回のセッションが正常に終了せず、一時的な作業ツリー(ワークツリー)のディレクトリが残っていると、同じ名前で作業を開始できないことがありました。

変更後

古い残存ディレクトリを適切に処理し、新しいセッションをスムーズに開始できるようになります。

ユーザーへの恩恵

クラッシュ後の再開や、同一名での繰り返し作業におけるワークフローの停止を防げます。

関連ドキュメント

Fixed
RemoteTriggerツールのrunアクションが空のボディを送信し、サーバーに拒否される問題を修正
英語原文を表示
Fixed RemoteTrigger tool's run action sending an empty body and being rejected by the server

変更前

RemoteTriggerツールを使用してリモートでコマンドを実行しようとした際、リクエストボディが空の状態で送信されていました。

変更後

runアクション実行時に正しいデータが送信されるようになり、サーバー側でリクエストが正常に受理されるようになりました。

ユーザーへの恩恵

リモート環境でのフックや自動化ワークフローの実行が失敗することなく、安定して動作するようになります。

v2.1.98 (3件)

Added
バックグラウンドスクリプトからのイベントをストリーミング表示するための Monitor ツールを追加しました。
英語原文を表示
Added Monitor tool for streaming events from background scripts
Improved
transcript(対話履歴)内のフックエラー表示を改善し、デバッグモード(--debug)なしでも標準エラー出力(stderr)の最初の1行を表示して原因を自己診断できるようにしました。
英語原文を表示
Improved hook errors in the transcript to include the first line of stderr for self-diagnosis without --debug

変更前

フックが失敗しても「エラーが発生しました」と表示されるだけで、具体的にスクリプトのどこが間違っているのかを特定するために詳細ログを追う必要がありました。

変更後

失敗の理由(「ファイルが見つからない」「権限がない」等)が直接履歴に表示されるようになります。

ユーザーへの恩恵

フックの微調整が格段に楽になり、自動化設定のメンテナンス時間を短縮できます。

Fixed
長時間セッションでのプロンプト型 Stop/SubagentStop フックの失敗、およびフック評価時の API エラーが不正確に表示される問題を修正しました。
英語原文を表示
Fixed prompt-type Stop/SubagentStop hooks failing on long sessions, and hook evaluator API errors showing "JSON validation failed" instead of the real message

変更前

会話が長くなるとフックが動かなくなったり、エラーが発生しても原因が分からず「JSONバリデーション失敗」という曖昧な表示が出るだけでした。

変更後

長時間のセッションでもフックが安定して動作し、エラー発生時には API からの実際のメッセージが表示されるため、自己診断が可能になりました。

ユーザーへの恩恵

ワークフローの自動化や検証をフックで行っている場合、その信頼性とメンテナンス性が大幅に向上します。

関連ドキュメント

v2.1.97 (2件)

Improved
空のフックエントリのスキップや、編集前のファイルコピー保持数の制限により、セッション履歴ファイルのサイズを最適化しました。
英語原文を表示
Improved session transcript size by skipping empty hook entries and capping stored pre-edit file copies
Fixed
長いセッションでプロンプトタイプのStop/SubagentStopフックが失敗する問題、およびフック評価時のAPIエラーが具体的なメッセージではなく「JSON validation failed」と表示される問題を修正しました。
英語原文を表示
Fixed prompt-type Stop/SubagentStop hooks failing on long sessions, and hook evaluator API errors displaying "JSON validation failed" instead of the actual message

変更前

セッションが長くなると終了時の自動処理(フック)が動かなくなったり、フックの不具合時に原因が分からないエラーメッセージが表示されることがありました。

変更後

長大セッションでもフックが安定動作し、エラー発生時も具体的な原因が表示されるようになったため、デバッグが容易になりました。

ユーザーへの恩恵

自動化された後処理や通知が確実に実行されるようになり、開発ワークフローの信頼性が向上します。

v2.1.94 (3件)

Added
UserPromptSubmit フックに hookSpecificOutput.sessionTitle を追加し、フック経由でのセッションタイトルの設定に対応
英語原文を表示
Added hookSpecificOutput.sessionTitle to UserPromptSubmit hooks for setting the session title

変更前

セッションのタイトルはAIによって自動生成されるか手動で変更する必要があり、ユーザーのプロンプト入力に基づいて外部スクリプトなどから動的にタイトルを制御する手段がありませんでした。

変更後

ユーザーがプロンプトを送信した直後に実行されるフックから、JSON形式でセッションタイトルを指定して上書きできるようになりました。

ユーザーへの恩恵

独自の命名規則に従ってセッションを自動整理したり、特定のキーワードが含まれる場合にタイトルを即座に変更したりといった自動化が可能になります。

Fixed
YAMLフロントマテリアルで定義されたプラグインスキルのフックが無視される問題を修正
英語原文を表示
Fixed plugin skill hooks defined in YAML frontmatter being silently ignored

変更前

スキルファイル(SKILL.md)のフロントマテリアル内にフックを定義しても、システムに認識されず動作しない不具合がありました。

変更後

スキル定義内のフックが正しく読み込まれ、指定したイベントに応じて実行されるようになりました。

ユーザーへの恩恵

スキルのライフサイクルに合わせたカスタム動作を確実に行えるようになり、より高度なプラグイン開発が可能になります。

Fixed
CLAUDE_PLUGIN_ROOT が未設定の場合にプラグインのフックがファイルエラーで失敗する問題を修正
英語原文を表示
Fixed plugin hooks failing with "No such file or directory" when CLAUDE_PLUGIN_ROOT was not set

変更前

プラグインのインストール環境によっては CLAUDE_PLUGIN_ROOT 変数が正しく解決されず、フック内で相対パスを使用しているスクリプトなどが実行できないことがありました。

変更後

変数の解決ロジックが改善され、プラグインルートを基準としたファイル参照が安定して動作するようになりました。

ユーザーへの恩恵

プラグインの配布形式やユーザーの実行環境を問わず、フック機能が確実に動作するようになります。

v2.1.92 (1件)

Fixed
Stopイベントのプロンプト型フックが特定の応答で誤って失敗する問題を修正し、継続防止セマンティクスを復元。
英語原文を表示
Fixed prompt-type Stop hooks incorrectly failing when the small fast model returns ok:false, and restored preventContinuation:true semantics for non-Stop prompt-type hooks

変更前

モデルが ok:false を返した際にフックが予期せずエラーになったり、ツール実行をブロックすべき場面で継続されてしまう不具合がありました。

変更後

Stopイベントの判定が正確になり、プロンプト型フックによるワークフローの中断制御が意図通りに機能するようになります。

ユーザーへの恩恵

フックを利用した自動化プロセスの信頼性が向上し、特定の条件下で処理を確実に停止させることが可能になります。

v2.1.90 (3件)

Improved
SSE(Server-Sent Events)トランスポートにおける巨大なストリームフレームの処理時間を、二次の増加(quadratic)から線形(linear)に改善しました。
英語原文を表示
Improved performance: SSE transport now handles large streamed frames in linear time (was quadratic)

変更前

非常に長いテキストやデータが送られてくる際、データ量が増えるほど処理速度が指数関数的に低下し、UI が重くなることがありました。

変更後

データ量に比例した安定した速度で処理されるようになり、大容量データのストリーミングも高速に行われます。

ユーザーへの恩恵

大規模なドキュメントや長いログを扱う際でも、快適にレスポンスを受け取ることができます。

Fixed
PostToolUse フックで「保存時にフォーマット」を実行する際、連続した編集の間にファイルが書き換えられることで Edit/Write ツールが "File content has changed" エラーで失敗する問題を修正しました。
英語原文を表示
Fixed Edit/Write failing with "File content has changed" when a PostToolUse format-on-save hook rewrites the file between consecutive edits

変更前

Claude がファイルを編集した直後にフックで Prettier などのフォーマッタを動かすと、Claude 側が持っているファイル状態と不一致が起き、次の編集ができなくなることがありました。

変更後

フックによる変更が正しく検知され、Claude はエラーで止まることなく連続した編集作業を継続できるようになりました。

ユーザーへの恩恵

自動フォーマットなどのフック機能を併用しているプロジェクトでも、Claude による一連のコード修正がスムーズに完了します。

関連ドキュメント

Fixed
JSON を標準出力に書き出し、終了コード 2 で終了する PreToolUse フックが、正しくツール実行をブロックできない問題を修正しました。
英語原文を表示
Fixed PreToolUse hooks that emit JSON to stdout and exit with code 2 not correctly blocking the tool call

変更前

特定の条件でツール実行を拒否しようとしても、フックの出力形式や終了コードの組み合わせによってはブロック処理が正しく動作しない不具合がありました。

変更後

フックからのブロック指示が確実に処理され、セキュリティ上の制約やバリデーションが厳密に適用されます。

ユーザーへの恩恵

独自に作成したフックによる実行制限(破壊的なコマンドの禁止など)が意図通りに機能し、安全性が向上します。

関連ドキュメント

v2.1.89 (6件)

Added
PreToolUseフックに "defer" 判定を追加しました。ヘッドレスセッションでツール実行を一時停止し、-p --resume で再開してフックを再評価させることが可能です。
英語原文を表示
Added "defer" permission decision to PreToolUse hooks — headless sessions can pause at a tool call and resume with -p --resume to have the hook re-evaluate

変更前

ヘッドレスモード(-p)において、フックがツールの実行を条件付きで保留し、後からユーザーの判断を待って再開させる明確な仕組みが不足していました。

変更後

フックが "defer"(保留)を返せるようになり、実行を中断したセッションを -p --resume で再開する際に、再度フックを走らせて最終的な実行可否を決定できるようになりました。

ユーザーへの恩恵

自動化スクリプトやCI環境において、重要な操作の直前で一時停止し、人間が確認してから安全に続行させるワークフローが構築しやすくなります。

Added
オートモードの分類器による拒否の後に実行される PermissionDenied フックを追加しました。{retry: true} を返すことで、モデルに再試行を促すことができます。
英語原文を表示
Added PermissionDenied hook that fires after auto mode classifier denials — return {retry: true} to tell the model it can retry

変更前

オートモード(auto mode)で操作が拒否された際、プログラム的に介入して修正を促したり、特定の条件下で再試行を許可したりする柔軟な手段がありませんでした。

変更後

拒否イベントをトリガーにフックを実行できるようになり、拒否理由に基づいてモデルに指示を出し直すなどの動的な制御が可能になりました。

ユーザーへの恩恵

安全性を保ちつつ、誤検知による中断を自動でリカバーさせることができ、オートモードでの作業の自律性が高まります。

関連ドキュメント

Changed
5万文字を超える巨大なフックの出力を、コンテキストに直接注入する代わりにファイルとして保存し、パスとプレビューを表示するように変更しました。
英語原文を表示
Changed hook output over 50K characters to be saved to disk with a file path + preview instead of being injected directly into context

変更前

フック(自動テスト結果など)の出力が非常に大きい場合、それだけでコンテキスト窓を占有してしまい、AIが本来のタスクを忘れたり回答できなくなったりしていました。

変更後

出力の要約のみを渡し、詳細は別ファイルを参照する形式になったため、トークンの節約と精度の維持が両立されます。

ユーザーへの恩恵

大量のログを出すテストスイートなどと連携しても、 Claude Codeの応答性能を落とさずに開発を続けられます。

Changed
TaskCreated フックイベントとそのブロック挙動に関するドキュメントを整備しました。
英語原文を表示
Documented TaskCreated hook event and its blocking behavior

変更前

エージェントチームにおけるタスク作成時にトリガーされるフックの詳細な仕様や、作成を阻止する方法が公開されていませんでした。

変更後

フックを介して新しいタスクの開始を制限したり、特定の条件下でのみ許可したりする手法が公式にサポートされました。

ユーザーへの恩恵

チーム開発においてAIエージェントの無秩序なタスク増殖を防ぎ、人間の意図に沿った形でエージェントを管理・統制できるようになります。

関連ドキュメント

Fixed
Write/Edit/Readツールにおいて、PreToolUse/PostToolUseフックが file_path を絶対パスで受け取るよう修正しました。これはドキュメントの記載通りの挙動です。
英語原文を表示
Fixed PreToolUse/PostToolUse hooks to receive file_path as an absolute path for Write/Edit/Read tools, matching the documented behavior

変更前

フックに渡却されるパスが相対パスであったため、フック側のスクリプトでカレントディレクトリを移動している場合などにパスの解決が失敗することがありました。

変更後

常にルートからの絶対パスが渡されるようになり、どのような実行環境でもフックが正確に対象ファイルを特定できます。

ユーザーへの恩恵

フックを利用した複雑な自動処理や検証スクリプトの作成が、より簡単かつ確実になります。

関連ドキュメント

Fixed
フックの if 条件フィルタリングが、複合コマンド(ls && git push)や環境変数が付与されたコマンド(FOO=bar git push)に一致しない問題を修正しました。
英語原文を表示
Fixed hooks if condition filtering not matching compound commands (ls && git push) or commands with env-var prefixes (FOO=bar git push)

変更前

特定のコマンドを制限するためのフックを設定していても、書き方のバリエーションによって制限をすり抜けて実行されてしまう可能性がありました。

変更後

シェルコマンドの構文をより深く理解してマッチングを行うようになり、複雑なワンライナーに対しても確実にフィルタが機能します。

ユーザーへの恩恵

セキュリティや運用ルールの強制力が強化され、より安全にエージェントにシェル操作を任せられるようになります。

関連ドキュメント

v2.1.88 (3件)

Added
Autoモードの判定で拒否された際に実行される PermissionDenied フックを追加しました。{retry: true} を返すことでモデルに再試行を促せます
英語原文を表示
Added PermissionDenied hook that fires after auto mode classifier denials — return {retry: true} to tell the model it can retry

変更前

Autoモード(研究プレビュー)において、AIの操作がセキュリティポリシー等で拒否された場合、AIがその理由を理解して別の方法でリトライすることが困難でした。

変更後

このフックを利用して {retry: true} を返すと、AIに操作が拒否されたことを伝え、安全な代替案を自律的に考案させることが可能になります。

ユーザーへの恩恵

AIが一度の拒否で止まってしまうことを防ぎ、ユーザーが手動で指示し直す手間を省きながら、タスクの完了率を高めることができます。

関連ドキュメント

Fixed
フックの if 条件フィルタリングが、複合コマンド(ls && git push)や環境変数プレフィックス付きのコマンドにマッチしない問題を修正しました
英語原文を表示
Fixed hooks if condition filtering not matching compound commands (ls && git push) or commands with env-var prefixes (FOO=bar git push)

変更前

&& で繋いだ複数のコマンドや、VAR=val cmd のように環境変数を指定したコマンドに対して、特定のフックが正しく発火しない場合がありました。

変更後

コマンド解析の精度が向上し、より複雑な形式のシェルコマンドに対しても正確にフックが適用されるようになりました。

ユーザーへの恩恵

特定のコマンド実行時に自動で行いたい処理(プッシュ前のバリデーションなど)の確実性が高まり、意図しない操作の防止や自動化の信頼性が向上します。

関連ドキュメント

Fixed
Write/Edit/Readツールにおいて、PreToolUse/PostToolUseフックが file_path を絶対パスで提供していなかった問題を修正しました
英語原文を表示
Fixed PreToolUse/PostToolUse hooks not providing file_path as an absolute path for Write/Edit/Read tools

変更前

フック機能でファイルの変更を監視・処理する際、ファイルパスが相対パスで渡されることがあり、実行ディレクトリが異なると正しいファイルを特定できないリスクがありました。

変更後

常にルートからの絶対パスが渡されるようになり、どのディレクトリから実行しても確実に対象ファイルを処理できるようになりました。

ユーザーへの恩恵

自動フォーマットやバリデーションなどのフックの信頼性が高まり、複雑なプロジェクト構造でも誤作動の心配なく自動化を任せられます。

関連ドキュメント

v2.1.85 (3件)

Added
フックにパーミッションルール構文(例: Bash(git *))を使用した条件付き「if」フィールドを追加し、実行フィルタリングによるプロセス生成のオーバーヘッドを削減
英語原文を表示
Added conditional if field for hooks using permission rule syntax (e.g., Bash(git *)) to filter when they run, reducing process spawning overhead

変更前

フックは条件に関わらずイベントごとに実行されていたため、特定のコマンドの時だけ動作させたい場合でも毎回プロセスが起動し、パフォーマンスに影響を与えていました。

変更後

パーミッションルールと同様の構文で実行条件を指定できるようになったため、条件に一致しない場合はプロセスの起動自体をスキップできます。

ユーザーへの恩恵

不要なフックの実行が抑制されることで、ターミナルの応答性が向上し、特に頻繁に発生するイベントでのリソース消費を抑えることができます。

Added
PreToolUseフックがupdatedInputとpermissionDecision: "allow"を返すことで、AskUserQuestionに応答可能になり、ヘッドレス環境での対話をサポート
英語原文を表示
PreToolUse hooks can now satisfy AskUserQuestion by returning updatedInput alongside permissionDecision: "allow", enabling headless integrations that collect answers via their own UI

変更前

ヘッドレス(非対話)モードでの実行中、Claudeがユーザーに質問(AskUserQuestion)を投げると、外部から動的に回答を供給するスマートな方法が不足していました。

変更後

フック経由で質問への回答(updatedInput)を返せるようになったため、独自のUIや自動化スクリプトを介してClaudeの質問に回答できます。

ユーザーへの恩恵

CLIを直接操作できないCI/CD環境やカスタムアプリ経由の利用において、Claudeとの対話を自動化または外部UI化することが可能になります。

Fixed
非Gitリポジトリで--worktreeを使用した場合、WorktreeCreateフックが実行される前にエラーで終了してしまう問題を修正
英語原文を表示
Fixed --worktree exiting with an error in non-git repositories before the WorktreeCreate hook could run

変更前

Git以外のVCS(SVN等)をフックでサポートしようとしても、起動時のGitチェックで処理が止まってしまい、フックによるカスタム処理が実行できませんでした。

変更後

--worktree起動時のチェック順序が見直され、Gitがない環境でもフックによる独自のワークツリー作成処理を正しく開始できるようになりました。

ユーザーへの恩恵

Git以外のプロジェクト管理ツールを使用している開発者も、Claude Codeの強力な並行作業機能を活用できるようになります。

関連ドキュメント

v2.1.84 (2件)

Added
タスク作成時に実行される TaskCreated フックを追加
英語原文を表示
Added TaskCreated hook that fires when a task is created via TaskCreate

変更前

Claudeが新しいタスクを作成した瞬間に外部ツールを連携させたり、カスタムログを記録したりする標準的なトリガーがありませんでした。

変更後

TaskCreate ツールによってタスクが作成されたときに発火する TaskCreated フックが実装されました。

ユーザーへの恩恵

タスク管理システムとの自動同期や、タスク開始時のCI実行など、開発ワークフローをよりきめ細かく自動化できます。

関連ドキュメント

Added
HTTPタイプの WorktreeCreate フックで作成されたパスの返却に対応
英語原文を表示
Added WorktreeCreate hook support for type: "http" — return the created worktree path via hookSpecificOutput.worktreePath in the response JSON

変更前

WorktreeCreate フックをHTTP経由で実行した際、フックによって作成されたgitワークツリーのパスをClaude Code側に正確に伝える標準的な方法がありませんでした。

変更後

HTTPフックのレスポンスJSON内の hookSpecificOutput.worktreePath フィールドを通じて、作成されたパスを返せるようになりました。

ユーザーへの恩恵

独自のサーバーで管理している複雑なワークツリー作成フローをClaude Codeとシームレスに統合でき、並行作業の自動化がより強固になります。

v2.1.83 (4件)

Added
環境変数のリアクティブな管理(direnv 等)のために、CwdChangedFileChanged フックイベントを追加しました
英語原文を表示
Added CwdChanged and FileChanged hook events for reactive environment management (e.g., direnv)

変更前

Claude が cd コマンドでディレクトリを移動したり、特定のファイル(.env など)が変更されたりしても、Bash ツール内の環境変数が自動的に更新されませんでした。direnv などの外部ツールによる動的な環境変化を自動的に反映する仕組みが不足していました。

変更後

ディレクトリ移動時に発火する CwdChanged と、指定したファイルを監視する FileChanged イベントが導入されました。これらのフックを使用して CLAUDE_ENV_FILE を更新することで、環境変数を自動的に再読み込みできます。

ユーザーへの恩恵

プロジェクトごとに異なる環境変数を扱う direnv や .env ファイルの運用が自動化され、ユーザーが手動で環境を再設定する手間が省け、作業ミスも防げます。

Added
サブプロセス環境(Bash ツール、フック、MCP stdio サーバー)から Anthropic やクラウドプロバイダーの認証情報を削除する CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 を追加しました
英語原文を表示
Added CLAUDE_CODE_SUBPROCESS_ENV_SCRUB=1 to strip Anthropic and cloud provider credentials from subprocess environments (Bash tool, hooks, MCP stdio servers)

変更前

Claude Code が起動されているシェルに設定されている API キーなどの機密情報が、Claude が実行する Bash コマンドや MCP サーバーなどの子プロセスにそのまま引き継がれていました。万が一、プロンプトインジェクションが発生した場合、これらの情報が外部に漏洩するリスクがありました。

変更後

この環境変数を有効にすることで、子プロセスの環境変数から機密性の高い認証情報を自動的に除去(スクラブ)します。Claude Code 本体は認証情報を保持し続けますが、その配下で動くツールからは参照できなくなります。

ユーザーへの恩恵

開発環境における機密情報の露出を最小限に抑え、信頼できないコードを分析したり、外部の MCP ツールを利用したりする際の安全性が大幅に向上します。

Fixed
アンインストールされたプラグインのフックが、次のセッションを開始するまで動作し続けてしまう問題を修正しました。
英語原文を表示
Fixed uninstalled plugin hooks continuing to fire until the next session
Fixed
フックの進捗・添付メッセージによって親子関係のチェーンが分岐し、再開時に SDK セッションの履歴が失われる問題を修正しました
英語原文を表示
Fixed SDK session history loss on resume caused by hook progress/attachment messages forking the parentUuid chain

変更前

フック機能などが生成するシステムメッセージが原因で、会話履歴の ID 管理が複雑になり、一度終了したセッションを /resume で再開した際、過去のやり取りの一部が見えなくなることがありました。

変更後

メッセージの親子関係(Uuid チェーン)の管理ロジックが改善され、システム的な副作用があっても会話の整合性が維持されるようになりました。

ユーザーへの恩恵

長期間にわたるプロジェクトで過去の経緯を振り返りながら作業する際、履歴が欠落する心配なく安心して作業を継続できます。

v2.1.81 (3件)

Added
スクリプト実行用の --bare フラグを追加しました。フック、LSP、プラグイン同期、スキルディレクトリの走査をスキップし、自動メモリ機能も完全に無効化されます。
英語原文を表示
Added --bare flag for scripted -p calls — skips hooks, LSP, plugin sync, and skill directory walks; requires ANTHROPIC_API_KEY or an apiKeyHelper via --settings (OAuth and keychain auth disabled); auto-memory fully disabled

変更前

非インタラクティブモード(-p)でスクリプトを実行する際も、通常のセッションと同様にフックの実行やプラグインの同期、メモリの読み込みが行われていました。

変更後

--bare フラグを使用することで、純粋にモデルの推論のみを高速に実行できるようになります。このモードでは OAuth 認証等がバイパスされるため、API キーの設定が必須となります。

ユーザーへの恩恵

CI/CD パイプラインや自動化スクリプトにおいて、不要なオーバーヘッドを削減し、起動速度の向上と実行の安定性を確保できます。

Fixed
セッション中にプラグインディレクトリが削除された場合、プラグインのフックがプロンプトの送信をブロックしてしまう問題を修正しました。
英語原文を表示
Fixed plugin hooks blocking prompt submission when the plugin directory is deleted mid-session
Fixed
不可視のフックアタッチメントによって、トランスクリプトモードのメッセージ数が不必要に増えてしまう問題を修正しました。
英語原文を表示
Fixed invisible hook attachments inflating the message count in transcript mode

v2.1.79 (1件)

Fixed
対話的な /resume を使ってセッションを切り替えた際、SessionEnd フックが実行されない問題を修正
英語原文を表示
Fixed SessionEnd hooks not firing when using interactive /resume to switch sessions

変更前

セッションを終了して別のセッションに切り替える際、本来実行されるべき終了時フック (SessionEnd) がスキップされていました。

変更後

セッションの切り替え時にも正しく SessionEnd イベントが発火し、登録されたフックが実行されるようになりました。

ユーザーへの恩恵

セッション終了時のクリーンアップ作業やログ記録などを、どのような切り替え操作を行っても確実に行うことができます。

v2.1.78 (3件)

Added
APIエラー(レート制限、認証失敗など)によりターンが終了した際に発火する StopFailure フックイベントを追加
英語原文を表示
Added StopFailure hook event that fires when the turn ends due to an API error (rate limit, auth failure, etc.)

変更前

APIエラーで処理が中断された場合、それをフックして自動的に通知を送ったりログを記録したりする仕組みがありませんでした。

変更後

StopFailure イベントにより、レート制限や認証エラーなどの失敗を検知して特定のスクリプトを実行できるようになりました。

ユーザーへの恩恵

エラー発生時の後処理を自動化し、モニタリングやトラブルシューティングの効率を向上させることができます。

Fixed
APIエラーが stop フックを誘発し、モデルにエラーを再入力し続けてしまう無限ループを修正
英語原文を表示
Fixed infinite loop when API errors triggered stop hooks that re-fed blocking errors to the model

変更前

特定の API エラーが発生した際、エラー処理のフック自体が新たなエラーを引き起こし、処理が止まらなくなる不具合がありました。

変更後

エラー発生時のループ検知と処理フローが改善され、無限ループに陥ることなく安全に停止するようになりました。

ユーザーへの恩恵

予期せぬエラー発生時でもリソースやトークンの浪費を防ぎ、安定した動作が保証されます。

Fixed
--worktree フラグ使用時に、ワークツリーディレクトリ内のスキルやフックが読み込まれない問題を修正
英語原文を表示
Fixed --worktree flag not loading skills and hooks from the worktree directory

変更前

Git ワークツリーを利用した並行作業中に、そのワークツリー独自の自動化スクリプトやカスタムスキルが認識されませんでした。

変更後

ワークツリー環境からでも正しく設定ファイルが読み込まれ、メイン環境と同じ自動化機能が利用可能になりました。

ユーザーへの恩恵

複数の機能を並行して開発する際も、一貫した開発体験と自動化ツールを維持できます。

関連ドキュメント

v2.1.77 (2件)

Improved
claude plugin validate でスキルやエージェントのフロントマター、およびフックの設定ファイルを検証できるようになりました
英語原文を表示
Improved claude plugin validate to check skill, agent, and command frontmatter plus hooks/hooks.json, catching YAML parse errors and schema violations

変更前

プラグイン開発時に YAML のパースエラーやスキーマ違反があっても、実行するまで気づけないことがありました。

変更後

バリデーションコマンドで事前に構文エラーや設定の誤りを網羅的にチェックできるようになりました。

ユーザーへの恩恵

プラグイン開発のデバッグ効率が上がり、より高品質な拡張機能を短時間で作成できます。

Fixed
PreToolUse フックが "allow" を返した際に、管理設定などの拒否ルールをバイパスしてしまう問題を修正しました
英語原文を表示
Fixed PreToolUse hooks returning "allow" bypassing deny permission rules, including enterprise managed settings

変更前

フック側で許可(allow)を出すと、エンタープライズの管理ポリシー等で定義された強力な拒否ルールすら上書きされてしまう脆弱な状態でした。

変更後

パーミッション評価順序が厳格化され、フックの出力に関わらず拒否ルールが常に優先されるようになりました。

ユーザーへの恩恵

組織レベルで設定したセキュリティポリシーが確実に適用されるため、安全にフック機能を活用できます。

関連ドキュメント

v2.1.76 (2件)

Added
新しいElicitationおよびElicitationResultフックを追加 — 応答が返される前に、内容をインターセプトして上書きできるようになりました
英語原文を表示
Added new Elicitation and ElicitationResult hooks to intercept and override responses before they're sent back

変更前

MCP elicitationの応答やプロセスを自動化したり、独自のロジックで制御したりするための拡張ポイントが存在しませんでした。

変更後

新しいフックにより、Claude Codeがユーザーに応答を返す直前でデータを取得し、必要に応じてその内容を変更したり独自の処理を挟んだりすることが可能になりました。

ユーザーへの恩恵

elicitationプロセスにおけるカスタムバリデーションの追加や、特定の入力を自動補完するなどの高度な自動化が可能になります。

Added
コンテキスト圧縮完了後に実行されるPostCompactフックを追加しました。
英語原文を表示
Added PostCompact hook that fires after compaction completes

v2.1.75 (2件)

Added
フックの実行に確認が必要な際、そのソース(設定、プラグイン、スキル)をパーミッション画面に表示するようにしました。
英語原文を表示
Added hook source display (settings/plugin/skill) in permission prompts when a hook requires confirmation
Changed
非同期フックの完了メッセージをデフォルトで非表示にしました(--verbose モードでは引き続き確認可能です)。
英語原文を表示
Suppressed async hook completion messages by default (visible with --verbose or transcript mode)

関連ドキュメント

v2.1.74 (1件)

Fixed
終了時の SessionEnd フックが hook.timeout 設定にかかわらず1.5秒で強制終了される問題を修正 — CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS で設定可能に
英語原文を表示
Fixed SessionEnd hooks being killed after 1.5 s on exit regardless of hook.timeout — now configurable via CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS

変更前

セッション終了時に実行したいクリーンアップ処理やログ保存などのフック処理が、設定したタイムアウト時間に達する前に強制的に打ち切られていました。

変更後

環境変数で終了時の待機時間をカスタマイズできるようになり、時間のかかる終了後処理も確実に完了させることができます。

ユーザーへの恩恵

大切な後処理や自動化スクリプトが途中で途切れる心配がなくなり、開発ワークフローの自動化がより堅牢になります。

v2.1.73 (2件)

Fixed
セッションを再開した際に、SessionStart フックが2回重複して実行される問題を修正
英語原文を表示
Fixed SessionStart hooks firing twice when resuming a session via --resume or --continue

変更前

--resume--continue を使用すると、初期化スクリプトが必要以上に実行され、セットアップ時間が無駄にかかっていました。

変更後

再開時のライフサイクルイベントが適切に整理され、フックは期待通り1回のみ実行されるようになりました。

ユーザーへの恩恵

セッション開始時の待ち時間が短縮され、プロジェクト固有の環境構築がより正確に行われます。

関連ドキュメント

Fixed
JSON出力形式のフックが、モデルのコンテキストに不要なシステムリマインダーを毎ターン挿入していた問題を修正
英語原文を表示
Fixed JSON-output hooks injecting no-op system-reminder messages into the model's context on every turn

変更前

フックを使用するたびに余分なメッセージがコンテキストに蓄積され、トークン消費が増大したりモデルの精度に影響したりしていました。

変更後

内部的なリマインダー挿入ロジックが改善され、コンテキストがクリーンに保たれるようになりました。

ユーザーへの恩恵

フックを多用してもコンテキストウィンドウが圧迫されにくくなり、長時間の対話でも一貫した性能が維持されます。

関連ドキュメント

v2.1.72 (3件)

Fixed
バックグラウンドタスクやフックの応答が遅い場合に終了処理が停滞する問題を修正
英語原文を表示
Fixed slow exits when background tasks or hooks were slow to respond
Fixed
フックが有効なスキルがモデルから呼び出された際、1つのイベントに対してスキルフックが2回実行される問題を修正
英語原文を表示
Fixed skill hooks firing twice per event when a hooks-enabled skill is invoked by the model
Fixed
transcript_path の不備や設定保存時の prompt 消失、async フックの stdin 問題など、フック機能の複数の不具合を修正
英語原文を表示
Fixed several hooks issues: transcript_path pointing to the wrong directory for resumed/forked sessions, agent prompt being silently deleted from settings.json on every settings write, PostToolUse block reason displaying twice, async hooks not receiving stdin with bash read -r, and validation error message showing an example that fails validation

変更前

レジュームしたセッションで履歴パスが誤っていたり、非同期フックで read -r が動作しないなど、高度なカスタマイズを行うフック機能においていくつかの不安定な挙動がありました。

変更後

セッション管理とフック実行エンジンの修正により、自作の自動化スクリプトがより正確に動作するようになりました。

ユーザーへの恩恵

自作のフックを用いた高度なワークフロー自動化を、予期せぬエラーに悩まされることなく構築できます。

v2.1.69 (8件)

Added
CLAUDE.md やルールファイルが読み込まれた際に発火する InstructionsLoaded フックイベントを追加
英語原文を表示
Added InstructionsLoaded hook event that fires when CLAUDE.md or .claude/rules/*.md files are loaded into context

変更前

プロジェクト固有の指示が読み込まれたタイミングを検知して自動で処理を実行する手段がありませんでした。

変更後

メモリファイルが読み込まれた直後に特定のスクリプトを実行し、コンテキストの検証や追加情報の注入が可能になりました。

ユーザーへの恩恵

指示ファイルの変更に合わせた環境の自動セットアップなどが可能になり、プロジェクトごとのカスタマイズの幅が広がります。

関連ドキュメント

Added
フックイベントに、サブエージェントを識別するための agent_id および agent_type フィールドを追加
英語原文を表示
Added agent_id (for subagents) and agent_type (for subagents and --agent) to hook events

変更前

フックが実行された際、それがメインセッションによるものか、どの種類のサブエージェントによるものかをプログラムで判断できませんでした。

変更後

エージェントの種類に応じた条件分岐がフック内で可能になり、サブエージェント専用の制御フローを実装できるようになりました。

ユーザーへの恩恵

サブエージェントごとの権限制限や通知内容の変更など、より高度で精緻な自動化が可能になります。

関連ドキュメント

Added
ステータスラインのフックコマンドに worktree フィールドを追加。ワークツリー名、パス、ブランチ等の情報を表示可能に
英語原文を表示
Added worktree field to status line hook commands with name, path, branch, and original repo directory when running in a --worktree session

変更前

並行作業のためにGitワークツリー(--worktree)を使用している際、ステータスバーからは現在の作業場所の詳細が分かりませんでした。

変更後

ステータスラインをカスタマイズして、どのワークツリーで作業中かを常に表示できるようになりました。

ユーザーへの恩恵

複数のワークツリーを使い分けている時に、誤った場所で変更を行ってしまうミスを防ぎ、コンテキストの把握を助けます。

Fixed
対話型モードで長時間使用するとフックイベントが無限に蓄積されるメモリリークを修正
英語原文を表示
Fixed a memory leak in interactive mode where hook events could accumulate unboundedly during long sessions

v2.1.64 (7件)

Added
InstructionsLoaded フックイベントを追加しました。CLAUDE.md.claude/rules/*.md ファイルがコンテキストに読み込まれたタイミングで実行されます。
英語原文を表示
Added InstructionsLoaded hook event that fires when CLAUDE.md or .claude/rules/*.md files are loaded into context

変更前

Claude がいつプロジェクト固有のルールを認識したのかをトリガーにして外部スクリプトを実行したり、読み込まれた指示の内容に基づいて動的な処理を行ったりする手段がありませんでした。

変更後

ルールの読み込み完了をフックできるようになったため、特定のルールが適用された際に通知を出したり、関連する依存関係のチェックを自動で行ったりすることが可能になります。

ユーザーへの恩恵

指示ファイル(CLAUDE.md)を中心とした開発ワークフローの自動化が進み、特定のコンテキストに合わせた柔軟な拡張が可能になります。

関連ドキュメント

Added
フックイベントのコンテキスト情報に agent_id(サブエージェント用)と agent_type(サブエージェントおよび --agent 指定時用)を追加しました。
英語原文を表示
Added agent_id (for subagents) and agent_type (for subagents and --agent) to hook events

変更前

フック内で、現在実行中のアクションがメインスレッドによるものか、それとも特定のサブエージェントによるものかを判別して処理を分けることが困難でした。

変更後

フックハンドラーに渡される JSON にエージェントの情報が含まれるようになったため、「このエージェントが実行するときだけは特定の処理をスキップする」といったきめ細やかな制御が可能になりました。

ユーザーへの恩恵

サブエージェントを活用した複雑な自動化において、フックの挙動を意図通りに制御できるようになり、より高度な開発支援環境を構築できます。

関連ドキュメント

Added
ステータスラインのフックコマンドに worktree フィールドを追加しました。--worktree セッション実行時に、名前、パス、ブランチ、元のリポジトリパスが表示可能です。
英語原文を表示
Added worktree field to status line hook commands with name, path, branch, and original repo directory when running in a --worktree session

変更前

Git ワークツリーを使用して並行セッションを実行している際、ステータスバーなどのカスタム表示において、現在のワークツリーに関する詳細情報を表示する直接的な手段がありませんでした。

変更後

ステータスライン構築用の JSON データにワークツリーの詳細が含まれるようになり、現在の作業環境がどのブランチ・どのディレクトリなのかを常に画面下に表示できるようになりました。

ユーザーへの恩恵

複数のワークツリーを使い分けて並行開発を行う際に、自分が今どこで作業しているのかを混同するリスクを大幅に減らせます。

関連ドキュメント

Fixed
対話モードにおいて、長時間セッションでフックイベントが無制限に蓄積されるメモリリークを修正しました。
英語原文を表示
Fixed a memory leak in interactive mode where hook events could accumulate unboundedly during long sessions
Fixed
TeammateIdle および TaskCompleted フックにおいて、Stop フックと同様の {"continue": false, "stopReason": "..."} 形式によるチームメイトの停止をサポートしました。
英語原文を表示
Fixed TeammateIdle and TaskCompleted hooks to support {"continue": false, "stopReason": "..."} to stop the teammate, matching Stop hook behavior

変更前

エージェントチームの作業完了時や待機時の挙動をカスタマイズする際、スクリプト側から「ここで完全に停止させる」という判断を Claude Code に伝えるスマートな方法が不足していました。

変更後

標準的な停止シグナルをサポートしたことで、特定の条件(テスト失敗時など)でチームメイトの稼働を強制終了させることが、JSON レスポンス一つで制御可能になりました。

ユーザーへの恩恵

チームメイトの無駄な待機時間を削減し、特定の状況下での自動化フローの制御がより正確に行えるようになります。

関連ドキュメント

Fixed
プラグインによって登録された WorktreeCreate および WorktreeRemove フックが、誤って無視されてしまう問題を修正しました。
英語原文を表示
Fixed WorktreeCreate and WorktreeRemove plugin hooks being silently ignored

関連ドキュメント

Fixed
プラグインや SDK 利用者によって登録された WorktreeCreate フックが無視される問題を修正しました。
英語原文を表示
Fixed WorktreeCreate hooks registered by plugins or SDK consumers being silently ignored

関連ドキュメント

v2.1.63 (2件)

Added
JSONをURLにPOSTし、JSONを受け取ることができるHTTPフックが追加されました。これにより、シェルコマンドの実行に代わる選択肢が増えました。
英語原文を表示
Added HTTP hooks, which can POST JSON to a URL and receive JSON instead of running a shell command

変更前

フックはシェルコマンドとしてしか実行できず、外部APIとの連携に制約がありました。

変更後

HTTPフックにより、指定したURLにJSONデータをPOSTし、JSON形式でレスポンスを受け取ることができるようになりました。

ユーザーへの恩恵

外部APIやWebサービスとの連携が容易になり、より多様な自動化ワークフローを構築できるようになりました。

関連ドキュメント

Fixed
フック設定メニューの移動中に発生していたメモリリークが修正されました。
英語原文を表示
Fixed memory leak when navigating hooks configuration menu

v2.1.55 (1件)

Fixed
Windows 環境で BashTool が EINVAL エラーで失敗する問題を修正しました。
英語原文を表示
Fixed BashTool failing on Windows with EINVAL error

v2.1.51 (1件)

Fixed
ステータスラインと fileSuggestion のフックコマンドが、インタラクティブモードでワークスペースの信頼承認なしに実行できてしまうセキュリティ問題を修正しました。
英語原文を表示
Fixed a security issue where statusLine and fileSuggestion hook commands could execute without workspace trust acceptance in interactive mode.

変更前

ワークスペースの信頼が承認されていない状態でも、statusLinefileSuggestion のフックコマンドが意図せず実行される可能性があり、セキュリティリスクがありました。

変更後

ワークスペースの信頼が承認されていない場合、これらのフックコマンドは実行されなくなりました。

ユーザーへの恩恵

意図しないコマンド実行を防ぎ、ローカル開発環境のセキュリティを強化します。

関連ドキュメント

v2.1.50 (3件)

Added
WorktreeCreateおよびWorktreeRemoveフックイベントが追加され、エージェントのワークツリー分離がワークツリーを作成または削除する際にカスタムVCSのセットアップとティアダウンが可能になりました。
英語原文を表示
Added WorktreeCreate and WorktreeRemove hook events, enabling custom VCS setup and teardown when agent worktree isolation creates or removes worktrees.

変更前

ワークツリーの作成・削除時にカスタムVCSのセットアップ/ティアダウンを行う機能がありませんでした。VCSの初期化やクリーンアップを自動化したい場合に、手動での対応が必要でした。

変更後

ワークツリーの作成・削除時にカスタムVCSのセットアップ/ティアダウンを行えるようになりました。これにより、VCSの初期化やクリーンアップといった定型作業を自動化できます。

ユーザーへの恩恵

VCSのセットアップとティアダウンを自動化することで、開発者はワークツリーのライフサイクル管理にかかる手間を省き、より効率的に開発を進めることができます。

関連ドキュメント

Changed
CLAUDE_CODE_SIMPLEモードでは、MCPツール、アタッチメント、フック、CLAUDE.mdファイルの読み込みも無効になり、完全に最小限の体験を提供します。
英語原文を表示
CLAUDE_CODE_SIMPLE mode now also disables MCP tools, attachments, hooks, and CLAUDE.md file loading for a fully minimal experience.

関連ドキュメント

Fixed
セッションの復旧時に作業ディレクトリにシンボリックリンクが含まれている場合、セッションストレージパスが起動時に異なるタイミングで解決されるためにセッションが見えなくなる問題を修正しました。また、グレーシャルシャットダウンシーケンスで、フックと分析の前にセッションデータをフラッシュすることでSSH切断時のセッションデータ損失も修正しました。
英語原文を表示
Fixed a bug where resumed sessions could be invisible when the working directory involved symlinks, because the session storage path was resolved at different times during startup. Also fixed session data loss on SSH disconnect by flushing session data before hooks and analytics in the graceful shutdown sequence.

変更前

作業ディレクトリにシンボリックリンクが含まれる場合、セッションの復旧時に表示されないことがありました。SSH接続中にセッションデータが失われる可能性もありました。

変更後

シンボリックリンクが含まれる作業ディレクトリでもセッションが正しく表示されるようになり、SSH切断時にもセッションデータが失われなくなりました。

ユーザーへの恩恵

セッションの可視性と信頼性が向上し、開発者は中断した作業を確実に再開できるようになります。データ損失のリスクも軽減され、安心して利用できます。

関連ドキュメント

v2.1.49 (2件)

Added
セッション中に設定ファイルが変更された際に発火するConfigChangeフックイベントが追加されました。これにより、エンタープライズレベルでのセキュリティ監査や設定変更のブロックが可能になります。
英語原文を表示
Added ConfigChange hook event that fires when configuration files change during a session, enabling enterprise security auditing and optional blocking of settings changes.

変更前

これまでは、Claude Codeのセッション中に設定ファイル(settings.jsonやスキルファイルなど)が外部から変更されても、それを自動的に検知して対応する仕組みがありませんでした。これにより、セキュリティポリシーの監査や、意図しない設定変更を防ぐことが困難でした。

変更後

新しく追加されたConfigChangeフックイベントは、設定ファイルがセッション中に変更されるとトリガーされます。このイベントを利用することで、企業は設定ファイルの変更をリアルタイムで監視し、監査ログに記録したり、特定の変更をブロックしたりするカスタムフックを実装できるようになります。

ユーザーへの恩恵

企業はClaude Codeのセキュリティとコンプライアンスをより厳密に管理できるようになります。設定変更が追跡可能になり、承認されていない変更を自動的に防ぐことで、開発環境の安全性が向上し、管理者は安心してClaude Codeを導入・運用できます。

関連ドキュメント

Fixed
disableAllHooks設定が管理対象設定の階層を尊重するように修正されました。非管理対象設定では、ポリシーによって設定された管理対象フックを無効化できなくなりました。(#26637)
英語原文を表示
Fixed disableAllHooks setting to respect managed settings hierarchy — non-managed settings can no longer disable managed hooks set by policy (#26637)

変更前

以前は、ユーザーやプロジェクトの設定でdisableAllHooks: trueを設定すると、組織のポリシーによって管理対象として設定された重要なフックも無効化されてしまう可能性がありました。これにより、意図せずセキュリティやコンプライアンスに関わるフックが無効化され、ポリシーの一貫性が損なわれるリスクがありました。

変更後

今回の修正により、disableAllHooks設定が管理対象設定の階層を正しく尊重するようになりました。具体的には、ユーザーやプロジェクトレベルの設定でdisableAllHookstrueにしても、管理者によって設定された管理対象(マネージド)フックは無効化されなくなります。これにより、ポリシーによるフックの強制力が高まります。

ユーザーへの恩恵

エンタープライズ環境でClaude Codeを利用する管理者は、組織のセキュリティポリシーやワークフローに必要なフックが常に有効であることを保証できるようになります。ユーザーが誤って重要なフックを無効化する心配がなくなり、より安全で統制の取れた開発環境を維持できます。

関連ドキュメント

v2.1.47 (3件)

Added
StopおよびSubagentStopフック入力に last_assistant_message フィールドを追加しました。これにより、フックはトランスクリプトファイルを解析することなく、最終的なアシスタントの応答テキストにアクセスできるようになります。
英語原文を表示
Added last_assistant_message field to Stop and SubagentStop hook inputs, providing the final assistant response text so hooks can access it without parsing transcript files.

変更前

StopおよびSubagentStopフックでは、アシスタントの最終応答テキストにアクセスするためにトランスクリプトファイルを解析する必要がありました。これは手間がかかるだけでなく、エラーが発生しやすいプロセスでした。

変更後

StopおよびSubagentStopフック入力に last_assistant_message フィールドが追加されました。これにより、フックはトランスクリプトファイルを解析することなく、アシスタントの最終応答テキストに直接アクセスできます。

ユーザーへの恩恵

フック開発者がアシスタントの最終応答に簡単にアクセスできるようになり、より効率的で堅牢なフックの作成が可能になりました。

関連ドキュメント

Improved
SessionStartフックの実行を遅延させることで、起動パフォーマンスを改善し、インタラクティブになるまでの時間を約500ミリ秒短縮しました。
英語原文を表示
Improved startup performance by deferring SessionStart hook execution, reducing time-to-interactive by ~500ms.

変更前

Claude Codeの起動時、SessionStartフックが即座に実行されるため、初期化に時間がかかり、ユーザーが操作可能になるまでの時間が長くなっていました。

変更後

Claude Codeの起動パフォーマンスが改善されました。SessionStartフックの実行が遅延されるようになり、ユーザーが操作可能になるまでの時間が約500ミリ秒短縮されました。

ユーザーへの恩恵

Claude Codeの起動が速くなり、開発者はすぐに作業を開始できるようになりました。これにより、開発サイクルの初期段階での待ち時間が減り、生産性が向上します。

Fixed
WindowsでGit Bashではなくcmd.exeを使用していたため、フック(PreToolUse、PostToolUse)がサイレントに実行に失敗する問題を修正しました(anthropics/claude-code#25981)。
英語原文を表示
Fixed hooks (PreToolUse, PostToolUse) silently failing to execute on Windows by using Git Bash instead of cmd.exe (anthropics/claude-code#25981)

変更前

Windows環境では、cmd.exeが使用されていたため、フック(PreToolUse、PostToolUse)がサイレントに失敗し、実行されない問題がありました。

変更後

Windows環境でhooks(PreToolUse、PostToolUse)がサイレントに失敗する問題が修正されました。Git Bashが使用されるようになり、フックが正しく実行されるようになりました。

ユーザーへの恩恵

Windows環境でのフック実行が安定し、Git Bashの利用によりPreToolUseやPostToolUseといった重要な自動化処理が正しく機能するようになりました。

v2.1.45 (1件)

Fixed
プラグイン提供のコマンド、エージェント、フックが、再起動なしでインストール直後から利用可能になりました。
英語原文を表示
Fixed plugin-provided commands, agents, and hooks not being available immediately after installation without requiring a restart

変更前

プラグインをインストールしても、そのプラグインが提供するコマンド、エージェント、フックがすぐに利用できず、Claude Code の再起動が必要でした。

変更後

プラグインのインストール後、再起動することなく、提供されたコマンド、エージェント、フックが即座に利用可能になりました。

ユーザーへの恩恵

プラグインの追加や更新がよりスムーズになり、開発者はツールのセットアップ時間を短縮して、すぐに作業を開始できます。

v2.1.41 (2件)

Fixed
フックブロックエラー(終了コード2)が発生した際に、stderrがユーザーに表示されない問題を修正しました。
英語原文を表示
Fixed hook blocking errors (exit code 2) not showing stderr to the user
Fixed
フックのブロックエラー発生時に、UIにstderrの内容が表示されない問題を修正しました。
英語原文を表示
Fixed hook blocking errors showing stderr content in UI

変更前

フックがブロックされた際に発生するエラーで、エラー出力(stderr)の内容がユーザーインターフェースに適切に表示されないことがありました。これにより、何が原因でフックがブロックされたのか、詳細な情報が確認できず、問題解決が困難でした。

変更後

フックがブロックされた際のエラー通知に、stderr(標準エラー出力)の内容が含まれてUIに表示されるようになりました。これにより、エラーの具体的な原因を開発者がより詳細に把握し、迅速なトラブルシューティングが可能になります。

ユーザーへの恩恵

フックがブロックされた際、エラーの原因がUIで明確に表示されるようになるため、問題の診断と修正が大幅に効率化されます。これにより、フックベースの自動化ワークフローの信頼性が向上し、開発者のデバッグ作業が軽減されます。

v2.1.33 (1件)

Added
マルチエージェントワークフロー向けに、TeammateIdleTaskCompletedのフックイベントが追加されました。
英語原文を表示
Added TeammateIdle and TaskCompleted hook events for multi-agent workflows

変更前

以前は、エージェントチームのメンバーがアイドル状態になる前や、タスクが完了とマークされる前に、カスタムロジックを挿入してワークフローを制御する仕組みがありませんでした。これにより、特定の条件下でチームメイトの作業を継続させたり、タスクの完了を阻止してフィードバックを提供したりするなどの、高度なワークフローの自動化が困難でした。

変更後

TeammateIdleTaskCompletedフックイベントが追加されたことで、エージェントチームのメンバーがアイドル状態になる直前や、タスクが完了とマークされる直前に、カスタムスクリプトやHTTPエンドポイントを実行できるようになりました。これにより、例えば、チームメイトがアイドル状態になるのを防ぎ作業を継続させたり、特定の条件が満たされない限りタスクの完了を阻止して詳細なフィードバックを要求したりすることが可能になります。

ユーザーへの恩恵

これらの新しいフックイベントにより、マルチエージェントワークフローの自動化と制御が大幅に強化されます。チームメイトの振る舞いやタスクの完了プロセスをより細かくカスタマイズできるため、複雑なプロジェクト管理や品質保証のシナリオにおいて、より堅牢でインテリジェントなエージェントチームを構築できます。これにより、開発者はワークフローの柔軟性が向上し、生産性が高まることを実感できます。

関連ドキュメント

v2.1.23 (1件)

Fixed
ヘッドレスストリーミングセッションが終了した際に保留中の非同期フックがキャンセルされない問題が修正されました。
英語原文を表示
Fixed pending async hooks not being cancelled when headless streaming sessions ended

v2.1.19 (1件)

Fixed
バックグラウンドで実行されたフックコマンドが即座に終了を返さず、意図的なバックグラウンド処理の完了をセッションが待機し続けてしまう問題を修正しました。
英語原文を表示
Fixed backgrounded hook commands not returning early, potentially causing the session to wait on a process that was intentionally backgrounded

v2.1.10 (1件)

Added
リポジトリのセットアップやメンテナンス操作のための、--init、--init-only、または--maintenanceフラグから呼び出し可能な新しい Setup フックイベントを追加しました。
英語原文を表示
Added new Setup hook event that can be triggered via --init, --init-only, or --maintenance CLI flags for repository setup and maintenance operations

関連ドキュメント

v2.1.9 (1件)

Added
PreToolUse フックがモデルに追加のコンテキストを返すサポートを追加しました。
英語原文を表示
Added support for PreToolUse hooks to return additionalContext to the model

変更前

ツール実行前のPreToolUseフックは、モデルに渡す追加情報を提供できませんでした。

変更後

PreToolUseフックは、ツールの実行前にモデルにadditionalContextとして追加情報を提供できるようになりました。

ユーザーへの恩恵

これにより、フックはツールの実行前にモデルに追加のコンテキストを提供できるようになり、よりインテリジェントな意思決定や、フックによるツール実行の制御が可能になります。

関連ドキュメント

v2.1.3 (2件)

Changed
ツール実行のフックタイムアウトを 60 秒から 10 分に変更しました。
英語原文を表示
Changed tool hook execution timeout from 60 seconds to 10 minutes
Fixed
ホームディレクトリから実行した場合に、トラストダイアログの承認によってセッション中にフックなどの信頼が必要な機能が有効にならない問題を修正しました。
英語原文を表示
Fixed trust dialog acceptance when running from the home directory not enabling trust-requiring features like hooks during the session

v2.1.2 (1件)

Added
SessionStart フックの入力に agent_type を追加し、--agent 指定時にその値を格納するように変更
英語原文を表示
Added agent_type to SessionStart hook input, populated if --agent is specified

変更前

フックの実行時にどのエージェントが使用されているかの情報が不足しており、特定のカスタムエージェントが起動した際に連動した処理を行うことが困難でした。

変更後

SessionStart イベントの JSON コンテキストに agent_type フィールドが含まれるようになり、--agent フラグで指定されたエージェント名をフック内で識別できるようになります。

ユーザーへの恩恵

カスタムエージェントの種類に応じた初期化処理や環境設定をフックで自動化できるようになり、ワークフローの柔軟性が向上します。

関連ドキュメント

v2.1.0 (7件)

Added
エージェントのフロントマターでフック設定が可能になり、エージェントの生存期間に限定したフックを定義できるようになりました。
英語原文を表示
Added hooks support to agent frontmatter, allowing agents to define PreToolUse, PostToolUse, and Stop hooks scoped to the agent's lifecycle
Added
スキルおよびスラッシュコマンドのフロントマターでフック設定をサポートしました。
英語原文を表示
Added hooks support for skill and slash command frontmatter
Added
フック設定に once: true を追加し、セッション内で一度だけ実行して削除されるフックを定義できるようになりました。
英語原文を表示
Added support for once: true config for hooks

変更前

セッション開始時の環境構築など、一度だけ実行すれば十分なタスクをフックで行う際、その後も条件に合うたびに繰り返し実行されてしまうのを防ぐのが困難でした。

変更後

初回実行後に自動で無効化されるフックを簡単に設定できるようになりました。

ユーザーへの恩恵

セットアップ処理や初回限定の通知などを、無駄な繰り返しを避けてスマートに自動化できます。

関連ドキュメント

Added
プラグインからのフックで、コマンド形式に加えてプロンプト形式およびエージェント形式をサポートしました。
英語原文を表示
Added support for prompt and agent hook types from plugins (previously only command hooks were supported)
Fixed
PreToolUse フックで、ユーザーへの確認(ask)を返しつつ入力を書き換える(updatedInput)ことが可能になり、ユーザーの同意を得ながら動作するミドルウェアとしてフックを利用できるようになりました。
英語原文を表示
Fixed PreToolUse hooks to allow updatedInput when returning ask permission decision, enabling hooks to act as middleware while still requesting user consent

変更前

フックでツール入力を変更した場合、即座に実行を許可(allow)するか拒否(deny)するかの二択になり、変更後の内容をユーザーに確認させることができませんでした。

変更後

安全のために特定の引数を修正しつつ、「この内容で実行して良いですか?」というプロンプトをユーザーに表示する高度な制御が可能になりました。

ユーザーへの恩恵

不適切なコマンド引数を自動補正しながら最終判断は人間に委ねるという、安全性と柔軟性を両立した高度なガードレールを構築できます。

関連ドキュメント

Fixed
/hooks メニューにおいて、スクロール中に誤ったフックタイプが選択されてしまう UI の不具合を修正しました。
英語原文を表示
Fixed /hooks menu selecting wrong hook type when scrolling to a different option

変更前

フックの設定を対話形式で行う際、選択項目のスクロール操作が原因で意図しない設定が適用されてしまうことがありました。

変更後

リストの選択挙動が安定し、意図した通りのイベントやアクションを正確に設定できるようになりました。

ユーザーへの恩恵

複雑なフックの構成を、CLI 上でミスなく直感的に行えるようになります。

Fixed
出力がないフックの成功メッセージに、不要なコロンが表示される問題を修正しました。
英語原文を表示
Fixed hook success message showing trailing colon when hook has no output