Search documentation

Search the Fumadocs-backed documentation index.

Setups

Reusable setup steps that prepare the sandbox and carry their own resources.

setup prepares the sandbox for an environment or product. Use setup scripts to install tools, create fixtures, start services, or expose resources the agent needs.

Each variant has its own isolated /workspace. A setup script cannot rely on files or side effects created by another variant.

Accepted shapes:

# String form: one setup script.
setup: "npm install"

# List of strings: multiple setup scripts, run in order.
setup:
  - "npm install"
  - "npm test -- --help"

# Object form: one named setup with optional scoped resources.
setup:
  name: install-cli
  script: "npm install"

# List of objects: multiple named setups, run in order.
setup:
  - name: install-cli
    script: "npm install"
  - name: smoke-cli
    script: "npm test -- --help"

# Mixed list: strings and setup objects can be combined.
setup:
  - "npm install"
  - name: smoke-cli
    script: "npm test -- --help"

Setup object

A setup object is the named form of setup. Use it when setup needs its own files, environment variables, MCP servers, or setup checks.

FieldRequiredType / valuesNotes
nameYesKebab-case stringRequired for object form.
scriptYesStringBash run before setup checks and before the agent. Secret values are not injected here.
descriptionNoStringHuman-readable notes.
tagsNoString listFree-form labels.
filesNoFile entry listHost files staged before this setup's script runs (scoped to variants that resolve this setup).
environment_variablesNoEnvironment variable listRuntime env vars scoped to variants that use this setup.
mcp_serversNoMCP server listMCP servers exposed to the agent.
setup_checksNoSetup check listChecks run after setup and before the agent.

When both a product and environment contribute setup, product setup runs before environment setup.