🎓 生成AI活用の勉強会・無料相談・最新情報をお届けします
オンライン勉強会の案内や、無料相談、ChatGPT・Claude活用の具体例をメールでお届けします。登録は無料、いつでも解除できます。
Claude Codeの機能の中で「知ってはいるが設定したことがない」という声が最も多いのがHooksだ。通常のAIとの対話は「聞いたら答える」受動的な動きだが、Hooksを使えばClaudeが能動的に動く仕組みを作れる。一度設定すれば、あとは黙って動き続けてくれる「常駐スタッフ」に近い感覚だ。
📋 この記事の内容
元ネタ:@IHayato の投稿から
「Claude CodeのHooks、使いこなしてる人まだ少ないけど、これが一番「AIにやらせてる感」出る機能だと思う。ファイル保存のたびに自動でlintかけて、エラーあったらClaudeが直す——これが全部バックグラウンドで走る。コード書いてる間、もう自分でlintコマンド叩かなくていい。」
Claude Codeの機能のなかで、「知ってはいるが設定したことがない」という声が最も多いのがHooksだ。通常のAIとの対話は「聞いたら答える」という受動的な動きだが、HooksはClaudeが能動的に動く仕組みを作れる。ファイル保存・コマンド実行・セッション開始など、特定のタイミングをトリガーに処理を自動で走らせられる。エンジニアだけの機能に見えるが、「フォルダに原稿を置いたら自動でチェックする」といった使い方は非エンジニアにも応用できる発想だ。
① Hooksとは「Claude Codeへの自動指示システム」のこと
Claude Codeには通常、チャット画面で人間が指示を送る。しかしHooksを使うと、「ファイルを保存したとき」「コマンドを実行する前後」「新しい会話を始めるとき」といったタイミングを起点に、Claudeへの指示を自動で送れる。
つまり、人間がいちいち「確認して」「チェックして」と言わなくても、Claude Codeが決まったタイミングで決まった動作をするようになる。一度設定すれば、あとは黙って動き続けてくれる「常駐スタッフ」に近い感覚だ。
PostToolUse(ツール使用後)/ PreToolUse(ツール使用前)/ Stop(会話終了時)/ SubagentStop(サブエージェント終了時)
② 設定はCLAUDE.mdのhooks項目に書くだけ
Hooksの設定はJSON形式でCLAUDE.mdに記述する。たとえば「コード保存後にlintを自動実行してエラーを修正する」設定は以下のようなイメージになる:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "npm run lint --fix"
}
]
}
]
}
}
ポイントは「トリガーの種類(いつ動くか)」と「実行するコマンド(何をするか)」の2点を指定するだけでいいこと。難しいプログラムを書く必要はない。
(※実際の設定はClaude Codeの公式ドキュメントを参照)
③ 非エンジニアでも応用できる”自動チェック”の考え方
コードのlintに限らず、Hooksの発想は幅広く使える。たとえばこんな用途が考えられる:
- 原稿の自動校正:テキストファイルを保存したタイミングで、誤字脱字チェックを自動実行
- 命名規則の確認:新しいファイルを作成したときに、ファイル名の形式をClaude Codeにチェックさせる
- 作業ログの自動記録:会話を終了するたびに、今日の作業内容をMarkdownファイルに追記させる
「毎回手動でやっている確認作業」をリストアップして、そのタイミングをHooksのトリガーに設定するだけで自動化できる。考え方はシンプルだ。
実際に試してみるなら
🚀 まず試すならここから
「PostToolUse(ファイル編集後)」トリガーで、簡単なコマンド1つを自動実行するところから始めてみると感覚がつかめる。たとえばファイルを保存したら自動でWordCountを実行して「今何文字か」をターミナルに表示するだけでも、Hooksの動きを体感できる。
Claude Codeに「Hooksの設定を手伝って」と相談しながら設定ファイルを作れば、コードを書いたことがない人でも試せるはずだ。
まとめ
Claude CodeのHooksは「タイミングを決めてClaudeを自動で動かす」仕組みで、一度設定すれば手動作業をどんどん省略できる。エンジニアだけでなく、ライターや編集者の校正フローにも応用できる発想なので、ぜひ試してほしい。
元ネタ提供:@IHayato(ikehaya)