agent-context-loader について
プロジェクト階層のAGENTS.mdを検出して読み込む、コーディングエージェント向けスキルです。深さ順に内容を統合し、競合を報告して、セッション内で検出結果をキャッシュします。
主な機能
- 01ワークスペースと親ディレクトリの走査
- 02サブディレクトリ内の指示ファイル検出
- 03深さ順の指示統合
- 04指示の競合報告
- 05セッション内の検出結果キャッシュ
活用シーン
- 01リポジトリとモジュールの指示読み込み
- 02階層間の指示競合の確認
- 03後続の有効化で走査結果を再利用
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ jeremylongshore/ tons-of-skills-marketplace --skill agent-context-loaderインストール後、Claude Code で/agent-context-loaderを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/README.mdreferences/errors.mdexamples.mdREADME.mdscripts/check-agents-md.shREADME.md詳細
エージェントコンテキストローダー
概要
AI コーディングエージェント向けに、プロジェクト階層全体で AGENTS.md ファイルを自動的に検出して読み込みます。このスキルは、現在のワークスペースと親ディレクトリをスキャンしてエージェント指示ファイルを特定し、その内容を表示することで、アクティブなエージェントセッションが完全な運用コンテキストを得られるようにします。
前提条件
- いずれかのディレクトリ階層に 1 つ以上の
AGENTS.mdファイルがあるプロジェクトワークスペース - ディレクトリツリーをたどるための Read および Glob 権限
- 候補が複数ある場合にファイルの内容を検索するための Grep アクセス
手順
- 現在の作業ディレクトリとすべての祖先ディレクトリを、ファイルシステムのルートまたはリポジトリルートまでスキャンし、
AGENTS.mdまたはagents.mdという名前のファイルを探します。 - 現在のワークスペースのサブディレクトリを検索し、サブプロジェクトやモジュールに適用される追加の
AGENTS.mdファイルを探します。 - 読み込み順序を決定します。リポジトリルートに近いファイルを先に読み込み(グローバルコンテキスト)、より深いディレクトリにあるファイルを後から読み込みます(上書きまたは補足)。
- 検出した各
AGENTS.mdファイルを読み、指示ブロック、ワークフロー定義、制約の宣言を抽出します。 - 指示を統合コンテキストにまとめ、階層間の競合(サブディレクトリのエージェントがルートレベルのルールを上書きする場合など)を記録します。
- 読み込んだコンテキストを、ソースファイルパス、指示数、検出された競合を含む構造化された要約として提示します。
- 以降のアクティベーションで不要なファイルシステムのスキャンを繰り返さないよう、検出結果を現在のセッション用にキャッシュします。
出力
- 検出された
AGENTS.mdファイルパスの、ディレクトリの深さを含む順序付きリスト - 検出されたすべてのエージェントコンテキストを統合した指示セット
- 階層間の矛盾する指示を強調表示する競合レポート
- セッションキャッシュの状態(結果が新規か再利用かを表示)
エラー処理
| エラー | 原因 | 解決策 |
|---|---|---|
AGENTS.md が見つからない | ワークスペースにエージェント指示ファイルがない | 正しい作業ディレクトリであることを確認し、必要に応じてプロジェクトルートに AGENTS.md を作成します |
| ディレクトリの走査で権限が拒否された | ワークスペースより上位の親ディレクトリが制限されている | .git/ の存在から検出されるリポジトリルートまでスキャン範囲を制限します |
| 循環シンボリックリンクを検出 | シンボリックリンクされたディレクトリによって走査が無限ループになる | スキャン中はシンボリックリンクされたディレクトリをスキップし、シンボリックリンクのパスとともに警告を記録します |
| 階層間で指示が競合 | サブディレクトリの AGENTS.md がルートレベルのファイルと矛盾している | 出力で競合を通知し、既定ではより具体的な(より深い階層の)指示を適用します |
| ファイルのエンコードエラー | AGENTS.md が UTF-8 以外のエンコードを使用している | latin-1 での読み込みを試み、ファイルパスとエンコードの問題を報告します |
例
例 1:パッケージごとにエージェント指示があるモノレポ
- 構成:ルートの
AGENTS.mdが全体の規約を定め、packages/api/AGENTS.mdが API 固有のツール規則を追加します。 - 結果:両方のファイルが順番に読み込まれます。API 固有の規則は、競合することなくグローバルコンテキストを補足します。
例 2:コミットポリシーが競合する入れ子のワークスペース
- 構成:ルートの
AGENTS.mdは「常にコミットに署名する」と指示し、services/legacy/AGENTS.mdは「コミット署名を省略する」と指示します。 - 結果:競合が検出され、報告されます。より深い階層(legacy)の指示が適用され、上書きされたことを示す警告が付記されます。
例 3:エージェントファイルがない初回セットアップ
- 構成:どこにも
AGENTS.mdがない、新たにクローンしたリポジトリです。 - 結果:ファイルが 0 件見つかった状態でスキャンが完了します。出力には、最小限のテンプレートを使ってリポジトリルートに
AGENTS.mdを作成する提案が含まれます。
リソース
- Claude Code の AGENTS.md 仕様:https://docs.anthropic.com/en/docs/agents
- エージェント設定のためのモノレポワークスペースパターン:https://docs.anthropic.com/en/docs/claude-code
- 階層型設定読み込みにおけるファイル検出のベストプラクティス
コメント
Markdown 対応