mcpField
S
sandbox-stable

sandbox-stable

github.com/cloudflareクラウド・DevOps3.2k70.6k 回インストール今日更新
リポジトリ

sandbox-stable について

安定版 `@cloudflare/sandbox` SDK を使う開発者向けのガイダンススキルです。Workers から Cloudflare Containers 上の隔離 Linux 環境を操作する際、パッケージとイメージの整合性、安定版 API、タスク別ドキュメントを確認できます。

主な機能

  1. 01安定版パッケージとイメージの確認
  2. 02コマンド実行のガイダンス
  3. 03プロセスのストリーミングとセッション
  4. 04ファイル、ストレージ、トンネルの資料案内
  5. 05シークレットと外部通信のガイダンス

活用シーン

  1. 01Worker 駆動のサンドボックスの開始
  2. 02隔離環境でのコマンド実行
  3. 03安定版 SDK を使うアプリの保守

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/cloudflare/skills --skill sandbox-stable

インストール後、Claude Code で/sandbox-stableを入力して読み込まれたか確認します。

詳細

Sandbox SDK — 安定版パッケージ

Cloudflare Containers 上の分離された Linux 環境を、Workers から操作します。

記憶に頼らず、Sandbox のメインドキュメントとインストール済みの安定版の型を優先してください。 このスキルは、ゲート、契約、情報を探すためのマップであり、完全なマニュアルではありません。

この項目は、npm の現在の安定版デフォルトパッケージです。メインの Sandbox ドキュメントで説明されています。既存のアプリはこのまま使い続け、リリースを続けられます。

新しいプロジェクトには、sandbox-next と併せて @cloudflare/sandbox@next をおすすめします。可能であれば、1.0 が安定版リリースになるときに備え、sandbox-migrate-to-next を使った移行を計画してください。ユーザーから依頼されない限り、無理に移行しないでください。

1. ゲート — パッケージの系統を確認する

コードを書く前に、アプリを確認してください。

確認項目一致すべき内容
npm の依存関係デフォルトの @cloudflare/sandbox(@next やプレビュータグではないこと)
コンテナイメージ対応する安定版イメージ(cloudflare/sandbox:next ではないこと)
見つかったもの…対応
@cloudflare/sandbox@next または next イメージ中止してください。 sandbox-next を読み込んでください。
ユーザーが 1.0 / @next への移行を希望している中止してください。 sandbox-migrate-to-next を読み込んでください。安定版パッケージにプレビュー API を一部だけ適用しないでください。
非推奨の安定版 API の整理のみこのページの範囲です。2026 deprecation guide を使用してください。これは @next への移行ではありません。

安定版 Worker パッケージと @next コンテナイメージを(またはその逆の組み合わせで)絶対に混在させないでください。

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

2. 契約 — 必須事項

  • await sandbox.exec(command) はコマンド文字列を受け取り、コマンドの完了時に、バッファーされた stdout / stderr / exitCode(および関連フィールド)とともに解決します。
  • 長時間実行やストリーミングの処理には、安定版のコマンド API(startProcess、execStream および関連ヘルパー)を使用してください。@next の単一ハンドルモデルは使用しないでください。Commands ドキュメントを開き、安定版で @next の output() ハンドルを作らないでください。
  • セッションでは、コマンド間で作業ディレクトリや環境を保持できます(デフォルトセッション / enableDefaultSession、createSession)。呼び出し間で状態を引き継ぐ必要がある場合は、Sessions ドキュメントを参照してください。
  • インタラクティブなブラウザーターミナルでは、安定版の sandbox.terminal(request) とセッション / xterm ヘルパーを使用することがよくあります。パッケージが @next でない限り、プレビュー版の createTerminal は使用しないでください。
  • トンネルや大容量のバイナリストリーミングには、RPC トランスポートを優先してください。HTTP/WebSocket トランスポートは非推奨です(下記のクリーンアップガイドを参照)。
  • ファイル、マウント、ポート、トンネル、バックアップ、ライフサイクル、インタープリターについては、シグネチャをメインドキュメントで確認し、インストール済みの安定版の型を信頼してください。
  • 秘密情報ではない設定はサンドボックス環境に置き、実際の認証情報は Worker に置いてください。プロセスが外部 API を呼び出す場合は、アウトバウンドハンドラーを使用してください。
  • URL パターンでカスタムドメインを使用する場合、本番のプレビュー用ホスト名にはワイルドカード DNS が必要です。
  • 依存関係が安定版のままである間は、@next の argv / process.output() API を適用しないでください。
  • 自分でデプロイした bridge は、安定版パッケージとイメージを使い続けてください。Bridge

最小構成:

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

export { Sandbox };

const sandbox = getSandbox(env.Sandbox, "user-123");
const result = await sandbox.exec('python3 -c "print(2 + 2)"');
// result.stdout, result.exitCode, result.success

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

実装する前にページを取得してください。推測よりも、インストール済みの安定版の型を優先してください。

必要な情報開く
全体像を把握するSandbox の概要
最初の Worker、テンプレート、Docker始める
exec、ストリーミング、バックグラウンドプロセスCommands API · コマンドを実行する · バックグラウンドプロセス · 出力のストリーミング
コマンド間でのセッション/シェル状態セッションの概念 · Sessions API
getSandbox のオプション、スリープ、破棄Lifecycle API · Sandbox のオプション
環境変数環境変数
ファイルFiles API · ファイルを管理する · ファイル監視
バケット/マウントStorage API · バケットをマウントする
バックアップBackups API · バックアップと復元
ポート、プレビュー URL、公開Ports API · サービスを公開する
トンネルTunnels API
プロキシ/Workers 接続リクエストをプロキシする · Workers 接続
ブラウザー/PTY ターミナルTerminal API · ターミナルの概念 · ブラウザーターミナル
コードインタープリターInterpreter API · コード実行
サンドボックス内の GitGit ワークフロー
シークレット/エグレスアウトバウンドトラフィック
WebSocketWebSocket 接続
Docker-in-DockerDocker in Docker
本番環境へのデプロイ本番環境へのデプロイ
コンテナーの概念コンテナー
ハウツーの一覧ガイド
API の一覧API リファレンス
安定版を使い続ける場合の非推奨 API2026 年の非推奨化ガイド
セルフデプロイ型ブリッジブリッジ · Bridge HTTP API
サンプル(安定版/main)GitHub のサンプル
1.0 プレビューで新規開発するsandbox-next · 1.0 プレビュー
既存のアプリを @next に移行するsandbox-migrate-to-next · 移行
非推奨 API のクリーンアップ (安定版を使い続ける)

まずパッケージと対応するイメージを更新し、その後ガイドに従ってください。典型的な検索:

rg 'SANDBOX_TRANSPORT|transport:|exposePort\(|enableDefaultSession|execStream\(|readFileStream|writeFileStream'

このパスでは @next に切り替わることはありません。

4. 出荷する前に

  • Worker パッケージとコンテナイメージが同じ安定版のラインにある
  • インストール済みの安定版の型に対して型チェックを実行する
  • サンドボックス環境に本番のシークレットがない
  • 非推奨のトランスポート/ヘルパーを使用している場合は、2026 年の非推奨化のクリーンアップを完了させるか追跡する
  • チームが 1.0 の準備ができたら、sandbox-migrate-to-next を使用してください。促されていないのに強制的に切り替えないでください

コメント