agents-md-starter は何をしますか?
出力: リポジトリルートに AGENTS.md(単一情報源)と、@AGENTS.md を含む CLAUDE.md(Claude Code が CLAUDE.md を読み込み、@path インポートをサポート)を作成します。ファイル内のコマンドはすべて正常に実行されているか、未検証であることが明示されている必要があります。
ステップ1 — スキャン
python3 scripts/scan_repo.py /path/to/repo # 人間向けサマリー
python3 scripts/scan_repo.py /path/to/repo --json # JSON形式の情報
python3 scripts/scan_repo.py /path/to/repo --draft > AGENTS.draft.md # テンプレート埋め込み
検出するもの:ファイル数による言語、ロックファイルからのパッケージマネージャー、package.json のスクリプト、Makefile ターゲット、pyproject.toml のツール(pytest, ruff, mypy, uv/poetry)、Go/Rust/Java のビルドファイル、フレームワーク(Next.js, Astro, Vite, Django, FastAPI, Rails…)、モノレポワークスペース、CI ワークフロー、環境変数ファイルの例、既存のエージェントルールファイル。リポジトリのコードは実行しません。
ステップ2 — 書き込む前に読む
- 見つかった既存のルールファイルすべて(
CLAUDE.md、.cursorrules、.cursor/rules/*.mdc、.github/copilot-instructions.md、GEMINI.md、CONTRIBUTING.md)を読みます。実際のルールは維持し、マージ・重複排除を行い、「きれいなコードを書く」のような汎用的なルールは削除します。 - CI ワークフローを読みます。CI が実行するコマンドは、「テストが通る」を最も確実に定義します。
- 代表的なソースファイルを2~3つ読み、実際の規約(命名、エラーハンドリング、インポートスタイル)を把握します。コードに従っていない規約をでっち上げてはいけません。
ステップ3 — コマンドを検証する
ドラフトからインストール/ビルド/テスト/リントコマンドを実行します(安全な方法で:デプロイなし、本番データベースへのマイグレーションなし、公開なし)。結果ごとに:動作すればそのまま維持、正しいバリアントが明らかな場合は修正、それ以外の場合は (未検証) とマークしユーザーに通知します。テストスイートが遅い場合はその所要時間を記録します。
ステップ4 — AGENTS.md を書く
assets/AGENTS.template.md を起点にします。良いコンテンツのためのルール:
- 短く。 約150行以内を目指します。エージェントはすべてのタスクでこれを読みます。1行ごとにコンテキストのコストがかかります。
- 具体的で検証可能: 「コミット前に
pnpm test --filter webを実行する」は「コードをテストする」よりも優れています。 - コマンドを最初に配置します。続いてレイアウト、規約、注意点、「禁止」ルール。
- 自明でないことを記録します:編集してはいけない生成ファイル、テストに必要な環境変数、ローカルでスキップすべき遅いテスト、シークレットを決して置いてはいけない場所。
- モノレポ:ルートの AGENTS.md に共通ルール、
packages/x/AGENTS.mdにパッケージ固有のコマンド(対応するエージェントは最も近いファイルを読みます)。
ステップ5 — 他のツールと連携する
- Claude Code:
assets/CLAUDE.template.mdからCLAUDE.mdを作成します(@AGENTS.mdを含みます)。CLAUDE.md がすでに存在する場合は、そのルールを AGENTS.md に移動し、Claude 固有のメモをインポートの下に残します。 - Codex: ネイティブで
AGENTS.mdを読みます — 他に必要なものはありません。 - Cursor: ルートの
AGENTS.mdを読みます。.cursorrulesの内容を AGENTS.md に移行し、ユーザーが同意したら.cursorrules(非推奨)を削除します。.cursor/rules/*.mdcはグロブスコープのルールのみ保持します。 - Gemini CLI: デフォルトで
GEMINI.mdを読みます。.gemini/settings.jsonで"context": {"fileName": ["AGENTS.md", "GEMINI.md"]}を設定するか、AGENTS.md を指す1行の GEMINI.md を作成します。インストールされているバージョンのドキュメントでこのキーが移動していないか確認します。 - シンボリックリンク(
ln -s AGENTS.md CLAUDE.md)も機能しますが、core.symlinksがない Windows 環境では壊れます。インポートのアプローチの方が安全です。
各ツールが読み込むファイルについては references/tool-support.md を参照してください。
ステップ6 — 報告
以下のリストを報告します:作成/変更したファイル、検証したコマンド(結果付き)、未検証とマークしたコマンド、重複または汎用的として削除したルール、ユーザーの判断を仰ぐ必要があるもの(例:.cursorrules を削除するか?)。ユーザーが依頼しない限りコミットは行いません。