
2026/10/14 0:49
Anthropic でソースコード管理を再構築する
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Anthropic は、AI アシスタントである Claude が運用を拡大し、1 日 30,000 以上のコード変更を処理するようになり、2026 年 5 月からの約 10 倍の増加を迎えたことで生じたインフラストラクチャのボトルネックに対処するため、Scion という独自のバージョン管理システムを開発しました。この急増は自律的なサービス構築によって引き起こされ、従来の Git セットアップではメインブランチの履歴がほぼ 100 GB に膨れ上がり、深刻なパフォーマンス問題を引き起こしました。Scion は、「changesets」と呼ばれる単位を写在前ログに格納するアーキテクチャを採用することで、重いブランチ操作やロック、リポジトリのコピーが必要なくなることを実現しました。有界クライアントキャッシュの維持やロックフリーなサーバー側動作などの原則に従うことで、Scion のインフラフットプリントは Git の 200 倍となりつつも、チェックアウト速度は桁違い(数秒対数分)に高速化しました。このシフトにより、7 人のエンジニアが小規模チームで移行を管理でき、Antique などの補完ツールと併用することで、エンジニアの役割を能動的なライターから意図を検証し、上位レベルの設計上のトレードオフを主導する戦略的監督者に転換できました。さらに、该系统は「superfan」と呼ばれる Clauses を通じた高度なヘルス監視、人間のスケールのツールにはない制約のないスケーラブルな成長など、豊富なアクセス制御もサポートしています。
本文
AI エージェント時代におけるソースコード管理の進化:Anthropic の Scion とその構築プロセス
現状とボトルネックの所在
現在のアンソロピック(Anthropic)において、システム構築や研究のボトルネックはもはやコーディングそのものではないことが明らかになりました。Claude は以前には見られなかった速度と規模で自律的に以下を実現しています。
- 研究ループの高速反復
- 複雑なプログラムの微調整
- サービスのゼロから開発
しかし、本物のボトルネックは人間向けに設計された開発者インフラストラクチャ全体にあります。特に以下の領域が制約となっています。
- ソースコード管理システム
- ビルドプロセス
- 継続的インテグレーション(CI)
スケーラビリティへの追従
2026 年 5 月には平均して1 日約 2,500 コード変更のマージでしたが、9 月には1 日 3 万超えに急増しました。
- この成長ペースの鈍化は想定されていません。
- コードマージに対する需要は事実上無限です。
- 各ボトルネックの解消は、直ちに生成されるコード量の増加を意味します。
従来の git の限界と問題点
Anthropic は他社に先駆けて AI エージェントによるソフトウェア開発を活用しており、人間向けのツールが限界に達する兆候をいち早く察知しました。その典型がソースコード管理です。
モノリポジトリの肥大化がもたらす課題
git は分散型システムであり、オフライン動作や差分計算が得意ですが、大規模モノリポジトリでは設計思想自体が制約になります。
- メインブランチの履歴サイズ: ほぼ100 GBに達。
- 圧縮されたワーキングコピー: 25 GB超。
- 頻繁なチェックアウト: CI やエージェントを含む合計で、毎日約2,500 万回。
- フェッチ時の daily git トラフィックは600 PB超。
従来の回避策の不十分さ
浅い複製(shallow clone)、スパースなチェックアウト、内部 git ミラーなどの手法は運用を複雑化させました。
- ピーク時には数百の内部 git ミラーを運用する必要があった。
- シードデータの同期間隔が長くなり、履歴依存操作(blamed など)に慎重さが必要になった。
根本的なパラダイムシフト
多くの企業は「git を中央集権的システムとして利用」しているが、Anthropic は以下の前提を逆転させました。
- 従来の前提: クライアントはオフラインになり得る分散型モデル。
- Agent の実態: クライアント(エージェント・ジョブ)は常にオンライン。
- 結論: リポジトリが拡大するにつれ、分散型特性がスケーリング能力を損なう方向に働いていたため、エージェント常時オンラインという事実を最優先してシステムを再設計する決断に至った。
Scion の設計指針:Agent 向けスケーリング
Scion は Google の Piper や Meta の Spline に学んだ知見を活かし、以下の原則に基づいて構築されました。
| 原則 | git (従来) | Scion (新規アプローチ) |
|---|---|---|
| クライアントの接続性 | オフライン動作前提 / 全リポジトリ複製が必要 | 常時オンライン。必要なデータをオンデマンドフェッチ。 |
| サーバー・クライアント対称性 | クライアントもサーバー機能 (ローカルコミット) が可能 | 非対称。サーバーが履歴/操作を担い、クライアントは有界なキャッシュと API 経由の操作のみ。 |
| アクセスマodel | ローカルコピー依存またはベンダ固有 API | 包括的 API 公開。ジョブはローカルコピーを維持せず、API でアクセス可能。 |
| スケーリング方式 | 垂直/水平混合 (大容量ミラー運用) | 完全な水平スケーリング。データ分散、実装コピーなし。保守不要。 |
| コミット操作 | ローカル作成後プッシュ (ロックあり) | サーバー上で実行。増分的・ロックフリー。グローバルステート回避。 |
| ワーキングコピー | 必須 (チェックアウト) | オプションかつスパース。必要最小限のみフェッチ、仮想化対応。 |
データ構造の革新:Changeset(変更セット)
Scion では「Changeset」が作業単位となり、git のコミットに近い機能を担いますが設計が異なっています。
- 格納内容: 変更されたファイル一覧と、blob ストレージ内のコンテンツアドレスポインター。
- 特徴: ツリーへのポインターではなく、親 Changeset に対する差分のみを記録。
- 効率性: ロック不要、サーバー間調整不要、Refs(ブランチ/タグ)移動を除外するため高スループット対応。
- Refs の移動は単一の Spanner 行上の compare-and-swap 操作として別枠で処理。
派生データ(Derived Data)の動的計算
Changeset 単体では履歴クエリに答えることができないため、追加の構造体を動的に構築します。
- File Blame とパス履歴のための専用構造。
- コミットグラフ用の跳躍リスト。
- これらを「派生データ」と呼び、汎用的メカニズムを通じて計算する(再帰的に親 Changeset の値から算出)。
このアプローチの利点:
- 柔軟性: 新しい高速化が必要な場合、新しい派生データタイプを容易に追加可能。
- 最適化: エージリー計算か遅延計算かを選択し、不要なデータをマテリアライズしない。
- クライアント独立性: クライアント側の変更なしに、内部構造の最適化が可能。
スケーリングアーキテクチャの実装
Scion は少数のサーバー群で全操作を提供し、以下の階層構造で構成されます。
- Tier 1: Scion Servers (Spanner/Cloud Storage)
- 権威あるデータ源。
- Tier 2: Scion Daemon (
)scion-daemon- ノード上のデーモン。
と通信。Scion Cache
- ノード上のデーモン。
- Tier 3: Scion Cache (
)scion-cache- リージョン内のキャッシュサーバー。メモリから直接ストリーミング可能(delta 圧縮不要)。
動作原理:
はスナップショットから起動し、Scion Daemon
とやり取りする。Scion Cache- キャッシュ未命中時は
に問いかけ、Spanner やクラウドストレージから読み取る。Scion Server - クライアント側:
クライアントは git の fetch から逸脱。scn- 「持っているもの」を伝えず、希望するツリー/blob のみ要求(Root Tree を起点に再帰的に不足分を要求)。
- パケットファイル応答なしで効率的・再開可能。
- 階層強制: 障害ドメイン分離のため、ティア間の通信は厳格に制限。
成果:
- キャッシュヒットレート:99% 以上。
- 足跡削減:従来の git ミラーリングインフラと比較してCPU とメモリ要件が 200 倍小さく。
- チェックアウト速度:数秒で完了(従来の数分)。
- CI CPU 容量の勝益:25%。
構築プロセスから得た教訓
Anthropic は Scion の必要性を認識した直後に、Claude Mythos プレビューと Claude Tag の公開を同時に行い、開発速度を実質的に加速しました。
事例:GESTION パイプラインの劇的改善
- 初期: Git から Scion への移行パイプラインを手書きでプロトタイプ化(満足していた)。
- 進化後: Claude Mythos プレビューによる再構築指示により、メモリ消費量が 20 倍削減かつ速度が 4 倍向上したバージョンを生成。
- インジェスト順序やデータ構造の暗黙的な不変性を維持しながら実現。
エンジニア価値の変化とチームのあり方
7 名の小規模チームで 5 ヶ月以内に完全移行を成し遂げ、マージ量は10 倍増。エンジニアの役割は以下のように変化しています。
- コーディング: クロードの方が優れているため、記述業務は自動化される。
- 残存価値: システム設計上のトレードオフやスケール問題への理解を提供し続けることで価値を発揮する。
- 意思決定: エンジニアの役割は「いいえ」と言うこと(エージェントの不適切なパターンの阻止)にある。
具体的な事例:
- 線形コミットログ読みの回避: 変更がメインブランチにマージされたタイミングを検出する試みに、クロードが過度な制約を課すのをエンジニアが防ぐ必要があった。
- レビューの質: エージェントは視野が狭くなりやすい(敵対的レビューも有効だが)。熟練エンジニアがクロードによる「過剰設計」を防止するためには、変更の意図をチェックする役割が重要。
最適化とセキュリティの向上
- コード品質: 手書き速度遥かに速いクロードにより、極めてよくテスト・防御されたコードベースを構築。
- アルゴリズム改善: クロードは専門家が数週間要した索引漏れ発見などを翌日には修正。
- セキュリティ設計: 当初からアクセス制御や機密ディレクトリ権限設定を組み込み、コードレビューツールで複雑な语义制約(承認フロー)を表現可能にした。
運用卓越性:Superfans の活用
各コンポーネントを監視する AI エージェント**「Superfan」**を採用しています。
、scion-daemon
、Antique マージキューなどの Superfan が存在。scion-cache- テレメトリやログから微妙な問題を検知(従来のアラートより一歩先)。
前提条件の再考:CI とマージキューの見直し
人間向けスケールとは異なるワークフローへの対応が求められています。
- マージキュー: エージェント規模では意味をなさず、数百数千の変更は自動テストに依存。
- グローバルロック: 業界標準のロック再現は不可能なため、マージ後・デプロイ前の自動テストへ投資。
- クロードの強み: 人間より速く競合を検出・修復できるため、並行変更の競合リスクは許容可能。
広範なエコシステムへの寄与
Scion は AI エージェントによるスケーリングに対する一つの解答例です。以下の点に留意してください。
- 大規模モノリポジトリ限定: 数万名のエンジニアや多数のエージェントが書く超大規模リポジトリ以外では意味を持たず、git の適した代替品ではありません。
- 独自性の高さ: 完全な移行(コードレビュー、検索、CI など)が必要であり、外部採用は困難です。
今後の展望:git プラットフォームとの共存と進化
今後 6〜12 ヶ月以内に大規模スケーリングの問題が一般化します。すべての企業が git の限界を単独で抱えるのは非効率です。Anthropic が貢献すべき是思考モデルの共有です。
- サーバーサイド RPC の導入: git サーバーもクライアントのように動作する必要はありません。
- 包括的 API への移行: 大規模スケーリングを可能にする新規サーバーアーキテクチャ(Scion 型)が git プラットフォームに統合される可能性。
- プロトコルの柔軟化: ネゴシエーションプロトコルも同様に進歩し、スパース/浅い特徴との親和性を高める方向へ。
git コミュニティは長年の貢献を認めつつ、Anthropic は「エージェント型開発が既存システムとどう相互作用するか」という早期視点を提供する役割を果たします。AI の指数関数的成長と交差するソフトウェア開発ライフサイクルにおいて、私たちは協力して取り組んでいます。