examples

Используйте при работе в каталоге examples/, запуске примера с wrangler dev, добавлении нового примера или ответах на вопросы о директивах EXPOSE и…

npx skills add https://github.com/cloudflare/sandbox-sdk --skill examples

Examples

The examples/ directory contains working sample apps that exercise the SDK end-to-end. They double as integration smoke tests and as reference material for users.

Running an Example

From inside an example directory (e.g. examples/minimal/):

npm run dev    # Start wrangler dev (builds Docker on first run)

The first run builds the container image, so it's slow. Subsequent runs reuse the image unless the SDK or Dockerfile changes. If you've changed the container runtime or SDK, run npm run docker:rebuild from the repo root before npm run dev.

Available Examples

ExampleDemonstrates
minimalSmallest possible Sandbox SDK setup
authenticationAuth-protected sandbox access
claude-codeRunning Claude Code inside a sandbox
code-interpreterCodeInterpreter API + Workers AI
codex / codex-app-serverOpenAI Codex integration patterns
collaborative-terminalMulti-user terminal sharing
openai-agentsOpenAI Agents SDK + Sandbox
opencodeOpenCode integration
time-machineSnapshot/restore patterns
typescript-validatorRunning tsc against user code
vite-sandboxVite dev server proxied through preview URLs
websocket-tunnelWebSocket transport / port exposure
alpineAlpine-based container variant

EXPOSE Directives

The Cloudflare containers primitive does not require EXPOSE directives — all ports are accessible in both local dev and production without them.

Including EXPOSE is still recommended in example Dockerfiles because it documents which ports the app uses (standard Docker convention). Don't add it expecting it to gate access; add it as documentation.

Adding a New Example

  1. Copy examples/minimal/ as a starting point.
  2. Update package.json name and any wrangler config (wrangler.jsonc) — class names, DO bindings, container image tag.
  3. Add a README.md with an # H1 title (the README scanner uses it) and a short description of what the example demonstrates.
  4. Make sure the example builds and npm run dev works from a clean checkout.
  5. If the example demonstrates a new SDK capability, link to it from packages/sandbox/README.md.

Local Development Tips

  • Examples link to @cloudflare/sandbox via the workspace, so SDK changes are picked up after a build (npm run build from repo root).
  • Container changes require npm run docker:rebuild to take effect.
  • If you hit stale-image issues, delete the container image (docker images | grep sandbox) and re-run npm run dev.

Больше skills от cloudflare

workerd-api-review
cloudflare
Оптимизация производительности, дизайн и совместимость API, уязвимости безопасности и соответствие стандартам для рецензирования кода workerd. Охватывает tcmalloc-совместимые…
official
workerd-safety-review
cloudflare
Паттерны безопасности памяти, потокобезопасности, конкурентности и критического обнаружения для ревью кода workerd. Охватывает граничные риски V8/KJ, управление временем жизни,…
official
module-registry
cloudflare
Загружать при работе с реестром модулей в workerd — чтение, изменение, отладка или проверка разрешения модулей, компиляции, оценки или регистрации…
official
reproduce
cloudflare
Reproduce a cloudflare/agents GitHub issue by scaffolding a minimal Agents/Worker project and deploying it to a temporary Cloudflare account, then report…
official
local-explorer
cloudflare
How to add products/resources to the local explorer or local API. Use when implementing new local APIs, or UI routes under…
official
commit-categories
cloudflare
Правила категоризации коммитов для журналов изменений и сводок «что нового». ДОЛЖНЫ быть загружены перед категоризацией коммитов в командах changelog или whats-new. Предоставляет…
official
architecture
cloudflare
Используйте при первом знакомстве с кодовой базой, добавлении нового метода клиента, добавлении нового обработчика/сервиса контейнера или понимании того, как проходит запрос…
official
changesets
cloudflare
Используется при создании changeset, подготовке релиза или обновлении версий. Охватывает, на какие пакеты ссылаться, как писать описания changeset для пользователей,…
official