製品発表 · 小互(シャオフー)による解説

Cloudflare、自社内製 AI オフィスプラットフォーム「Cloudflare OS」をオープンソース化:全社員向けの「AI オフィス OS」

全社員が3カ月使ったものを丸ごと公開。一番の見どころはセキュリティ設計だ。承認は後回しでOK、Agent は止まって待つ必要はない。
1分でわかる
  • Cloudflare が全社員が3カ月使った AI オフィスプラットフォームを丸ごとオープンソース化。コードはすべて GitHub にあり、自前のサーバーでも動かせる。
  • 本当に新しいのはセキュリティ層だ。Agent がどのデータを読んだかを記録し、成果物を共有する際に「その人が見てもいいか」をチェックする。ツールを呼び出せるかどうかではない。
  • もう一つの目玉は「権限確認のスキップ」への対抗策だ。Agent が issue を作ろうとしたら、システムはまず偽物を作って返し、Agent はそのまま作業を続行。戻ってきたらまとめて承認する。この手法の代償はソースコードのコメントに書いてある。
⚑ これは Cloudflare 自身が出した製品発表です。文中の利用規模や削減できた工数はすべて同社の主張で、工数の数字は原文に「推定」と注記されています。メカニズム部分は私がオープンソースのリポジトリを落としてソースコードと照合しました。ブログの記述が曖昧な箇所はコードを優先し、差異は本文中で説明しています。
何か

Cloudflare OS とは

Cloudflare は本日、自社内製の AI オフィスプラットフォーム「Cloudflare OS」を Apache 2.0 ライセンスで完全オープンソース化しました。コードはすべて GitHub にあり、自分の Cloudflare アカウントにデプロイすることも、自前のサーバーで丸ごと動かすこともできます。これは「チャットボックス+コネクター」の類ではありません。すでに社内の数千人が3カ月使っている完全なソリューションで、「AI に社内の実システムを触らせたいけれど、シークレットキーを渡す勇気はない」というジレンマを根本から解決するためのものです。

簡単に言うと、次の3つがセットになっています。

Agent ワークスペース
会社独自の用語、プロセス、仕事の進め方がプリインストール。分離された実行環境が内蔵されており、Agent が直接コードを書いて実行できます。
セキュリティ統制フレームワーク
「誰がどのデータに触れるか」を管理。今回もっとも注目すべき部分であり、他社が簡単に模倣できない部分です。
アプリケーションプラットフォーム
誰でも変更可能。Agent が作ったアプリは、受け取った人が自分で AI にさらに改良させられます。

なぜこれが存在するのか。Gatekeeper の話のところで、とても具体的なエピソードが出てきます。

開いてみると、ブラウザの中のチャットボックスで、他の AI ツールと見た目は変わりません。違いは、チャットの後に「物」がどこへ行くかです。1つの会話が、ドキュメントにもアプリにも、あるいは自動で動き続けるワークフローにもなり得ます。

ひと言 「これ、やっといて」 ドキュメント / スライド リアルタイムデータ連携、書き出し可 動くアプリ UI・バックエンド・複数人利用が可能 ワークフロー 定期実行、イベント駆動 3つの成果物はすべて 同じワークスペース内に 互いに呼び出し可能
当サイト作成の図:Cloudflare OS では1つの会話が3種類の成果物に変わります。単なる返答だけではありません。

公式が挙げる4つの用途

1つ目は「調べる」こと。ワークスペースにテーマを調べさせると、会社のコンテキストと与えたリソースを使って調べます。ここで注目すべき点は、Agent はコードを書いて検索・スクリーニング・テーブル結合・計算を行い、データセット全体をモデルのコンテキストウィンドウに丸ごと放り込むわけではないということです。データセットが少し大きくなると、後者の方法では入りきらないか、コストが非現実的になります。

2つ目は、ドキュメント・スライド・スプレッドシート作成。作ったものは静的なファイルではなく、データソースに常時接続でき、元が変われば追従します。一般的な形式へのエクスポートや Google Drive などへの送信も可能です。

3つ目は、チーム用アプリの作成。ドキュメントやスプレッドシートでは収まりきらない作業がある場合、Agent がアプリを作ってくれます。独自のUI、ロジック、状態を持ち、社内リソースに接続でき、複数人で使えます。

4つ目は、繰り返し作業の確定的ワークフロー化。これが一番現実的です。多くの作業は本質的に一連の固定されたステップであり、判断が必要な箇所は1〜2か所だけです。こうした作業で毎回 Agent セッションを最初から起こしてトークンを消費する必要はありません。確定できるステップはコードで実行し、本当に判断が必要なステップだけモデルを呼び出します。完成後は手動・定期実行が可能で、外部システムのイベントによるトリガーにも対応します。

Cloudflare OS ホーム画面:左側のナビにワークスペース、ブループリント、成果物、スケジュール、コンテキストとスキル、中央に入力ボックス
公式ホーム画面のスクリーンショット。左のカラムは上からワークスペース、ブループリント、成果物、スケジュール、コンテキストとスキル。その下の「最近のワークスペース」には「機能要件ワークフロー」「自動メール Agent」「Q3計画ドキュメント」などの実際の項目があり、その下に「すべて表示(171)」とあります。中央の4つの入門カードが公式が示すユースケースです。1対1ミーティングの事前資料作成、スプレッドシートやCSVからのトレンドと提案の発見、新着メールをトリガーにした Agent 起動、小ツールやダッシュボードの作成。入力ボックス右下はモデルセレクター。出典:Cloudflare ブログ。

ただし、公式ブログの画像は空のワークスペースで、実際の作業の様子はわかりません。オープンソースリポジトリにあるスクリーンショットの方が情報量がはるかに多いです。

Q3 計画ワークスペース:左は会話、右は生成された6ページのスライド、5ページ目を表示中
オープンソースリポジトリ内のワークスペース画面。左の会話で Agent は6ページのスライドを作ったと報告し、各ページの内容を説明し、「数字はすべて私が作ったものです。本番の前に必ず差し替えてください」と注意を促しています。右はレンダリングされた5ページ目で、7・8・9月の各月の成果物と受入条件が3列で書かれています。注目すべき点は3つ。まず 右上に $1.73 と表示されており、このワークスペースがその時点までに使ったコストが明示されています。上部には Slides / Code / Connections の3つのタブがあり、成果物、それを生成したコード、接続しているリソースを確認可能。入力ボックス右下のモデルは Claude Opus 5 が選択されています。出典:cloudflare/cloudflare-os リポジトリ。
メカニズム

すべての「ファイル」が独立したアプリ、専用サンドボックス、専用データベース

従来のオフィススイートは、ドキュメント、スプレッドシート、スライドといった固定のファイル形式を提供します。Cloudflare OS はこの前提を覆し、すべての「ファイル」がそれぞれ完全なアプリになり得ます。Agent が個人、プロジェクト、チームのためにその場で書くものです。

リポジトリではこれを gadget(ガジェット)と呼びますが、公開ブログでは「app」と表現されており、同じものを指します。これはプロトタイプでも、どこかにデプロイし直さなければならない半成品でもありません。それぞれが完全なフルスタックアプリであり、フロントエンドコード、バックエンドコード、API、永続化できる状態を備えています。デフォルトは非公開で、ドキュメントのように共有できます。

「一人ひとりに専用のものを」をコストを掛けずに実現する仕組みは、3つのピースで構成されています。

ピース役割登場時期
Dynamic Worker
ダイナミック Worker
アプリのバックエンドコードをホスト。本質は軽量な分離環境で、オンデマンドでロードされ、使わないときはリソースを消費しないため、アプリごとにサーバーやコンテナを待機させておく必要がない2026年3月
Durable Object Facet
デュラブルオブジェクト ファセット
アプリに専用の SQLite データベースを提供。プラットフォームのランタイム用データベースとは分離されている。これが「ファイル」ごとに独立した状態を持てる理由2026年4月
Cap'n Web RPC
Cloudflare が公開したリモートプロシージャコールシステム
フロントエンドとバックエンドの通信に使用。フロントからバックエンドのメソッドをローカル関数を呼ぶように実行できる公開済み

最初の2つは、Cloudflare が今春 Workers ランタイムに追加した新機能です。リポジトリの README にはその由来が明記されています。これらの機能は、Cloudflare OS を作るためにランタイムに特別に追加されたものです。今後もさらに増える予定です。

Cap'n Web を選んだことで、おまけの能力も手に入った

3つ目のピースには副作用があり、これがこの設計の最も美しい点です。フロントエンドは規律正しいメソッドインターフェースを通じてバックエンドを呼ぶ必要があるため、このインターフェースは自然に Agent からも直接呼び出せます

自分用に作った小さなツールを、Agent があなたのいない間に代わりに使って仕事をしてくれます。MCP サーバーを別途書いたり、Agent ループをもう一层接続したりする必要はありません。おまけです。公式アーキテクチャ図にはこの言葉が中央に書かれています。whatever the UI can do, the agent can do(UI ができることは Agent もできる)。

アプリのアーキテクチャ図:Agent セッションとブラウザクライアントが上から同じ Application API に接続、下は Dynamic Worker と Durable Object Facet、最下部は3つの型付きリソースバインディング
公式アーキテクチャ図。上の2つの入口、Agent セッション(このアプリを書き、そして呼び出す)とブラウザクライアント(サンドボックス枠、ネットワークアクセスなし)は、いずれも Cap'n Web を通じて中央の同じ Application API に接続します。その下はオンデマンドでロードされるアプリサーバー側。左は Dynamic Worker(軽量分離環境、アイドルリソースなし)、右は Durable Object Facet(ランタイムと分離された専用 SQLite)。最下部の3つのボックスはこの設計の権限粒度を示します。env.PROJECT はリポジトリ1つと issue のみに許可。env.CALENDAR は読み取り可、書き込みは承認が必要。env.WAREHOUSE は一部の列がマスクされています。図の原文:granted per resource, never a credential(リソース単位で付与され、決して認証情報ではない)。出典:Cloudflare ブログ。
共有

共有には2種類:同じアプリを一緒に使うか、コードごと相手が自分で変更できるようにするか

1つ目はアプリ自体の共有。全員が同じアプリ、同じ SQLite データベースにアクセスし、誰かが変更すれば他の人にもリアルタイムで見えます。Google Docs での共同作業と同じです。

2つ目はブループリントの共有。相手が受け取るのはコードのコピーで、自分で新しいアプリを生成します。元のアプリのデータ、会話履歴、認証情報、接続されたリソースは一切引き継がれません。以後、2人はそれぞれ別々のものを実行します。

左はあなたと同僚が同じアプリとデータベースを共有、右はブループリントが A チームと B チームの独立した2つのアプリに分かれる図
公式比較図。左の「アプリを共有」はリアルタイムコラボレーション。1つのアプリ、1つの SQLite データベース、1組の接続リソース。右の「ブループリントを共有」はコードと構造のみを渡し、A チームと B チームがそれぞれコピーを持ち、それぞれ独自の状態とリソースを持ち、それぞれのニーズに応じて変更します。出典:Cloudflare ブログ。

2つ目こそが重要です。これは、相手があなたのアプリを受け取った後、自分で AI に変更させられることを意味します。あなたに要件を伝えて待ち行列に並ぶのではなく。

リポジトリの README はこの点をもっと高く評価しています。過去25年の SaaS の論理はこうです。ソフトウェアを自社サーバーで実行し、あなたは接続して使う。機能が足りなければ、こちらに来てスケジュール調整を頼む。ブループリントはスマホアプリや PC ソフトウェアに近く、各ユーザーが自分のコピーを実行し、足りないものは自分で AI に追加させる。README によると、AI は個人開発者がこれまでよりはるかに多くのものを生み出せるようにした一方で、個人がオンラインサービスを維持することは依然として難しい。ブループリントは「サービスの維持」という部分を方程式から消し去るのです。

セキュリティ

Gatekeeper:Agent は最初は何にも触れない。承認されても受け取るのはキーではなく通行証

今年2月頃、Cloudflare の営業部門のある社員が CIO に API キーを要求しました。しかも複数本です。この人物は AI で市場チーム全体を変革すると自称する「スーパーアプリ」を作っており、あと一歩のところまで来ていました。会社の基幹業務システム十数件の本番環境権限と、デプロイパイプラインの管理者権限が必要だったのです。

これは、どの企業でも AI を推進する際にぶつかる壁です。AI が社内で実際に使われているシステムにアクセスできなければほとんど役に立ちません。しかしアクセスさせるにはキーを渡す必要があり、キーは一度付与すると範囲が広大で有効期限も長く、回収も監査も困难です。

MCP はすでに一歩前進しています。Agent はキーを直接保持せず、MCP サーバーが代わりに保持し、定義されたツール一式のみを公開します。しかしブログは MCP の盲点を正確に突いています。

MCP はこの Agent がどのツールを呼び出せるかを教えてくれるだけで、どの基盤リソースを実際に見たかは教えてくれません。

Cloudflare ブログ「Cloudflare OS:Agent、アプリ、そして仕事のためのオープンプラットフォーム」

Agent は複数のシステムの情報を組み合わせて、管理が緩い場所に送信したり、作成したアプリや成果物を通じて、元データを見る資格のない人に漏らしたりする可能性があります。したがって、承認は「入り口」だけでなく、データがその後どこへ流れるかも管理する必要があります。

Gatekeeper はこのために設計されました。これは Cloudflare OS と特定の外部サービスの間に挟まる Worker で、サービスごとに1つ用意され、そのサービスのインターフェース、リソース、実行可能な操作を理解しています。Gatekeeper は4つのことを行います。認証情報の保持、ポリシーの実行、読み取りの記録、外部に副作用を及ぼすすべての動作の遮断。

例え話

会社の受付のようなものです。部外者はオフィスに直接入れず、すべての用事は受付で行います。受付が鍵を預かり、行ったことはすべて記録され、外部に関わることは事前に承認を求めます。

第一層:初期権限はゼロ、承認されても受け取るのは入館証だけ

Cloudflare OS への入り口は Cloudflare Access が管理します。入った後、すべての Agent、すべてのアプリの初期権限はゼロです。Agent は特定のリソースへのアクセスを申請でき、あなたが承認するかどうかを決めます。承認されると、Agent が書くコードが受け取るのは次のようなものです。

const issues = await env.PROJECT.listIssues({
  teamId: "ENG",
  state: "open",
});

env.PROJECT は「特定のポリシーの下で特定のリソースを使用する」ための通行証原文では capability(ケイパビリティ)と呼ばれます。キーとの違いは、キーは誰でも使える文字列であるのに対し、通行証はオブジェクトであり、何ができるかがあらかじめ枠内に決められていて、コピーして他人に渡すこともできません。を表します。認証情報そのものは Agent とそれが書くコードから完全に分離されており、コードがキーに触れることは決してありません。

また、許可の範囲は非常に細かく設定できます。ブログの例では、GitHub アカウント全体を Agent に渡すのは明らかに広すぎるため、Gatekeeper はリポジトリ1つだけに制限したり、issue の読み取りのみ許可してソースコードは見せなかったり、一部のフィールドをマスクしたり、レート制限をかけたり、PR マージの前に手動承認を必須にしたりできます。

さらに下には2つの壁があります。アプリのサーバーサイドコードは Dynamic Worker 内で実行され、外部へのネットワークアクセスはグローバルに無効化されています。フロントエンドコードはブラウザのサンドボックス iframe 内で実行されます。どちらも、あなたが明示的に与えた通行証を通じてのみ外部に出られ、他の経路はありません。

Gatekeeper 構成図:Agent またはアプリが型付き RPC 通行証で Gatekeeper に接続。Gatekeeper は認証情報を保持し、読み取りとアクションの2つのカラムに分かれ、右側は人間による承認・拒否、下側は業務システムに接続
公式 Gatekeeper 図。上は Agent またはアプリで、型付き RPC 通行証で接続。中央のオレンジ色の部分が Gatekeeper で、右上に「holds the credential」(認証情報はここが保持)とあります。左のカラムは読み取りのフロー:リソース承認 → サービス呼び出し → オブザベーションレコード記録。右のカラムはアクションのフロー:ポリシー実行 → シミュレーション → 承認待ちキュー → 承認されて初めて実行。右側は「あなた」に接続され、承認または拒否します。最下部が実際の業務システム。図中の simulate the result(結果をシミュレーション)はブログ本文では一言も説明されていませんが、これが今回もっとも実用的な設計であり、後で詳しく説明します。出典:Cloudflare ブログ。
中核メカニズム

Agent が読んだものを記録し、閲覧者が見る前に読む資格があるかチェック

最初の読み取りを管理するだけでは不十分です。ブログの例は一目瞭然です。Agent がデータウェアハウスの機密テーブルを読み、それを使ってリアルタイムダッシュボードを作りました。このダッシュボードの共有が、権限を迂回してテーブルを共有する経路になってはいけません。

Cloudflare OS のアプローチは、Agent が読んだすべてのリソースを記録することです。これらの「オブザベーションレコード」は Agent とその成果物に付随します。誰かがワークスペースを開こうとしたり、Agent と会話しようとしたり、成果物を見ようとしたりするとき、各 Gatekeeper が1つのことを確認します。その人が Agent が読んだものを直接読む資格があるかどうか。あれば許可、なければ遮断です。

オブザベーションレコード判定図:ワークスペースが売上テーブル、サポートチケット、チームカレンダーを読み、閲覧者が来たら読めるかどうかを3つの Gatekeeper に問い合わせ、最終的に許可または拒否
公式図。上のオレンジ色の枠は Agent ワークスペースで、読んだ3つのもの(売上テーブル、サポートチケット、チームカレンダー)が表示され、右上に observations stay attached to the agent and its work(オブザベーションレコードは Agent とその成果物に付随)とあります。誰かが見ようとした場合、まず「読めるか」の判定を行い、リポジトリ、GitHub、カレンダーの3つの Gatekeeper に個別に問い合わせ、最終的に許可または拒否をまとめます。出典:Cloudflare ブログ。

リポジトリの実装はブログの説明より踏み込んでいる

ブログは「チェックする」とだけ述べています。オープンソースリポジトリの docs/observers.md には、このメカニズムの完全な形が記されており、ブログで触れられていない点が3つあります。

1つ目:相手は先に自分のアカウントを接続する必要がある。同僚にアプリを共有するとき、相手が開く際に、アプリが依存する各サービスについて自分のアカウント(自分の Google、自分の GitHub)を選択する必要があります。システムはその人の身元で Gatekeeper に問い合わせます。これらのものを読めるか?読めなければ、開くことは拒否されます。アカウントを選択しない場合も拒否です。

2つ目:承認されると「オブザーバー」として登録され、あなたのアプリの権限が抑制される。相手がオブザーバーになった瞬間から、このアプリがオブザーバーに見る資格のないものを読み取ろうとすると、その読み取りは即座に遮断され、例外が発生します。権限の低い同僚にアプリを共有した後は、あなた自身のアプリの読み取り範囲もその人と同じ幅に抑制されます。解除する方法はただ1つ、相手のアクセス権を取り消すことです。

3つ目:相手が開くたびに再チェックする。「先月は権限があったが、今月は異動した」といったケースを防ぐためです。

旧来の方法と比較

このメカニズムの前は、システムには prohibitAllSharing という乱暴なスイッチしかありませんでした。いずれかの Gatekeeper が読み取りを最高機密レベルとマークすると、このアプリは誰にも共有できなくなり、「ロック」状態になり、一切のアクションとネットワークアクセスができなくなります。ドキュメントはこれが応急処置だったことを認めており、「このデータは共有してよいが、同じ権限を持つ人に限る」という意味を表現できなかったためだと記しています。

同じオブザベーションレコードには2つ目の用途があります。外部へのネットワークアクセスの管理です。機密データを読んだ後、Agent が特定の場所にデータを書き込んだり、新しいコラボレーターを招待したり、別の Agent にタスクを渡したり、外部へのリクエストを送信したりすることは、すべて禁止される可能性があります。何を読んだかが、次に何ができるかを決定します。

中核メカニズム

承認は後回しでいい:Gatekeeper が先に偽の issue を作り、Agent は最後まで走り切る

権限確認付きの Agent ツールを使ったことがある人なら、誰でも次のシナリオを知っています。

従来の「人間がループに入る」承認は同期型です。Agent が副作用のあることを行おうとすると、あなたが確認をクリックするまで停止します。タスクを任せてコーヒーを取りに行き、戻ってくると最初の承認ポップアップで止まっていて、一歩も進んでいません。そこで皆、全自動承認に設定するか、権限確認をスキップするパラメータを付けるかに投降します。README ではそのパラメータ名を直接指摘しています。--dangerously-skip-permissions。これは明らかに安全ではありませんが、ただ待つよりはましです。

Gatekeeper の解法はこれです。アクションは実際には実行しないが、実行したかのように振る舞う。

Agent が「issue を作成」と言ったとき、Gatekeeper は GitHub に作成せず、このアクションを承認キューに入れ、同時に一時的な偽の issue を Agent に返します。Agent は作成されたと思い込み、次の作業に進めます。この issue にラベルを付けたり、コメントを追加したり、他の場所で参照したりすることはすべて可能で、Agent は止まることなく最後まで実行します。あなたは都合の良いときに戻ってきて、この一連のアクションを一括承認するか、個別に承認するか、拒否することもできます。

以前 · 止まって確認を待つ issue 作成 承認が必要 停止中 待機中 ラベル付け コメント 通知送信 以降は未実行のまま Cloudflare OS · 偽物を渡して続行 issue 作成 #~1 ラベル付け #~1 コメント #~1 他箇所で参照 #~1 完了 一度も止まらず。Agent が持っている issue 番号は偽物(#~ 始まりで判別可能) あなたが戻る 4つのアクションが並び、一括承認か個別承認。承認されたものだけが実際に実行される
当サイト作成の図。メカニズムはオープンソースリポジトリのインターフェースコメントと GitHub Gatekeeper 実装に基づく。

ソースコードで検証:createIssue は確かにまずキューに入り、一時 ID を返す

リポジトリを落として GitHub Gatekeeper の実装を確認しました。createIssue メソッドは確かにまずアクションを submitActionForApproval にキューイングし、その後すぐに provisionalId(一時 ID)を持つ issue オブジェクトを呼び出し元に返します。コードには一時番号のレンダリング形式もあり、#~1 のようなチルダ付きの偽番号は、本物と一目で区別できます。

インターフェースのコメントには設計意図が明記されています。

Gatekeeper は未承認のアクションを「シミュレーション」することを推奨します。つまり、セッションインターフェースはすべてのアクションが有効になったかのように振る舞うべきです。これによりアプリは作業を続行し、それに依存するさらなるアクションを積み上げることができます。

cloudflare-os リポジトリ · packages/workshop-shared/src/gatekeeper.ts

代償もコメントに書かれている。3つ

1つ目:シミュレーションは「推奨」であり「強制」ではない。上記の直後に、コメントはこう続きます。Gatekeeper にシミュレーションを厳密に要求しているわけではなく、どのアクションがシミュレーションに値するかは、その Gatekeeper を書く人が判断します。したがって、サービスごとに体験は異なります。

2つ目:シミュレーション済みのアクションを拒否すると、アプリ全体の再起動が必要になる場合がある。状態が偽の結果に沿って先へ進んでいるため、ロールバックが不完全だと Agent が混乱します。インターフェースには専用の restart フラグが用意されています。コードには連鎖反応を処理するロジックもあります。「issue 作成」のステップを拒否すると、この issue に依存する後続のアクションもすべて一緒に拒否されます。

3つ目:取り消しは任意。Gatekeeper は取り消しを実装しなくてもよく、その場合システムは手動で取り消すよう促すだけです。コメントによると「高品質な Gatekeeper はほぼすべて実装すべき」とあり、逆に言えば現時点では必ずしも実装されているとは限りません。

コスト

どのモデルを使うか、誰がいくら使ったか、すべて同じゲートウェイを通過

すべての推論呼び出しは Cloudflare AI Gateway を経由します。利点は、どのモデルが利用可能か、どのタイプのタスクをどのモデルに割り当てるかを1か所で決定できることです。

理由は非常に現実的です。すべてのタスクが最高級モデルに値するわけではありません。毎朝未読メールを要約するのに、最先端モデルは不要です。CIO の記事はもっと率直で、従業員が毎時20ドルかけて受信トレイを要約するのは許されないと述べています。

すべてのリクエストは、誰が、どのチームが、どのワークスペースから発信したかが記録されます。管理者はお金の使われ方を確認でき、予算とレート上限を設定し、超過時の対応も規定できます。

AI Gateway の振り分け図:すべてのモデル呼び出しはまずゲートウェイを通り、ゲートウェイが身元、予算、キャッシュを判断し、最先端モデル、バランスモデル、小規模モデルに振り分ける
公式図。左は Agent とアプリが発するすべてのモデル呼び出しで、「誰が発信したか」の情報が付随します。中央の AI Gateway は順に5つのことを行います。身元確認、予算適用、キャッシュヒットがあれば直接キャッシュを返す、モデル選択、エラー時の自動フォールバック。右は3つの行き先に分かれます。最先端モデルは最も難しい推論、バランスモデルは大部分のタスク、小規模モデルは量が多く低コストのもの。図には「any provider, including Workers AI」(Workers AI を含む任意のプロバイダー)と記載。出典:Cloudflare ブログ。

リポジトリに標準搭載されている4社

プロバイダーデフォルトのおすすめリストに載っているもの
AnthropicClaude Opus 5、Claude Sonnet 5、Claude Haiku 4.5
OpenAIGPT 5.6 の Sol、Luna、Terra の3グレード
GoogleGemini 3.6 Flash
Cloudflare Workers AIKimi K2.7 Code、GLM 5.2

さらにローカルの ollama 用の口も残されています。コード内の TODO コメントが興味深いです。Claude Fable も追加したいが、多くの企業がゼロデータ保持ポリシーのために使用を許可していないため、管理者スイッチを先に作る必要があると。そして「こんな小さなアプリに使うのは本来オーバーキルだ」とも付け加えています。

ホスティング版にはもう1つの課金設計があります。ユーザーごとに毎日無料枠があり、デフォルトでモデル呼び出し100回です。使い切ると、自分の Cloudflare アカウントに接続して自分の AI Gateway 残高で支払うか(残高は2ドル以上必要)、ブロックされます。セルフホストの場合、この層はデフォルトでオフになっており、制限はありません。

データ

Cloudflare 社内のこの3カ月:直近30日で4000以上のアプリ作成、失敗作も多数

Cloudflare OS の最初のバージョンは2026年5月に全従業員へ公開されました。今日のオープンソース化まで、3カ月間運用されました。

4000以上
直近30日で従業員が作成したアプリとツール
1万時間以上
同時期に営業チームが削減した時間(Cloudflare の見積もり)
数千人規模
毎週利用している従業員数。平日のデイリーアクティブ数は増加中
5月
最初のバージョンが全社公開。3カ月後に第二版をオープンソース化

削減された時間はもともと何に使われていたのか?CIO は、従来手作業だったセールスの仕事、具体的にはテリトリーの割り当てや提案書の作成といったものを挙げています。

まず失敗談から

当初、彼らは非技術職の同僚にも同じツールを配りましたが、インターフェースを少し使いやすくしただけでした。その結果を彼自身がこう総括しています。

誰にでもコードを書くのが得意なワークスペースを与えると、最終的には必要以上のコードが生まれることになる。

Sam Rhea、Cloudflare CIO

生まれたのは、「解決すべき問題が見つからない」vibe coding アプリの山でした。これが、第二版が確定的ワークフローの方向へ向かった理由でもあります。すべての仕事にコードを書ける Agent が必要なわけではありません。

CIO 自身の例:3世代のやり方を並べて見る

彼は毎朝、IT ヘルプデスクのチケットキューといくつかのサービス指標を確認します。

段階やり方コスト
手作業時代チケットシステムから CSV をエクスポートし、Google Sheets に放り込んでグラフ化し、夜の新着チケットを1件ずつ開く時間がかかる上、システム外に重複データを作る
第一版チケットシステムの MCP サーバーに接続するスキルファイルを実行安全で手作業は減ったが、毎朝数千トークンを消費して、内容がほぼ変わらないレポートを再生成していた
第二版Agent にこのダッシュボードをコードとして書かせ、Gatekeeper でデータセットへの接続を管理この初期レポートを読み込む際のトークン消費はゼロ

最後の「ゼロ」の前提を理解しておく必要があります。これは、ダッシュボードがコードとして書かれ、データは Gatekeeper 経由で直接取得され、読み込み時にモデルを経由しないから成立します。「Cloudflare OS を使えばトークンを消費しない」という意味ではありません。AI が必要な部分(新着チケットへの返信下書きなど)はアプリ内に組み込まれており、そこでは引き続きトークンを消費します。

同じ会社の別の取り組みを当サイトで解説済み
Cloudflare のコーディングエンジニアリング実践:統一コーディング「ルールベース」で Codex に監視させ、4カ月で1.6万件のコードマージを防ぐ
今回 CIO が言及したエンジニアリングラインのやり方。社内ルールベースで Agent にすべてのマージリクエスト、技術設計、障害レポートをレビューさせるものです。当サイトの記事で詳しく解説しているので、ここでは繰り返しません。
方法

何を自動化すべきかを見つける方法:全社に「やりたくない仕事」を魔法のメールボックスへ送らせる

この部分は製品自体とは関係ありませんが、今回もっとも直接的に真似できるものだと思います。

問題はこうです。会社でどの作業が自動化に値するかを知りたいとき、皆に「何を自動化したい?」と直接聞いても、答えはほとんど使い物になりません。Cloudflare のやり方は、質問の仕方を変えることです。彼らは全社にこう伝えました。「やりたくない仕事をこの『魔法の AI メールボックス』に送ってください。求めている結果を送り返します」と。

メールボックスの背後にあるのは自動システムではなく、AI ツールを使った少数の人間チームが1件ずつ処理しています。

巧妙なのは人間の心理です。CIO の言葉を借りると、理由は不明だが、人は自分の vibe coding アイデアを自動システムだと思われるものに送るのには消極的だが、やりたくない仕事を放り込むのには非常に積極的だということです。

数百回、やがて数千回のセッションを重ね、彼らはリクエストを手作業で分類し、傾向を見出しました。どのリクエストが繰り返し発生するか、どのデータに接続する必要があるか、最終的にどのような形式の成果物が求められているか。明確になったら、それをスキルファイルやコンテキストファイルにし、データソースを接続し、出力形式を固定しました。十分に蓄積されてから、プラットフォームをセルフサービスで開放しました。

この作業について、彼ら自身「非常に苦痛だった」と表現しており、ずっとやめたかったが、素材が十分にたまるまで我慢したそうです。

5つの原則の中で最も重要なもの

彼らは着手前に5つの原則を定め、その5つ目はこうです。AI を使うとき、業務システムへの権限は普段より大きくしてはならない。そして、あなたが共有する Agent が誰かに与えるアクセス権限は、その人の権限に基づくべきであり、あなたの権限ではありません。

先ほどの Gatekeeper とオブザベーションレコードの一連のメカニズムは、すべてこの一言から生まれました。

制約

着手前に知っておくべきこと:これは初期バージョン、Gatekeeper は自分で書く必要がある

以下の点は、ほとんどがリリースブログではなくリポジトリからの情報ですが、今着手するかどうかを左右します。

1つ目:README 自体が「早期アクセス」の警告を出している。このリポジトリは実は第二版であり、第一版の教訓を踏まえた完全な書き直しです。原文はこうです。非常に機能的だが、まだ多くの粗さがある。認識しており、修正中です。

2つ目:サービスの Gatekeeper を書くのは、本格的な開発作業。リポジトリには16個が含まれており、Google、GitHub、Slack、Notion、Linear、Confluence、Supabase、Home Assistant など一般的なサービスをカバーしています。私がそれぞれのコード行数を数えてみました。

Google
7425行
GitHub
5427行
Home Assistant
4638行
Notion
4073行
Confluence
3394行
Linear
3209行
Slack
2137行
MCP ブリッジ
544行
16個から8個をピックアップ。行数は私がリポジトリで数えたもの(各パッケージの src/ 以下の TypeScript ソースコード。型定義ファイルは除く)。

つまり、貴社の自社開発システムで既製の Gatekeeper がないものは、誰かが1つずつ書く必要があり、この規模感からすると、午後1つで終わるようなものではありません。良いニュースとして、リポジトリには MCP と MCP Portal の2つのブリッジパッケージがあり、既存の MCP サーバーを直接接続できます。ただしその場合、MCP の層の管理強度しかなく、Gatekeeper のきめ細かいポリシーは享受できません。

3つ目:外部からのコード貢献は受け付けていない。貢献ガイドの理由は一読の価値があります。

AI はコードを書くことを容易にした。今日、本当に難しいのはコードのレビュー、品質保証、プロダクトの一貫性の維持だ。そう考えると、外部からのコード貢献は、この仕事の中で簡単な半分を私たちに「寄付」し、同時に難しい半分を増やすことになる。

cloudflare-os リポジトリ · CONTRIBUTING.md

彼らが受け付けるのは、小さくて一目で検証できる修正のみ。10行を超えるものはこの規則を添えて即クローズされます。大きなアイデアがある場合は、ディスカッションスレッドを立ててください。

4つ目:workerd で自前サーバーにデプロイするのは、ドキュメントに「近日公開」と記載。技術的には動作し、ローカル開発モードでは workerd が使われていますが、ツールとドキュメントは未整備で、今やろうとすると低レベルの設定を自分で理解する必要があります。

公式の次のステップは3つ。Cloudflare コンソールでのマネージド製品化、開発ワークフローへのコンテナ追加、ワークスペースの Slack などのチャットツールへの接続です。

試すには

試し方:ローカルでコマンド1つ、または自分の Cloudflare アカウントへワンクリックデプロイ

一番手軽なのはローカルで試すことです。pnpm をインストールし、pnpm run-local を実行して、localhost:8787 を開きます。一式がお使いのマシンで起動し、データはローカルの .wrangler ディレクトリに置かれます。このモードは本番環境用ではありませんが、製品が何かを理解するには十分です。

自分の Cloudflare アカウントにデプロイするには、オンラインフローがあります。os.cloudflare.app/deploy。深くカスタマイズする予定があるなら、cloudflare-os-starter というサンプルリポジトリを使います。これは Cloudflare 社内のデプロイ方法に倣ったもので、コアを変更せずにコアを消費するという特徴があります。設定、カスタムUI、内部統合、データ分析、デプロイパイプラインはすべてこの層に置かれ、コアのアップグレード時に競合しません。

README に試し用のプロンプトがいくつかあるので、そのまま紹介します。

  • 「明日の顧客訪問用のスライドを作って。」(内蔵のスライドブループリントを使用)
  • 「共同作業用のホワイトボードアプリを作って。」(ゼロから新規作成)
  • 「三目並べのゲームを作って。」 そして「私は X で、あなたは O ね。私が最初の手を打ったから、あなたの番よ。」
  • 「この GitHub リポジトリ用の issue ボードを作って。」(先に GitHub の Gatekeeper を設定すること)
  • 「この Google ドキュメントの誤字を修正して。」(先に Google の Gatekeeper を設定すること)

自分で設定したくない場合は、Cloudflare の2つの戦略パートナーである Presidio と Happy Cog が導入サービスを提供しており、社内システムの接続、会社のコンテキストとスキルライブラリの構築、セキュリティとコストポリシーの設定を支援します。

🧰 ハンズオンカード · Cloudflare OS
価格オープンソースで無料、Apache 2.0 ライセンス。ホスティング版は1日あたりモデル呼び出し100回の無料枠がデフォルトで付与され、使い切ると自分の Cloudflare AI Gateway 残高(残高は2ドル以上必要)で支払い。セルフホストはこの制限なし。
ハードルローカルで試すなら pnpm を入れてコマンド1つ。実際に社内システムへ接続するなら、既製の16個の Gatekeeper 以外の自社システムは自分で書くか、MCP ブリッジパッケージで既存の MCP サーバーに接続する。
出典
Cloudflare OS:Agent、アプリ、そして仕事のためのオープンプラットフォームPhillip Jones、Dan Carter、Cloudflare ブログ·原文·2026-08-05
当サイトの注記
メカニズムの図5点とホーム画面のスクリーンショット1点は Cloudflare ブログから。「3つの成果物」の模式図と「同期 / 非同期承認」の比較図は当サイト作成。オブザーバーメカニズムの3つの詳細、シミュレーション承認の実装と3つの代償、16個の Gatekeeper のコード行数、内蔵モデル一覧、無料枠のルールは、私が落としたオープンソースリポジトリのソースコードとドキュメントに基づくもので、リリースブログからではありません。利用規模と削減工数は Cloudflare の自己評価であり、工数は彼らの推定値です。