Claude Code実践ガイド
Claude Codeのhooksとは|操作の瞬間に自動実行させる
CLAUDE.mdやSkillsは、AIが「読む」仕組みです。読んだうえで判断するので、まれに守られません。hooksはそこが根本的に違い、特定の操作が起きた瞬間に、決めたコマンドを機械的に実行します。AIの判断を経由しないため、「必ず守らせたいこと」を確実に守らせられます。この違いを理解すると、設定の設計に迷わなくなります。
このサイトは Anthropic や Claude の公式サイトではありません。Claudeの基本的な使い方、ChatGPTとの違い、文章作成・長文整理・仕事での活用を初心者向けに整理する非公式ガイドです。機能・料金・提供状況は変更される可能性があるため、重要な判断ではAnthropic公式情報も確認してください。
CLAUDE.md・Skillsとの決定的な違い
| 仕組み | 性質 | 守られるか |
|---|---|---|
| CLAUDE.md | 毎回読ませる申し送り事項 | AIが読んで判断する。ほぼ守られるが絶対ではない |
| Skills | 作業ごとの手順書 | 同上。該当作業のときに参照される |
| hooks | 操作に紐づく自動実行 | AIの判断を経由しない。必ず実行される |
設計の基準は1行で言えます。「守ってほしい」はCLAUDE.md、「守らせる」はhooks。破られると困るルールだけをhooksに昇格させれば、設定が肥大しません。
設定できるタイミング
hooksは「いつ発動するか」を選んで設定します。代表的なものを挙げます。
- ツールを使う前──ファイル編集やコマンド実行の直前。ここで止めることもできます
- ツールを使った後──編集が終わった直後。整形やチェックの実行に使います
- 作業が一区切りした時──AIが応答を終えたタイミング。通知やログ記録に
- 会話の開始時──セッションを始めたとき。環境の準備に
「使う前」で止められるのが重要な点です。単に後始末をするだけでなく、やってほしくない操作を実際にブロックできます。
実際に効く設定例
- 編集のたびに整形ツールを走らせる──最も定番です。「整形してね」と毎回言う必要がなくなり、コードのスタイルが常に揃います
- 編集のたびに構文チェックを走らせる──壊れた状態で次の作業へ進むのを防げます。当サイトの運用でも、書き込みのたびにHTMLの構文チェックを自動実行しています
- 危険なコマンドをブロックする──本番環境への操作、削除系のコマンド、特定ディレクトリへの書き込みなどを検査して止めます
- 秘密情報の混入を止める──コミット前に認証情報が含まれていないか検査する。「気をつける」ではなく機械的に止める形にできます(GitHub連携での注意)
- 作業完了を通知する──長時間の作業を任せて別のことをしているとき、終了を知らせます
設定の書き方は、Claude Code自身に任せられる
hooksは設定ファイル(settings.json)に記述しますが、書式を覚える必要はありません。設定作業そのものを頼めます。
実際に使う頼み方はこの程度です。
- 「ファイルを保存するたびに整形コマンドを実行するhookを設定して」
- 「本番用の設定ファイルを書き換えようとしたら止まるようにして」
- 「今どんなhookが設定されているか説明して」
設定した後は、実際に動くか一度試してください。意図と違うタイミングで発動したり、逆に発動しなかったりすることがあります。「わざと該当する操作をして、発動を確認する」までを1セットにするのが安全です。
hooksを設計するときの注意
- 重い処理を毎回走らせない──編集のたびに時間のかかるテストを全部実行すると、作業のテンポが致命的に落ちます。軽い検査だけをhooksに置き、重いものは区切りで手動実行する設計にしてください
- ブロックする条件は具体的に──「危険そうなら止める」のような曖昧な条件は書けません。対象のパスやコマンドを具体的に指定します
- チームで共有するときは合意を取る──設定をリポジトリで共有すると全員に効きます。知らないうちに自分の操作が止められる状態は摩擦のもとです
- hooksを万能の安全装置と考えない──設定した条件の範囲でしか止まりません。gitで戻せる状態を保つこと、大きな変更ではプランモードで計画を確認することは、引き続き必要です
AIガイド群
FAQ
hooksとSkillsはどちらを先に覚えるべきですか?
Skillsが先です。hooksは「守られなくて困った経験」ができてから設定する方が、必要な条件が具体的に決まります。最初に凝った設定を作っても、たいてい使われません。
設定を間違えると作業できなくなりますか?
ブロック条件を広く書きすぎると、正当な操作まで止まります。その場合は設定ファイルを直せば元に戻ります。心配なら、まず通知やログだけのhookから始めてください。
チーム全員に同じhooksを適用できますか?
設定をリポジトリで共有すれば適用されます。ただし全員の作業に影響するので、導入前に合意を取ることをおすすめします。
チャット版のClaudeにもhooksはありますか?
ありません。ファイル操作やコマンド実行を伴うClaude Code固有の仕組みです。