hooks.PreToolUse
arrayツールの呼び出し前に実行されるフック。
使い方・用途
- 破壊的なコマンドの実行を事前に検知してブロックしたり、AI にツール実行前の追加コンテキストを提供して意思決定を支援したりします。
- ヘッドレス環境において AI からの質問(AskUserQuestion)に自動回答するミドルウェアとしても活用可能です。
Hooks that run before tool calls
関連する変更履歴
v2.1.304(1件)
v2.1.301(1件)
英語原文を表示
v2.1.300(1件)
updatedInput が Claude 自身の入力と同様に検証されるようになり、未知のキーは破棄され、ツールが拒否する入力はその呼び出しを拒否する英語原文を表示
updatedInput from PreToolUse and PermissionRequest hooks is now validated like Claude's own input: unknown keys are dropped, and input the tool rejects denies the call変更後
フックが返す updatedInput が、Claude 本体のツール入力と同じ検証を受けるようになり、不正な引数が権限評価前に弾かれて、予期しない入力でツールが実行されるのを防げる。
v2.1.299(2件)
PreToolUse フックや mod の tool.check フックが許可した書き込み(MCP ツール、ファイル、シェルコマンド)が実行されてしまう問題を修正した英語原文を表示
PreToolUse hook or a mod's tool.check hook allowed英語原文を表示
変更後
Git for Windows がインストールされていない環境でも、シェルを指定していない PreToolUse フックや PermissionRequest フックの失敗時に、ツールの実行を確実にブロックできるようになる。
関連ドキュメント
v2.1.296(1件)
PreToolUse フックが 'continue': false でツール呼び出しを拒否する場合や、マネージドの prompt フックがツール呼び出しをブロックする場合に、呼び出しは拒否されるもののターンまで終了してしまっていた問題を修正した英語原文を表示
PreToolUse hooks that deny a tool call with "continue": false, and managed prompt hooks that block one, refusing the call but not ending the turn関連ドキュメント
v2.1.292(1件)
英語原文を表示
変更後
ネットワークパス (UNC パス) からのファイル読み取りについて、PreToolUse フックの承認や自動モードによって権限確認をスキップされなくなります。そのため、意図しないネットワーク上のホストへのアクセスや認証情報の漏洩リスクを抑えながら、ファイル読み取り時に必ず確認を受け取れるようになります。
v2.1.290(1件)
英語原文を表示
v2.1.288(2件)
-p や SDK セッション、および PreToolUse フックの承認において、OpenTelemetry の claude_code.tool.blocked_on_user スパンがソースや判断として unknown を報告する問題を修正した英語原文を表示
claude_code.tool.blocked_on_user spans reporting unknown source or decision in -p and SDK sessions and for PreToolUse hook approvals英語原文を表示
関連ドキュメント
v2.1.281(1件)
mcp_tool hooks が、MCP サーバーの接続完了前にはスキップされる問題を修正した。MCP 接続タイムアウトまで待つようになった英語原文を表示
mcp_tool hooks on blocking events (PreToolUse and similar) being skipped while their MCP server was still connecting; they now wait for it, up to the MCP connect timeout関連ドキュメント
v2.1.271(1件)
英語原文を表示
変更後
SessionStart、UserPromptSubmit、PreToolUse、SessionEnd フックの実行中に、どのフックが動いているのかと経過時間がスピナー表示で分かるようになり、フックが長引いたときの状況を把握しやすくなる。また、SessionStart フックで待たされているプロンプトを Esc キーでキャンセルできるようになる。
v2.1.248(1件)
PermissionRequest または PreToolUse フックが不正な回答を出力した際に、バックグラウンドセッションが黙って待ち続ける問題を修正した。claude agents の行にフック名とスキーマエラーが表示されるようになった英語原文を表示
PermissionRequest or PreToolUse hook prints an invalid answer: the claude agents row now names the hook and the schema error関連ドキュメント
v2.1.239(1件)
PreToolUse フックによって保留されたツール実行が新規トレースを開始するのではなく、元のターンのトレース内で再開するようになった英語原文を表示
PreToolUse hook now resume in the original turn's trace instead of starting a new tracev2.1.222(1件)
英語原文を表示
v2.1.211(1件)
英語原文を表示
ask decision for unsandboxed Bash — a hook ask now floors the decision at a prompt変更後
セキュリティや検証のために設定したフックによる確認要求が、オートモードでも確実に守られるようになる。
関連ドキュメント
v2.1.119(1件)
PostToolUse および PostToolUseFailure の入力 JSON に、ツールの純粋な実行時間を示す duration_ms が含まれるようになりました(承認待機時間は除く)英語原文を表示
PostToolUse and PostToolUseFailure hook inputs now include duration_ms (tool execution time, excluding permission prompts and PreToolUse hooks)変更後
独自のメトリクス収集や、処理の重いツール呼び出しの検知など、開発プロセスの分析と最適化がより精緻に行えるようになります。
関連ドキュメント
v2.1.110(1件)
PreToolUseフックから提供された追加コンテキスト(additionalContext)が失われる問題を修正英語原文を表示
PreToolUse hook additionalContext being dropped when the tool call fails変更後
失敗の原因をAIがフックの情報を元に深く理解し、より的確に再試行できるようになるため、エラーからの自己復旧率が高まります。
関連ドキュメント
v2.1.101(1件)
permissions.deny ルールが PreToolUse フックの permissionDecision: "ask" よりも優先されるよう修正英語原文を表示
permissions.deny rules not overriding a PreToolUse hook's permissionDecision: "ask" — previously the hook could downgrade a deny into a prompt変更後
セキュリティ設定の優先順位が明確になり、意図しないツールの実行をより確実に防止できます。
関連ドキュメント
v2.1.90(1件)
PreToolUse フックが、正しくツール実行をブロックできない問題を修正しました。英語原文を表示
PreToolUse hooks that emit JSON to stdout and exit with code 2 not correctly blocking the tool call変更後
独自に作成したフックによる実行制限(破壊的なコマンドの禁止など)が意図通りに機能し、安全性が向上します。
関連ドキュメント
v2.1.89(2件)
PreToolUse フックに permission decision `英語原文を表示
"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変更後
Agent SDK アプリやカスタム UI から Claude Code を呼び出す際、ツール呼び出しの時点でセッションを一時停止して自前のインターフェースで入力を収集し、-p --resume で中断箇所から再開できる。
関連ドキュメント
英語原文を表示
file_path as an absolute path for Write/Edit/Read tools, matching the documented behavior変更後
拡張後の file_path を前提にして書かれた公式ドキュメントやガイドのフックスクリプトが、意図どおりに動くようになる。
関連ドキュメント
v2.1.88(1件)
file_path を絶対パスで提供していなかった問題を修正しました英語原文を表示
file_path as an absolute path for Write/Edit/Read tools変更後
自動フォーマットやバリデーションなどのフックの信頼性が高まり、複雑なプロジェクト構造でも誤作動の心配なく自動化を任せられます。
関連ドキュメント
v2.1.85(1件)
英語原文を表示
AskUserQuestion by returning updatedInput alongside permissionDecision: "allow", enabling headless integrations that collect answers via their own UI変更後
CLIを直接操作できないCI/CD環境やカスタムアプリ経由の利用において、Claudeとの対話を自動化または外部UI化することが可能になります。
関連ドキュメント
v2.1.77(1件)
PreToolUse フックが "allow" を返した際に、管理設定などの拒否ルールをバイパスしてしまう問題を修正しました英語原文を表示
"allow" bypassing deny permission rules, including enterprise managed settings変更後
組織レベルで設定したセキュリティポリシーが確実に適用されるため、安全にフック機能を活用できます。
関連ドキュメント
v2.1.47(1件)
英語原文を表示
変更後
Windows環境でのフック実行が安定し、Git Bashの利用によりPreToolUseやPostToolUseといった重要な自動化処理が正しく機能するようになりました。
v2.1.9(1件)
PreToolUse フックがモデルに追加のコンテキストを返すサポートを追加しました。英語原文を表示
PreToolUse hooks to return additionalContext to the model変更後
これにより、フックはツールの実行前にモデルに追加のコンテキストを提供できるようになり、よりインテリジェントな意思決定や、フックによるツール実行の制御が可能になります。
関連ドキュメント
v2.1.0(2件)
PreToolUse フックで、ユーザーへの確認(ask)を返しつつ入力を書き換える(updatedInput)ことが可能になり、ユーザーの同意を得ながら動作するミドルウェアとしてフックを利用できるようになりました。英語原文を表示
updatedInput when returning ask permission decision, enabling hooks to act as middleware while still requesting user consent変更後
不適切なコマンド引数を自動補正しながら最終判断は人間に委ねるという、安全性と柔軟性を両立した高度なガードレールを構築できます。
関連ドキュメント
英語原文を表示
v2.0.43(1件)
tool_use_id field to PreToolUseHookInput and PostToolUseHookInput types