harness-bootstrap、最初から最後まで

紫 = モデル、課金される 緑 = スクリプト、無料 青 = あなた 赤 = ガードレール
.claude/ 空
エージェントは?ルールは?ガードレールは?タスクは?

まずモードを選ぶ - 規模の話ではない

greenfield 空、またはほぼ空のリポジトリ
brownfield 既存のコードがあり、エージェントが変更する
audit エージェントが分析し、人間が全ての修正を適用する
紫 - モデルが必要
コードベース分析 - 必須 スタック、モジュール、データ層、連携先、規約、危険な操作、既存の.claude/、gitの実態
→
棚卸しレポート
モジュール → 開発エージェント 規約 → ルール 危険な操作 → 拒否リスト + フック
↓
あなたが確認・訂正する 確認される前は1つもファイルを生成しない
紫 - モデルが必要
インテイク質問 AskUserQuestion、1回最大4問。Brownfieldは根拠から事前入力し、コードで判断できないことだけ尋ねる
→
ツールを検出・確認 .cursor/ .codex/ AGENTS.mdを走査し尋ねる: Claude Code / Cursor / Codex
→
1画面のセットアップ計画 作成 / 維持 / 変更、model + effort付きロースター。あなたが確認する
紫 - モデルが必要
ロースター Tier 0は無条件、プリセットS / M / L、明示的なmodel: と effort:
→
スキル: 適合・審査・配線 検出したスタックに合わせ、提案前に必ずレビューし、選んだら配線される
→
開発OSを検出 Windowsは.ps1へ、macOS/Linuxは.shへ
→
vars.json vars + flags: ui, db, ai, audit, tdd, ddd, deploy_ask, windows / posix
緑 - スクリプト、決定的で無料
scaffold.py --dry-run →
scaffold.py assets/の決定的なコピー
追加ファイルが存在しなかった
維持存在し、バイト単位で同一
競合存在し内容が異なる - 書き込まない
↓
手で突き合わせる: 維持 / 適応 / 追加 / フラグ exit 0
緑 - スクリプト、決定的で無料
scaffold.py --dry-run → scaffold.py
未解決の {{ VAR }} → exit 1
プレースホルダーが本番のルールファイルに紛れ込むと、何にも一致せず静かに失敗する
紫、再び - テンプレートには分からないこと
モデルが埋める空白 オーケストレーターのルーティング表、開発エージェントのスコープ、tech-stack.md、coding-standards.md、git-workflow.md、実際のスタック向けsettings.jsonのallow / deny、.env.example
→
オーケストレーションの配線 マスタープランの索引表、分析のギャップ一覧から種をまくPhase 1、AGENTS.mdのエントリーポイント、薄い@AGENTS.mdインポートとしてのCLAUDE.md
品質ゲート 構造 / コスト / 安全性 / 裏付け / 引き継ぎ
→ 全て green
ループをスモークテスト →
両方のグラフを構築 code-graph.py + docs-graph.py、その後graph-html.py: harness-graph.html + specs-graph.html
→ あなたのツールへ移植
↓ ハーネスがオーケストレーションの下で動く

3つの帯として読む

分析 + 決定モデルが必要
→
スキャフォルドスクリプト、無料
→
空白埋め + 配線テンプレートが知らないこと
AGENT HARNESS BOOTSTRAP