📋

AGENTS.md / CLAUDE.md:AIを「チャット」ではなく、エージェントとの「仕事場」として使う

に公開

序論:プロンプトから構成管理(Configuration)への移行

AIアシスタントを仕事で使う場面では、自然言語による対話(チャット)から、永続的な定義ファイルに基づく「構成管理」へとパラダイムシフトが起きています。これまでは、セッションごとに「プロジェクトではTypeScriptを使用している」「Zennの記事としてフォーマット」といった文脈(コンテキスト)を繰り返し入力する必要がありました。

この非効率性を解決するために登場したのが、AGENTS.md をはじめとする「AIのためのREADME」です。これは、ウェブ開発における robots.txt が検索クローラーに対する指示書であるのと同様に、AIエージェントに対してプロジェクトの構造、ルール、約束ごとを宣言的に伝えるための標準フォーマットです。

本稿では、OpenAI、Anthropic、Google、Cursor各社が実装するコンテキスト注入技術の仕様を比較・整理し、これらがどのように「AIへのコンテキスト供給のモジュール化(バンドリング)」を実現しているかについて詳述します。コードを書かない仕事(執筆・企画・分析など)や研究(LaTeX論文の執筆)でも、AGENTS.md や各ツールの CLAUDE.md / GEMINI.md を 1 本置くだけで、AI を同じルールで動く仕事場として、これまでのチャットから、柔軟にカスタマイズできる AI との協業の空間として使える点にも触れます。


1. AGENTS.md:オープンフォーマットによる標準化

AGENTS.md は、AIコーディングエージェントに文脈と指示を与えるためのシンプルでオープンなフォーマットとして提案されています。その目的は、開発者がプロジェクトごとに予測可能な場所(ルートディレクトリ)に指示を配置し、AIがそれを自律的に参照できる環境を作ることです。

1.1 基本仕様と哲学

AGENTS.md は、人間が読むための README.md とは異なり、AIがタスクを実行する際の「制約条件」や「期待値」を定義します。

  • Dev environment tips: パッケージマネージャーの指定(例:pnpm の強制)やビルド手順。
  • Testing instructions: テストの実行コマンドや、特定のテストスイートの実行方法。
  • Code Style: 命名規則や使用すべきライブラリの指定。

一方、執筆・企画・分析などのプロジェクトでは、プロジェクトの目的・文体・成果物のルール・依頼の仕方などを書く使い方もあります。

1.2 コンテキストの階層構造(Hierarchy)

OpenAIやGemini CLIの実装では、単一のファイルではなく、ディレクトリ構造に基づいた階層的な読み込みがサポートされています。これにより、プロジェクト全体には共通のルールを適用しつつ、特定のサブディレクトリ(例:frontend/)には固有のルールを適用することが可能です。

  1. Global Scope: ユーザーのホームディレクトリ(例:Codex は ~/.codex/AGENTS.md、Gemini CLI は ~/.gemini/GEMINI.md)に配置され、全プロジェクトに適用されるデフォルト設定。
  2. Project Root: プロジェクトのルート(.git フォルダが存在する場所)にある AGENTS.md
  3. Sub-directory: 現在の作業ディレクトリまでの各親ディレクトリにある設定ファイル。

これらのコンテキストはルートから順に連結され、AIに送信されます。これにより、あたかもプログラミング言語のスコープのように、下層のルールが上層のルールを具体化、あるいは上書き(Override)する構造が実現されています。


2. 各ツールにおける実装と独自拡張

業界標準として AGENTS.md が浮上する一方で、各ツールは独自の最適化を行っています。

2.1 Cursor:.cursor/rules とファイルパス制御

Cursor は、プロジェクトのルートに .cursor/rules ディレクトリを作成し、その中に複数のルールファイル(.mdc または .md)を配置する方式を採用しています。

  • Globsによる適用制御:
    Cursorの最大の特徴は、各ルールファイルに globs プロパティを設定できる点です。例えば、globs: "*.tsx" と定義されたルールは、ユーザーがTypeScriptのReactコンポーネントを編集している時のみコンテキストに注入されます。これにより、不要なトークン消費を抑えつつ、適切なタイミングで適切な指示を与えることができます。
  • AGENTS.md のサポート:
    Cursorは .cursor/rules のシンプルな代替手段として、プロジェクトルートにある AGENTS.md の読み込みも正式にサポートしています。

2026年更新

  • Agent Skills 統合: GitHub リポジトリからスキル由来のルールをインポートし、エージェント判断ルールとして自動適用可能。
  • セキュリティ: チームダッシュボードでルールの「強制」を有効にすると、メンバーが無効化できず一貫した運用が可能。
  • リモート同期: リモートルール(GitHub)を追加すると、元リポジトリの更新がプロジェクトに同期される。

2.2 Claude Code:CLAUDE.md とコマンド実行の最適化

Anthropicの CLAUDE.md は、エージェントが「迷わずに作業を実行する」ことに特化した設計となっています。

  • Commands & Style:
    ビルド(Build)、テスト(Test)、リント(Lint)などのコマンドを明確に定義し、AIが試行錯誤することなく一発で正しいコマンドを実行できるようにします。

階層構造と補助機能

  • 階層: グローバル(~/.claude/CLAUDE.md)、プロジェクトルート、親・子ディレクトリの CLAUDE.md を自動で読み込む。モノレポではルートとサブディレクトリで役割を分けられる。
  • /init: プロジェクト構造を解析し、CLAUDE.md のスターターを生成するコマンド。
  • @import: @path/to/file.md で他ファイルを参照でき、長い指示を分割して管理できる。Gemini CLI の @import と同様の考え方である。

2.3 Gemini CLI:GEMINI.md とモジュール化

Gemini CLI は、コンテキストの「再利用性」と「動的操作」に重点を置いた強力な機能セットを持っています。

  • Import機能(@import):
    @./shared/style-guide.md のような構文を使用することで、外部のMarkdownファイルをインポートできます。これにより、巨大な指示書を機能ごとのモジュールに分割管理することが可能になります。
  • メモリ管理(/memory):
    /memory add コマンドを使用して、対話中に得た知見を即座にグローバルコンテキスト(記憶)に追加したり、/memory show で GEMINI.md から読み込まれた指示コンテキストを確認したりすることができます。
  • ファイル名のカスタマイズ:
    設定ファイル(settings.json)により、デフォルトの読み込みファイル名を GEMINI.md から AGENTS.mdCONTEXT.md に変更することが可能であり、他ツールとの相互運用性が意識されています。

3. AGENTS.md の例と Agent Skills について

AGENTS.md がプロジェクトの「ルールと文脈」を担うのに対し、Agent Skills はエージェントに「タスク実行能力」を追加するオープン標準(agentskills.io)です。Cursor、OpenAI Codex、Gemini CLI などが SKILL.md によるプログレッシブディスクロージャー(progressive disclosure)に基づくオンデマンド読み込みを採用しています。詳細は agentskills.io および各ツールの Agent Skills ドキュメント(本記事末尾の参考文献)を参照してください。

3.0 Agent Skills を扱う際の注意(セキュリティ)

Agent Skills でスクリプトを実行する場合は、次の点を意識すると安全です。

  • Sandboxing: スキル内スクリプトはサンドボックス環境で実行し、悪意あるコードの影響範囲を限定する。
  • Allowlisting: 信頼できるスキルのみ実行を許可するリストを運用する。
  • ユーザー確認: 危険な操作の前にユーザー確認を求める設定を推奨する。
  • 実行ログ: スクリプト実行を監査用に記録する。

3.1 AGENTS.md の例:エンジニアと非エンジニア

開発プロジェクトでは、Dev environment tips・Testing instructions・Code Style といったセクションで、パッケージマネージャーやテストコマンド、命名規則を書くのが典型的です。1.1 で触れたように、執筆・企画・分析などのプロジェクトでは、プロジェクトの目的・文体・成果物のルール・AI への依頼の仕方を書く使い方もあります。コードを書かないプロジェクトでも、フォルダのルートに 1 本 AGENTS.md(または Claude Code なら CLAUDE.md)を置くだけで、AI が同じルールで動く「仕事場」になります。

プロジェクトタイプごとの AGENTS.md の書き分け例は次のとおりです。

プロジェクトタイプ AGENTS.md の主なセクション 例のポイント
記事執筆 文体・成果物ルール・依頼の仕方 Zenn 形式の統一、frontmatter 確認
データ分析 データ処理ルール・参照パス・依頼の仕方 CSV/出力パスの指定、クエリ引用
企画書作成 トーン・構造ルール・依頼の仕方 ビジネス向け簡潔化、テンプレート参照

非エンジニア向けの AGENTS.md 例(例:記事執筆用フォルダ)

黒い画面の Claude Code 以外に、まずはエディタとしての CursorGoogle Antigravity から AGENTS.md を試すのもおすすめです。

簡略版:1 ファイルに目的・文体・成果物ルール・依頼の仕方をまとめるパターン。

# AGENTS.md

## このフォルダについて
Zenn 記事の下書きと画像を管理するプロジェクトです。公開前の推敲・構成変更・画像パスの整理に AI を利用します。

## 文体・トーン
- です・ますで統一する。
- 専門用語の初出は「日本語(English)」の形式とする。

## 成果物のルール
- 見出しは ## から始める(# は記事タイトルに使わない)。
- 画像は images/ に置き、相対パスで参照する。
- 公開前に frontmatter(title, emoji, topics)を確認する。

## AI への依頼の仕方
- 変更を提案する前に、該当ファイルの該当箇所を引用してから提案すること。

ディレクトリ構造化版:ルートに AGENTS.md を置き、ディレクトリの役割と参照すべきルールファイルを明示するパターン。zenn-cli を用いる場合は、執筆を workspace/YYYYMMDD-slug/draft/ で試行し、固まったら articles/ へ昇格させる運用を AI に伝えられる。

# AGENTS.md

本リポジトリで AI が作業する際の行動規範を定義する。

## 1. このリポジトリの目的
Zenn に公開する記事・本を、ローカル + GitHub で管理・執筆するためのリポジトリである。

## 2. ディレクトリの役割
| パス | 内容 | AI の関与 |
|------|------|-----------|
| articles/ | Zenn 記事(完成品) | フォーマット調整・微修正 |
| books/ | Zenn 本(完成品) | 同上 |
| workspace/ | 執筆中の下書き・実験 | 自由な執筆・構成案・バージョニング |
| images/ | 記事・本で使う画像 | 参照のみ。画像の生成・削除は人間 |
| policy/ | 執筆ルール・方針 | 参照する。変更は人間の指示がある場合のみ |

## 3. 従うべきポリシー
- policy/style-guide.md:表記・用語・句読点のルール
- policy/output-conventions.md:成果物のファイル名・ディレクトリ構成
- policy/tone-and-voice.md:文体と読者に合わせたトーンの指定

## 4. 推奨する振る舞い
- 新規記事はまず workspace/YYYYMMDD-slug/draft/v1.md で試行する。固まったら articles/ へ移動し Zenn 用フォーマットに変換する。
- 見出しは ## から。専門用語の初出は「日本語(English)」とする。

ディレクトリ名はプロジェクトに合わせて変えてよい。下書き・実験用は workspace/ のほか draft/wip/、画像は images/ のほか assets/media/ などもよく使われる。


4. 考察:コンテキストの「Webpack化」

現在のAIを仕事で使う環境の進化は、かつてのウェブフロントエンド開発における「モジュールバンドラー(Webpack等)」の登場と酷似しています。開発に限らず、執筆や企画でも同じ考え方が当てはまります。

  1. 静的定義: AGENTS.md.cursor/rules は、ソースコードのようにバージョン管理されます。
  2. 動的結合(Bundling): 実行時(プロンプト送信時)に、現在のディレクトリ位置、編集中のファイルタイプ(Globs)、参照関係(Imports)に基づいて、分散されたコンテキストファイルが動的に収集・結合されます。
  3. 最適化: 必要な情報だけをLLMのコンテキストウィンドウに流し込むことで、コストと精度の最適化が行われます。

これは、従来の「プロンプトエンジニアリング(人間が都度入力する)」から、「コンテキストエンジニアリング(システムが文脈をビルドする)」への移行を意味します。


5. セキュリティとベストプラクティス

AGENTS.md やスキルを共有する際は、次の点に注意すると安全に「仕事場」を運用できます。

  • 機密情報を載せない: GitHub などに公開する場合は、AGENTS.md に API キー・トークン・個人情報を書かない。環境変数や .gitignore で管理する。
  • スキルスクリプトはサンドボックスで: 実務では、スキル内のスクリプトをサンドボックス環境で実行することを推奨する(3.0 で触れた Sandboxing の具体化)。
  • 信頼ソースのみ許可: allowlisting で実行を許可するスキルを限定し、不明なソースは導入しない。
  • 非エンジニア向け: 機密を AGENTS.md に書かなければ、チームで同じファイルを共有してもリスクを抑えられる。

おわりに:結論と展望

AGENTS.md および関連技術は、AIエージェントを「賢いチャットボット」から「信頼できる仕事のパートナー」へと昇華させるためのミッシングリンクです。ディレクトリ階層によるルールの継承、ファイルタイプによるフィルタリング、そしてモジュール参照機能は、AIに対する指示をコードと同様に構造化・管理することを可能にします。

コードを書かない仕事でも、AGENTS.md でプロジェクトの約束ごとを書いておけば、AI をチームの仕事場の一員として同じルールで使えます。開発者に限らず、AI を仕事で使う人は、自然言語で指示を出す能力に加えて、これらの設定ファイルを適切に設計・配置し、エージェントのパフォーマンスを最大化するアーキテクチャ設計の感覚が求められるようになるでしょう。

実践ステップ

  1. Cursor や Gemini CLI など、AGENTS.md / CLAUDE.md / GEMINI.md をサポートするツールをインストールする。
  2. プロジェクトルートに AGENTS.md(または CLAUDE.md)を作成する。本記事の簡略版やディレクトリ構造化版の例をコピーし、プロジェクトに合わせて編集する。
  3. AI にタスクを依頼し、ルールが反映されているか動作を確認する。
  4. ルールを調整し、Git でバージョン管理してチームで共有する。

参考文献

記事の構成に沿い、オープン仕様 → 各ツールのコンテキストファイル(AGENTS.md / 相当)→ Agent Skills の順に整理した。

AGENTS.md とオープン仕様

  1. AGENTS.md(オープン仕様)
    • Source: https://github.com/agentsmd/agents.md / https://agents.md/
    • Summary: AI コーディングエージェント向けの「README」として、プロジェクトのコンテキストと指示を置くシンプルなオープンフォーマット。Dev environment tips、Testing instructions、PR instructions などのセクション例を定義。

各ツールのコンテキストファイル(ルール・AGENTS.md 相当)

  1. Cursor:Rules

    • Source: https://cursor.com/ja/docs/context/rules
    • Summary: .cursor/rules によるプロジェクトルール、globs によるファイル別適用、AGENTS.md のサポート(ルート・サブディレクトリ)、.cursorrules からの移行を解説。
  2. OpenAI Codex:Custom instructions with AGENTS.md

    • Source: https://developers.openai.com/codex/guides/agents-md
    • Summary: Codex が AGENTS.md をグローバル(~/.codex/)とプロジェクト階層で読み、ルートから CWD へ連結してオーバーライドする発見順序。AGENTS.override.md や fallback ファイル名のカスタマイズにも言及。
  3. Gemini CLI:GEMINI.md

    • Source: https://geminicli.com/docs/cli/gemini-md/
    • Summary: コンテキストファイルの階層(Global / プロジェクトルート・祖先 / サブディレクトリ)、/memory コマンド、@import によるモジュール化。context.fileName で AGENTS.md をファイル名に指定可能。
  4. Claude Code:Best practices(CLAUDE.md)

Agent Skills

  1. Agent Skills:Integrate skills into your agent

    • Source: https://agentskills.io/integrate-skills
    • Summary: エージェントにスキル支援を追加する統合ガイド。Discover → Load metadata → Match → Activate → Execute の流れ、フロントマターのパースとコンテキスト注入。
  2. Cursor:エージェントスキル

    • Source: https://cursor.com/ja/docs/context/skills
    • Summary: Agent Skills 標準仕様に対応。.cursor/skills/ 等での検出、SKILL.md(name/description 必須)、scripts/references/assets。/ による手動呼び出しとエージェントの自動選択。
  3. OpenAI Codex:Agent Skills

    • Source: https://developers.openai.com/codex/skills/
    • Summary: SKILL.md と progressive disclosure(メタデータ先読み・使用時のみ本文読込)。明示的/暗黙的呼び出し、.agents/skills の配置。
  4. Gemini CLI:Agent Skills

    • Source: https://geminicli.com/docs/cli/skills/
    • Summary: オンデマンドな expertise、Discovery 階層(.gemini/skills/、~/.gemini/skills/、拡張)、activate_skill、優先順位 Workspace > User > Extension。

Discussion