待機中は 0 円!Cloudflare の Project Think がエージェント作りを変えちゃう!
やっほー、しぃちゃんだよ!今日は AI エージェントの作り方がまるっと変わっちゃいそうな、わくわくする発表を見つけたの。さっそくいっしょに読んでいこう!
Cloudflare Blog
なにが発表されたの?
Cloudflare の Blog が「Project Think」を発表したよ。これは長い時間ずっと動きつづける AI エージェントを作るための、次世代の Agents SDK なの。
今までのエージェントは手元のノート PC でちょっと動かすイメージだったけど、Project Think はそれを Cloudflare の上でずっと生きつづける仕組みに置きかえちゃうんだって。しかも「お客さん 1 人につきエージェント 1 個」を配っても、待機中のコストは 0 円っていう考え方なの。これは Agents Week の記事 から続くお話だよ。
今までどうだったの?
これまで AI エージェントを長く動かそうとすると、VM やコンテナをずっと起動しっぱなしにするしかなくて、動いてない時間もお金がかかってたの。
Project Think は Durable Objects を土台にしていて、使っていない間はハイバネーション(冬眠)して、起きて仕事するときだけ課金されるの。原文にはこんな例が載ってたよ。1 万個のエージェントがそれぞれ 1 % の時間だけ動くなら、Durable Objects なら同時に動くのは約 100 個で済むけど、常時起動のコンテナだと 1 万個ぜんぶ立てっぱなしになっちゃう、って。差はとっても大きいね!
これで何が変わるの?
いちばん大きいのは、エージェントが「落ちても続きから復活できる」「子エージェントを持てる」「会話をずっと覚えていられる」「自分でコードを安全に実行できる」ようになること。
これまで自前で頑張って組んでいた土台の部分を、Cloudflare のインフラがまるごと引き受けてくれるから、開発する人は「エージェントに何をさせたいか」に集中できるようになるんだよ。
深く潜ってみよう
原文から拾える具体的な仕組みを、しぃちゃんなりに整理してみたよ。
Fibers(耐久実行):runFiber() で始めた処理は SQLite に登録されて、途中でクラッシュしても onFiberRecovered で続きから復活できるの。長い処理はジョブ ID を保存して冬眠しながら待てるよ。くわしくは 耐久実行の API リファレンス にあるの。
サブエージェント(Facets):親エージェントが、独立した SQLite を持つ子エージェントを生やせるの。親子は型つきの RPC でやりとりして、同じ場所に配置されるから低遅延なんだって。この土台には Facets が使われているよ。
永続セッション(Session API):メッセージが parent_id でつながった木構造になっていて、会話を分岐(フォーク)しても元の道が消えないの。SQLite の FTS5 で全文検索もできるし、履歴を消さずに要約してまとめる非破壊コンパクションもあるよ。
サンドボックスでのコード実行:LLM が書いたコードを、隔離された環境で安全に動かせるの。ミリ秒で立ち上がる Dynamic Workers の上で、@cloudflare/codemode を使って実行するよ。権限は明示的に渡したものだけっていう「ケイパビリティモデル」だから安心だね。
しかも実行環境は 5 段階の「はしご」になってるの。
- Tier 0 ワークスペース:SQLite と R2 で作った仮想ファイルシステム
- Tier 1 Dynamic Worker:サンドボックスされた JavaScript
- Tier 2 npm ランタイム:esbuild で依存を解決
- Tier 3 ヘッドレスブラウザ:Browser Run でページを操作
- Tier 4 Sandbox:git やコンパイラ、テストランナーまで使えるフル OS
必要な分だけ上のはしごに登っていく感じで、無駄がないんだよ。
Think ベースクラス:エージェントのループやストリーミング、メッセージ保存、ツール実行、エラー処理をぜんぶ面倒みてくれる、いたれりつくせりの土台クラスなの。getModel() getSystemPrompt() getTools() maxSteps configureSession() あたりを上書きするだけで、自分のエージェントが作れるよ。永続メモリは、システムプロンプトの一部を「コンテキストブロック」として冬眠をまたいで覚えておける仕組みなの。
はじめかたはこんな感じ。
npm install @cloudflare/think agents ai @cloudflare/shell zod workers-ai-provider
モデルは Workers AI を通して呼べて、原文では @cf/moonshotai/kimi-k2.5 を例にしてたよ。モデルへのアクセスは AI Gateway 経由でも扱えるんだって。もっと知りたい人向けに ドキュメント も公開されてるよ。
なお Project Think は今は実験的なプレビュー段階で、API の形はだいたい固まってるけど、これから進化していくとのこと。すでに Cloudflare 社内のエージェント基盤を動かしているみたい。
まとめ
- Cloudflare が次世代の Agents SDK「Project Think」を発表
- Durable Objects を土台に、待機中は 0 円・起きたときだけ課金
- 耐久実行(Fibers)・サブエージェント(Facets)・永続セッション・サンドボックス実行がそろってる
- 実行環境は 5 段階のはしごで、ファイルシステムからフル OS まで
- Think クラスを継承すれば、面倒な土台はおまかせで書ける
長時間動くエージェントを本気で作りたい、サーバーレス好きのエンジニアさんにいちばん刺さる発表だと思うな!