Skip to main content
Use nullspace template ... when you want to create reusable machine environments without writing Python builder code. The CLI mirrors the SDK builder: choose one base image, add build steps, set runtime defaults, then publish a named template.

Inspect Templates

--fields returns compact metadata for scripts and dashboards. Build commands take a single-segment --name; use --tag for version tags and template refs such as team/agent-template:stable for lookup and management.

Build From An Image

Base selectors include:
Package install helpers accept comma-separated package lists. Add --npm-global immediately after --npm-install, --bun-global immediately after --bun-install, or --pip-user-install immediately after --pip-install to change install scope.

Dockerfiles And Local Context

Inline Dockerfile content is also supported:
Unsupported Dockerfile instructions are emitted as structured warning log entries. Use render commands to inspect the generated request before building:

Build Resources, Cache, And Logs

Start a background build when CI should poll later:
Save next_offset from build-status output and pass it back as --offset to fetch only new build log entries. template logs --follow uses the canonical reconnectable log stream and keeps reading live entries until the build stream closes. template cancel is idempotent for terminal builds and records a durable cancelled log entry. template retry starts a new attempt from the sanitized persisted definition; supply any private base image credentials again through the SDK/API when the original build required them. template promote moves a tag to a retained ready build artifact. Use template validate and template plan to check the server-side request normalization without starting an executor:

Files, Repos, And Build Steps

Use --copy-items @copy.json for many copy operations, or combine --copy-src and --copy-dst for one copy step. --remove, --rename-src, and related flags are available for cleanup and final filesystem shaping.

Names, Tags, Aliases, And Visibility

template rename takes a template ref and a new name, not a full destination ref. Existing aliases are preserved by the API.

Use A Template

Manage Template Warm Pools

Template warm pools keep ready capacity for a template:
Use nullspace template warm-pool list, get, scale, enable, disable, reconcile, and delete to operate pools. See Template Warm Pools for checkout modes and troubleshooting.