コーディングエージェントのAGENTS.md / Skills /MCP・ツール /サブエージェント/Hooksの違い

コーディングエージェントを現場投入するときに混乱しやすいのが、「どこに何を書けば、どの粒度で、どれくらい強制力を持って効くのか」です。結論から言うと、これらは同じ“指示”でも レイヤー(方針→手順→分業→外部能力→強制執行) が違います。

とのこと

目次

簡単に役割の違い

  • AGENTS.md:リポジトリに対する 恒常的な方針・前提(憲法)。Codex などが作業前に読み、階層で上書きされる。

  • Skills(SKILL.md):繰り返し使う 手順書モジュール。問い合わせが目的に一致すると自動適用される(発火条件は description が鍵)。

  • サブエージェント:役割ごとに 別人格+別コンテキスト で分業する枠。ツール権限や自動ロードする Skills も分けられる。

  • MCP / ツール:外部システムに対する 実行可能な能力。MCP はツール/リソース/プロンプトを標準化して接続する。

  • Hooks:特定タイミングで 必ず走る強制オートメーション。設定ファイルでイベントとマッチャーを定義し、コマンド等を実行する

使い分けの実務ルール(迷ったらこれ)

  • 「常に守らせたいルール」AGENTS.md(方針)+ Hooks(強制)

    • セットアップ/テスト/依存追加ルールなど、常時必要に限定。
    • フォーマット/テストを“確実に”回す(モデル依存を排除)。
    • “守るべきルール”だけに絞る(テスト、フォーマット、依存追加、危険パス)。階層が増えるほど解釈が難しくなるので、深い階層の上書きは最小に。
    • 「フォーマット」「禁止領域の保護」「監査ログ」のように、LLMに任せると抜ける部分を強制。Hooksは権限を持って自動実行され得るので、セキュリティ前提で最小限に。
  • 「頻出の手順を再利用したい」Skills(発火は description 設計が命)

    • PR レビュー・コミット生成など、繰り返すが常時は重い作業をモジュール化。
    • 2〜5個の頻出ワークフローから開始(PRレビュー、変更後チェック、リリース手順など)。スキルは name/description の設計が成否を左右する(マッチングの入口)ため、自然言語で引っかかる説明にする。
  • 「文脈を分けたい/権限を分けたい」サブエージェント

    • レビュー担当に権限と Skills を付与(親の Skills は継承しないので要明示)。
    • 「レビュー」「テスト実行」「調査」など、コンテキストを汚しやすい役割を分離。プロジェクト限定は .claude/agents/、個人横断は ~/.claude/agents/
  • 「外部に触らせたい」MCP / ツール(まず読み取り系から)

    • “読み取り系”から入って、書き込み系は承認フロー・権限分離を強める(人間の拒否を前提に)。

参考

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次