AIスウォームでSQLiteクローンを構築 — マルチエージェント分業の現実

AIスウォームでSQLiteクローンを構築 — マルチエージェント分業の現実

Claude、Codex、Gemini計6体が並列でRust SQLiteクローン19,000行を実装。マルチエージェント分業と調整コストの現実を分析します。

概要

6体のAIエージェント(Claude 2体、Codex 2体、Gemini 2体)が並列で協業し、RustでSQLite互換データベースエンジンを構築した実験が公開されました。成果物は約19,000行のコード、282個のユニットテストをパスする完成度の高いシステムです。

この実験はKian Kyarsのブログ記事で詳しく紹介されており、Hacker Newsで63ポイントを記録して注目を集めました。

アーキテクチャ:分散システムとしてのソフトウェア開発

このプロジェクトの核心アイデアはシンプルです。ソフトウェアエンジニアリングを分散システムとして扱うこと。調整手段はgit、ロックファイル、テスト、マージ規律です。

ワークフロー

graph TD
    B[ブートストラップフェーズ<br/>Claude 1体が基盤構築] --> W1[Worker 1<br/>Claude]
    B --> W2[Worker 2<br/>Claude]
    B --> W3[Worker 3<br/>Codex]
    B --> W4[Worker 4<br/>Codex]
    B --> W5[Worker 5<br/>Gemini]
    B --> W6[Worker 6<br/>Gemini]
    W1 --> G[Git Mainブランチ]
    W2 --> G
    W3 --> G
    W4 --> G
    W5 --> G
    W6 --> G
    G --> T[テスト検証<br/>sqlite3オラクル]

エージェントループ

各エージェントは以下のループを無限に繰り返します:

  1. 最新のmainブランチをプル
  2. スコープが定められたタスクを1つクレーム(ロックファイル)
  3. 実装+sqlite3をオラクルとしたテスト
  4. 共有進捗ドキュメント/ノート更新
  5. プッシュ

実装された機能

このスウォームが構築したSQLiteクローンの完成度は驚くべきものです:

レイヤー実装項目
パーサーSQLパーサー
プランナー統計ベースクエリプランニング
エグゼキューターVolcanoモデルエグゼキューター
ストレージページャー、B+ツリー
トランザクションWAL、リカバリー、トランザクションセマンティクス
機能JOIN、集計、インデックス、グループ集計

合計154コミット、開発期間2日間(2026-02-10〜02-12)。

調整コストの現実

最も興味深い発見は調整コスト(coordination tax)です。

全コミット数: 154
調整関連コミット: 84 (54.5%)
├── ロッククレーム
├── ロック解除
├── ステールロック整理
└── タスク調整

全コミットの54.5%が純粋な調整オーバーヘッドでした。これはマルチエージェントシステムの並列スループットがロック衛生とステールロック整理規律に大きく依存することを示しています。

成功要因の分析

1. オラクルベース検証+高テスト頻度

sqlite3を正解(oracle)として使用し、各エージェントの出力を検証しました。cargo test./test.shによる高速フィードバックループが決定的でした。

2. 強いモジュール境界

graph LR
    P[Parser] --> PL[Planner] --> E[Executor] --> S[Storage]

パーサー→プランナー→エグゼキューター→ストレージという明確なモジュール境界のおかげで、エージェントが直交的なスライスで作業でき、マージコンフリクトが最小化されました。

3. 共有状態ドキュメントは「ドキュメント」ではなく「ランタイム」

PROGRESS.mdやデザインノートは単なるドキュメントではなく、システムのランタイム状態として機能しました。これはマルチエージェント協業における共有状態管理の重要性を示しています。

限界と教訓

コアレッサーの不在

重複とドリフトを整理するためのコアレッサーエージェントが実装されましたが、プロジェクト終了時に一度だけ実行されました。Geminiは全重複除去を完了できず途中で停止しました。コアレッサーは他のエージェントと同じ頻度で実行すべきです。

トークン使用量の追跡不可

各プラットフォームが異なるフォーマットを使用するため、どのエージェントが最も貢献したか把握できませんでした。

ドキュメント爆発

PROGRESS.mdが490行まで膨れ上がり、notesディレクトリに膨大な量のドキュメントが蓄積されました。これはエージェント間通信のコストを示しています。

先行研究との比較

この実験はVerdent AIのマルチエージェントSWE-bench結果と同じ文脈にあります。Verdentがベンチマークでの並列実行効果を示したのに対し、このSQLiteプロジェクトは実際のシステム構築におけるマルチエージェント分業を実証しています。

核心的な共通点:

  • エージェントに狭いインターフェース共通の真実ソース高速フィードバックを与えれば、実際のシステムコードで複合的なスループットを得られる
  • テストはアンチエントロピー力である

核心まとめ

項目数値
エージェント数6体(Claude 2+Codex 2+Gemini 2)
コード行数約19,000行(Rust)
コミット数154
調整オーバーヘッド54.5%
テスト282個パス
開発期間2日間

結論

この実験はマルチエージェント開発の可能性と限界を同時に示しています。6体のエージェントが2日間で19,000行の動作するデータベースエンジンを作り上げたことは印象的ですが、コミットの半数以上が調整オーバーヘッドだったという事実は見過ごせません。

並列性は強力ですが、厳格なタスク境界があってこそ効果的です。そしてテストは単なる品質保証ではなく、エージェントシステムのエントロピーに対抗する核心メカニズムです。

参考資料

他の言語で読む

この記事は役に立ちましたか?

より良いコンテンツを作成するための力になります。コーヒー一杯で応援してください!☕

著者について

JK

Kim Jangwook

AI/LLM専門フルスタック開発者

10年以上のWeb開発経験を活かし、AIエージェントシステム、LLMアプリケーション、自動化ソリューションを構築しています。Claude Code、MCP、RAGシステムの実践的な知見を共有します。