Self-Driving Codebases とは何か
Cursorが実験した「AIが自律的に進むコードベース」と、エンタープライズが直面する現実
AIにコードを書かせる。
この話題自体は、もはや新鮮ではありません。
一方で、「AIが長時間にわたり、自律的にコードベースを前進させ続ける」という試みは、エンタープライズ文脈ではほとんど実証されていません。
PoCでは動くが、本番規模になると破綻する。その壁は厚い。
Cursor が公開した Self-Driving Codebases は、その壁に正面からぶつかりにいった記録です。
この記事では、その内容を整理しながら、なぜ単純なAI自動化は組織規模で壊れるのかを読み解いていきます。
「エージェントを増やせば進む」は、組織では成立しない
Cursorの初期アプローチはシンプルでした。
単一のVM上で、数千のAIエージェントを動かし、共有ステートを見ながらコードを書かせる。
人数(エージェント数)を増やせば進捗も増える。
人間の感覚で考えれば、自然な発想です。
しかし結果は芳しくありませんでした。
エージェント同士が同じ箇所を触り、競合し、タスクは衝突し続ける。
コード量は増えるが、意味のある前進が起きない。
これはエンタープライズ開発でもよく見る光景です。
「人を増やしたのに、なぜか遅くなる」
AIでも、まったく同じことが起きていました。
役割と責任を分けた途端、振る舞いが変わる
次に導入されたのが、明確な役割分担です。
まず登場したのが、プランナーとエグゼキューターという構成でした。
プランナーは全体のゴールを理解し、やるべき仕事をタスクに分解します。
エグゼキューターは、その計画を受け取り、実行を進める役割です。
ワーカーを呼び出し、タスクを割り振り、結果を見て次に進む判断まで行います。
一見すると合理的です。
しかし問題は、エグゼキューターが「実行役」であると同時に「進行判断役」でもあった点でした。
「計画を実行に落とすエグゼキューター」が壊れやすかった理由
エグゼキューターは、
- 計画されたタスクをどう進めるかを考え
- ワーカーに仕事を振り
- 結果を見て次の一手を判断する
という責務を一手に引き受けていました。
結果として、役割が肥大化します。
途中で判断を誤ったり、勝手に「完了」と判断したり、突然止まったりする挙動が増えました。
これは、「計画」と「実行」を一人に背負わせすぎた状態です。
エンタープライズ組織で、権限と責任を集中させすぎたリードがボトルネックになる構図とよく似ています。
エグゼキューターをやめ、「サブプランナー」に分解する
そこでCursorが最終的に採用したのが、階層的なプランナー構造でした。
最上位には、全体を俯瞰するルートプランナーがいます。
このルートプランナーは、巨大なゴールをいくつかの「意味のある塊」に分解します。
そして、その塊ごとに登場するのが サブプランナー です。
サブプランナーは「実行役」ではありません。
自分に割り当てられた範囲について、再び計画を立てる役割です。
- エグゼキューター:計画を受け取り、実行を進める責任者
- サブプランナー:計画そのものを、さらに細かくする責任者
サブプランナーは、必要であればさらにサブプランナーを生み出します。
計画を再帰的に分割し、実行可能な単位になるまで責任を分解していく。
エグゼキューターで起きていた「一人に集中しすぎる問題」を、構造そのもので回避しました。
ワーカーも「単なる作業者」では足りなかった
エグゼキューター構造の初期では、
ワーカーは「渡されたタスクを処理して返す存在」でした。
指定された作業をこなし、成果物だけを返す。
それ以上の責任は持ちません。
しかし最終設計では、ワーカーの役割も変わります。
「ワーカーが独立して実装を進める」とはどういう意味か
最終的な構成では、ワーカーはそれぞれ独立した環境で作業します。
他のエージェントと直接やり取りせず、与えられた範囲については最後まで責任を持つ。
ここでの「独立している」というのは、勝手に判断するという意味ではありません。
- タスクを実装する
- 実装の中で気づいた問題点を整理する
- 変更内容や注意点をまとめて引き渡す
この一連を 一つの責任単位として完遂する という意味です。
単にコードを書く手ではなく、
「この範囲については自分が説明できる」状態まで持っていく。
それが、最終設計におけるワーカーでした。
行き着いたのは、見慣れたエンタープライズ構造だった
最終的な全体像は、驚くほど地味です。
- ルートプランナーが全体を見る
- サブプランナーが部分ごとの計画を引き受ける
- ワーカーが独立して実装と報告を完遂する
特別なAI的構造ではありません。
むしろ、大規模エンタープライズで長年使われてきた組織モデルそのものです。
ここが、この実験の一番重要な示唆だと思います。
AIによる自律開発は、人間の組織設計から逃げられなかった。
おわりに
Self-Driving Codebases が示しているのは、
「AIが勝手にうまくやってくれる未来」ではありません。
示されたのは、
役割・責任・スコープを曖昧にした自動化は、必ず破綻する
という、エンタープライズではおなじみの現実でした。
AIは強力な部品になります。
しかし、チーム設計まで肩代わりしてくれる存在ではありません。
だからこそ、この実験は価値があります。
現場の感覚と、ほとんど矛盾しない結果だったからです。