New to Claude Skills? Learn how to install them →

Scloudflare on GitHub

Sandbox SDK - Stable

OfficialFree

Manage Cloudflare Sandbox apps with stability in mind.

by cloudflare2.6k stars on cloudflare/skills
1 views
Updated Aug 7, 2026
Get this skill

Free · Opens the source repo

What Sandbox SDK - Stable does

The Sandbox SDK - Stable skill provides developers with a reliable interface for building and modifying applications using the stable version of the @cloudflare/sandbox package. This skill is designed to facilitate the management of isolated Linux environments on Cloudflare Containers, allowing for seamless command execution, session management, and resource handling. It serves as a gate to ensure that developers adhere to the stable package guidelines, preventing any accidental use of preview or deprecated features that could compromise application stability.

With this skill, users can execute commands, manage sessions, and handle files and ports within a controlled environment. The skill emphasizes the importance of using the correct package version and associated container images, ensuring that applications remain stable and functional. Developers are guided to confirm their package line and avoid mixing stable and preview versions, which can lead to compatibility issues. The skill also provides a structured approach to cleaning up deprecated APIs, ensuring that applications remain up-to-date with the latest standards.

This skill is particularly useful for developers who are maintaining existing applications that rely on the stable version of the Sandbox SDK. It allows them to focus on development without worrying about the potential pitfalls of using unstable or deprecated features. By following the guidelines provided, developers can ensure that their applications continue to run smoothly while still being able to innovate and implement new features as needed.

Overall, the Sandbox SDK - Stable skill is an essential tool for developers working within the Cloudflare ecosystem, providing a clear path for development while maintaining the integrity and stability of their applications.

When to use it

Use this skill when developing or maintaining applications that require the stable @cloudflare/sandbox package.

When not to use it

Do not use this skill if you are working with the preview version of the Sandbox SDK or need to migrate to version 1.0.

What you can build with it

Maintaining Existing Applications

Use the Sandbox SDK - Stable skill to ensure your existing Cloudflare applications remain functional and stable while managing updates.

Executing Commands in a Stable Environment

Leverage this skill to execute commands safely within a stable Cloudflare Sandbox environment, avoiding issues with preview features.

Cleaning Up Deprecated APIs

Utilize the skill to manage and clean up deprecated APIs in your applications, following the provided guidelines to ensure compliance.

How to install Sandbox SDK - Stable

View source

1. Install with the skills CLI

npx skills add cloudflare/skills/sandbox-stable --agent claude-code

2. Or install it manually

Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.

Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs

Inside SKILL.md

Written by cloudflare

Sandbox SDK — stable package

Isolated Linux environments on Cloudflare Containers, driven from Workers.

Prefer the main Sandbox docs and installed stable types over memory. This skill is a gate, a contract, and a retrieval map—not a full manual.

This line is the current stable default npm package. The main Sandbox documentation describes it. Existing apps can stay here and keep shipping.

We recommend new projects on @cloudflare/sandbox@next with sandbox-next. When you can, plan a move with sandbox-migrate-to-next so you are ready when 1.0 becomes the stable release. Do not force that port unless the user asks.

1. Gate — confirm the package line

Before writing code, inspect the app:

CheckMust match
npm dependencyDefault @cloudflare/sandbox (not @next / preview tags)
Container imageMatching stable image (not cloudflare/sandbox:next)
If you find…Action
@cloudflare/sandbox@next or a next imageStop. Load sandbox-next.
User wants to port to 1.0 / @nextStop. Load sandbox-migrate-to-next. Do not half-apply preview APIs on a stable package.
Only cleaning deprecated stable APIsStay here; use the 2026 deprecation guide. That is not a move to @next.

Never mix a stable Worker package with an @next container image (or the reverse).

Skills install: Agent setup · cloudflare/skills

2. Contract — non-negotiables

  • await sandbox.exec(command) takes a command string and resolves when the command finishes, with buffered stdout / stderr / exitCode (and related fields).
  • Long-running and streaming work use the stable command APIs (startProcess, execStream, and related helpers)—not the @next single-handle model. Open the Commands docs; do not invent @next output() handles on stable.
  • Sessions can preserve working directory and environment across commands (default session / enableDefaultSession, createSession). See Sessions docs when state must carry across calls.
  • Interactive browser terminals often use sandbox.terminal(request) and session/xterm helpers on stable—not preview createTerminal unless the package is @next.
  • Prefer RPC transport when using tunnels or large/binary streaming. HTTP/WebSocket transports are deprecated (cleanup guide below).
  • Files, mounts, ports, tunnels, backups, lifecycle, and interpreter: use main docs for signatures; trust installed stable types.
  • Non-secret config in sandbox env; live credentials in the Worker. Use outbound handlers when processes call external APIs.
  • Production preview hostnames need wildcard DNS on a custom domain when using those URL patterns.
  • Do not apply @next argv/process.output() APIs while the dependency is still stable.
  • Self-deployed bridge stays on the stable package and image. Bridge

Minimal shape:

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. Retrieve — open the doc for the task

Fetch the page before implementing. Installed stable types win over guesses.

You need to…Open
OrientSandbox overview
First Worker, template, DockerGet started
exec, streaming, background processesCommands API · Execute commands · Background processes · Streaming output
Sessions / shell state across commandsSessions concept · Sessions API
getSandbox options, sleep, destroyLifecycle API · Sandbox options
Env varsEnvironment variables
FilesFiles API · Manage files · File watching
Buckets / mountsStorage API · Mount buckets
BackupsBackups API · Backup and restore
Ports, preview URLs, exposePorts API · Expose services
TunnelsTunnels API
Proxy / Workers connectionsProxy requests · Workers connections
Browser / PTY terminalTerminal API · Terminal concept · Browser terminals
Code interpreterInterpreter API · Code execution
Git in the sandboxGit workflows
Secrets / egressOutbound traffic
WebSocketsWebSocket connections
Docker-in-DockerDocker in Docker
Production deployProduction deployment
Containers conceptContainers
How-to indexGuides
API indexAPI reference
Deprecated APIs while staying on stable2026 deprecation guide
Self-deployed bridgeBridge · Bridge HTTP API
Examples (stable/main)examples on GitHub
New work on 1.0 previewsandbox-next · 1.0 preview
Port existing app to @nextsandbox-migrate-to-next · Migrate

Deprecated-API cleanup (stay on stable)

Update package + matching image first, then follow the guide. Typical search:

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

This path does not switch you to @next.

4. Before you ship

  • Worker package and container image on the same stable line
  • Typecheck against installed stable types
  • No live secrets in sandbox env
  • If using deprecated transports/helpers, finish or track 2026 deprecation cleanup
  • When the team is ready for 1.0, use sandbox-migrate-to-next—do not force cutover unprompted

Frequently asked questions about Sandbox SDK - Stable

Similar skills