Claude Code道場
Claude Code道場by malna
導入を相談する
ホーム/ブログ/Claude CodeのHooks(フック)とは?設定方法・イベント一覧・活用例【2026年9月版】
Claude CodeHooks自動化非エンジニア業務効率化
Claude Code 完全ガイドの記事一覧 →

Claude CodeのHooks(フック)とは?設定方法・イベント一覧・活用例【2026年9月版】

Claude CodeのHooksとは何か、設定ファイルの場所、主要イベント一覧、終了コードの意味を非エンジニア向けに解説します。

2026年9月8日読了約9分
高橋一志
監修: 高橋一志(malna株式会社 代表取締役)
ビジネス研修・AI活用学習に取り組む社員の写真。PCの前でオンライン学習を進めるオフィスワーカーの様子。

目次

  1. 目次
  2. 1. Claude Code Hooksとは何か
  3. 2. なぜHooksが必要なのか
  4. 3. 主要フックの種類と使い分け
  5. 4. Hooksの設定方法
  6. 終了コードの意味
  7. 5. 実務での活用例
  8. ファイル保存のたびに自動でフォーマットをかける
  9. 危険なコマンドの実行前に確認を挟む
  10. Slackへの作業完了通知
  11. 操作ログの自動記録
  12. 6. 非エンジニアが知っておくべき注意点
  13. 7. この記事のポイント
  14. よくある質問(FAQ)

「Claude Codeに任せたら、本番のファイルを意図せず書き換えられてしまった」「AIが何をしているかわからなくて怖い」——Claude Codeを導入し始めたチームから、こういった声を私たちは繰り返し聞いています。Hooksはまさにこの問題を解決するための機能です。AIが何かアクションを起こす直前または直後に、あらかじめ決めた処理を自動で挟み込めます。設定ファイルを数行書くだけで、ファイル保存時の自動フォーマットや、危険なコマンド実行前の確認ダイアログを実現できます。


目次

  1. Claude Code Hooksとは何か
  2. なぜHooksが必要なのか
  3. 主要フックの種類と使い分け
  4. Hooksの設定方法
  5. 実務での活用例
    • ファイル保存のたびに自動フォーマット
    • 危険なコマンド実行前に確認を挟む
    • Slackへの作業完了通知
    • 操作ログの自動記録
  6. 非エンジニアが知っておくべき注意点
  7. この記事のポイント
  8. よくある質問(FAQ)

1. Claude Code Hooksとは何か

Claude CodeのHooks(フック)とは、AIが行うツール操作に対して「割り込み処理」を設定できる機能です。

プログラミングの世界では「フック(hook)」は「引っかける」という意味で使われます。ある処理の流れに対して、追加の処理を「引っかける」ように挿入できることから、この名前がついています。

たとえばClaude Codeが「ファイルを書き換える」という操作をしようとしたとき、その直前に「本当に実行してよいか確認する」処理を自動で挟む、といったことができます。


2. なぜHooksが必要なのか

Claude Codeを使い始めた多くのチームが最初にぶつかる壁は、「AIが勝手に動きすぎる」という感覚です。

指示した内容を実行してくれるのは便利ですが、本番環境のファイルを意図せず書き換えてしまったり、削除してはいけないデータを消してしまったりするリスクも生じます。

Hooksはこの問題に対する答えです。AIが何かしようとしたときに「待て」を入れる仕組みを持つことで、人間がコントロールを失わずにAIを活用できます。

私たちmalnaがClaude Codeを社内外で導入支援してきた経験では、Hooksの設定をしていないチームほど「思わぬ操作が起きた」と感じるケースが多く、逆にHooksを丁寧に設定したチームは安心して委任度を上げていけています。


3. 主要フックの種類と使い分け

Claude CodeのHooksには多数のイベント(フックの種類)が用意されています。非エンジニアの方がまず押さえておきたい主要なものを、タイミングごとに整理します(出典:Claude Code Docs「Hooks reference」)。

分類イベント実行タイミング
セッション単位SessionStartセッション開始時
セッション単位SessionEndセッション終了時
ターン単位UserPromptSubmitプロンプトを送信する前
ターン単位StopClaudeの応答が完了したとき
ツール実行PreToolUseツール実行の直前(実行をブロックできる)
ツール実行PostToolUseツール実行が成功した後
ツール実行PostToolUseFailureツール実行が失敗した後
ツール実行PermissionRequest権限確認が発生したとき
その他PreCompact / PostCompact会話の圧縮(コンパクト化)の前後
その他SubagentStart / SubagentStopサブエージェントの開始・終了時
その他NotificationClaudeからの通知発生時

このほかにもFileChanged(ファイル変更検知時)、ConfigChange(設定変更時)、PreModelSwitch(モデル切り替え前)など、多数のイベントが用意されています。全イベントの一覧は、公式ドキュメント「Hooks reference」を参照してください。


4. Hooksの設定方法

Hooksは、次のいずれかのsettingsファイルに記述します(出典:Claude Code Docs「Hooks reference」)。

malna AI導入支援

この内容を自社の業務に取り入れたい方は、まず無料でご相談ください。

malna に無料相談する
設定ファイル適用範囲
~/.claude/settings.json全プロジェクト・自分だけ
.claude/settings.jsonそのプロジェクト・リポジトリで共有可能
.claude/settings.local.jsonそのプロジェクト・自分だけ(gitignore対象)
組織の管理ポリシー設定組織全体
プラグインのhooks/hooks.jsonプラグインが有効な範囲

設定の基本的な形は次のようになります。

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          { "type": "command", "command": "${CLAUDE_PROJECT_DIR}/.claude/hooks/check.sh" }
        ]
      }
    ]
  }
}
  • ハンドラの種類:command(シェルコマンドを実行する。標準入力でJSONを受け取り、標準出力で結果を返す)、http、mcp_tool、prompt、agent(実験的機能)が指定できます
  • matcher(対象の指定):"*"または省略で全ツールが対象になります。"Edit|Write"のように|で区切って複数のツール名を指定することもでき、正規表現も使えます

終了コードの意味

コマンド型のフックは、終了コード(exit code)によって挙動が変わります。

  • 0(成功):標準出力がJSON形式であれば、その内容が解釈されます
  • 2(ブロック):処理を止めます。PreToolUseであれば、そのツールの実行自体を止められます。理由は標準エラー出力、またはJSONのpermissionDecisionReasonで伝えられます
  • それ以外の非ゼロ:処理はブロックしませんが、エラーとして扱われます

セッション内で/hooksと入力すると、現在設定されているHooksの一覧を確認できます(読み取り専用の確認用コマンドで、変更は設定ファイルを直接編集する必要があります)。また、settingsでdisableAllHooks: trueを設定すると、組織の管理ポリシーによるHooksを除くすべてのHooksを無効化できます。

このような設定を書くのが難しいと感じる場合でも、claudecode道場のカリキュラムでは実際に動く設定テンプレートを提供しているため、コピーして使うだけで始められます。


5. 実務での活用例

ファイル保存のたびに自動でフォーマットをかける

コードを書いた後に「見た目を整える(フォーマット)」作業は、毎回手動でやると面倒です。PostToolUseフックを使えば、Claude Codeがファイルを書き換えた直後に自動でフォーマットコマンドを実行できます。

チームで作業する場合、全員が同じフォーマット設定を持っていれば、「誰が書いても同じ見た目になる」状態を維持できます。

危険なコマンドの実行前に確認を挟む

rm -rf(ファイルの強制削除)や本番データベースへのアクセスコマンドは、誤って実行すると取り返しがつきません。PreToolUseフックのcommandスクリプトが終了コード2を返すようにしておけば、そのコマンドの実行自体をブロックでき、AIが自律的に動いている場面でも人間が最終判断できます。

Slackへの作業完了通知

Claude Codeが長時間かかる処理を終えたとき、StopフックのcommandにSlack通知を送るスクリプトを指定しておくと、終わるまで画面を見ていなくても完了に気づけます。私たちの社内では、レポート生成タスクが完了したときに担当者のDMへ通知が届くよう、この仕組みを使っています。

操作ログの自動記録

何をいつAIに実行させたかの記録を残すことは、トラブル発生時の原因調査に役立ちます。PostToolUseフックで全操作をCSVやテキストファイルに記録しておくと、「いつ・何の操作が行われたか」をあとから追えます。


6. 非エンジニアが知っておくべき注意点

Hooksは強力な仕組みですが、設定を誤ると意図しない動作を引き起こすこともあります。

特に気をつけたい点は以下の3つです。

  • PreToolUseでコマンドを止める設定は慎重に: 必要な処理まで止まってしまうと、Claude Code全体が動かなくなることがある
  • ログファイルの肥大化: PostToolUseでログを書き続けると、ファイルが際限なく大きくなる。定期的な削除の設定もセットで入れること
  • シークレット(APIキーなど)をコマンドに直書きしない: セキュリティ上のリスクになるため、環境変数を経由して渡す
  • スクリプトの実行権限とパス: フックに指定するスクリプトファイルにはchmod +xで実行権限を与えておく必要がある。指定したパスが存在しない場合は警告だけでフックが実行されない(サイレントに無効化される)ため、/hooksで意図通り設定されているか確認すること

claudecode道場では、これらの落とし穴を避けるためのチェックリストと、実際にmalnaが使っているHooks設定テンプレートを公開しています。


7. この記事のポイント

  • Hooksとは、AIの操作に「割り込み処理」を設定できるClaude Code固有の機能
  • PreToolUseで実行前の制御、PostToolUseで実行後のログ・通知が実現できる
  • セッション開始・プロンプト送信・ツール実行・サブエージェントなど、多数のイベントが用意されている
  • 危険なコマンドへの確認挿入・Slack通知・操作ログ記録など、安全性と自動化を両立できる
  • 設定は~/.claude/settings.jsonや.claude/settings.jsonへのJSON記述で完了し、/hooksで設定内容を確認できる
  • Hooksなしでチームに展開すると「AIが勝手に動く」と感じるリスクが高くなる

よくある質問(FAQ)

Q. Hooksの設定にはプログラミングの知識が必要ですか?

A. JSON形式のテキストを編集できれば基本的な設定は可能です。ただし、実行するコマンドを自分で書くにはシェルの基礎知識が役立ちます。claudecode道場では、コピーして使えるテンプレートを提供しているため、知識がなくても始めることができます。

Q. HooksはClaude Codeのどのバージョンから使えますか?

A. Hooks機能はClaude Codeの主要バージョンで対応しています。最新の対応状況はAnthropicの公式ドキュメントをご確認ください。

Q. Hooksを設定しなくてもClaude Codeは使えますか?

A. 使えます。Hooksは任意の設定です。ただし、チームで使う場合や本番環境に近い作業を行う場合は、安全性の観点からHooksの設定を強くお勧めします。

Q. 設定したHooksが意図通りに動いているか確認する方法はありますか?

A. セッション内で/hooksと入力すると、現在設定されているHooksの一覧を確認できます。あわせてPostToolUseでログファイルに記録する設定にしておくと、実際の動作確認もしやすくなります。claudecode道場のカリキュラムでは、デバッグの手順も含めて解説しています。

Q. HooksとClaude Codeのスキル(カスタムコマンド)は何が違いますか?

A. スキルは「ユーザーが明示的に呼び出す処理」、HooksはClaude Codeの操作に「自動で割り込む処理」という違いがあります。両方を組み合わせることで、より細かい制御が可能になります。


組織全体でのClaude Code導入・安全設計の相談はmalnaのAI導入コンサルへ

claudecode道場で実践的なClaude Code研修を始める(無料公開中)


あわせて読みたい:

  • Claude Code 完全ガイド
高橋一志

監修

高橋一志

代表取締役 / AI導入コンサルタント · malna株式会社

malna株式会社代表取締役。非エンジニア組織へのClaude Code導入・AI活用支援を専門とする。累計100社超のAI定着支援実績。

X(旧Twitter)malna.co.jp
シェア:X でシェアLINE でシェア
Claude Code道場:料金プラン導入事例無料登録

Claude Code道場

全20章を無料で学ぶ

インストールから実務自動化まで。プログラミング不要、登録2分。

無料で始める

クレジットカード不要

チームや組織へのAI導入をお考えなら malna に相談する

関連記事

AI経理自動化の始め方【Claude Codeで実践する設定ステップ】
Claude Code経理

AI経理自動化の始め方【Claude Codeで実践する設定ステップ】

経理AI自動化をどこから始めればいいか迷っている担当者向けに、対象業務の棚卸しからスモールスタートの選び方、Claude Codeでの仕訳チェック・請求書処理・月次レポートの具体的な設定ステップまでを解説します。

非エンジニアがClaude Codeで変わった3ヶ月の記録【経理・営業・総務の体験談】
Claude Code非エンジニア

非エンジニアがClaude Codeで変わった3ヶ月の記録【経理・営業・総務の体験談】

プログラミング未経験の経理・営業・総務担当者がClaude Codeを使い始めて3ヶ月でどう変わったか。週次作業時間の変化・最初の壁・学習曲線を実例で紹介します。

Claude Codeを使いこなせない人がやりがちな5つのミス——改善すれば明日から変わる
Claude Codeプロンプト

Claude Codeを使いこなせない人がやりがちな5つのミス——改善すれば明日から変わる

「使ってみたけど思ったより使えない」と感じている方に。原因はほぼ決まっています。入力のコンテキスト不足・出力の無批判な使用・難しいタスクから始める失敗パターンを解説します。

前の記事

Claude Codeのインストール方法【2026年9月版】デスクトップアプリで始める手順(Mac・Windows)

次の記事

Claude CodeとGitHubを連携する方法——非エンジニアが知っておくべき基本

Claude Code 導入支援 — まずは無料相談

期間限定・無料公開中

全20章を無料で学べる

カード不要・登録2分・いつでも退会可

今すぐ無料で学ぶ

カテゴリ

Claude Code業務効率化AI活用非エンジニアAI導入Claude認定資格ClaudeAI採用提案書業務自動化DX組織変革AI研修ビジネス活用初心者人事マーケティング中小企業DX推進Anthropicプロンプト使い方AIツール比較claudecode道場インストール資格試験生成AIChatGPT入門

最新記事

Claude Codeハンズオン入門|インストールから最初の変更まで公式手順で体験

Claude Codeハンズオン入門|インストールから最初の変更まで公式手順で体験

Claude Designとは?使い方・対応プラン・書き出し形式を公式情報で整理

Claude Designとは?使い方・対応プラン・書き出し形式を公式情報で整理

Claude for Excel・PowerPoint・Wordの使い方と導入手順【公式情報】

Claude for Excel・PowerPoint・Wordの使い方と導入手順【公式情報】

Claudeは日本語で使える?対応状況とClaude Codeで日本語を使う設定

Claudeは日本語で使える?対応状況とClaude Codeで日本語を使う設定

Claude Teamプランとは?席数・機能・Claude Codeの扱いを公式情報で整理

Claude Teamプランとは?席数・機能・Claude Codeの扱いを公式情報で整理

AI経理自動化の始め方【Claude Codeで実践する設定ステップ】

AI経理自動化の始め方【Claude Codeで実践する設定ステップ】

記事一覧を見る

全20章、期間限定で無料公開中

カード不要・登録2分

期間限定無料導入を相談する

malna AIエージェント

導入を相談する

まずは無料でご相談ください

導入を相談する

© 2026 malna Inc. · Claude Code道場 · malna.co.jp