Migrate Cloudflare Sandbox SDK codebases away from features deprecated in June 2026 (HTTP and WebSocket transports, desktop, exposePort, default sessions, and stream-specific file and command APIs).
Scanned 9/1/2026
Install to Claude Code
npx -y skills add try-works/role-model --skill sandbox-2026-deprecation --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Sandbox 2026 Deprecation?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/try-works-sandbox-2026-deprecation)More formats (shields.io, HTML) on the badges page.
---
name: sandbox-2026-deprecation
description: Migrate Cloudflare Sandbox SDK codebases away from features deprecated in June 2026 (HTTP and WebSocket transports, desktop, exposePort, default sessions, and stream-specific file and command APIs).
---
# Sandbox SDK 2026 deprecation migration
Use this skill when migrating a codebase that depends on the Cloudflare Sandbox SDK away from features deprecated in June 2026.
For the announcement, refer to the [changelog entry](https://developers.cloudflare.com/changelog/sandbox/2026-06-09-deprecating-sandbox-sdk-features/). For detailed documentation, refer to the [migration guide](https://developers.cloudflare.com/sandbox/guides/2026-deprecation/).
## Migration checklist
1. Update `@cloudflare/sandbox` and the sandbox container image before changing runtime configuration.
2. Search the codebase for deprecated configuration and APIs:
```sh
rg 'SANDBOX_TRANSPORT|transport:|exposePort\(|enableDefaultSession|execStream\(|readFileStream|writeFileStream'
```
3. Switch every sandbox to RPC transport with `SANDBOX_TRANSPORT=rpc` or `getSandbox(..., { transport: "rpc" })`.
4. Replace Sandbox SDK desktop APIs with Cloudflare Browser Run where browser automation is required.
5. Replace `exposePort()` with `sandbox.tunnels.get()`. Use quick tunnels for development and named tunnels for stable production hostnames.
6. Set `enableDefaultSession: false` on `getSandbox()`.
7. Replace workflows that depend on persisted shell state with explicit sessions from `sandbox.createSession()`.
8. Move stream-specific file and command logic to the base `readFile()`, `writeFile()`, and `exec()` APIs where streaming behavior is supported.
9. Deploy the Worker and smoke-test command execution, file operations, public URLs, and stateful session workflows.
## API replacements
| Deprecated feature | Replacement |
| ---------------------------------------- | ---------------------------------------------------- |
| HTTP or WebSocket transport | RPC transport |
| Sandbox SDK desktop | Cloudflare Browser Run |
| `exposePort()` | `sandbox.tunnels.get()` |
| Default sessions | `enableDefaultSession: false` with explicit sessions |
| Stream-specific command and file helpers | Base command and file APIs with streaming support |
## Notes for agents
- Do not remove `exposePort()` blindly if the Worker uses `proxyToSandbox()` to inject authentication or rewrite responses. Preserve that behavior before moving traffic to tunnels.
- If code relies on `cd` carrying across separate `exec()` calls, create an explicit session with `cwd` instead.
- Tunnels require RPC transport. Configure RPC before migrating public URLs.
- Large or binary file streaming requires RPC transport.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!