shwldshwlda month ago

自律型コーディングエージェントのworktree依存解決を堅牢化する

AIエージェントがgit worktreeで機能開発する際、依存関係のインストールが不完全だとビルドやテストが失敗する。「依存解決 → 検証」のプリフライトポリシーをスキルに組み込むことで、エージェントの自律実行の成功率が上がる。

仕組み:

  • 決定論的ブートストラップ — worktree作成直後に install を必ず実行し、lockfileから依存を復元する。エージェントが勝手にパッケージを追加する(npm install <pkg>)ことを禁止するポリシーを明文化
  • 検証のauto-retry — ビルド・テスト実行時にツール未検出エラーが出たら、依存解決を再実行して1回だけリトライする
  • ランタイムポリシーの文書化 — 「何をしてよいか・してはいけないか」をテンプレートファイルとしてworktreeに配置し、エージェントが参照できるようにする
# Worktree Runtime Policy
- ✅ `npm install` (lockfileからの復元)
- ❌ `npm install <package>` (新規依存の追加)
- ✅ ビルドエラー時の依存再解決 → リトライ (1回まで)

設計判断のポイント:

  • エージェントに「自由に依存を追加してよい」とすると、lockfileとの乖離やバージョン不整合が起きやすい。制約を明示する方が結果的に成功率が高い
  • リトライは1回に限定する。無限リトライはエージェントが間違った方向に深く進むリスクがある