4月16日、Cloudflareが「Artifacts: versioned storage that speaks Git」と題した記事を公開した。
AIエージェント時代の新たなインフラ需要
ChatGPTやGitHub Copilotの登場以降、AIによるコード生成は開発現場に急速に浸透している。しかし、Cloudflareは従来のソースコード管理プラットフォームが直面する根本的な課題を指摘している。今後5年間で人類のプログラミング史全体を上回るコードが生成されると予測される中、GitHubやGitLabなどの既存プラットフォームは人間の開発者向けに設計されており、24時間稼働し複数のタスクを同時処理するAIエージェントによる大量リクエストへの対応に限界がある。
この市場機会を捉え、CloudflareはAIエージェント向けに特化設計されたGit互換の分散バージョン管理ストレージサービス「Artifacts」を開発した。既存のGitプラットフォームが「人間のための協働ツール」であるのに対し、Artifactsは「エージェントのためのプログラマティックストレージ」として位置づけられている。
既存プラットフォームとの根本的違い
Artifactsの設計思想は、GitHubやGitLabとは明確に異なる。従来のプラットフォームがWeb UI、Issue管理、プルリクエストワークフローを重視するのに対し、Artifactsは「Gitを話すバージョン管理ファイルシステム」として、API経由でのプログラマティックな操作に特化している。
使い方は驚くほどシンプルだ。Cloudflare Workers APIを使って以下のようにリポジトリを作成できる:
// リポジトリを作成
const repo = await env.AGENT_REPOS.create(name)
// トークンとリモートURLをエージェントに渡す
return { repo.remote, repo.token }
# 通常のgitクライアントでクローン
$ git clone https://x:${TOKEN}@123def456abc.artifacts.cloudflare.net/git/repo-13194.git
既存のGitリポジトリからのインポートも可能で、.import()メソッドを使ってGitHubなどのリポジトリを取り込み、エージェント用の独立した作業環境を瞬時に作成できる。
なぜGitプロトコルなのか
CloudflareがGitプロトコルを採用した理由は戦略的だ。AIモデルの学習データにはGitのコマンドやワークフローが大量に含まれており、エージェントにとって最も理解しやすいプロトコルだからである。新しい独自プロトコルを開発した場合、AIモデルが理解できず、追加の学習データや詳細な文書化が必要になってしまう。
Gitのデータモデルは、ソースコード管理の枠を超えて状態の追跡、タイムトラベル、大量の小さなデータの永続化が必要なあらゆる用途に適している。コード、設定、セッションプロンプト、エージェント履歴など、すべて小さなチャンク(コミット)として保存し、必要に応じて巻き戻すことができる。
ソースコード管理を超えた革新的活用
Cloudflare社内では、Artifactsを内部エージェントシステムで活用し、ファイルシステムの状態とセッション履歴を自動的にセッションごとのリポジトリに保存している。この活用法により以下が実現した:
- ブロックストレージを維持することなくサンドボックス状態を永続化
- セッションを他者と共有し、プロンプト状態とファイル状態の両方でタイムトラベル可能
- 任意の時点からセッションをフォークし、デバッグやAPI設計を同僚と協力して推進
これは従来の「コード管理ツール」の概念を拡張し、「エージェントセッション管理プラットフォーム」としての新たな可能性を示している。
ZigとWebAssemblyによる技術的実装
ArtifactsはDurable Objects上に構築されているが、Cloudflare WorkersでGitプロトコルを実行するため、独自のGit実装を一から開発した。この実装は**Zigで書かれ、WebAssemblyにコンパイルされる**。
Zigを選択した技術的理由は3つある:
- 純粋なZig実装で約100KBという軽量なWebAssemblyバイナリを実現
- Durable Objectsの制約環境でメモリ割り当てを手動制御可能
- 11のホストインポート関数による極めてシンプルなコールバックインターフェース
内部アーキテクチャでは、R2(スナップショット用オブジェクトストレージ)とWorkers KV(認証トークン追跡用)も活用し、Git protocolのv1とv2両方をサポートしている。
大規模リポジトリ対応のArtifactFS
大規模リポジトリ(数GB、数百万オブジェクト)への対応として、CloudflareはArtifactFSもオープンソースで公開予定だ。これは「非同期Git clone」として機能するファイルシステムドライバーで、以下の最適化を実現する:
- bloblessクローンでファイルツリーと参照のみを最初に取得
- バックグラウンドで軽量デーモンがファイル内容を並行ダウンロード
- エージェントが通常最初に必要とするファイル(package.json、設定ファイル、メインコード)を優先取得
Cloudflareの試算では、月間10,000回のサンドボックス実行で各回90-100秒を節約できれば、合計2,778サンドボックス時間の削減につながるとしている。
料金体系とロードマップ
現在プライベートベータ版として提供中のArtifactsは、5月初旬にパブリックベータの開始を予定している。料金体系はエージェントスケールでの利用を前提とし、操作回数(1,000操作あたり0.15ドル)とストレージ使用量(1GB月あたり0.50ドル)に基づく従量課金制を採用する。
この価格設定は、従来のGitホスティングサービスがユーザー数ベースの月額課金であるのに対し、エージェントの利用パターン(大量の小さな操作)に最適化されたものとなっている。
詳細はArtifacts: versioned storage that speaks Gitを参照していただきたい。