SJ blog
devops
A

信頼度ランク

S 公式ソース確認済み
A 成功実績多数・失敗例少数
B 賛否両論
C 動作未確認・セキュリティリスク高
Z 個人所感

Cloudflare Agents Week 2026まとめ——Dynamic Workers・Agent Memory・Artifacts・AI Gatewayで「エージェントクラウド」のインフラが揃った

Cloudflareが2026年4月にAIエージェント向け20以上の新機能を発表。安全なコード実行・永続メモリ・Gitストレージ・統合推論ゲートウェイで本番エージェントインフラの全体像を解説。

一言結論

CloudflareのAgents Week 2026(2026年4月12〜17日)はAIエージェントをローカルデモから本番クラウドへ移行させる20以上のプリミティブを一括提供した。Dynamic Workers(安全なAI生成コード実行)・Sandboxes(永続Linux環境)・Agent Memory・Artifacts(Gitストレージ)・AI Gateway(70+モデル統合)が揃い、エージェントインフラの自社構築コストを大幅に削減できる。

何が起きたか

2026年4月12〜17日、CloudflareはAgents Week 2026と題した1週間の一斉リリースイベントを開催し、AIエージェント向けに20以上の新機能・新サービスを発表した。個々の発表は小さくても、全体として「エージェントがローカルのデモから本番のクラウドへ移る」ために必要なインフラの全体像が出揃った。

主要カテゴリは6つ:

  1. Dynamic Workers — AIが生成したコードを安全に実行
  2. Sandboxes — 永続的な隔離Linux環境
  3. Agent Memory — エージェント専用の永続記憶
  4. Artifacts — エージェント向けGitストレージ
  5. AI Gateway — 70+モデルへの統合推論レイヤー
  6. Cloudflare Mesh — エージェント間のセキュアネットワーク

Dynamic Workers:AI生成コードを安全に実行する

エージェントが「コードを書いて実行する」ユースケースは増えているが、LLMが生成したコードをそのまま実行するのは重大なセキュリティリスクだ。

Dynamic Workersはこの問題をV8 isolateベースのサンドボックスで解決する:

// Dynamic Workersの使用例(Cloudflare Workers環境)
export default {
  async fetch(request, env) {
    const { code } = await request.json();

    // AI生成コードを受け取り、隔離された環境で実行
    // ファイルシステム・ネットワーク・環境変数への直接アクセスなし
    const result = await env.DYNAMIC_WORKERS.run({
      code,
      timeout_ms: 5000,       // 最大5秒で強制終了
      memory_limit_mb: 128,   // メモリ上限128MB
      allow_fetch: false,     // 外部HTTPリクエスト禁止
    });

    return Response.json({ result });
  },
};

従来のコード実行との比較:

           コンテナ (Docker)    Lambda    Dynamic Workers
─────────────────────────────────────────────────────────
コールドスタート  500ms〜2s      100ms〜    < 5ms(isolate再利用)
アイソレーション  プロセス分離   VM分離     V8 isolate(Chrome同等)
スケール         手動設定       自動       自動(無限スケール)
コスト           常時起動分     呼出単位   呼出単位(1ms単位)
セットアップ     Dockerfile必要 zip必要    コード文字列のみ

Sandboxes:長時間タスクのための永続Linux環境

Dynamic Workersは短命のコード実行に向いているが、「ファイルを生成して保存し、次のステップで参照する」ようなステートフルな長時間タスクには不向きだ。

Sandboxesは完全な永続Linuxコンテナを提供する:

import httpx
import json

CF_ACCOUNT = "your_account_id"
CF_API_TOKEN = "your_api_token"

# サンドボックスの作成
def create_sandbox(name: str, image: str = "ubuntu:24.04") -> dict:
    resp = httpx.post(
        f"https://api.cloudflare.com/client/v4/accounts/{CF_ACCOUNT}/sandboxes",
        headers={"Authorization": f"Bearer {CF_API_TOKEN}"},
        json={
            "name": name,
            "image": image,
            "persist": True,     # セッション間でファイルシステム保持
            "memory_mb": 512,
            "cpu_cores": 1,
        },
    )
    return resp.json()["result"]


# サンドボックスでコマンド実行
def exec_in_sandbox(sandbox_id: str, command: str) -> str:
    resp = httpx.post(
        f"https://api.cloudflare.com/client/v4/accounts/{CF_ACCOUNT}/sandboxes/{sandbox_id}/exec",
        headers={"Authorization": f"Bearer {CF_API_TOKEN}"},
        json={"command": command, "timeout_seconds": 30},
    )
    return resp.json()["result"]["stdout"]


# 使用例:エージェントが依存関係のインストール〜実行まで一気に行う
sandbox = create_sandbox("data-analysis-agent")
sid = sandbox["id"]

exec_in_sandbox(sid, "pip install pandas matplotlib")
exec_in_sandbox(sid, "python3 -c \"import pandas; print(pandas.__version__)\"")

# このファイルシステムは次回の呼び出しでも保持される
exec_in_sandbox(sid, "echo 'analysis completed' > /tmp/result.txt")

Agent Memory:エージェント専用の永続記憶

LLMのコンテキストウィンドウは有限だ。長期間にわたるタスク・複数の会話をまたぐ記憶には外部の記憶ストアが必要だ。

Agent MemoryはCloudflareが管理するベクトル+メタデータストレージで、エージェント向けに最適化されている:

// Cloudflare Workers + Agent Memory の実装例
import { AgentMemory } from "@cloudflare/agents";

interface Env {
  AGENT_MEMORY: AgentMemory;
}

export default {
  async fetch(request: Request, env: Env): Promise<Response> {
    const { action, agentId, content, query } = await request.json();

    if (action === "remember") {
      // 重要な情報を長期記憶に保存
      await env.AGENT_MEMORY.store({
        agent_id: agentId,
        content,
        metadata: {
          type: "user_preference",
          timestamp: Date.now(),
          importance: "high",  // 重要度に基づく保持優先度
        },
      });
      return Response.json({ stored: true });
    }

    if (action === "recall") {
      // 意味的類似性で関連記憶を検索
      const memories = await env.AGENT_MEMORY.search({
        agent_id: agentId,
        query,
        limit: 5,
        min_similarity: 0.75,
        // 重要度フィルタ:重要なものを優先
        metadata_filter: { importance: ["high", "medium"] },
      });

      return Response.json({ memories });
    }

    return Response.json({ error: "unknown action" }, { status: 400 });
  },
};

従来のRAG実装と比較した改善点:

❌ 従来のRAG実装の問題:
- Pinecone/Weaviateなど別サービスの管理コスト
- エージェントID・重要度などのメタデータ管理を自前実装
- 記憶の「忘却」(古いデータの削除)ポリシーを自前管理

✅ Cloudflare Agent Memoryの利点:
- Cloudflareインフラに統合(追加の認証設定不要)
- エージェントID・重要度フィルタが組み込み済み
- TTL(有効期限)ベースの自動削除
- Workers KV・D1との同一ゾーン内データ配置で低遅延

Artifacts:エージェント向けGitストレージ

エージェントがコード・ドキュメント・設定ファイルを「作成→バージョン管理→共有」するための専用Gitストレージだ。

# cf CLIを使用したArtifactsの操作
cf artifacts create my-agent-repo

# エージェントが生成したコードを直接プッシュ
cf artifacts push my-agent-repo \
  --source ./generated-code/ \
  --message "Generated by agent run #42"

# 任意のGitクライアントでclone可能
git clone https://artifacts.cloudflare.com/acme-corp/my-agent-repo

# フォーク(エージェントの実験的な変更を安全に試す)
cf artifacts fork my-agent-repo my-agent-repo-experiment

Artifactsが解決する課題:

エージェントが複数回の実行にわたってコードを累積的に改善する場合:

実行1: APIクライアントの基本実装を生成
  └─ artifacts commit: "Initial API client"

実行2: エラーハンドリングを追加
  └─ artifacts commit: "Add error handling"

実行3: テストを追加
  └─ artifacts commit: "Add unit tests"

← 通常のGit管理と同様に差分・履歴を追跡できる
← Worktreeを使えばエージェントが並列で異なるブランチで作業可能

AI Gateway:70+モデルへの統一推論レイヤー

AI Gatewayは複数のAIプロバイダーへの呼び出しを単一エンドポイントで統合し、観測性・コスト管理・フォールバックを提供する:

import httpx

# ❌ プロバイダーごとに別々のSDKと認証情報
import anthropic
import openai
from google.generativeai import GenerativeModel

# ✅ Cloudflare AI Gatewayで統一エンドポイント
GATEWAY_URL = "https://gateway.ai.cloudflare.com/v1/{account_id}/{gateway_id}"

def call_model(
    provider: str,
    model: str,
    messages: list[dict],
    fallback_provider: str | None = None,
) -> dict:
    """AI Gatewayを経由してモデル呼び出し(フォールバック付き)"""

    headers = {
        "Authorization": f"Bearer {CF_API_TOKEN}",
        "cf-aig-provider": provider,
        "cf-aig-model": model,
    }

    if fallback_provider:
        headers["cf-aig-fallback-provider"] = fallback_provider

    response = httpx.post(
        f"{GATEWAY_URL}/chat/completions",
        headers=headers,
        json={
            "model": model,
            "messages": messages,
            "max_tokens": 1024,
        },
        timeout=30,
    )

    return response.json()


# 使用例:Claudeをメインに、GPT-5.5をフォールバックとして設定
result = call_model(
    provider="anthropic",
    model="claude-opus-4-7-20261001",
    messages=[{"role": "user", "content": "Explain quantum entanglement"}],
    fallback_provider="openai",
)

AI Gatewayが提供する機能:

機能説明
マルチプロバイダーAnthropic・OpenAI・Google・Mistralなど12+プロバイダー・70+モデル
自動フォールバックプロバイダー障害時に自動で代替モデルへ切り替え
レート制限・コスト管理プロジェクト・ユーザー単位でトークン使用量を制限
観測性全推論呼び出しのログ・レイテンシ・コストをダッシュボードで可視化
キャッシュ同一プロンプトのレスポンスをキャッシュしてコスト削減
セマンティックキャッシュ意味的に類似したプロンプトのキャッシュヒット

Cloudflare Mesh:エージェント間のセキュアネットワーク

複数のエージェントが連携する場合、エージェント同士が安全に通信し、プライベートDBやAPIにアクセスできる必要がある:

Cloudflare Meshのネットワーク構成:

┌────────────────────────────────────────────┐
│         Cloudflare Global Network          │
│                                            │
│  ┌──────────┐   Mesh    ┌──────────────┐   │
│  │Agent A   │◄────────►│Agent B       │   │
│  │(Workers) │           │(Workers)     │   │
│  └────┬─────┘           └──────┬───────┘   │
│       │ Workers VPC            │            │
│       ▼                        ▼            │
│  ┌──────────────────────────────────────┐   │
│  │   Private Resources (via Tunnel)     │   │
│  │   ├── PostgreSQL (内部DB)           │   │
│  │   ├── Redis (内部キャッシュ)         │   │
│  │   └── Internal API (社内システム)    │   │
│  └──────────────────────────────────────┘   │
└────────────────────────────────────────────┘

← 手動でトンネル設定不要
← エージェントへのスコープ付きアクセス制御
← mTLSで全通信を暗号化

全体アーキテクチャ:Cloudflareで完結する本番エージェントシステム

Agents Weekのリリースを組み合わせると、以下のアーキテクチャが構築できる:

ユーザーリクエスト


┌─────────────────────────┐
│ Cloudflare AI Gateway    │ ← 推論コスト管理・フォールバック
│ (claude-opus-4-7)        │
└────────────┬────────────┘


┌─────────────────────────┐
│ Cloudflare Workers       │ ← エージェントのオーケストレーションロジック
│ (エージェントコア)        │
└──┬──────┬───────┬───────┘
   │      │       │
   ▼      ▼       ▼
┌──────┐ ┌──────┐ ┌──────────────┐
│Agent │ │Agent │ │Dynamic       │
│Memory│ │Artif.│ │Workers       │
│(記憶)│ │(Git) │ │(コード実行)  │
└──────┘ └──────┘ └──────────────┘


┌──────────────────────────┐
│ Sandbox (Linux環境)       │ ← 長時間・ステートフルタスク
│ + Cloudflare Mesh        │ ← プライベートDB接続
└──────────────────────────┘

注意点・未確認事項

  • 価格: Dynamic Workers・Sandboxes・Agent Memoryの価格体系は一部まだプレビュー扱いで、GA時に変更の可能性がある。
  • リージョン制約: Agent Memoryの一部機能は特定のCloudflareリージョンのみで利用可能(2026年4月時点)。
  • 既存Workerとの互換性: Dynamic Workersは通常のWorkersと同一ランタイムだが、一部APIが異なる(fetch()が制限されるなど)。
  • MCPとの統合: Cloudflare MeshとModel Context Protocol(MCP)の統合詳細はドキュメントが発展途上。

まとめ

Cloudflare Agents Week 2026は、AIエージェントを「動くデモ」から「本番運用」へ引き上げるために必要なインフラのピースを一気に揃えた。Dynamic Workers(安全な実行)・Agent Memory(永続記憶)・Artifacts(バージョン管理)・AI Gateway(マルチモデル管理)・Sandboxes(ステートフル環境)という各コンポーネントは、それぞれ独立して使えるが、組み合わせることで強力な垂直統合エージェントスタックになる。

Vercel・AWS Lambda・GCPとは異なるCloudflareの強みは、エッジ(低レイテンシ・グローバル分散)とAIプリミティブ(Agent Memory・AI Gateway)の垂直統合だ。自社でエージェントインフラを構築しようとしているチームは、このスタックを一度評価する価値がある。


参考リンク

注記: 本稿は2026年4月時点の公開情報に基づく。一部機能はプレビュー段階のため、GAリリース時に仕様が変更になる可能性がある。