AntigravityやClaudeで援護射撃を頼んだら、Git履歴と設計がカオスになった話
メイン開発を進める中、たまに他の2人にAntigravityやCodex、Claude等で援護してもらった結果、AIの猛烈なコード生成スピードによって起きたコンフリクト祭り。人間1人とAI援護部隊のリアルな開発記。
プリダンの開発体制は、基本的に私(メイン開発者)が全体のアーキテクチャ設計と実装の大部分を進め、たまに他のメンバー2人にピンポイントで援護射撃をお願いするというスタイルをとっています。
そして最近は、その援護部隊の武器として Antigravity や Codex、Claude Code といった最先端のAIコーディング環境を積極的に活用していました。
「このモジュール、ちょっとAI使って手伝ってもらえる?」と軽く頼んだあの日。 まさかあんなGitコンフリクト地獄と設計の衝突が待ち受けているとは思いもしませんでした。
発生したこと:AIの超高速アウトプットによる「津波」
私自身もコードをガシガシ書いてプッシュしている最中、他の2人がAntigravityやClaudeに指示を出して援護に入ってくれます。
- 私:「よし、撮影フローのRust側の状態遷移とWebSocket周りを固めたぞ」
- メンバーA:「了解!じゃあAntigravityで管理画面のUIとAPIクライアント作っとくね」
- メンバーB:「こっちはClaude使って落書き機能のカラーピッカーとスタンプ一覧を実装したよ!」
人間の開発速度なら、「Aさんの作業待ち」「BさんのPRレビュー」と段階的にマージしていけます。 しかし、相手は思考速度0秒でターミナルを叩き、テストを回してコミットを連打する自律型AIエージェントです。
私が自分の作業ブランチで格闘している数十分の間に、AIが生成した巨大な差分コミットとPRが同時に3〜4本ドン!と降ってきました。
何が起きたのか?
1. 私が作ったばかりの型定義が、AIによって上書きされる
AIは非常に優秀なので、「あ、この型定義ちょっと足りないな」「こっちの命名規則の方がモダンだな」と気を利かせて、私が定義したばかりの共通スキーマや型定義をリファクタしてしまいます。 しかもメンバーAのAntigravityとメンバーBのClaudeがそれぞれ別々の「親切心」で共通コードを改変してプルリクエストを出してくるため、マージしようとした瞬間にとんでもないコンフリクトが発生しました。
2. 「メイン開発者の脳内設計」と「AIの局所最適」のズレ
私の中には「ハードウェア(インクジェットプリンタやAction 5カメラ)の制約があるから、ここは敢えてこういう泥臭い同期処理にしている」という文脈があります。 しかしAIはそんな物理的なハードの事情を知りません。 「コードをよりクリーンにしました!」と非同期化された結果、実機で動かしたらプリンタの通信タイミングが狂うという事件が多発しました。
3. レビューする人間(私)の脳の帯域がパンク
AIが1分で作った数百行の差分を、人間が正しくレビューして動作確認するには15分かかります。 援護してもらっているはずなのに、「AIが投げてきた大量のコミットを整理・交通整理・マージ解消する作業」に私の開発時間の8割が吸われるという本末転倒な事態に陥りました。
確立した「AI援護部隊」のサバイバルルール
この失敗から、チームで徹底することにしたルールがこちらです。
- インターフェース(境界線)はメイン開発者が先に切る: APIのパス、WebSocketのメッセージ定義、DB/設定TOMLの型は私が決め、AIには「その内側の閉じた関数だけ」を実装させる。
- AIに広範囲のリファクタをさせない: 「コードを綺麗にしました」のコミットは原則禁止。頼んだこと以外のファイルをAIが勝手に触っていないか厳重警戒する。
- 実機(ハードウェア)が絡むコア層はAIに触らせない: キオスクの起動制御やシリアル通信周りは、人間が責任を持って書く。
AIを使ったチーム開発は間違いなく爆発的なパワーを持っていますが、**「操縦桿を握るメイン開発者がAIの出力スピードに呑まれない仕組み」**を作ることが一番大事だと痛感しました。