Build This Now
Build This Now
キーボードショートカットステータスラインガイド
フックガイドClaude Code クロスプラットフォームフックClaude Code セットアップフックストップフック自己検証する Claude Code エージェントClaude Code セッションフックClaude Code コンテキストバックアップフックスキルアクティベーションフックClaude Code パーミッションフック
speedy_devvkoen_salo
Blog/Toolkit/Hooks/Skill Activation Hook

スキルアクティベーションフック

UserPromptSubmitフックがメッセージを解析し、キーワードにマッチしてスキルアクティベーションのヒントを追加することで、Claude Codeが正しいスキルを読み込み忘れることをなくします。

設定をやめて、構築を始めよう。

AIオーケストレーション付きSaaSビルダーテンプレート。

Published Feb 21, 2026Toolkit hubHooks index

問題: Claude Codeに使うよう指示したスキルが読み込まれない。CLAUDE.mdにルールを移動しても結果は同じ。本来フレームワークが自動的に拾うはずのスキルを、毎回手動でリマインダーとして入力することになる。

即効策: フックがすべてのプロンプトを傍受し、適切なスキル推奨を末尾に付加できる。Claude側での記憶に依存しないため、忘れるという問題が解消される。

「help me implement a feature」というメッセージを送ると、Claudeの入力に実際に届くのは次のような内容だ:

help me implement a feature

SKILL ACTIVATION CHECK

CRITICAL SKILLS (REQUIRED):
  -> session-management

RECOMMENDED SKILLS:
  -> git-commits

ACTION: Use Skill tool BEFORE responding

Claudeはリクエストのすぐ隣に、引き込むべき正確なスキルを確認できる。推測も記憶も不要。

仕組み

フックが紐付くイベントは UserPromptSubmit だ。送信したものはすべてこのフローを通る:

  1. メッセージを入力 - 自然言語のリクエスト
  2. フックが傍受 - Claudeが何も受け取る前
  3. パターンマッチング - フックが skill-rules.json でキーワードとインテントの一致を確認
  4. 推奨を追加 - マッチしたスキルがメッセージに付加される
  5. Claudeが両方受け取る - プロンプトとスキルガイダンスの両方

全体がミリ秒単位で完了する。体感できる遅延はない。

マッチングシステム

2つのストラテジーが並行して動く。

キーワードマッチングはリテラルな文字列チェックだ。「commit」や「git push」と書けば git-commits スキルが発火する。

インテントパターンは実際の言い回しに対してregexを使う。パターン (implement|build).*?feature は「let's implement this feature」も「build a new feature for me」も捉える。

設定: skill-rules.json

各スキルのトリガーは .claude/skills/skill-rules.json に記述する:

{
  "skills": {
    "session-management": {
      "enforcement": "suggest",
      "priority": "critical",
      "promptTriggers": {
        "keywords": ["feature", "implement", "build", "refactor"],
        "intentPatterns": ["(implement|build).*?feature"]
      }
    },
    "git-commits": {
      "enforcement": "suggest",
      "priority": "high",
      "promptTriggers": {
        "keywords": ["commit", "git push", "commit changes"],
        "intentPatterns": ["(create|make).*?commit"]
      }
    }
  }
}

提案はプライオリティ別にグループ化される:

  • Critical - 作業前に必ず読み込む
  • High - 強く推奨
  • Medium - 有用なコンテキスト
  • Low - オプションの強化

自分の言い回しへのカスタマイズ

フックは語彙に合わせて柔軟に変えられる。「git push」の代わりに「push my code」と入力しがちな場合は追加すればいい:

"keywords": ["commit", "git push", "push my code", "commit changes"]

新しいスキルを作ったときは、skill-rules.json でトリガーを編集する。そこに書いた語句を参考に、プロンプトの書き方も自然と揃ってくる。

セッションインテリジェンス

フックはすでに提案したものを記憶する。同じ会話の中で session-management が一度登場していれば、2回目以降は黙っている。カバレッジは維持しつつ、ノイズを減らす。

状態は recommendation-log.json に保持され、7日後に自動でクリアされる。

ClaudeFastでのセットアップ

フックはあらかじめ設定済みで出荷される。.claude/settings.local.json を開いて、次の2つのブロックのいずれかが含まれていることを確認する:

Windows:

{
  "hooks": {
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "cmd /c \".claude\\hooks\\SkillActivationHook\\skill-activation-prompt.cmd\""
          }
        ]
      }
    ]
  }
}

Linux/Mac:

{
  "hooks": {
    "UserPromptSubmit": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "bash .claude/hooks/SkillActivationHook/skill-activation-prompt.sh"
          }
        ]
      }
    ]
  }
}

よくある問題

提案が表示されない - キーワードが実際の言い回しと一致していない可能性が高い。フックを手動で実行して出力を確認する:

echo '{"session_id":"test","prompt":"implement a feature"}' | node .claude/hooks/SkillActivationHook/skill-activation-prompt.mjs

不要なタイミングで提案が出る - キーワードが広すぎる。絞り込むか、トリガーをインテントパターンに移動する。

提案が重複する - フックが2か所に同時に設定されている。どちらか1つの設定ファイルに統一して、もう一方から削除する。

次のアクション

  1. skill-rules.json が自分の語彙と合っているか確認する
  2. 新たに作成したスキルのキーワードを追加する
  3. メインのフックガイドでフック全体のカバレッジを設定する
  4. タスク完了を強制するストップフックを設定する
  5. フックを補完するCLAUDE.md設定についてさらに学ぶ
  6. 新しいスキルを作成する必要がある場合はスキルガイドを参照する

スキルアクティベーションフックは人間の記憶をループから取り除く。作業を自然な言葉で説明すれば、適切なスキルを選ぶのはフレームワークの仕事だ。それがフレームワークを持つ意味だ。

Continue in Hooks

  • Claude Code セットアップフック
    スクリプト、エージェント、ドキュメントをClaude Codeのセットアップフックに組み合わせる方法。1つのコマンドで決定論的スクリプトを実行し、診断エージェントに出力を渡し、自動更新されるドキュメントを記録する。
  • Claude Code コンテキストバックアップフック
    StatusLineを活用したClaude Codeのコンテキストバックアップフック。10Kトークンごとに構造化されたスナップショットを書き込み、自動圧縮によってエラー文字列・関数シグネチャ・判断内容が失われるのを防ぐ。
  • Claude Code クロスプラットフォームフック
    Claude Codeのクロスプラットフォームフック: .cmd・.sh・.ps1のラッパーを捨て、nodeを直接呼び出すことで、1つの.mjsファイルがmacOS・Linux・Windowsで動く方法。
  • フックガイド
    Claude Code フックの基礎から実践まで: 終了コード、JSON出力、非同期コマンド、HTTPエンドポイント、PreToolUseとPostToolUseのマッチャー、本番環境パターン。
  • Claude Code パーミッションフック
    3階層の Claude Code パーミッションフックをインストールする: 安全な呼び出しは即時許可、危険な呼び出しは即時拒否、グレーゾーンは LLM チェック。スキップフラグ不要。
  • 自己検証する Claude Code エージェント
    自己検証する Claude Code エージェント: PostToolUse リントフック、Stop フック、読み取り専用レビュアーのサブエージェントをエージェント定義に組み込み、不良な出力が出荷されないようにする。

More from Toolkit

  • キーボードショートカット
    Claude Codeのkeybindings.jsonを設定する: 17のコンテキスト、キーストローク構文、コードシーケンス、修飾キーの組み合わせ、デフォルトショートカットを即座に無効化する方法。
  • ステータスラインガイド
    Claude Code のステータスラインにモデル名、gitブランチ、セッションコスト、コンテキスト使用量を表示する方法。settings.json の設定、JSON入力、bash、Python、Node.js スクリプトを解説。
  • AIによるSEOとGEO最適化
    Generative Engine Optimizationの解説: Googleで上位表示されるだけでなく、ChatGPT、Claude、Perplexityの回答内でコンテンツが引用されるようにする方法。
  • 2026年版 Claude Code と Cursor の比較
    2026年の Claude Code と Cursor を並べて比較します。エージェントモデル、コンテキストウィンドウ、料金プラン、そして各ツールが異なる開発ワークフローにどう適合するかを解説します。

設定をやめて、構築を始めよう。

AIオーケストレーション付きSaaSビルダーテンプレート。

On this page

仕組み
マッチングシステム
設定: skill-rules.json
自分の言い回しへのカスタマイズ
セッションインテリジェンス
ClaudeFastでのセットアップ
よくある問題
次のアクション

設定をやめて、構築を始めよう。

AIオーケストレーション付きSaaSビルダーテンプレート。