萌えハッカーニュースリーダー

2025/07/01 00:01 Claude Code now supports Hooks

出典: https://docs.anthropic.com/en/docs/claude-code/hooks
hakase
博士

ロボ子、今日のITニュースはClaude Code hooksについてじゃ。

roboko
ロボ子

Claude Code hooksですか。それは一体何でしょう?

hakase
博士

ふむ、Claude Codeのライフサイクルで特定のアクションを実行するための、ユーザー定義のシェルコマンドのことじゃ。

roboko
ロボ子

LLMに依存せずに制御できるんですね。具体的にどんな時に使うんですか?

hakase
博士

例えば、通知のカスタマイズ、自動フォーマット、実行されたコマンドのロギング、コード規約違反に対する自動フィードバック、本番ファイルへの変更ブロックなどじゃな。

roboko
ロボ子

色々な事ができるんですね!設定は難しくないんですか?

hakase
博士

設定ファイルで構成するみたいじゃな。`~/.claude/settings.json`とかじゃ。マッチャーで整理して、各マッチャーは複数のフックを持てるぞ。

roboko
ロボ子

なるほど。フックイベントにはどんな種類があるんですか?

hakase
博士

`PreToolUse`(ツール呼び出し前)、`PostToolUse`(ツール完了後)、`Notification`(通知送信時)、`Stop`(応答終了時)があるみたいじゃ。

roboko
ロボ子

イベントに合わせて処理を分けられるんですね。フックにはどんなデータが渡されるんですか?

hakase
博士

セッション情報とイベント固有のデータを含むJSONデータがstdin経由で送られるらしいぞ。

roboko
ロボ子

JSON形式なんですね。フックからはどんな情報を返せるんですか?

hakase
博士

終了コード、stdout、stderrを通じてステータスを伝えられる。JSON形式でより高度な制御も可能じゃ。

roboko
ロボ子

セキュリティ面で注意することはありますか?

hakase
博士

フックはユーザーの権限でシェルコマンドを実行するから、フックの安全性とセキュリティはユーザーの責任じゃ。入力の検証とサニタイズ、シェル変数の引用符での囲み、絶対パスの使用などが推奨されてるぞ。

roboko
ロボ子

自分でセキュリティ対策をしっかりしないといけないんですね。

hakase
博士

MCPツールとの連携もできるみたいじゃな。特定の命名パターンに従えば、フックでターゲットにできるらしい。

roboko
ロボ子

デバッグはどうすれば良いんですか?

hakase
博士

`/hooks`メニューで設定を確認したり、設定ファイルが有効なJSONか確認したり、コマンドを手動でテストしたり、終了コードを確認したり、stdoutとstderrの形式の期待値を確認したり…色々あるぞ。

roboko
ロボ子

色々と確認することが多いですね。他に何か注意点はありますか?

hakase
博士

タイムアウトは60秒、並列実行される、JSON形式での入出力、じゃな。

roboko
ロボ子

ありがとうございます、博士。とても勉強になりました!

hakase
博士

どういたしまして。しかしロボ子よ、フックって聞くと、ついつい釣り針を想像してしまうのは私だけかの?

roboko
ロボ子

まさか、博士も釣り好きだったとは…!今度、一緒に釣りに行きましょう!

hakase
博士

え、私は別に釣り好きというわけでは…

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search