Diversio Engineering
On this page
SKILL PROCESS

Crafting Sandboxes

Create, inspect, or update Diversio Crafting sandboxes, branches, builds, and approved snapshots.

Overview

Create, inspect, or update Diversio Crafting sandboxes, branches, builds, and approved snapshots.

This skill ships inside the Crafting Sandboxes plugin and can be installed through the Claude Code marketplace or directly in Codex from its skill path.

Parent Surface

Parent docs: Crafting Sandboxes

Related wrapper commands from the parent plugin:

/crafting-sandboxes:sandbox

Discover Before Acting

.sandbox/manifest.yaml files. Templates define workspace shape; repository manifests also define hooks, environment, checkout behavior, and daemons.

to install/configure the organization's Crafting CLI; do not invent an installer, authentication command, or substitute cloud provider.

cs template show -o yaml. Treat auth/network failures as blockers, not “no templates”. Do not print credentials or full secret-bearing environment output in the report.

before mutation. Use live CLI help for version-dependent update/copy flags.

Read references/operations.md for concrete commands, DS build transfer, snapshot restore, and verification. Its source is the Diversio Crafting playbook dated 2026-04-23; observed names/paths are examples, not a substitute for current discovery.

Pick The Right Product And Branches

workspace is Diversio-Frontend (frontend/ in the monolith).

Optimo-Frontend (optimo-frontend/), despite the identical workspace name.

contains the needed workloads. Other templates require live inspection.

frontend frontend, and design system ds. Overrides use checkout paths, not local submodule folder names. Never assume Optimo uses the same paths.

branches, snapshot, or affected workspace when ambiguous. Infer branch intent from supplied PRs/current work where unambiguous; verify the remote branch exists. Local unpushed changes do not appear in sandbox checkouts.

Prefer a fresh sandbox when both branch overrides and database data change; do not silently mutate an existing shared instance instead.

  • Legacy dashboard/survey work normally uses diversio: its frontend workspace is Diversio-Frontend (frontend/ in the monolith).
  • Optimo work normally uses optimo: its frontend workspace is Optimo-Frontend (optimo-frontend/), despite the identical workspace name.
  • Scheduler-only work may use diversio-scheduler; verify it still exists and contains the needed workloads. Other templates require live inspection.
  • For the observed diversio template, checkout paths are backend lyfe, frontend frontend, and design system ds. Overrides use checkout paths, not local submodule folder names. Never assume Optimo uses the same paths.
  • Ask only about consequential unknowns: product, create versus update, exact branches, snapshot, or affected workspace when ambiguous. Infer branch intent from supplied PRs/current work where unambiguous; verify the remote branch exists. Local unpushed changes do not appear in sandbox checkouts.
  • Exclude aviato unless needed, where supported. Use only necessary workloads. Prefer a fresh sandbox when both branch overrides and database data change; do not silently mutate an existing shared instance instead.

Permission Boundaries

agreed new sandbox, not shared template edits or mutations of other instances.

current/desired branches, and requested changes. Do not overwrite dirty workspace code or unrelated user work. Creation/update can incur cloud cost.

for the exact snapshot and /postgres target, including data loss and any required backup. Updating a snapshot reference does not restore data.

Do not download database contents or copy production secrets for convenience.

disable auth, or widen network exposure without separate authorization.

  • Inspection/status requests are read-only. A create request authorizes the agreed new sandbox, not shared template edits or mutations of other instances.
  • Before updating an existing instance, identify its owner, exact workspace, current/desired branches, and requested changes. Do not overwrite dirty workspace code or unrelated user work. Creation/update can incur cloud cost.
  • Restoring a snapshot replaces live sandbox data. Obtain explicit approval for the exact snapshot and /postgres target, including data loss and any required backup. Updating a snapshot reference does not restore data.
  • Only use snapshots approved for that environment and data-access policy. Do not download database contents or copy production secrets for convenience.
  • Never delete/recreate a sandbox, modify shared templates, push branches, disable auth, or widen network exposure without separate authorization.

Execute Only The Requested Change

Use a short descriptive sandbox name and validate CLI naming constraints. Create from the inspected template with explicit workspace overrides. Verify both effective specs and actual checkout SHAs; app.definition alone still shows template defaults.

When frontend needs DS changes, a correct ds branch is not sufficient: frontend normally consumes its installed @diversioteam/diversio-ds package. Check whether current manifests already link/build the workspace. Otherwise, use the reference's build → staged transfer → replace installed dist → clear Vite cache → restart flow with approved target paths and rollback protection. Do not change package manifests or lockfiles merely to test a sandbox build.

For an approved snapshot restore, update the definition, restore the live Postgres dependency, then run migrations using the backend's actual interpreter and configuration. Do not assume snapshot schema matches the branch. Surface migration failure before claiming readiness or repeatedly restoring data.

Resources

Declared allowed tools:

BashReadGlobGrep

References

  • operations.md

Installation

Switch between Claude Code and Codex, then copy the install command for the runtime you use.

claude plugin marketplace add DiversioTeam/agent-skills-marketplace
claude plugin install crafting-sandboxes@diversiotech

Invocation:

/crafting-sandboxes:sandbox