create-sandbox is the team’s end-to-end pipeline for spinning up a TypeScript implementation of an existing . The sandbox is a working backend stub the front end can develop against, integration tests can hit, and contract checks can validate — without waiting on the real backend to be deployable, stable, or even finished.
Two entry points converge on the same workflow:
- You have C# source — Claude reads the types and controllers and translates them
- You have a Postman collection — Claude infers types and service stubs from the request/response examples
Either way, the output is a typed TypeScript service layer plus a multi-sandbox infrastructure you can run locally.
The eight capabilities
The ships as an 8-step lifecycle. You can run them in order, jump in at any step, or invoke a single capability standalone.
| # | Capability | Purpose | Output |
|---|---|---|---|
| 1 | Type Translation | C# types → TypeScript | generated-types.d.ts |
| 2 | Controller Translation | C# controllers → service stubs | generated-services/*.service.ts |
| 3 | Sandbox Design | Architecture design document | sandbox-design.md (no code) |
| 4 | Sandbox Infrastructure | Multi-sandbox runtime scaffold | src/sandbox/ (7 files) |
| 5 | Method Implementation | Implement ONE service method per call | Updated .service.ts |
| 6 | Postman Type Inference | Postman collection → TypeScript types | generated-types.d.ts |
| 7 | Postman Service Generation | Postman collection → service stubs | generated-services/*.service.ts |
| 8 | Endpoint Testing | Generate and run integration + contract tests | src/tests/endpoints/*.test.ts |
Typical flow: 1 → 2 (or 6 → 7 from Postman) → 3 (design doc) → 4 (infrastructure) → 5 + 8 repeated per method.
When you reach for it
Concrete triggers, lifted straight from the skill’s usage catalogue:
- “Translate the C# types in
./src/Modelsto TypeScript” — Capability 1 - “Generate TypeScript services from my C# controllers” — Capability 2
- “Design a sandbox for the services in
./services” — Capability 3 - “Implement the sandbox infrastructure based on
docs/sandbox-design.md” — Capability 4 - “Implement the
GetUserInfomethod” — Capability 5 - “Generate types from my Postman collection” — Capability 6
- “Generate service stubs from my Postman collection” — Capability 7
- “Run the tests for
getUserInfo” — Capability 8
If you’re not building or extending a sandbox of an existing API, this isn’t the skill — try /team or plain instead.
Rules the skill enforces
A few non-negotiables baked into the skill that are easy to miss if you skim the docs:
- Never modify
tsconfig.jsonto suppress errors. NonoUnusedParameters: false, no// @ts-ignore, noany-typed escape hatches. Genuine fixes only. - Capability 5 implements exactly one method per invocation. Bulk requests are denied. After each method, Swagger JSDoc is updated and tests are generated + run automatically.
- Always use absolute paths (
$PWD/...) for the script invocations — relative paths resolve incorrectly undernpx tsx. - Capabilities 6 → 7 flag alignment is critical. If you used
--envelope "payload"in 6, you must use--envelopein 7. If you used--folders "Account,Cards"in 6, the same in 7. Mismatched flags produce subtly wrong type names that only surface at build time.
Required environment variables
Capabilities 4 and 5 require:
SANDBOX_APP_ID=<app-name> # Application identifier
SANDBOX_DATA_DIR=./data/sandboxes # Base directory for sandbox files
No fallback values. The application fails at startup if either is missing — by design, per the team’s no-silent-defaults rule.
Limitations to know up front
- Translation covers type definitions only — C# method bodies are not translated. Method implementation happens in Capability 5, one method at a time.
- The sandbox is file-based and single-threaded — for development and integration testing, not production load.
- WebSocket and streaming endpoints are not supported by the test generator.
- Contract validation is structural (field presence and types), not semantic — business-rule validation is your responsibility in Capability 5.
Going deeper
The full SKILL. and the eight capability-specific guides (01-type-translation.md through 08-endpoint-testing.md) live in the upstream repo. The eight guides go into detail on naming conventions, generated code structure, entity design, manager patterns, and test scope modes — read them when you hit the capability you’re about to invoke.