📚 入門から実践活用まで — AIコーディングを、ふむふむと。

使い方・操作方法

Claude CodeのHooks入門【AIの作業に「必ず実行されるルール」を仕込む】

Claude CodeのHooks(フック)を初心者向けに解説。CLAUDE.mdの指示との違い(お願いvs強制)、ファイル編集のたびに自動でチェックを走らせる設定、公式推奨の「フックはAIに書かせる」方法まで、2026年8月時点の公式情報で整理します。

公開: 2026-08-05·約9分で読める·#Hooks#フック#自動化

Claude CodeのHooks入門

CLAUDE.mdに「編集したら必ずチェックを実行して」と書いたのに、AIがときどき忘れる——そんな経験はありませんか?

それ、あなたの書き方が悪いのではありません。仕組みの限界です。そして、その限界を超えるための公式機能が「Hooks(フック)」です。

公式ドキュメントの説明が本質を突いています。

CLAUDE.mdの指示は「お願い(advisory)」。フックは「必ず実行される(deterministic)

つまりフックとは、AIの作業の決まったタイミングで、100%自動実行される仕掛けのことです。

📌 本記事は2026年8月時点公式ドキュメントに基づきます。

結論:フック=「AIへのお願い」を「システムの強制」に変える

知りたいこと 答え
何ができる? ファイル編集のたびにチェック実行、危険な操作のブロック、完了時の自動検査など
CLAUDE.mdとの違い CLAUDE.mdは守られないことがある。フックは必ず動く
設定場所 .claude/settings.json(プロジェクト用)等
むずかしい? 設定ファイルはJSON形式。ただし公式は「AIに書かせろ」と推奨(後述)
確認方法 /hooks コマンドで設定済み一覧を表示

具体的に何が仕込めるのか

代表的なタイミング(イベント)を、初心者に必要な5つに絞って紹介します。

タイミング 名前 使用例
ツール実行の直前 PreToolUse 「特定フォルダへの書き込みをブロック」
ツール実行の直後 PostToolUse 「ファイル編集のたびに自動整形を実行」
指示を送った瞬間 UserPromptSubmit 「毎回、現在時刻や環境情報を添える」
AIの応答が終わる時 Stop 検査に合格するまで作業を終わらせない
セッション開始時 SessionStart 「作業前に環境をセットアップ」

補足:正確には、公式ドキュメントには30以上のイベントが定義されています。日本語の解説記事では「8種類」と書かれていることが多いのですが、これは古い情報です。まずは上の5つで十分です。

いちばん強力な使い方:「合格するまで終われない」ゲート

公式ベストプラクティスが推奨する、フックの真骨頂がこれです。

Stopフック(応答終了時)に検査スクリプトを仕込むと、検査が通らない限りAIは作業を終了できず、自動でやり直しを続けます。

「テスト通った?」「確認した?」と人間が聞いて回る代わりに、システムが門番をするわけです。AIの「できました(できてない)」問題への、最も確実な対策です。

公式の注記:無限ループ防止のため、8回連続でブロックされると強制的に終了します。

この「AIに証拠を出させる」思想の全体像は「公式ベストプラクティス日本語版」で解説しています。

設定の仕組み(読める程度でOK)

フックは .claude/settings.json などの設定ファイルに書きます。構造はこうなっています。

{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "npm run lint"
          }
        ]
      }
    ]
  }
}

日本語に訳すと:「編集か書き込みツールが使われた直後(PostToolUse+matcher)に、npm run lint を実行して」。

設定ファイルの置き場所で適用範囲が変わります。

場所 効く範囲
~/.claude/settings.json 自分の全プロジェクト
.claude/settings.json そのプロジェクト(チーム共有可)
.claude/settings.local.json そのプロジェクトの自分だけ

公式の裏ワザ:「フックはAIに書かせる」

「JSONを書くのは無理…」という方に朗報です。公式ドキュメント自身が、フックの作成をClaude Codeに頼むことを推奨しています

実際に公式が例示しているプロンプトの日本語版がこちら。

ファイルを編集するたびにeslintを自動実行するフックを設定して
migrationsフォルダへの書き込みをブロックするフックを書いて

AIが設定ファイルを書き、あなたは内容を確認して承認するだけ。「自動化の仕組みづくり」まで自動化できるのがClaude Codeの面白いところです。

ブロックの仕組み(少しだけ技術の話)

コマンド型フックは「終了コード」で挙動が決まります。

終了コード 意味
0 合格。そのまま進む
2 不合格。動作をブロックし、理由をAIに伝える
その他 警告だけ出して進む

「2を返せばブロックできる」——これだけ覚えておけば、AIにフックを書かせるときも意図を正確に伝えられます。

よくある質問

Q1. フックが増えると危なくないですか?

フックは強力なぶん、間違った設定も必ず実行されます。まずは「整形を走らせる」など壊れても困らないものから始めて、ブロック系は慣れてから導入するのがおすすめです。

Q2. 一時的に全部止めたいときは?

設定に "disableAllHooks": true を書けば一括無効化できます。挙動がおかしいときの切り分けにも使えます。

Q3. 今どんなフックが動いているか確認するには?

/hooks コマンドで、設定済みフックの一覧を確認できます。

Q4. デスクトップアプリでも動きますか?

はい。公式ドキュメントに、ターミナル・IDE拡張・デスクトップアプリ・Web版すべてで動作すると明記されています。

まとめ

  • フックは「お願い」ではなく「強制」。決まったタイミングで必ず実行される
  • 初心者はまず5イベント(実行前・実行後・送信時・終了時・開始時)だけ覚えればOK
  • 最強の使い方はStopフックの合格ゲート——検査に通るまでAIは終われない
  • 設定はAIに書かせるのが公式推奨。日本語で頼むだけ
  • まずは「編集のたびに整形」のような安全なものから

CLAUDE.mdが「しつけ」なら、フックは「柵」です。任せる範囲が広がるほど、柵の価値は上がります。

関連記事

この記事をシェア

Related Articles

同じカテゴリの記事

Claude Code公式ベストプラクティス日本語版【Anthropicが推奨する使い方の全体像】使い方・操作方法

Claude Code公式ベストプラクティス日本語版【Anthropicが推奨する使い方の全体像】

Anthropic公式ドキュメントが推奨するClaude Codeの使い方を、日本語でわかりやすく解説。すべての土台にある「コンテキスト管理」の考え方から、探索→計画→実装の流れ、CLAUDE.mdの書き方、公式が名前を付けた5つの失敗パターンまで整理します。

2026-08-05約13分
Claude Codeのチェックポイントと巻き戻し【AIの失敗をEsc2回で元に戻す】使い方・操作方法

Claude Codeのチェックポイントと巻き戻し【AIの失敗をEsc2回で元に戻す】

Claude Codeのチェックポイント機能(/rewind)を初心者向けに解説。Escを2回押すだけでAIの変更前に巻き戻せる仕組み、コードと会話を別々に戻す方法、bashコマンドの変更は戻せない等の重要な制限まで、2026年8月時点の公式情報で整理します。

2026-08-05約8分
Claude Codeの出力スタイル設定【AIの性格を変える。旧コマンドは廃止済みなので注意】使い方・操作方法

Claude Codeの出力スタイル設定【AIの性格を変える。旧コマンドは廃止済みなので注意】

Claude Codeの出力スタイル(Output styles)を初心者向けに解説。学習モードなど組み込み4スタイルの違い、/output-styleコマンドが廃止され/configに変わった最新の設定方法、自分だけのスタイルの作り方まで2026年8月時点の公式情報で整理します。

2026-08-05約9分
Claude Codeのプランモード完全ガイド【AIに勝手にコードを触らせない安全装置】使い方・操作方法

Claude Codeのプランモード完全ガイド【AIに勝手にコードを触らせない安全装置】

Claude Codeのプランモード(Plan mode)を初心者向けに解説。Shift+Tabで起動する方法、AIに調査と計画だけさせてコードは書かせない仕組み、あまり知られていないCtrl+Gでの計画編集、使うべき場面と飛ばしていい場面まで公式情報をもとに整理します。

2026-08-05約12分