Skip to content

docs(sandboxes): add sandbox environments section (sbx env, experimental) - #25487

Draft
dvdksn wants to merge 12 commits into
docker:mainfrom
dvdksn:worktree-sbx-env-docs
Draft

docs(sandboxes): add sandbox environments section (sbx env, experimental)#25487
dvdksn wants to merge 12 commits into
docker:mainfrom
dvdksn:worktree-sbx-env-docs

Conversation

@dvdksn

@dvdksn dvdksn commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Adds a dedicated experimental Sandbox environment files page and links it from the Sandboxes workflows and get-started documentation
  • Documents the v0.39 .sbxenv.yaml schema and all four sbx env commands (run, create, exec, and rm)
  • Provides common workflows for shared project setup, personal overrides, multiple repositories, and automation
  • Clarifies live-update, recreation, failed-create cleanup, global binding, and MCP gateway behavior
  • Vendors the generated v0.39 sbx env CLI reference and links each command from the guide

🤖 Updated with Codex

Adds a new "Sandbox environments" section documenting the declarative
`.sbxenv.yaml` configuration format and `sbx env` commands (run, create, rm).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@netlify

netlify Bot commented Jul 3, 2026

Copy link
Copy Markdown

Deploy Preview for docsdocker ready!

Name Link
🔨 Latest commit 8f2a9a7
🔍 Latest deploy log https://app.netlify.com/projects/docsdocker/deploys/6a7c647b57b0d70008b83b26
😎 Deploy Preview https://deploy-preview-25487--docsdocker.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@docker-agent docker-agent left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Assessment: 🟡 NEEDS ATTENTION

This PR adds a new Sandbox environments section (~158 lines) to workflows.md documenting the experimental sbx env feature. The structure is clear and the YAML examples look correct. A few style-guide issues were found in the newly added content.

Comment thread content/manuals/ai/sandboxes/workflows.md Outdated
Comment thread content/manuals/ai/sandboxes/workflows.md Outdated
Comment thread content/manuals/ai/sandboxes/workflows.md Outdated
Comment thread content/manuals/ai/sandboxes/workflows.md Outdated
dvdksn and others added 4 commits July 3, 2026 09:30
Moves sbx env content from workflows.md into its own page
(sandbox-environments.md) with a proper per-field YAML reference.
Leaves a one-line pointer in workflows.md.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- agent: mark as required (Validate() enforces non-empty)
- pullPolicy: correct default to "always" (pullPolicyOrDefault helper)
- registries: clarify secret required, username optional; note token-only support

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Remove undocumented docker-credential-desktop registry example
- Improve plaintext secret warning to suggest variable interpolation
- Remove prose em dashes

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ts page

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dvdksn dvdksn added this to the sbx/future milestone Jul 16, 2026
dvdksn added 4 commits August 11, 2026 08:31
…v-v039

# Conflicts:
#	content/manuals/ai/sandboxes/workflows.md
The draft reference omitted supported commands and schema fields and misstated interpolation and cleanup behavior. Update it against docker/sandboxes release/v0.39 and resolve the workflows conflict with current main.\n\nCo-Authored-By: Codex <noreply@openai.com>
Clarify the lifecycle, cleanup, MCP, and local-only behavior of declarative sandbox environments. Vendor the generated v0.39 sbx env CLI reference and link the guide to it.

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
The experimental environment-file workflow was only discoverable from the workflow guide. Add a concise link in the get-started next steps with its v0.39 availability requirement.

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
@dvdksn dvdksn modified the milestones: sbx/future, sbx/v0.39.0 Aug 11, 2026
dvdksn added 3 commits August 12, 2026 11:19
The page opened with an ancillary workspace-location case before showing the feature's primary workflow. Lead with a project-local web application example, explain the problem it solves, and remove the redundant local-sandbox qualifier.

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
The environment file page moved from one example directly into command and schema reference material. Add four task-oriented recipes for shared project setup, personal overrides, multi-repository work, and automation, then separate update and cleanup behavior into dedicated sections.

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
Variable interpolation is scheduled to be superseded after v0.39 and should not be promoted as a lasting workflow. Remove its authored guide section and the interpolation suggestion from the secret warning while preserving generated v0.39 CLI reference data.

Signed-off-by: David Karlsson <35727626+dvdksn@users.noreply.github.com>
@dvdksn

dvdksn commented Aug 13, 2026

Copy link
Copy Markdown
Contributor Author

Verified the .sbxenv.yaml schema, all four sbx env subcommands, merge semantics, and the update/remove/failure-cleanup behavior against a v0.39.0-rc3 install — everything in the doc matches actual CLI behavior, no factual issues found.

A few suggestions for smoother learning flow, from a first-time-reader perspective:

  1. Commands are used before they're explained. The "Common workflows" section uses sbx env run, create, exec, rm before the "## Commands" section defines what each one does (e.g. that run creates-if-missing but never re-provisions on an existing sandbox). Consider moving "## Commands" up, right after the intro note, so terms are defined before the examples lean on them.

  2. No minimal example before the complex one. The first workflow ("Share a complete project environment") introduces kits, a kit-source allowlist command, ports, and secrets all at once. A 2-3 line "quickstart" (just schemaVersion + agent, which is a fully valid file) before the workflows would give readers a working mental model before the cookbook examples layer on complexity.

  3. The live-update vs. recreate distinction lands too late. "## Update an environment" — that editing env applies live but sandboxOptions/ports/kits/etc. require rm + recreate — is important enough to trip people up, but it appears after all four workflows and the commands table. The "Combine team defaults and personal settings" workflow is exactly where someone would edit sandboxOptions and expect it to apply on re-run; a pointer to "## Update an environment" there would help.

  4. "Scope" is used before it's defined. secrets, bindings, and rm all depend on the sandbox-scoped vs. global distinction, but it's only implied piecemeal. One clarifying sentence up front (secrets/registry creds are sandbox-scoped and removed with it; bindings are global and shared unless pruned) would help the later field tables land faster.

  5. Minor: "## Remove an environment" blends normal removal with failed-create cleanup in one block of text. Since the failed-create behavior is operationally important (secrets/bindings/MCP registrations persist if creation errors out — confirmed this), splitting it into its own subheading like "Clean up after a failed create" would make it easier to find when someone's actually debugging that situation.

— Authored and posted by Claude, on behalf of @dvdksn.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants