Communitygithub.com

cloudflare/sandbox-next

Cloudflare Sandbox SDK @next(1.0 プレビュー)を使用したアプリの構築・保守を行います。安定版アプリの移行には sandbox-migrate-to-next を使用してください。

sandbox-next とは?

このスキルは、Cloudflare Containers 上で動作する隔離 Linux 環境を Workers から駆動するための Sandbox SDK @next(1.0 プレビュー)を扱います。新規プロジェクトにはこのプレビューラインを推奨し、コード作成前にパッケージライン(npm 依存関係が `@cloudflare/sandbox@next`、コンテナイメージが対応プレビューライン)を確認するゲートチェックを必須とします。安定版パッケージのアプリや、ブリッジのみのデプロイにはこのスキルの API を適用せず、適切なスキル(sandbox-stable、sandbox-migrate-to-next)に誘導します。主な API 契約として、`sandbox.exec()` は argv リストを受け取りプロセス起動時に解決、結果はハンドルのメソッドで収集、暗黙のシェルはなし、各起動は独立、標準入力はなし、ローカルタイムアウトは待機のみでプロセスを終了しない、など多くの非妥協ルールがあります。また実装前にタスクに応じたプレビュー文書を参照するよう促し、リリース前チェックとしてロックファイルと Dockerfile の @next ライン統一、型チェック、シークレット情報の環境変数保存禁止などを必須としています。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cloudflare/skills/tree/main/skills/sandbox-next

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Sandbox SDK — @next(1.0 プレビュー)

Cloudflare Containers 上の隔離 Linux 環境を、Workers から操作します。

プレビュー版ドキュメントとインストール済み @next 型を優先してください。 API は変更される可能性があります。このスキルはゲート、契約、および検索マップとして機能し、完全なマニュアルではありません。

新規プロジェクトにはこのラインを推奨します。デフォルトパッケージを使用しているアプリは sandbox-stable を使用してください。移行は、sandbox-migrate-to-next を使用して、依頼があった場合のみ行ってください。

1. ゲート — パッケージラインの確認

コードを作成する前に、アプリを検査してください:

確認項目一致条件
npm 依存関係@cloudflare/sandbox@next(またはその他のプレビュータグ)
コンテナイメージ同じライン(例:cloudflare/sandbox:next、next-python)
見つけた場合…対応
デフォルトの @cloudflare/sandbox(@next なし)停止。 sandbox-stable を読み込んでください。このスキルの API を適用しないでください。
ユーザーが安定版から @next への移植を希望停止。 sandbox-migrate-to-next を読み込んでください。
セルフデプロイの ブリッジ のみブリッジはまだ 1.0 プレビューラインにありません。ブリッジは安定版パッケージとイメージのままにしてください。ブリッジ(安定版)

@next の Worker パッケージと安定版コンテナイメージを混在させないでください(その逆も同様)。

スキルのインストール: Agent セットアップ · cloudflare/skills

2. 契約 — 非妥協ルール

  • sandbox.exec(argv) は argv リストを受け取り、プロセスが 開始 された時点で解決します。終了したコマンド結果ではなく、ハンドル を返します。
  • 結果はハンドルのメソッドで収集します:output()、logs()、waitForExit()、waitForPort()、waitForLog()、kill(signal?)。
  • 暗黙のシェルはありません。シェル構文を使用するには、明示的なシェルが必要です(例:["/bin/bash", "-lc", script])。
  • 各起動は独立しています。ある exec での cd / export は次の exec には反映されません。起動ごとに cwd と env を渡すか、1 つのシェルスクリプトを使用してください。
  • プロセスハンドルには 標準入力がありません。対話的な使用 → ターミナル(createTerminal + connect)。
  • ローカルの待機 timeout / AbortSignal は 待機のみをキャンセル します。プロセスを強制終了しません。プロセスを強制終了するには kill または exec のリモート timeout を使用してください。
  • getProcess / listProcesses / getTerminal / listTerminals はコンテナを 起動しません。コンテナが起動していない場合は null / [] を返します。
  • プロセス ID とターミナル ID は 現在のコンテナ に属し、サンドボックス ID に永続的に関連付けられるわけではありません。置き換え後も存続させる必要がある作業については、ID だけでなく、完全なジョブ(argv、cwd、env、アプリの状態)を保存してください。
  • シークレット以外の設定のみを setEnvVars / 起動時の env に格納します。ライブの認証情報は Worker 内に保持し、サンドボックスが外部 API を呼び出す場合はアウトバウンドハンドラを使用してください。
  • 廃止された安定版 API(コア上の gitCheckout、文字列 exec 完了、セッション実行、sandbox.terminal(request))を 発明しないでください。
  • すべてのエラーに同じ再試行ループを使用 しないでください(Errors ドキュメントを参照)。

最小限の形状:

import { getSandbox, proxyToSandbox, Sandbox } from "@cloudflare/sandbox";

export { Sandbox };

const sandbox = getSandbox(env.Sandbox, "user-123");
const process = await sandbox.exec(["python3", "-c", "print(2 + 2)"]);
const result = await process.output({ encoding: "utf8" });
// result.stdout, result.exitCode

タスク固有の API ドキュメント: references/api-quick-ref.md

サンプル一覧(next ブランチ): references/examples.md

3. 検索 — タスクに応じたドキュメントを開く

実装する前にページを取得してください。インストール済みの @next 型が推測よりも優先されます。

やりたいこと…開くドキュメント
概要確認 / プレビュー選択1.0 プレビュー概要
初めての Worker、wrangler、Dockerfileはじめに
exec、ハンドル、準備完了、耐久性プロセス実行
プロセス API シグネチャプロセス API
サンドボックス ID とコンテナ、スリープ/破棄ライフサイクル
cwd / env / setEnvVars環境変数
対話型 PTY / ブラウザターミナルターミナル · ターミナル API
Python/JS コードインタプリタインタプリタ · インタプリタ API
拡張機能モデル拡張機能
エラークラスとリカバリエラー · エラー API
よくある障害トラブルシューティング
API ハブAPI リファレンス
ファイル、マウント、バックアップ、ポート、トンネル、proxyToSandbox共有サーフェスのメインドキュメント(安定版限定のセッション/トランスポート/sandbox.terminal は無視): ファイル · ストレージ / マウント · ポート · トンネル · バックアップ · アウトバウンドトラフィック · サービス公開 · 本番デプロイ
サンプルアプリnext のサンプル
まだ安定版パッケージを使用中sandbox-stable · メイン Sandbox ドキュメント
既存の安定版アプリを移植するsandbox-migrate-to-next · 移行ガイド

4. リリース前の確認事項

  • ロックファイルと Dockerfile が 同じ @next ラインであること
  • インストール済みの @next 型に対して型チェックを行うこと
  • サンドボックス環境にライブのシークレットが含まれていないこと
  • 本番プレビューのホスト名で特定の URL パターンを使用する場合は、カスタムドメインにワイルドカード DNS が必要

Individual skills in this repo

This repo contains 15 individual skills — each has its own dedicated page.

cloudflare/agents-sdk

Build AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP servers, chat applications, voice agents, or browser automation. Covers Agent class, state management, callable RPC, Workflows, durable execution, queues, retries, observability, and React hooks. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/building-ai-agent-on-cloudflare

Builds AI agents on Cloudflare using the Agents SDK with state management, real-time WebSockets, scheduled tasks, tool integration, and chat capabilities. Generates production-ready agent code deployed to Workers. Use when: user wants to "build an agent", "AI agent", "chat agent", "stateful agent", mentions "Agents SDK", needs "real-time AI", "WebSocket AI", or asks about agent "state management", "scheduled tasks", or "tool calling". Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/building-mcp-server-on-cloudflare

Builds remote MCP (Model Context Protocol) servers on Cloudflare Workers with tools, OAuth authentication, and production deployment. Generates server code, configures auth providers, and deploys to Workers. Use when: user wants to "build MCP server", "create MCP tools", "remote MCP", "deploy MCP", add "OAuth to MCP", or mentions Model Context Protocol on Cloudflare. Also triggers on "MCP authentication" or "MCP deployment". Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/cloudflare

Comprehensive Cloudflare platform skill covering Workers, Pages, storage (KV, D1, R2), AI (Workers AI, Vectorize, Agents SDK), feature flags (Flagship), networking (Tunnel, Spectrum), security (WAF, DDoS), and infrastructure-as-code (Terraform, Pulumi). Use for any Cloudflare development task. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/cloudflare-email-service

Send and receive transactional emails with Cloudflare Email Service (Email Sending + Email Routing). Use when building email sending (Workers binding or REST API), email routing, Agents SDK email handling, or integrating email into any app — Workers, Node.js, Python, Go, etc. Also use for email deliverability, SPF/DKIM/DMARC, wrangler email setup, MCP email tools, or when a coding agent needs to send emails. Even for simple requests like "add email to my Worker" — this skill has critical config details.

cloudflare/cloudflare-one

Design, configure, troubleshoot, or review Cloudflare One Zero Trust and SASE deployments. Use cloudflare-one-migrations for migration planning from other vendors.

cloudflare/durable-objects

Create and review Cloudflare Durable Objects. Use when building stateful coordination (chat rooms, multiplayer games, booking systems), implementing RPC methods, SQLite storage, alarms, WebSockets, or reviewing DO code for best practices. Covers Workers integration, wrangler config, and testing with Vitest. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/sandbox-migrate-to-next

Migrate Cloudflare Sandbox apps from stable @cloudflare/sandbox to @cloudflare/sandbox@next (SDK 1.0 preview). Use sandbox-next for apps already on the preview.

cloudflare/sandbox-sdk

Build sandboxed applications for secure code execution. Load when building AI code execution, code interpreters, CI/CD systems, interactive dev environments, or executing untrusted code. Covers Sandbox SDK lifecycle, commands, files, code interpreter, and preview URLs. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/sandbox-stable

Build or maintain Cloudflare Sandbox apps on the stable @cloudflare/sandbox package. Use sandbox-next for preview apps and sandbox-migrate-to-next for stable-to-preview migrations.

cloudflare/skills

Build, migrate, and deploy Next.js apps on Cloudflare Workers with vinext. Use when starting a Next.js project on Cloudflare, moving an existing app to Workers, choosing between vinext and OpenNext, or setting up vinext for Workers. For setup, migration, or deployment, install vinext's upstream skills with `npx skills add cloudflare/vinext` if missing, then read and follow the applicable skill and docs.

cloudflare/turnstile-spin

Set up, repair, or migrate to Cloudflare Turnstile bot verification in an existing frontend and backend, including server-side Siteverify.

cloudflare/web-perf

Analyzes web performance using Chrome DevTools MCP. Measures Core Web Vitals (LCP, INP, CLS) and supplementary metrics (FCP, TBT, Speed Index), identifies render-blocking resources, network dependency chains, layout shifts, caching issues, and accessibility gaps. Use when asked to audit, profile, debug, or optimize page load performance, Lighthouse scores, or site speed. Biases towards retrieval from current documentation over pre-trained knowledge.

cloudflare/workers-best-practices

Reviews and authors Cloudflare Workers code against production best practices. Load when writing new Workers, reviewing Worker code, configuring wrangler.jsonc, or checking for common Workers anti-patterns (streaming, floating promises, global state, secrets, bindings, observability). Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

cloudflare/wrangler

Cloudflare Workers CLI for deploying, developing, and managing Workers, KV, R2, D1, Vectorize, Hyperdrive, Workers AI, Containers, Queues, Workflows, Pipelines, and Secrets Store. Load before running wrangler commands to ensure correct syntax and best practices. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.

関連スキル