公開日: 更新日: 状態: 公開中 / Snapshot

AI Agent並列開発:プロジェクト設定

最初に揃えるのは、完全な自動化ではなく責任境界。 チーム共通は方針と入口、プロジェクト固有は実処理、個人設定は個人だけの上書きに分ける。

固定入口は推奨であり初回導入の絶対条件ではない

初回は既存の make devmake testmake e2e を作業ごとに直列で使ってよい。 agent-setupagent-upagent-clean は、Level 2〜3 へ進む時や、cleanup を明示的に整理したい時に Agent へ渡しやすい入口名の例。

責務分担

項目 チーム共通 プロジェクト固有 個人設定
branch / worktree 同時編集時は分ける方針、命名規則 monorepo / service prefix の有無 worktree root の保存先
setup 入口名と、必須か任意か package install、DB migrate、seed、依存 service 起動 個人だけの追加 setup
起動 実 URL を記録する方針 pnpm devdocker compose up、worker 起動 debug flag、個人ポート設定
test / E2E 検証した branch と結果を対応付ける方針 Playwright / Cypress 設定、artifact 保存先 headed mode、debug option
実行リソースの分離 Level 2〜3 で追加する分離方針 Compose project、DB / schema、cache prefix、queue 名 ローカル DB 接続先、認証情報 path
cleanup 担当者と対象を必ず決める process、container、volume、artifact、cache の実削除処理 片付けの skip、個人 override
Agent instructions 共通原則 AGENTS.md / CLAUDE.md の workflow 個人 override、個人メモ

既存コマンドを入口へ対応付ける

目的 初回導入で十分な状態 Level 2〜3 で追加する状態
setup 人間が既存手順で依存関係を揃える agent-setup で dependency、DB migrate、seed、ローカル設定を再現できる
起動 作業ごとに片方ずつ起動し、見ている URL を確認する agent-up が実 URL、実行状態、readiness 結果を出す
readiness 人間がアプリ表示や health check を確認する port 割当と利用可能状態を分け、timeout 付きで記録する
test 対象 branch で make test を実行する exit code、log、artifact path を作業ごとの環境名へ結び付ける
E2E 接続先 URL を確認して実行する 固定 URL ではなく実行状態に記録された URL を読む
cleanup 担当と対象を確認して片付ける 作業ごとの環境名と worktree の対応を確認し、対象リソースだけ片付ける

導入レベルごとの設定追加

  1. Level 1: 差分作成だけを並列化

    Agent session と、同時編集する branch / worktree を分ける。起動、test、E2E、PR、cleanup は作業ごとに直列で進める。

  2. Level 2: 起動まで並列化

    process / container、port / URL、cleanup 対象を作業ごとに識別する。DB、cache、queue は、読み取り専用、または同時書き込みがなく相互影響もしない場合だけ共有を許容してよい。状態を変更する確認は直列化し、既知状態へ reset できないリソースは分離する。

  3. Level 3: 検証まで独立

    DB または schema、cache prefix、queue 名、E2E 接続先、artifact path を分ける。

  4. cleanup を整理する

    cleanup 対象と担当を明示し、所有者が分からない process、container、volume、artifact は削除しない。

実装で決めること

決めること 具体化する場所
worktree の作成規則 利用ツールの worktree / workspace 機能、または scripts/agent-worktree-start のような代替 script
ローカル専用ファイル .agent-worktree-files、利用ツールの copy 機能、許可リスト付き copy script。secret は除外する
作業ごとの環境名の使い道 Level 2 以降で、port、URL、DB、cache、artifact、cleanup 対象を同じ作業へ結び付ける
動的ポートの記録 利用ツールの port 表示、workspace metadata、作業メモ、または project 固有の状態ファイル
E2E の接続先 固定 URL ではなく、検証対象の実 URL を読む方法
cleanup の所有権 作業ごとの環境名、worktree、session metadata、Compose label、明示確認値を照合してから削除する方法

関連ページ

このページは発表資料の補足です。