spacefast
The Spacefast CLI publishes static sites, build outputs, docs, reports, and
space previews from your terminal or automation. It is the fastest way to get
a live Spacefast URL from a local folder.
curl -fsSL https://spacefast.com/install.sh | bash
sf publish ./dist
The first publish creates a live anonymous space and writes
.spacefast/state.json inside the published directory (and records the space in
sf.jsonc when one exists). Publish the same directory again to update
the same space. sf publish waits until the version is live, then prints
a version receipt with the live and Version URLs.
Use the CLI interactively from a terminal, or pass --json on any command for
agent and CI workflows.
Quick Start
sf doctor
sf publish ./dist
To publish into your account or team:
sf login
sf teams switch my-team
sf publish ./dist
For CI, create an API key in Spacefast (or with sf api-keys create) and set
SPACEFAST_TOKEN, or pass --token directly:
SPACEFAST_TOKEN=... sf publish ./dist --json
Routing Files
When publishing a directory, the CLI uploads root _redirects and _headers
files and validates them before finalizing the version. _redirects supports
redirects, rewrites, custom 404 rules, and proxy rules. _headers supports
validated response headers.
Proxy rules use absolute external 200 destinations in _redirects:
/api/* https://api.example.com/:splat 200
Internal 200 destinations are rewrites.
Documentation
Tab completion
$ sf autocomplete bash
$ sf autocomplete --refresh-cache
Follow the printed instructions to add the completion script to your shell init file.
Working directory
$ sf --cwd ./apps/docs deploy
$ sf --cwd=/tmp/site env ls
Pass --cwd <path> to any command to operate as if it ran from that directory.
Useful in monorepos, CI scripts, or when the project state lives elsewhere.
Usage
$ npm install -g spacefast
$ sf COMMAND
running command...
$ sf (--version)
spacefast/0.0.12 darwin-arm64 node-v26.4.0
$ sf --help [COMMAND]
USAGE
$ sf COMMAND
...
Commands
sf access
Manage emergency visitor-session revocation.
USAGE
$ sf access [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage emergency visitor-session revocation.
Revoke active visitor sessions. Use `sf share` to manage who can open a space.
sf access logout-all
Revoke all visitor sessions.
USAGE
$ sf access logout-all [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Revoke all visitor sessions.
Revoke every active private-open, share-link, and signed-in visitor session for the space.
EXAMPLES
Revoke every visitor session on the space.
$ sf access logout-all --space docs
sf activity
Show activity events.
USAGE
$ sf activity [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--all] [--code <value>] [--since <value>] [--until <value>] [--limit
<value>] [--cursor <value>]
FLAGS
--all Read account-wide activity instead of a single space.
--code=<value> Filter by activity taxonomy code, for example version.promoted.
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of events to return (default 50, max 100).
--since=<value> Only events at or after this ISO timestamp.
--until=<value> Only events before this ISO timestamp.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show activity events.
Read the activity feed for the selected space, or pass --all for every event visible to your account.
EXAMPLES
$ sf activity
$ sf activity --code version.promoted
$ sf activity --all --since 2026-06-01T00:00:00Z
sf agents init
Write Spacefast AGENTS.md guidance.
USAGE
$ sf agents init [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Write Spacefast AGENTS.md guidance.
Create or update the Spacefast AGENTS.md snippet.
EXAMPLES
Insert or refresh the Spacefast block in AGENTS.md.
$ sf agents init
sf analytics
Print runtime analytics.
USAGE
$ sf analytics [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--window 48h|7d|30d]
FLAGS
--window=<option> [default: 7d] Analytics window.
<options: 48h|7d|30d>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print runtime analytics.
Print runtime analytics series.
EXAMPLES
Print the 7-day analytics series for a space.
$ sf analytics --space docs
Use a 30-day window.
$ sf analytics --space docs --window 30d
sf api METHODORPATH [PATH]
Call the Spacefast API directly.
USAGE
$ sf api METHODORPATH [PATH] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[-i <value>] [--idempotency-key <value>] [--include] [--output <value> | --raw-stdout] [--paginate]
ARGUMENTS
METHODORPATH HTTP method (GET, POST, PATCH, PUT, DELETE) or request path.
[PATH] Request path, for example /v1/spaces/{spaceId}/versions.
FLAGS
-i, --input=<value> JSON request body: a literal string, @file, or - for stdin.
--idempotency-key=<value> Replay-safe logical-attempt key for retryable mutations.
--include Write HTTP status and safe response headers to stderr.
--output=<value> Write a non-JSON response body to a file.
--paginate Emit every page of a declared cursor-list GET as JSON Lines.
--raw-stdout Write a non-JSON response body to stdout.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Call the Spacefast API directly.
Send a signed request to the core public API contract using the resolved profile credentials. JSON envelopes print
verbatim; non-JSON responses require an explicit output destination.
EXAMPLES
$ sf api /v1/me
$ sf api GET /v1/spaces/spc_123/versions --paginate
$ sf api POST /v1/publish --input @publish.json --idempotency-key 01J-logical-attempt
$ sf api GET /v1/spaces/spc_123/versions/ver_123/archive --output site.tar.gz
sf api-keys
Manage API keys.
USAGE
$ sf api-keys [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage API keys.
Manage platform API keys.
sf api-keys create
Create an API key.
USAGE
$ sf api-keys create [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-n <value>] [--preset
ci_deploy|space_publisher|space_admin|site_admin|domain_manager|team_admin|billing_viewer]
FLAGS
-n, --name=<value> Human-readable API key name.
--preset=<option> [default: space_publisher] Access preset for the new API key.
<options:
ci_deploy|space_publisher|space_admin|site_admin|domain_manager|team_admin|billing_viewer>
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create an API key.
Create a platform API key and print its one-time secret.
ALIASES
$ sf api-keys add
EXAMPLES
Create an API key and print its one-time secret.
$ sf api-keys create --name ci
Create a key with a specific access preset.
$ sf api-keys create --name ci --preset full_access
sf api-keys delete ID
Revoke an API key.
USAGE
$ sf api-keys delete ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID API key id.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke an API key.
Revoke a platform API key.
EXAMPLES
Delete (revoke) an API key by ID.
$ sf api-keys delete key_123
sf api-keys list
List API keys.
USAGE
$ sf api-keys list [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--limit <value>]
FLAGS
--limit=<value> Maximum number of API keys to return (default 50, max 100).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List API keys.
List platform API keys for the selected team.
EXAMPLES
List API keys for the selected team.
$ sf api-keys ls
sf api-keys ls
List API keys.
USAGE
$ sf api-keys ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--limit <value>]
FLAGS
--limit=<value> Maximum number of API keys to return (default 50, max 100).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List API keys.
List platform API keys for the selected team.
EXAMPLES
List API keys for the selected team.
$ sf api-keys ls
sf api-keys revoke ID
Revoke an API key.
USAGE
$ sf api-keys revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID API key id.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke an API key.
Revoke a platform API key.
EXAMPLES
Revoke an API key by ID.
$ sf api-keys revoke key_123
sf api-keys rm ID
Revoke an API key.
USAGE
$ sf api-keys rm ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID API key id.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke an API key.
Revoke a platform API key.
ALIASES
$ sf api-keys remove
EXAMPLES
Remove (revoke) an API key by ID.
$ sf api-keys rm key_123
sf apply
Apply saved changes to the live runtime.
USAGE
$ sf apply [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--wait] [--wait-timeout <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the apply to finish.
DESCRIPTION
Apply saved changes to the live runtime.
Push saved space settings that are not live yet onto the serving runtime.
EXAMPLES
Apply the linked space's saved changes and wait for them to go live.
$ sf apply
Queue an apply for a specific space without waiting.
$ sf apply --space docs --no-wait
sf autocomplete [SHELL]
Display autocomplete installation instructions.
USAGE
$ sf autocomplete [SHELL] [-r]
ARGUMENTS
[SHELL] (zsh|bash|powershell) Shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
Display autocomplete installation instructions.
EXAMPLES
$ sf autocomplete
$ sf autocomplete bash
$ sf autocomplete zsh
$ sf autocomplete powershell
$ sf autocomplete --refresh-cache
See code: @oclif/plugin-autocomplete
sf build [DIR]
Build and pack static output.
USAGE
$ sf build [DIR] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--root-directory <value>] [--install-directory <value>] [--install-command <value>] [--build-command <value>]
[--output-directory <value>] [--env-file <value>...] [--ignored-build-command <value>] [--skip-install]
[--skip-build] [--prebuilt] [--output <value>] [--dry-run] [--stream]
ARGUMENTS
[DIR] Project directory to build. Defaults to the current directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
BUILD FLAGS
--build-command=<value> Build command. Defaults to framework and package script detection.
--env-file=<value>... Local dotenv file to load for install/build commands. Repeat for multiple files.
--ignored-build-command=<value> Command that exits 0 when this build should be skipped.
--install-command=<value> Install command. Defaults to package-manager detection.
--install-directory=<value> Project subdirectory to run dependency installation from.
--output-directory=<value> Build output directory relative to the app root.
--prebuilt Pack an already-built output directory; skips install and build.
--root-directory=<value> Project subdirectory that contains the app.
--skip-build Skip the build command and pack the selected directory unless --output-directory is
set.
--skip-install Skip the install command.
EXECUTION FLAGS
--dry-run Print the detected build plan without installing, building, or packing.
--output=<value> [default: .spacefast/build-output.tgz] Archive path to write.
--[no-]stream With --json, emit a JSONL build event stream. Use --no-stream for a single result blob.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Build and pack static output.
Detect build settings, run the build, and pack the static output.
EXAMPLES
Detect build settings, run the build, and pack the output archive.
$ sf build
Build a monorepo app and write the archive to a custom path.
$ sf build --root-directory apps/web --output ./apps/web.tgz
sf builds cancel BUILD
Cancel a build.
USAGE
$ sf builds cancel BUILD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
BUILD Build ID (bld_...).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Cancel a build.
Cancel a build. Idempotent: terminal builds are returned unchanged in their terminal state.
EXAMPLES
Cancel a build.
$ sf builds cancel bld_123
sf builds detect
Detect framework and build settings.
USAGE
$ sf builds detect [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted] [--ref <value>] [--root-directory
<value>] [--apply-best]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
BUILD FLAGS
--apply-best Save the highest-ranked detected app candidate as repository build settings.
--root-directory=<value> App root directory to inspect.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
--ref=<value> Git ref to inspect.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Detect framework and build settings.
Detect the framework and build settings for a space's repository connection. Shows the detected app, ranked candidates
when the repository has more than one, and unsupported platform config found along the way.
EXAMPLES
Show detected framework and build settings for the repository connection.
$ sf builds detect --space docs
Detect and save the best build settings for a subdirectory.
$ sf builds detect --space docs --root-directory apps/web --apply-best
sf builds get BUILD
Show a build.
USAGE
$ sf builds get BUILD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
BUILD Build ID (bld_...).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Show a build.
Fetch a build by id.
EXAMPLES
Show a build by ID.
$ sf builds get bld_123
sf builds logs BUILD
Print build logs.
USAGE
$ sf builds logs BUILD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--limit
<value>] [--cursor <value>] [-f]
ARGUMENTS
BUILD Build ID (bld_...).
FLAGS
-f, --follow Follow live build logs until the build reaches a terminal state.
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of log lines.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Print build logs.
Print build runner log lines, newest first.
EXAMPLES
Print recent log lines for a build.
$ sf builds logs bld_123
Stream logs until the build finishes.
$ sf builds logs bld_123 --follow
sf builds ls
List builds.
USAGE
$ sf builds ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--limit <value>] [--cursor <value>]
FLAGS
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of builds to return (default 20, max 100).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List builds.
List a space's builds, newest first.
ALIASES
$ sf builds list
EXAMPLES
List recent builds for a space.
$ sf builds ls --space docs
Show only the five most recent builds.
$ sf builds ls --space docs --limit 5
sf builds resume-upload BUILD
Refresh source archive upload.
USAGE
$ sf builds resume-upload BUILD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
BUILD Build ID (bld_...) waiting for source archive upload.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Refresh source archive upload.
Refresh the source archive upload instruction for a build that is waiting for source archive upload.
EXAMPLES
Refresh the source archive upload instruction for a build.
$ sf builds resume-upload bld_123
sf builds retry BUILD
Retry a terminal build.
USAGE
$ sf builds retry BUILD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
BUILD Build ID (bld_...) to retry.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Retry a terminal build.
Retry a terminal build with the same input, settings, and target.
EXAMPLES
Retry a terminal build.
$ sf builds retry bld_123
sf channels
Manage channels.
USAGE
$ sf channels [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage channels.
List channels and inspect their promotion history.
sf channels history [NAME]
Show channel history.
USAGE
$ sf channels history [NAME] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
[NAME] Channel name. Defaults to `live`.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show channel history.
Show a channel's promotion history (the deploy log), newest first.
EXAMPLES
Show promotion history for the live channel.
$ sf channels history --space docs
Show promotion history for the preview channel.
$ sf channels history preview --space docs
sf channels ls
List channels.
USAGE
$ sf channels ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List channels.
List channels for a space and where each one points.
ALIASES
$ sf channels list
EXAMPLES
List channels for the docs space.
$ sf channels ls --space docs
Manage comments.
USAGE
$ sf comments
DESCRIPTION
Manage comments.
List, export, and update persistent Space comments.
Archive a comment.
USAGE
$ sf comments archive COMMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
COMMENT Comment id, for example cmt_123.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Archive a comment.
Archive a comment thread.
EXAMPLES
Archive a comment thread.
$ sf comments archive cmt_123
Export comments.
USAGE
$ sf comments export [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--version <value>] [--format markdown|json] [--status open|archived]
FLAGS
--format=<option> [default: markdown] Export format.
<options: markdown|json>
--status=<option> Filter by status.
<options: open|archived>
--version=<value> Filter by version ID, ref, or number.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Export comments.
Export comment threads for agents and scripts.
EXAMPLES
Export every open thread in the space as markdown.
$ sf comments export --status open --format markdown
Export open comments filtered to version v3 as JSON.
$ sf comments export --version v3 --status open --format json
Show a comment.
USAGE
$ sf comments get COMMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
COMMENT Comment id, for example cmt_123.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show a comment.
Show one comment thread.
EXAMPLES
Show one comment thread.
$ sf comments get cmt_123
List comments.
USAGE
$ sf comments list [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--version <value>] [--status open|archived] [--path <value>] [--limit
<value>]
FLAGS
--limit=<value> Maximum comments to return.
--path=<value> Filter by page path.
--status=<option> Filter by status.
<options: open|archived>
--version=<value> Filter by version ID, ref, or number.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List comments.
List persistent comment threads across a space.
ALIASES
$ sf comments ls
EXAMPLES
List open comments on the pricing route across publishes.
$ sf comments list --status open --path /pricing
Filter comments by their version context.
$ sf comments list --version v3
Reply to a comment.
USAGE
$ sf comments reply COMMENT --body <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--idempotency-key <value>]
ARGUMENTS
COMMENT Comment id, for example cmt_123.
FLAGS
--body=<value> (required) Reply body.
--idempotency-key=<value> Stable key for safely retrying this reply.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Reply to a comment.
Reply to a comment thread.
EXAMPLES
Reply to a comment thread.
$ sf comments reply cmt_123 --body "Fixed in v4."
Unarchive a comment.
USAGE
$ sf comments unarchive COMMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
COMMENT Comment id, for example cmt_123.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Unarchive a comment.
Unarchive a comment thread.
EXAMPLES
Unarchive a comment thread.
$ sf comments unarchive cmt_123
sf continue
Continue publishing after claim.
USAGE
$ sf continue [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token <value>]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Continue publishing after claim.
Exchange a saved anonymous claim token for a durable space access token after the space is claimed.
EXAMPLES
Continue publishing to the claimed space saved in this directory.
$ sf continue
sf create NAME
Create a Spacefast project directory.
USAGE
$ sf create NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--runtime
static|zero] [--template todo|guestbook] [--title <value>] [--no-git]
ARGUMENTS
NAME Directory name for the new project.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
ZERO FLAGS
--no-git Skip initializing git for a Zero starter app.
--template=<option> Zero starter template to scaffold.
<options: todo|guestbook>
--title=<value> Zero starter app title.
PROJECT FLAGS
--runtime=<option> [default: static] Project runtime to create.
<options: static|zero>
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a Spacefast project directory.
Create a new Spacefast project directory. Use --runtime zero to scaffold a Zero capsule.
EXAMPLES
Create a static Spacefast project directory.
$ sf create my-site
Create a Zero capsule directory.
$ sf create my-app --runtime zero --template guestbook
sf demo
Run Spacefast demos.
USAGE
$ sf demo
DESCRIPTION
Run Spacefast demos.
Run local Spacefast demonstrations. Use `spacefast demo agent` for the agent/MCP dogfood check.
sf demo agent
Run the local agent/MCP dogfood demo.
USAGE
$ sf demo agent [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--port <value>]
[--publish]
FLAGS
--port=<value> Temporary On-Device MCP HTTP port for the demo.
--publish Keep the generated workspace and print the publish command. Does not publish without an explicit later
`sf publish`.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Run the local agent/MCP dogfood demo.
Run a local dogfood check for Spacefast agent UX: On-Device MCP HTTP health, code-mode approval, resume, and workspace
file editing.
EXAMPLES
Run the local agent/MCP dogfood demo.
$ sf demo agent
Keep the generated workspace and print the publish command.
$ sf demo agent --publish
sf deployments
Manage deployments (alias of sf versions).
USAGE
$ sf deployments [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage deployments (alias of `sf versions`).
List and inspect deployment activity. Alias of `sf versions`. Deploying is publishing: a deployment is a version, and
the canonical nouns are version, channel, and build.
sf deployments get DEPLOYMENT
Show a deployment (alias of sf versions get).
USAGE
$ sf deployments get DEPLOYMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
DEPLOYMENT Deployment ID, usually dep_build_... or dep_version_....
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show a deployment (alias of `sf versions get`).
Fetch a deployment by id. Alias of `sf versions get`; a deployment is a version.
sf deployments ls
List deployments (alias of sf versions ls).
USAGE
$ sf deployments ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--limit <value>] [--cursor <value>]
FLAGS
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of deployments to return.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List deployments (alias of `sf versions ls`).
List deployments for a space, newest first. Alias of `sf versions ls`; a deployment is a version.
sf deployments promote DEPLOYMENT
Promote a deployment (alias of sf promote).
USAGE
$ sf deployments promote DEPLOYMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--channel <value>] [--wait] [--wait-timeout <value>]
ARGUMENTS
DEPLOYMENT Deployment ID to make live, usually dep_build_... or dep_version_....
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
EXECUTION FLAGS
--channel=<value> [default: live] Channel to point at this version (default "live").
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become live.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Promote a deployment (alias of `sf promote`).
Promote the version produced by a deployment to a channel (default live). Alias of `sf promote`; a deployment is a
version.
sf deployments rollback DEPLOYMENT
Roll back to a deployment (alias of sf rollback).
USAGE
$ sf deployments rollback DEPLOYMENT [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--channel <value>] [--wait] [--wait-timeout <value>]
ARGUMENTS
DEPLOYMENT Deployment ID to roll back to, usually dep_build_... or dep_version_....
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
EXECUTION FLAGS
--channel=<value> [default: live] Channel to point at this version (default "live").
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become live.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Roll back to a deployment (alias of `sf rollback`).
Roll live traffic back to the version produced by a deployment. Alias of `sf rollback`; a deployment is a version.
sf design
Generate design files from DESIGN.md.
USAGE
$ sf design [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Generate design files from DESIGN.md.
Generate committed presentation files (theme.json and _layout.html) from an authoring-time DESIGN.md.
sf design generate
Generate theme and layout files from DESIGN.md.
USAGE
$ sf design generate [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-f]
EXECUTION FLAGS
-f, --force Overwrite existing generated files.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Generate theme and layout files from DESIGN.md.
Read DESIGN.md's ```theme.json``` and ```layout.html``` fenced blocks and write theme.json plus _layout.html.
theme.json can seed Pages tokens; _layout.html provides site chrome. DESIGN.md itself is never read at finalize or
serve time.
EXAMPLES
Generate theme.json/_layout.html from DESIGN.md in the current directory.
$ sf design generate
Regenerate, overwriting any existing theme.json/_layout.html.
$ sf design generate --force
sf dev
Start the local Pages preview.
USAGE
$ sf dev [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-p <value>] [-d
<value>]
FLAGS
-d, --dir=<value> [default: .] Project directory.
-p, --port=<value> [default: 4173] Preview port.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Start the local Pages preview.
Preview Pages locally with sample data and the publish-time expander.
sf docs [QUERY]
Search the bundled docs (offline).
USAGE
$ sf docs [QUERY...] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--full]
[--all]
ARGUMENTS
[QUERY...] Search terms, or an exact topic slug to print (e.g. `publish`).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
DISCLOSURE FLAGS
--all Include every doc, reference tier included.
--full Include full-tier docs (everything but advanced reference).
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Search the bundled docs (offline).
Search the bundled Spacefast docs offline — guides, CLI, API reference, and recipes. Essential topics show by default;
pass --full or --all to widen. An exact topic slug prints that page.
EXAMPLES
List the essential docs.
$ sf docs
Search docs for `rollback`.
$ sf docs rollback
Print the `publishing` topic.
$ sf docs publishing
Search across the full docs set.
$ sf docs domains --full
Every doc as machine-readable JSON.
$ sf docs --all --json
sf doctor
Diagnose Spacefast CLI setup.
USAGE
$ sf doctor [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Diagnose Spacefast CLI setup.
Check local CLI state, auth, API reachability, and space selection for the current directory.
EXAMPLES
Diagnose CLI state, auth, and API reachability.
$ sf doctor
Also check the health of a specific space.
$ sf doctor --space docs
sf domains
Manage domains.
USAGE
$ sf domains [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage domains.
Manage space domains.
sf domains add HOSTNAME
Attach a domain.
USAGE
$ sf domains add HOSTNAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--wait] [--wait-timeout <value>] [--redirect-to <value>
--role standard|redirect] [--redirect-status 301|302|307|308 ]
ARGUMENTS
HOSTNAME Hostname to attach.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DOMAIN BEHAVIOR FLAGS
--redirect-status=<option> HTTP status for redirect domains.
<options: 301|302|307|308>
--redirect-to=<value> Destination for redirect domains.
--role=<option> How the domain should behave.
<options: standard|redirect>
EXECUTION FLAGS
--[no-]wait Wait until queued work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Attach a domain.
Create a domain in the space team, attach it to the space, and queue a DNS check.
ALIASES
$ sf domains create
EXAMPLES
Attach a domain to a space.
$ sf domains add example.com --space docs
Attach a redirect domain.
$ sf domains add www.example.com --space docs --role redirect --redirect-to example.com
sf domains check DOMAIN
Check a domain.
USAGE
$ sf domains check DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--wait] [--wait-timeout <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Check a domain.
Queue a DNS/provider readiness check for an attached domain.
EXAMPLES
Queue a DNS readiness check for a domain.
$ sf domains check example.com --space docs
sf domains diagnostics DOMAIN
Inspect domain diagnostics.
USAGE
$ sf domains diagnostics DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Inspect domain diagnostics.
Read live DNS and SSL diagnostics for an attached domain.
EXAMPLES
Read live DNS and SSL diagnostics for an attached domain.
$ sf domains diagnostics app.example.com --space docs
sf domains dns
Manage domain DNS records.
USAGE
$ sf domains dns [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage domain DNS records.
Manage DNS records for a domain zone. See `domains dns ls`, `capabilities`, `refresh`, `add`, `update`, `rm`, `batch`,
and `export`.
sf domains dns add DOMAIN
Add a DNS record.
USAGE
$ sf domains dns add DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--type
A|AAAA|ALIAS|CAA|CNAME|MX|NS|SRV|TXT] [--name <value>] [--value <value>] [--ttl <value>] [--priority <value>] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
FLAGS
--name=<value> Record name relative to the zone, or @ for the apex.
--priority=<value> Priority for MX and SRV records.
--ttl=<value> Time to live in seconds (default 3600).
--type=<option> Record type.
<options: A|AAAA|ALIAS|CAA|CNAME|MX|NS|SRV|TXT>
--value=<value> Record value.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Add a DNS record.
Add a DNS record to the domain's Spacefast-managed zone.
ALIASES
$ sf domains dns create
EXAMPLES
$ sf domains dns add example.com --type MX --name @ --value mail.example.com --priority 10
sf domains dns batch DOMAIN
Apply a DNS record batch.
USAGE
$ sf domains dns batch DOMAIN -i <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
FLAGS
-i, --input=<value> (required) JSON batch body: a literal string, @file, or - for stdin.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Apply a DNS record batch.
Apply a batch of DNS changes in one call. The JSON body holds delete/patch/put/post arrays of records.
EXAMPLES
$ sf domains dns batch example.com --input @dns-changes.json
$ sf domains dns batch example.com --input '{"posts":[{"type":"TXT","name":"@","value":"v=spf1 -all"}]}'
sf domains dns capabilities DOMAIN
Show DNS capabilities.
USAGE
$ sf domains dns capabilities DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Show DNS capabilities.
Show DNS provider capabilities for a domain.
EXAMPLES
Show DNS provider capabilities for a domain.
$ sf domains dns capabilities example.com
sf domains dns export DOMAIN
Export the DNS zone.
USAGE
$ sf domains dns export DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Export the DNS zone.
Print the domain's zone as BIND-style records.
EXAMPLES
Print the domain zone as BIND-style records.
$ sf domains dns export example.com
sf domains dns ls DOMAIN
List DNS records.
USAGE
$ sf domains dns ls DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
[--limit <value>] [--cursor <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
FLAGS
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of records to return (default 200, max 500).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List DNS records.
List DNS records in the domain's Spacefast-managed zone.
ALIASES
$ sf domains dns list
EXAMPLES
List DNS records in the managed zone.
$ sf domains dns ls example.com
sf domains dns refresh DOMAIN
Refresh DNS provider snapshot.
USAGE
$ sf domains dns refresh DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Refresh DNS provider snapshot.
Refresh a connected DNS provider snapshot for a domain.
EXAMPLES
Refresh the connected DNS provider snapshot.
$ sf domains dns refresh example.com
sf domains dns rm DOMAIN RECORD
Delete a DNS record.
USAGE
$ sf domains dns rm DOMAIN RECORD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
RECORD DNS record ID.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Delete a DNS record.
Delete a DNS record from the domain's zone.
ALIASES
$ sf domains dns remove
$ sf domains dns delete
EXAMPLES
Delete a DNS record from the zone.
$ sf domains dns rm example.com rec_123
sf domains dns update DOMAIN RECORD
Update a DNS record.
USAGE
$ sf domains dns update DOMAIN RECORD [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--type
A|AAAA|ALIAS|CAA|CNAME|MX|NS|SRV|TXT] [--name <value>] [--value <value>] [--ttl <value>] [--priority <value>] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
RECORD DNS record ID.
FLAGS
--name=<value> Record name relative to the zone, or @ for the apex.
--priority=<value> Priority for MX and SRV records.
--ttl=<value> Time to live in seconds (default 3600).
--type=<option> Record type.
<options: A|AAAA|ALIAS|CAA|CNAME|MX|NS|SRV|TXT>
--value=<value> Record value.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Update a DNS record.
Update fields on an existing DNS record.
EXAMPLES
Update a DNS record's value and TTL.
$ sf domains dns update example.com rec_123 --value 1.2.3.4 --ttl 3600
sf domains ls
List space domains.
USAGE
$ sf domains ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List space domains.
List domains attached to a space.
ALIASES
$ sf domains list
EXAMPLES
List domains attached to a space.
$ sf domains ls --space docs
sf domains nameservers DOMAIN
Show domain nameservers.
USAGE
$ sf domains nameservers DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Show domain nameservers.
Show the DNS mode and nameserver set for a domain.
EXAMPLES
Show the DNS mode and nameservers for a domain.
$ sf domains nameservers example.com
sf domains nameservers set DOMAIN NAMESERVERS
Set domain nameservers.
USAGE
$ sf domains nameservers set DOMAIN NAMESERVERS [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
DOMAIN Domain ID or hostname.
NAMESERVERS Comma-separated nameservers (at least two).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Set domain nameservers.
Set custom nameservers for a Spacefast-registered domain. Externally registered domains change nameservers at their
registrar.
EXAMPLES
$ sf domains nameservers set example.com ns1.example-dns.com,ns2.example-dns.com
sf domains rm DOMAIN
Remove a domain.
USAGE
$ sf domains rm DOMAIN [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--wait]
ARGUMENTS
DOMAIN Domain ID or hostname.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
DESCRIPTION
Remove a domain.
Remove a domain assignment from a space.
ALIASES
$ sf domains remove
$ sf domains delete
EXAMPLES
Remove a domain from a space after confirmation.
$ sf domains rm example.com --space docs
sf domains search [QUERY]
Search domain names.
USAGE
$ sf domains search [QUERY] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--interactive] [--limit <value>]
ARGUMENTS
[QUERY] Brand, idea, or full domain to search.
FLAGS
--interactive Open the interactive terminal domain search UI.
--limit=<value> [default: 20] Number of local suggestions to print when not interactive.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Search domain names.
Search domain ideas locally, with optional live availability checks in interactive mode.
EXAMPLES
Print local domain name ideas for a brand.
$ sf domains search acme
Open the interactive domain search with live availability.
$ sf domains search acme --interactive
sf env
Manage env vars.
USAGE
$ sf env [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage env vars.
Manage space environment variables.
sf env export-template [DIR]
Create a dotenv import template from platform config.
USAGE
$ sf env export-template [DIR] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--format
env|json]
ARGUMENTS
[DIR] Project directory to inspect. Defaults to the current directory.
FLAGS
--format=<option> [default: env] Output format.
<options: env|json>
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a dotenv import template from platform config.
Read platform config files and print a dotenv template for variables to import into Spacefast.
EXAMPLES
Print a dotenv import template from platform config in the current directory.
$ sf env export-template
Emit the import template as JSON.
$ sf env export-template ./app --format json
sf env import FILE
Import variables from a .env file.
USAGE
$ sf env import FILE [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--secret] [--production] [--preview] [--branch <value>...] [--from
dotenv|vercel|netlify|cloudflare]
ARGUMENTS
FILE .env file to import.
FLAGS
--branch=<value>... Also store each imported value for an exact branch. Repeat for multiple branches.
--from=<option> [default: dotenv] Platform export format to import. Vercel, Netlify, and Cloudflare use dotenv
exports.
<options: dotenv|vercel|netlify|cloudflare>
--preview Also store each imported value for preview builds.
--production Also store each imported value for production builds.
--[no-]secret Keep imported values write-only. New values default write-only; updates preserve existing
classifications.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Import variables from a .env file.
Import variables from a dotenv file. Values are sent to the API and are not printed back.
EXAMPLES
Import write-only variables from a .env file.
$ sf env import .env --space docs
Explicitly import readable ordinary values.
$ sf env import public.env --space docs --no-secret
sf env ls
List space variables.
USAGE
$ sf env ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--show-values]
FLAGS
--show-values Print plaintext variable values.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List space variables.
List space variables.
ALIASES
$ sf env list
EXAMPLES
List space variables (values masked).
$ sf env ls --space docs
sf env pull [FILE]
Pull variables.
USAGE
$ sf env pull [FILE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--format env|json] [--force] [--stdout]
ARGUMENTS
[FILE] File to write the pulled variables to. Defaults to .env.local.
FLAGS
--force Overwrite the target file if it already exists.
--format=<option> [default: env] Output format.
<options: env|json>
--stdout Print variables to stdout instead of writing a file.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Pull variables.
Pull effective space and shared variables into a local env file (default .env.local). Refuses to overwrite an existing
file unless --force. Use --stdout to print instead.
EXAMPLES
Write variables to .env.local.
$ sf env pull --space docs
Write variables to .env.development, replacing an existing file.
$ sf env pull .env.development --space docs --force
Print variables in .env format to stdout.
$ sf env pull --space docs --stdout > .env
Print variables as JSON.
$ sf env pull --space docs --stdout --format json
sf env rm NAME
Delete a space variable.
USAGE
$ sf env rm NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
NAME Variable name.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Delete a space variable.
Delete a space variable.
ALIASES
$ sf env remove
$ sf env delete
EXAMPLES
Delete a space variable after confirmation.
$ sf env rm API_URL --space docs
sf env set NAME VALUE
Set a space variable.
USAGE
$ sf env set NAME VALUE [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--secret] [--production-value <value>] [--preview-value
<value>] [--branch-value <value>...]
ARGUMENTS
NAME Variable name.
VALUE Variable value.
FLAGS
--[no-]secret Keep the value write-only. New values default write-only; updates preserve the existing classification.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
BUILD FLAGS
--branch-value=<value>... Value to inject for a branch build, formatted as branch=value. Repeat for multiple
branches.
--preview-value=<value> Value to inject for preview builds.
--production-value=<value> Value to inject for production builds.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Set a space variable.
Create or update a space variable. Values are sent to the API and are not printed back.
EXAMPLES
Set a write-only space variable.
$ sf env set API_TOKEN s3cret --space docs
Explicitly set a readable ordinary value.
$ sf env set PUBLIC_ORIGIN https://www.example.com --no-secret --space docs
sf feedback
Send support feedback.
USAGE
$ sf feedback -m <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--category
bug|docs|limit|idea|other] [--error-code <value>] [--request-id <value>] [--space-id <value>] [--url <value>]
FLAGS
-m, --message=<value> (required) Feedback message.
--category=<option> [default: other] Feedback category.
<options: bug|docs|limit|idea|other>
--error-code=<value> Related API error code.
--request-id=<value> Related API request id.
--space-id=<value> Related space id.
--url=<value> Related URL.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Send support feedback.
Send feedback to Spacefast support.
EXAMPLES
Send docs feedback.
$ sf feedback -m "The continuation docs are unclear" --category docs
Send machine-readable feedback with error context.
$ sf feedback -m "Publish failed after claim" --category bug --error-code space_claimed_credential_available \
--request-id req_123 --json
sf fetch [PATH]
Fetch private content.
USAGE
$ sf fetch [PATH] --output <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>]
[-y] [--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
[PATH] Canonical route to fetch. Defaults to /.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
OUTPUT FLAGS
--output=<value> (required) File to write the response body into.
DESCRIPTION
Fetch private content.
Fetch private Space content through the same central exchange and host-only cookie flow as a browser.
EXAMPLES
Fetch /docs from the linked Space.
$ sf fetch /docs --output ./docs.html
sf git
Manage repository connections.
USAGE
$ sf git [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage repository connections.
Manage repository connections and Git push deploys.
sf git build
Build repository source.
USAGE
$ sf git build [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted] [--ref <value>] [--branch <value>]
[--commit <value>] [--pull-request <value>] [--config <value>] [--target production|preview] [--root-directory
<value>] [--install-directory <value>] [--install-command <value>] [--build-command <value>] [--output-directory
<value>] [--ignored-build-command <value>] [--auto-finalize] [--allow-unsupported-platform-features] [--wait]
[--wait-timeout <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
MIGRATION FLAGS
--[no-]allow-unsupported-platform-features Allow unsupported Vercel or Cloudflare migration features for this build.
EXECUTION FLAGS
--[no-]auto-finalize Finalize the remote build automatically after staging the build output.
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the repository build to finish.
BUILD FLAGS
--branch=<value> [env: SPACEFAST_GIT_BRANCH] Branch name for preview alias and production branch
selection.
--build-command=<value> Override the saved build command for this build.
--commit=<value> [env: SPACEFAST_GIT_COMMIT] Commit SHA to build.
--config=<value> [env: SPACEFAST_CONFIG] Path to an sf.jsonc file with repository build settings.
--ignored-build-command=<value> Override the saved ignored build command for this build.
--install-command=<value> Override the saved install command for this build.
--install-directory=<value> Override the saved dependency install directory for this build.
--output-directory=<value> Override the saved build output directory for this build.
--pull-request=<value> [env: SPACEFAST_PULL_REQUEST] Pull request number for preview builds.
--ref=<value> [env: SPACEFAST_BUILD_REF] Repository ref, branch, tag, or commit to build.
--root-directory=<value> Override the saved app root directory for this build.
--target=<option> Force production or preview build target.
<options: production|preview>
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Build repository source.
Trigger a generic remote build from a repository connection.
EXAMPLES
Trigger a remote build from the main ref.
$ sf git build --space docs --ref main
Build a preview branch and wait for it to finish.
$ sf git build --space docs --branch preview --target preview --wait
sf git connect
Connect repository.
USAGE
$ sf git connect [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--provider github|gitlab|bitbucket|generic] [--connection-type
connected|hosted] [--repository <value>] [--repository-id <value>] [--repository-name <value>] [--clone-url <value>]
[--upstream-url <value>] [--detect-urls] [--installation-id <value>] [--credential <value>] [--default-branch
<value>] [--production-branch <value>] [--ref <value>] [--config <value>] [--auto-deploy-production]
[--auto-deploy-previews] [--root-directory <value>] [--install-directory <value>] [--install-command <value>]
[--build-command <value>] [--ignored-build-command <value>] [--output-directory <value>] [--framework-preset
<value>] [--platform-preset <value>] [--allow-unsupported-platform-features] [--apply-best] [--sync] [--build-now]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
MIGRATION FLAGS
--allow-unsupported-platform-features Allow unsupported migration features.
AUTOMATION FLAGS
--apply-best Detect and save the highest-ranked build settings after connecting.
--[no-]auto-deploy-previews Automatically build preview branches and pull requests.
--[no-]auto-deploy-production Automatically build pushes to the production branch.
--build-now Queue a generic Build after connecting.
--sync Request repository sync after connecting.
BUILD FLAGS
--build-command=<value> Build command.
--config=<value> [env: SPACEFAST_CONFIG] Path to an sf.jsonc file with repository build settings.
--framework-preset=<value> Framework preset.
--ignored-build-command=<value> Command that skips a build when it exits 0.
--install-command=<value> Install command.
--install-directory=<value> Dependency install directory.
--output-directory=<value> Build output directory.
--platform-preset=<value> Imported platform preset.
--root-directory=<value> App root directory.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--clone-url=<value> Clone URL when safe to expose.
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
--credential=<value> [env: SPACEFAST_REPOSITORY_CREDENTIAL] Generic Git clone token. Stored encrypted by the
API.
--default-branch=<value> Repository default branch.
--[no-]detect-urls Detect clone and upstream URLs from the origin remote.
--installation-id=<value> [env: SPACEFAST_REPOSITORY_INSTALLATION_ID] Repository app installation ID for external
statuses.
--production-branch=<value> Branch that publishes to production.
--provider=<option> Repository host.
<options: github|gitlab|bitbucket|generic>
--ref=<value> [env: SPACEFAST_BUILD_REF] Ref, branch, tag, or commit to sync or build after connecting.
--repository=<value> Repository full name, for example owner/repo. Defaults to the origin remote.
--repository-id=<value> Repository ID from the host.
--repository-name=<value> Repository name from the host.
--upstream-url=<value> Upstream repository URL.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Connect repository.
Create or replace a repository connection.
EXAMPLES
Connect a GitHub repository.
$ sf git connect --space docs --provider github --repository owner/repo
Connect a repository, set the production branch, and sync.
$ sf git connect --space docs --repository owner/repo --production-branch main --sync
sf git disconnect
Disconnect repository.
USAGE
$ sf git disconnect [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Disconnect repository.
Delete a repository connection.
EXAMPLES
Delete the repository connection.
$ sf git disconnect --space docs
sf git ls
Show repository connection.
USAGE
$ sf git ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show repository connection.
Show a repository connection.
EXAMPLES
Show the repository connection.
$ sf git ls --space docs
sf git origin
Install Spacefast git remote.
USAGE
$ sf git origin [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--set-origin]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
GIT FLAGS
--set-origin Update origin instead of adding or updating the Spacefast remote.
DESCRIPTION
Install Spacefast git remote.
Install a signed Spacefast push remote for direct Git push deploys.
EXAMPLES
Add a signed `spacefast` remote when `origin` already points to your upstream.
$ sf git origin
Set `origin` to the signed Spacefast push remote.
$ sf git origin --set-origin
sf git sync
Sync remote repository source.
USAGE
$ sf git sync [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted] [--ref <value>] [--ttl-seconds <value>]
[--read-only-ref <value>...]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
--read-only-ref=<value>... Ref pattern to protect during repository sync. Repeat for multiple patterns.
--ref=<value> Ref, branch, or tag to sync.
--ttl-seconds=<value> Signed source remote TTL in seconds, up to 86400.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Sync remote repository source.
Sync the upstream repository for this space.
EXAMPLES
Sync the upstream repository for the space.
$ sf git sync --space docs
Sync a specific ref.
$ sf git sync --space docs --ref main
sf git update
Update repository connection.
USAGE
$ sf git update [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--connection-type connected|hosted] [--clone-url <value>] [--upstream-url
<value>] [--production-branch <value>] [--credential <value>] [--clear-credential] [--auto-deploy-production]
[--auto-deploy-previews] [--config <value>] [--root-directory <value>] [--install-directory <value>]
[--install-command <value>] [--build-command <value>] [--ignored-build-command <value>] [--output-directory <value>]
[--framework-preset <value>] [--platform-preset <value>] [--allow-unsupported-platform-features]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
MIGRATION FLAGS
--[no-]allow-unsupported-platform-features Allow unsupported migration features.
AUTOMATION FLAGS
--[no-]auto-deploy-previews Automatically build preview branches and pull requests.
--[no-]auto-deploy-production Automatically build pushes to the production branch.
BUILD FLAGS
--build-command=<value> Build command.
--config=<value> [env: SPACEFAST_CONFIG] Path to an sf.jsonc file with repository build settings.
--framework-preset=<value> Framework preset.
--ignored-build-command=<value> Command that skips a build when it exits 0.
--install-command=<value> Install command.
--install-directory=<value> Dependency install directory.
--output-directory=<value> Build output directory.
--platform-preset=<value> Imported platform preset.
--root-directory=<value> App root directory.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
REPOSITORY FLAGS
--clear-credential Clear the stored generic Git clone token.
--clone-url=<value> Clone URL when safe to expose.
--connection-type=<option> [default: connected] Repository connection type.
<options: connected|hosted>
--credential=<value> [env: SPACEFAST_REPOSITORY_CREDENTIAL] Generic Git clone token. Stored encrypted by the
API.
--production-branch=<value> Branch that publishes to production.
--upstream-url=<value> Upstream repository URL.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Update repository connection.
Update a repository connection.
EXAMPLES
Change the production branch on the repository connection.
$ sf git update --space docs --production-branch main
sf help [COMMAND]
Display help for sf.
USAGE
$ sf help [COMMAND...] [-n]
ARGUMENTS
[COMMAND...] Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for sf.
See code: @oclif/plugin-help
sf init
Create a Spacefast project.
USAGE
$ sf init [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [-f] [--runtime static|zero] [--template todo|guestbook] [--title <value>]
[--no-git]
EXECUTION FLAGS
-f, --force Overwrite existing generated files.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
ZERO FLAGS
--no-git Skip initializing git for a Zero starter app.
--template=<option> Zero starter template to scaffold.
<options: todo|guestbook>
--title=<value> Zero starter app title.
PROJECT FLAGS
--runtime=<option> [default: static] Project runtime to initialize.
<options: static|zero>
DESCRIPTION
Create a Spacefast project.
Create a Spacefast project in the current directory. Use --runtime zero to scaffold a Zero capsule instead of a static
config.
EXAMPLES
Write a starter sf.jsonc in the current directory.
$ sf init
Initialize config and link the current directory to space `docs`.
$ sf init --space docs
Scaffold a Zero capsule in the current directory.
$ sf init --runtime zero --template guestbook
sf inspect [TARGET]
Inspect a space by ID, slug, URL, or domain.
USAGE
$ sf inspect [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, or domain.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Inspect a space by ID, slug, URL, or domain.
Look up a space by ID, slug, live URL, or attached domain. Prints space details, live version, and runtime state.
EXAMPLES
Inspect by slug.
$ sf inspect docs
Inspect by live URL.
$ sf inspect https://docs.spacefast.com
Inspect by ID in a specific team.
$ sf inspect spc_abc123 --team acme
sf link
Link the current directory to a space.
USAGE
$ sf link [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Link the current directory to a space.
Resolve an existing space by --space and save it to .spacefast/state.json in the current directory. Use this to bind a
local directory to a remote space without publishing.
EXAMPLES
Link the current directory to a space by slug.
$ sf link --space my-space
Link the current directory to a space by id in a specific team.
$ sf link --space prj_abc123 --team acme
sf login
Log in to Spacefast.
USAGE
$ sf login [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--handoff] [-o
<value>]
FLAGS
--handoff Redeem a one-use agent handoff link from the dashboard. The link is read from stdin — pipe it or paste it
at the hidden prompt; never pass it as an argument.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Log in to Spacefast.
Authenticate this machine with browser device login, or save a provided access token.
EXAMPLES
Start browser-assisted device login.
$ sf login
Store a token for non-interactive use.
$ sf login --token st_...
Redeem a one-use dashboard handoff link through stdin.
printf '%s\n' "$HANDOFF_LINK" | sf login --handoff
sf logout
Log out of Spacefast.
USAGE
$ sf logout [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Log out of Spacefast.
Delete the local login and revoke the CLI-minted token when possible.
EXAMPLES
Log out and revoke the local CLI token.
$ sf logout
sf logs [TARGET] [KIND]
Print runtime activity.
USAGE
$ sf logs [TARGET] [KIND] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--limit <value>] [-f]
ARGUMENTS
[TARGET] Space ID, slug, live URL, or domain. Defaults to the linked space.
[KIND] Log kind: access or runtime. Defaults to access.
FLAGS
-f, --follow Poll for new log entries every 2 seconds until interrupted (Ctrl-C).
--limit=<value> [default: 50] Maximum number of log entries.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print runtime activity.
Print runtime activity logs for a space. Pass a target to operate on any space without --space.
EXAMPLES
Tail logs for the linked space.
$ sf logs
Tail logs for space `docs`.
$ sf logs docs
Tail access logs for a space by URL.
$ sf logs https://docs.spacefast.com access
Poll for new log entries until interrupted.
$ sf logs --follow
sf mcp
Run the Spacefast MCP server.
USAGE
$ sf mcp [--transport stdio|http|streamable-http] [--host <value>] [--port <value>] [--path <value>]
[--api-url <value>] [--token <value>] [--http-token <value>] [--cors-origin <value>...] [--workspace-root <value>]
[--preset all|agents|essential] [--json] [--repair]
FLAGS
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL for MCP tool calls.
--cors-origin=<value>... [env: SPACEFAST_MCP_CORS_ORIGIN] Allowed browser Origin for local streamable HTTP. Defaults
to loopback origins only.
--host=<value> [default: 127.0.0.1, env: SPACEFAST_MCP_HOST] Host for streamable HTTP.
--http-token=<value> [env: SPACEFAST_MCP_HTTP_TOKEN] Bearer token required by the local streamable HTTP server.
Required when binding outside loopback.
--json Print machine-readable status for `sf mcp status`.
--path=<value> [default: /mcp, env: SPACEFAST_MCP_PATH] HTTP path for streamable HTTP.
--port=<value> [default: 3945, env: SPACEFAST_MCP_PORT] Port for streamable HTTP.
--preset=<option> [env: SPACEFAST_MCP_PRESET] MCP tool surface to expose.
<options: all|agents|essential>
--repair For `sf mcp status`, remove a stale local daemon manifest and print recovery steps.
--token=<value> [env: SPACEFAST_TOKEN] Spacefast API token for MCP tool calls.
--transport=<option> MCP transport to run. `http` is streamable HTTP.
<options: stdio|http|streamable-http>
--workspace-root=<value> [env: SPACEFAST_MCP_WORKSPACE_ROOT] Workspace root exposed to On-Device MCP workspace tools.
DESCRIPTION
Run the Spacefast MCP server.
Run the Spacefast MCP server from the CLI package. Defaults to stdio for MCP clients; use the HTTP transport for
embedded streamable HTTP.
EXAMPLES
$ sf mcp
$ sf mcp daemon
$ sf mcp status
$ sf mcp --transport http --port 3945
$ sf mcp http --host 0.0.0.0 --path /mcp --http-token $SPACEFAST_MCP_HTTP_TOKEN
sf mcp install
Generate MCP client config.
USAGE
$ sf mcp install [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--agent
auto|codex|claude-code|cursor|vscode|generic] [--mode hosted|local] [--transport stdio|http] [--endpoint <value>]
[--resource <value>] [--server-name <value>] [--command <value>] [--package <value>] [--host <value>] [--port
<value>] [--path <value>] [--write] [--connect] [--file <value>]
FLAGS
--agent=<option> [default: generic] Agent/client to tailor notes for.
<options: auto|codex|claude-code|cursor|vscode|generic>
--command=<value> On-Device command used in generated start commands.
--connect Write the client config to the default path for the selected agent.
--endpoint=<value> Hosted or On-Device MCP endpoint URL override.
--file=<value> MCP config file path for --write.
--host=<value> On-Device HTTP host for generated On-Device MCP config.
--mode=<option> [default: hosted] Use hosted MCP or an On-Device CLI-backed MCP server.
<options: hosted|local>
--package=<value> npm package name for On-Device stdio MCP config.
--path=<value> On-Device HTTP path for generated On-Device MCP config.
--port=<value> On-Device HTTP port for generated On-Device MCP config.
--resource=<value> OAuth resource identifier for hosted MCP.
--server-name=<value> MCP server name in generated config.
--transport=<option> On-Device MCP transport. Hosted MCP always uses HTTP.
<options: stdio|http>
--write Write or update a .mcp.json file.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Generate MCP client config.
Generate or write a Spacefast MCP connection config for hosted or On-Device MCP clients.
EXAMPLES
Print hosted MCP config for Claude Code.
$ sf mcp install --agent claude-code --mode hosted
Write On-Device stdio MCP config to .mcp.json.
$ sf mcp install --mode local --transport stdio --write
sf mounts
Manage static mounts.
USAGE
$ sf mounts [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage static mounts.
Mount another same-team space's production channel at a path.
sf mounts add PATH
Add a static mount.
USAGE
$ sf mounts add PATH --target <value> --version <value> [--json] [--api-url <value>] [--profile <value>]
[--token <value>] [-y] [--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
PATH Path prefix, for example /docs.
FLAGS
--target=<value> (required) Target space ID.
--version=<value> (required) Ready website version ID that enables the mount when promoted.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Add a static mount.
Mount a same-team space's live production channel.
sf mounts ls
List static mounts.
USAGE
$ sf mounts ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List static mounts.
List static mounts, active immutable versions, and production targets.
ALIASES
$ sf mounts list
sf mounts rm ID
Remove a static mount.
USAGE
$ sf mounts rm ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Static mount ID.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Remove a static mount.
Remove a static mount from a space.
ALIASES
$ sf mounts remove
$ sf mounts delete
sf open [TARGET]
Open a private Space.
USAGE
$ sf open [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--path <value>] [--show-secret]
ARGUMENTS
[TARGET] Space ID, slug, live URL, Version URL, or domain. Defaults to the linked space.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
OPEN FLAGS
--path=<value> [default: /] Clean route to open after the exchange.
--show-secret Print the temporary handoff URL instead of opening it.
DESCRIPTION
Open a private Space.
Mint a temporary author handoff and open the private Space. This never creates a recipient Link.
EXAMPLES
Open the linked private Space.
$ sf open
Open Space `docs` privately.
$ sf open docs
sf operations [ID]
Inspect async operations.
USAGE
$ sf operations [ID] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--space <value>]
[--limit <value>] [--cursor <value>]
ARGUMENTS
[ID] Operation ID. Omit to list recent operations.
FLAGS
--cursor=<value> Pagination cursor from a previous response.
--limit=<value> Maximum number of operations to return (default 50, max 100).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
SPACE SELECTION FLAGS
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Inspect async operations.
List recent async operations or read one by ID. Pass --space to scope the list to a space.
ALIASES
$ sf ops
EXAMPLES
$ sf ops
$ sf ops op_123
$ sf operations --space spc_123
sf pages
Manage Pages templates.
USAGE
$ sf pages [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage Pages templates.
Pull, validate, and preview Spacefast-authored pages.
sf pages pull [TARGET]
Own a default page template.
USAGE
$ sf pages pull [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
[TARGET] Page id, layout, or all.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Own a default page template.
Copy Spacefast's readable default page HTML into your project.
sf pages validate
Validate local Pages templates.
USAGE
$ sf pages validate [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-d <value>]
FLAGS
-d, --dir=<value> [default: .] Project directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Validate local Pages templates.
Run the same structural Pages checks used by publish.
sf profiles
List provider profiles.
USAGE
$ sf profiles [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List provider profiles.
List named provider profiles. A profile binds an API base URL and credential so the CLI can publish to any
Spacefast-compatible control plane.
EXAMPLES
List configured provider profiles.
$ sf profiles
sf profiles rm NAME
Remove a provider profile.
USAGE
$ sf profiles rm NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
NAME Profile name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Remove a provider profile.
Delete a named provider profile and its stored credential.
ALIASES
$ sf profiles remove
$ sf profiles delete
EXAMPLES
Delete the staging provider profile.
$ sf profiles rm staging
sf profiles set NAME
Create or update a provider profile.
USAGE
$ sf profiles set NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
NAME Profile name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> Provider API base URL for this profile.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> Access token bound to this profile. Pass "" to clear a saved token.
DESCRIPTION
Create or update a provider profile.
Create or update a named provider profile. Pass --api-url for the provider endpoint and --token to bind a credential
to it. Pass --token "" to clear a saved token.
EXAMPLES
$ sf profiles set acme --api-url https://api.acme-host.example --token st_...
$ sf profiles set acme --token ""
sf profiles use NAME
Select the active provider profile.
USAGE
$ sf profiles use NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
NAME Profile name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Select the active provider profile.
Select the profile used when no --profile flag or env is set.
EXAMPLES
Select the staging profile as the default.
$ sf profiles use staging
sf promote [VERSION]
Promote a version to a channel.
USAGE
$ sf promote [VERSION] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--channel <value>] [--wait] [--wait-timeout <value>]
ARGUMENTS
[VERSION] Version ID, ref, or number to make live, for example ver_123, v12, or 12.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
EXECUTION FLAGS
--channel=<value> [default: live] Channel to point at this version (default "live").
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become live.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Promote a version to a channel.
Promote an existing ready version to a channel (default live). Use `rollback` to roll back to an older version
instead.
EXAMPLES
Make version v12 live.
$ sf promote v12
Promote explicitly to the live channel.
$ sf promote v12 --channel live
Queue promotion and print the operation as JSON.
$ sf promote ver_123 --no-wait --json
sf publish [DIR]
Publish files or built projects to Spacefast.
USAGE
$ sf publish [DIR] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [-n <value>] [--slug <value>] [--hostname-scope team|global] [--spa
auto|true|false] [-m <value>] [--git-branch <value>] [--git-commit <value>] [--git-ref <value>] [--git-repository
<value>] [--source-type direct-upload|git] [--mode website|files] [--target production|preview] [--dry-run]
[--compress] [--config-only] [--wait] [--wait-timeout <value>] [--stream] [--show-secret] [--build] [--remote]
[--prebuilt] [--root-directory <value>] [--install-directory <value>] [--install-command <value>] [--build-command
<value>] [--output-directory <value>] [--env-file <value>...] [--ignored-build-command <value>] [--source-include
<value>...] [--skip-install] [--skip-build] [--publish-mode additive|snapshot] [--immutable-asset-prefix <value>...]
[--allow-unsupported-platform-features] [--auto-finalize]
ARGUMENTS
[DIR] File, directory, project, or prebuilt .tgz to publish. Defaults to the current directory.
VERSION SOURCE FLAGS
-m, --message=<value> [env: SPACEFAST_PUBLISH_MESSAGE] Plain-language changelog entry for this version, shown
in version history. Overrides the detected git commit message.
--git-branch=<value> [env: SPACEFAST_GIT_BRANCH] Git branch name to record on the version.
--git-commit=<value> [env: SPACEFAST_GIT_COMMIT] Git commit SHA to record on the version.
--git-ref=<value> [env: SPACEFAST_GIT_REF] Git ref to record on the version.
--git-repository=<value> [env: SPACEFAST_GIT_REPOSITORY] Git repository to record on the version, for example
owner/repo.
--source-type=<option> [env: SPACEFAST_SOURCE_TYPE] Version source type to record.
<options: direct-upload|git>
SPACE METADATA FLAGS
-n, --name=<value> Set the space title.
--hostname-scope=<option> Managed hostname scope for newly created spaces.
<options: team|global>
--mode=<option> Serve the space as a website (default) or as a raw file listing. Usually set in
sf.jsonc.
<options: website|files>
--slug=<value> Set the space slug when creating a new space.
--spa=<option> [default: auto] Control single-page app fallback detection.
<options: auto|true|false>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
MIGRATION FLAGS
--allow-unsupported-platform-features Publish even when imported platform config includes features Spacefast cannot
convert.
EXECUTION FLAGS
--[no-]auto-finalize Finalize a remote build automatically after staging its output.
--[no-]compress Generate smaller .br/.gz sidecars for compressible files before uploading.
--config-only Publish a config-only version that carries the prior artifact forward without building or
uploading content.
--dry-run Print the resolved publish plan without uploading files or writing state.
--[no-]stream With --json, emit a JSONL publish event stream instead of a single result.
--target=<option> Publish to production (live) or as a preview without promoting to live.
<options: production|preview>
--[no-]wait Wait until the target version is ready and, for production, live before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become ready.
BUILD FLAGS
--build Force local build mode; fails if no build command can be resolved.
--build-command=<value> Build command. Defaults to framework and package script detection.
--env-file=<value>... Local dotenv file to load for install/build commands. Repeat for multiple files.
--ignored-build-command=<value> For --remote, command that skips the build when it exits 0.
--install-command=<value> Install command. Defaults to package-manager detection.
--install-directory=<value> Repository subdirectory to run dependency installation from.
--output-directory=<value> Build output directory relative to the app root.
--prebuilt Publish a prebuilt directory or .tgz without installing or building.
--remote Upload source and run the build remotely.
--root-directory=<value> Repository subdirectory that contains the app.
--skip-build Skip the build command and publish the selected directory unless --output-directory
is set.
--skip-install Skip dependency installation.
--source-include=<value>... Ignored file or directory to include in a remote source archive. Repeat for multiple
paths.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
VERSION FLAGS
--immutable-asset-prefix=<value>... Path prefix whose files are content-addressed and kept from the previous version,
so a tab loaded before this deploy can still fetch its chunks. Snapshot mode
only. Repeat for multiple prefixes.
--publish-mode=<option> Replace the whole site (snapshot, default) or add to what is already deployed
(additive).
<options: additive|snapshot>
GLOBAL FLAGS
--json Format output as json.
OUTPUT FLAGS
--show-secret Print private Open and Claim URLs. Secrets are hidden from JSON and non-interactive output by default.
DESCRIPTION
Publish files or built projects to Spacefast.
Publish a file, directory, or built project to Spacefast. Direct files publish as-is; project directories with a
detected build command build automatically. sf deploy is an exact alias. Deploying is publishing: a deployment is a
version, and the canonical nouns are version, channel, and build.
ALIASES
$ sf deploy
EXAMPLES
Publish a file or static directory directly.
$ sf publish ./dist
Build a detected project, or publish the directory directly if no build exists.
$ sf publish
Upload source and run the build remotely.
$ sf publish --remote
Publish a prebuilt archive without installing or building.
$ sf publish ./site.tgz --prebuilt
Publish a preview and print one machine-readable receipt.
$ sf publish --target preview --json
Stream JSONL build and publish events.
$ sf publish --json --stream
sf redeploy [BUILD]
Retry the latest build (alias of sf builds retry).
USAGE
$ sf redeploy [BUILD] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
[BUILD] Build ID (bld_...) to retry. Defaults to the space's most recent build.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Retry the latest build (alias of `sf builds retry`).
Retry a terminal build with the same input, settings, and target. Without a build id it retries the space's most
recent build. Alias of `sf builds retry`. Deploying is publishing: a deployment is a version, and the canonical nouns
are version, channel, and build.
EXAMPLES
Retry the most recent build of the linked space.
$ sf redeploy
Retry a specific terminal build.
$ sf redeploy bld_123
sf rollback [VERSION]
Roll back to a previous version.
USAGE
$ sf rollback [VERSION] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--channel <value>] [--wait] [--wait-timeout <value>]
ARGUMENTS
[VERSION] Version ID, ref, or number to make live, for example ver_123, v12, or 12.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
EXECUTION FLAGS
--channel=<value> [default: live] Channel to point at this version (default "live").
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become live.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Roll back to a previous version.
Roll live traffic back to an existing ready version. Use `versions ls` to find a version.
EXAMPLES
List versions and find the target rollback version.
$ sf versions ls
Make version v12 live.
$ sf rollback v12
Make version v12 live for a selected space.
$ sf rollback 12 --space docs
sf routing
Routing utilities.
USAGE
$ sf routing [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Routing utilities.
Inspect routing configuration and compute redirects/headers.
sf routing compute
Compute routing.
USAGE
$ sf routing compute [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Compute routing.
Resolve the latest deployment's _redirects and _headers with current variables.
EXAMPLES
Resolve the latest deployment's redirects and headers.
$ sf routing compute --space docs
sf routing inspect
Inspect local routing files.
USAGE
$ sf routing inspect [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-r <value>] [--url
<value>...]
FLAGS
-r, --routing=<value> [default: .] Directory containing _redirects and _headers to inspect.
--url=<value>... URL or path to match against local routing rules. Repeat for multiple URLs.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Inspect local routing files.
Compile local _redirects and _headers files and optionally match URLs against the compiled rules.
EXAMPLES
Compile _redirects and _headers in the current directory.
$ sf routing inspect
Match a path against the compiled local routing rules.
$ sf routing inspect --routing ./dist --url /old-path
sf runtime
Manage runtime.
USAGE
$ sf runtime [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage runtime.
Inspect runtime status for a space.
sf runtime status
Print runtime status.
USAGE
$ sf runtime status [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Print runtime status.
Print runtime status for a space.
EXAMPLES
Print runtime status for the docs space.
$ sf runtime status --space docs
sf setup
Generate setup instructions.
USAGE
$ sf setup [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Generate setup instructions.
Generate setup instructions for agents and integrations.
sf setup agent
Generate agent setup instructions.
USAGE
$ sf setup agent [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--agent
auto|codex|claude-code|cursor|vscode|generic] [--mode all|hosted|local] [--needs-files] [--transport stdio|http]
[--endpoint <value>] [--resource <value>] [--server-name <value>] [--command <value>] [--package <value>] [--host
<value>] [--port <value>] [--path <value>] [--write-mcp] [--install-skill] [--connect] [--handoff] [--mcp-file
<value>]
FLAGS
--agent=<option> [default: auto] Agent/client to tailor notes for.
<options: auto|codex|claude-code|cursor|vscode|generic>
--command=<value> On-Device command used in generated start commands.
--connect Choose the recommended MCP lane for this agent, write config, and print verification steps.
--endpoint=<value> Hosted or On-Device MCP endpoint URL override.
--handoff Redeem a one-use agent handoff link from the dashboard before generating setup. The link is
read from stdin.
--host=<value> On-Device HTTP host for generated On-Device MCP config.
--install-skill Install or update the Spacefast skill with the official npx skills installer.
--mcp-file=<value> Path to write when --write-mcp is set.
--mode=<option> Connection lane to use. Omit to choose the safest default.
<options: all|hosted|local>
--needs-files Choose On-Device MCP because this MCP client needs to read or edit local checkout files.
--package=<value> npm package name for On-Device stdio MCP config.
--path=<value> On-Device HTTP path for generated On-Device MCP config.
--port=<value> On-Device HTTP port for generated On-Device MCP config.
--resource=<value> OAuth resource identifier for hosted MCP.
--server-name=<value> MCP server name in generated config.
--transport=<option> On-Device MCP transport when --mode local.
<options: stdio|http>
--write-mcp Write the selected hosted/On-Device MCP config to .mcp.json.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Generate agent setup instructions.
Print the recommended Spacefast agent setup: curl-first publish, hosted MCP, On-Device MCP, and automation
credentials.
EXAMPLES
Print recommended agent setup for Claude Code.
$ sf setup agent --agent claude-code
Choose the On-Device MCP lane for Cursor and write config.
$ sf setup agent --agent cursor --mode local --connect
sf share
Manage Space Grants.
USAGE
$ sf share [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Manage Space Grants.
List every active Grant. Use `sf share grant`, `link`, `password`, `token`, or `oidc` to add access.
sf share check
Explain effective Grant access.
USAGE
$ sf share check [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--path <value>] [--as public|team|person|link|password|machine|external]
[--person <value>] [--link <value>] [--password <value>] [--machine <value>] [--issuer <value>] [--subject <value>]
[--verified-email] [--ip <value>] [--target live|version|branch] [--target-id <value>]
FLAGS
--as=<option> [default: public] Audience to simulate.
<options: public|team|person|link|password|machine|external>
--ip=<value> IP address to evaluate against network constraints.
--issuer=<value> External identity issuer when --as external.
--link=<value> Link id when --as link.
--machine=<value> Machine credential id when --as machine.
--password=<value> Password credential id when --as password.
--path=<value> [default: /] Canonical route to check.
--person=<value> Person id when --as person.
--subject=<value> External identity subject when --as external.
--target=<option> [default: live] Published target kind.
<options: live|version|branch>
--target-id=<value> Version id or branch name.
--verified-email Simulate a principal with a verified email.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Explain effective Grant access.
Explain the exact additive Grants and capabilities matching one route, audience, and target.
sf share grant
Create a Space Grant.
USAGE
$ sf share grant --to public|team --can view|comment|publish|manage --path <value>... [--json] [--api-url
<value>] [--profile <value>] [--token <value>] [-y] [--claim-token <value>] [-o <value>] [--space <value>]
[--exclude <value>...] [--target <value>] [--name <value>] [--expires <value>] [--network <value>...] [--country
<value>...] [--exclude-country <value>...] [--exclude-user-agent <value>...]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GRANT FLAGS
--can=<option> (required) Capability preset: view, comment, publish, or manage.
<options: view|comment|publish|manage>
--exclude=<value>... [default: ] Excluded route pattern local to this Grant. Repeatable.
--expires=<value> Expire after a duration such as 7d or 30m.
--name=<value> Human-readable Grant name.
--path=<value>... (required) Included route pattern. Repeat for disjoint paths.
--target=<value> [default: live] live, all-versions, version:<id>, or branch:<name>.
--to=<option> (required) Audience: public or team.
<options: public|team>
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
CONSTRAINTS FLAGS
--country=<value>... [default: ] Allowed ISO country code. Repeatable.
--exclude-country=<value>... [default: ] Blocked ISO country code. Repeatable.
--exclude-user-agent=<value>... [default: ] Block user agents containing this text. Repeatable.
--network=<value>... [default: ] Allowed IP address or CIDR. Repeatable.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create a Space Grant.
Create one additive Grant. Credential-backed audiences use `sf share link`, `password`, `token`, or `oidc` so their
proof and Grant are created together.
EXAMPLES
Let the owning team view the docs subtree.
$ sf share grant --to team --can view --path '/docs/**'
Publish a review subtree with anonymous Comments.
$ sf share grant --to public --can comment --path '/proposal/**' --exclude '/proposal/internal/**'
Make every immutable Version public.
$ sf share grant --to public --can view --path '/**' --target all-versions
sf share grant edit ID
Edit a direct managed Grant.
USAGE
$ sf share grant edit ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--name <value>] [--can view|comment|publish|manage] [--exclude <value>...
--path <value>...] [--target <value>] [--expires <value> | --no-expiry] [--network <value>... | --no-network]
[--country <value>... | ] [--exclude-country <value>... | ] [--exclude-user-agent <value>... | ]
ARGUMENTS
ID Managed Grant id.
FLAGS
--can=<option> Replace the capability preset: view, comment, publish, or manage.
<options: view|comment|publish|manage>
--exclude=<value>... [default: ] Excluded route pattern for the replacement path set. Repeatable.
--expires=<value> New lifetime from now (e.g. 30m, 24h, 7d).
--name=<value> New human-readable Grant name.
--no-expiry Remove the Grant expiry.
--path=<value>... Replace included route patterns. Repeat for disjoint paths.
--target=<value> Replace the target: live, all-versions, version:<id>, or branch:<name>.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
CONSTRAINTS FLAGS
--country=<value>... Replace allowed ISO country codes. Repeatable.
--exclude-country=<value>... Replace blocked ISO country codes. Repeatable.
--exclude-user-agent=<value>... Replace blocked user-agent substrings. Repeatable.
--network=<value>... Replace allowed IP addresses or CIDRs. Repeatable.
--no-network Remove every network constraint from this Grant.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Edit a direct managed Grant.
Replace editable dimensions of a direct managed Grant while preserving its stable id.
sf share identity
Manage external identity access.
USAGE
$ sf share identity [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage external identity access.
Connect OIDC or a white-label signer, then grant external subjects precise capabilities and paths.
sf share identity create
Create an identity connection.
USAGE
$ sf share identity create --type oidc|signer --name <value> --issuer <value> [--json] [--api-url <value>] [--profile
<value>] [--token <value>] [-y] [-o <value>] [--client-id <value>] [--client-secret <value>] [--authorize-url
<value>] [--key <value>...]
FLAGS
--authorize-url=<value>
--client-id=<value>
--client-secret=<value>
--issuer=<value> (required)
--key=<value>... [default: ] Signer key in "kid:base64url-public-key" form. Repeat during rotation.
--name=<value> (required)
--type=<option> (required)
<options: oidc|signer>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create an identity connection.
Create an OIDC connection or a white-label Ed25519 signer connection for a Team.
sf share identity grant
Create an external identity Grant.
USAGE
$ sf share identity grant --connection <value> --subject <value> --name <value> [--json] [--api-url <value>] [--profile
<value>] [--token <value>] [-y] [--claim-token <value>] [-o <value>] [--space <value>] [--can
view|comment|publish|manage] [--path <value>...] [--except <value>...] [--target <value>]
FLAGS
--can=<option> [default: view]
<options: view|comment|publish|manage>
--connection=<value> (required)
--except=<value>... [default: ]
--name=<value> (required)
--path=<value>... [default: /**]
--subject=<value> (required)
--target=<value> [default: live] live, all-versions, version:<id>, or branch:<name>.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create an external identity Grant.
Grant one externally proven subject precise capabilities and paths on a Space.
sf share identity ls
List identity connections.
USAGE
$ sf share identity ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List identity connections.
List Team OIDC and white-label signer connections.
ALIASES
$ sf share identity list
sf share identity revoke CONNECTION
Revoke an identity connection.
USAGE
$ sf share identity revoke CONNECTION [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
CONNECTION Identity connection id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke an identity connection.
Revoke an identity connection, its external Grants, and admitted sessions.
sf share identity update CONNECTION
Update or rotate an identity connection.
USAGE
$ sf share identity update CONNECTION [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>] [--name <value>] [--client-id <value>] [--client-secret <value>] [--authorize-url <value>] [--key
<value>...] [--session-ttl <value>]
ARGUMENTS
CONNECTION Identity connection id.
FLAGS
--authorize-url=<value>
--client-id=<value>
--client-secret=<value>
--key=<value>... Complete replacement signer key set in "kid:base64url-public-key" form. Repeat to overlap old
and new keys.
--name=<value>
--session-ttl=<value> Admitted session lifetime, for example 30m or 8h.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Update or rotate an identity connection.
Rotate OIDC secrets or signer keys and update connection settings without changing external Grants.
sf share link
Manage Links.
USAGE
$ sf share link [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage Links.
Create, list, edit, copy, and revoke named Links. Each Link owns one Grant with paths, exclusions, capabilities, and a
serving target.
sf share link copy ID
Copy a Link.
USAGE
$ sf share link copy ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--show-secret]
ARGUMENTS
ID Share link id (see `sf share link ls`).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
LINK FLAGS
--show-secret Print the credential URL even when output is JSON or non-interactive.
DESCRIPTION
Copy a Link.
Copy a Link's stable short URL.
EXAMPLES
Print the Link's credential URL.
$ sf share link copy lnk_123
sf share link create
Create a Link.
USAGE
$ sf share link create --name <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--landing <value>] [--path <value>...] [--exclude
<value>...] [--can view|comment] [--target <value>] [--not-before <value>] [--expires <value>] [--max-uses <value>]
[--require-verified-email] [--network <value>...] [--country <value>...] [--exclude-country <value>...]
[--exclude-user-agent <value>...] [--show-secret]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
LINK FLAGS
--can=<option> [default: view] Capability preset: view or comment.
<options: view|comment>
--exclude=<value>... [default: ] Excluded route pattern local to this Link. Repeatable.
--landing=<value> [default: /] Clean route opened after exchange.
--name=<value> (required) Human name shown in the Links list.
--path=<value>... [default: /**] Included route pattern. Repeat for disjoint paths.
--show-secret Print the credential URL even when output is JSON or non-interactive.
--target=<value> [default: live] live, all-versions, version:<id>, or branch:<name>.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
CONSTRAINTS FLAGS
--country=<value>... [default: ] Allowed ISO country code. Repeatable.
--exclude-country=<value>... [default: ] Blocked ISO country code. Repeatable.
--exclude-user-agent=<value>... [default: ] Block user agents containing this text. Repeatable.
--expires=<value> How long the link lasts (e.g. 30m, 24h, 7d). Omit for no expiry.
--max-uses=<value> Maximum successful opens before the Link stops working.
--network=<value>... [default: ] Allowed IP address or CIDR. Repeatable.
--not-before=<value> Do not admit this Link before this ISO date-time.
--require-verified-email Admit only visitors whose session has a verified email.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create a Link.
Create a named Link backed by one Grant. Links can View or Comment on multiple path patterns.
EXAMPLES
Create a client Link that can comment on two path groups except internal docs.
$ sf share link create --landing /docs --path "/docs/**" --path "/assets/**" --exclude "/docs/internal/**" --can \
comment --name "Client review" --expires 7d
sf share link edit ID
Edit Link metadata.
USAGE
$ sf share link edit ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--name <value>] [--landing <value>] [--exclude <value>... --path
<value>...] [--can view|comment] [--target <value>] [--not-before <value> | --no-not-before] [--expires <value> |
--no-expiry] [--max-uses <value> | --no-max-uses] [--require-verified-email | --allow-unverified-email] [--network
<value>... | --no-network] [--country <value>... | ] [--exclude-country <value>... | ] [--exclude-user-agent
<value>... | ]
ARGUMENTS
ID Link id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
CONSTRAINTS FLAGS
--allow-unverified-email Remove the verified-email requirement.
--country=<value>... Replace allowed ISO country codes. Repeatable.
--exclude-country=<value>... Replace blocked ISO country codes. Repeatable.
--exclude-user-agent=<value>... Replace blocked user-agent substrings. Repeatable.
--expires=<value> New lifetime from now (e.g. 30m, 24h, 7d).
--max-uses=<value> Replace the maximum successful opens.
--network=<value>... Replace allowed IP addresses or CIDRs. Repeatable.
--no-expiry Remove the Link expiry.
--no-max-uses Remove the open limit.
--no-network Remove network restrictions.
--no-not-before Remove the earliest admission time.
--not-before=<value> Replace the earliest admission time with this ISO date-time.
--require-verified-email Require a verified email.
LINK FLAGS
--can=<option> Replace the capability preset: view or comment.
<options: view|comment>
--exclude=<value>... [default: ] Excluded route pattern for the replacement path set. Repeatable.
--landing=<value> New clean landing path.
--name=<value> New Link name.
--path=<value>... Replace included route patterns. Repeat for disjoint paths.
--target=<value> Replace the target: live, all-versions, version:<id>, or branch:<name>.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Edit Link metadata.
Replace a Link's metadata or Grant dimensions without rotating its stable URL.
sf share link ls
List Links.
USAGE
$ sf share link ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List Links.
List named Links with Grant paths, capabilities, target, expiry, and lifecycle. List reads never carry credentials.
ALIASES
$ sf share link list
EXAMPLES
List share links for the docs space.
$ sf share link ls --space docs
sf share link revoke ID
Revoke a Link.
USAGE
$ sf share link revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Share link id (see `sf share link ls`).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Revoke a Link.
Revoke a share link. Structural: the link's grant drops from the compiled rule set in the same write, so every
outstanding URL stops working on the next request.
EXAMPLES
Revoke a share link.
$ sf share link revoke lnk_123
sf share list
List Space Grants.
USAGE
$ sf share list [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List Space Grants.
List every active Grant, including config, team, Person, Link, password, machine, and external identity access.
ALIASES
$ sf share ls
sf share password
Manage password access.
USAGE
$ sf share password [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage password access.
Create, list, rotate, and revoke named password Grants. Passwords never live in sf.jsonc.
sf share password create
Create password access.
USAGE
$ sf share password create --name <value> --password <value> --path <value>... [--json] [--api-url <value>] [--profile
<value>] [--token <value>] [-y] [--claim-token <value>] [-o <value>] [--space <value>] [--can view|comment]
[--exclude <value>...] [--target <value>] [--expires <value>]
FLAGS
--can=<option> [default: view] Capability preset.
<options: view|comment>
--exclude=<value>... [default: ] Local exclusion pattern.
--expires=<value> Expiry such as 7d or 30m.
--name=<value> (required) Human-readable password name.
--password=<value> (required) [env: SPACEFAST_SHARE_PASSWORD] Password, or set SPACEFAST_SHARE_PASSWORD.
--path=<value>... (required) Included route pattern.
--target=<value> [default: live] Published target selector.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create password access.
Create a named scoped password Grant. The verifier is Argon2id and rotation fences existing sessions.
sf share password ls
List password access.
USAGE
$ sf share password ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List password access.
List password proof metadata and the Grants they admit.
ALIASES
$ sf share password list
sf share password revoke ID
Revoke password access.
USAGE
$ sf share password revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Password credential id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Revoke password access.
Revoke password access and its canonical Grant.
sf share password rotate ID
Rotate a password.
USAGE
$ sf share password rotate ID --password <value> [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Password credential id.
FLAGS
--password=<value> (required) [env: SPACEFAST_SHARE_PASSWORD] New password, or set SPACEFAST_SHARE_PASSWORD.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Rotate a password.
Replace a password and immediately fence sessions using the old one.
sf share people
Manage People.
USAGE
$ sf share people [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage People.
Invite, list, resend, edit, and remove People. A Person can hold roles on multiple route subtrees.
sf share people edit PERSON
Edit a Person's scoped roles.
USAGE
$ sf share people edit PERSON --grant <value>... [--json] [--api-url <value>] [--profile <value>] [--token <value>]
[-y] [--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
PERSON Person id or email address.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
PEOPLE FLAGS
--grant=<value>... (required) Scoped role in <path>=<role> form. Repeat to replace the full grant set.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Edit a Person's scoped roles.
Replace a Person's scoped roles atomically. Repeat --grant for every route subtree they should retain.
EXAMPLES
Keep root viewing and grant editing under /docs.
$ sf share people edit person@example.com --grant /=viewer --grant /docs=editor
sf share people invite EMAIL
Invite a Person.
USAGE
$ sf share people invite EMAIL [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--role viewer|commenter|editor] [--scope <value>...]
ARGUMENTS
EMAIL Email address to invite.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
PEOPLE FLAGS
--role=<option> [default: viewer] Role granted on every supplied scope.
<options: viewer|commenter|editor>
--scope=<value>... [default: /] Canonical route subtree. Repeat for multiple scopes.
DESCRIPTION
Invite a Person.
Invite one Person without requiring an account. Repeat --scope to grant the same role on multiple route subtrees.
EXAMPLES
Invite a commenter to two route subtrees.
$ sf share people invite person@example.com --role commenter --scope /docs --scope /assets
sf share people ls
List People.
USAGE
$ sf share people ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List People.
List People and every scoped role they hold.
ALIASES
$ sf share people list
sf share people remove PERSON
Remove a Person.
USAGE
$ sf share people remove PERSON [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
PERSON Person id or email (see `sf share people ls`).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Remove a Person.
Remove a Person and all of their scoped grants.
sf share people resend PERSON
Resend a Person invitation.
USAGE
$ sf share people resend PERSON [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
PERSON Person id or email.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Resend a Person invitation.
Replace a pending Person invitation and send a fresh accountless acceptance email.
sf share request
Manage access requests.
USAGE
$ sf share request [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage access requests.
List, approve, and deny inbox-verified access requests.
sf share request approve ID
Approve an access request.
USAGE
$ sf share request approve ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--role viewer|commenter|editor] [--scope <value>]
ARGUMENTS
ID Access request id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
APPROVE FLAGS
--role=<option> Approved role. Defaults to the requested role.
<options: viewer|commenter|editor>
--scope=<value> Approved route subtree. Defaults to the requested scope.
DESCRIPTION
Approve an access request.
Approve an access request into the canonical People list. Override the requested role or route scopes when needed.
sf share request deny ID
Deny an access request.
USAGE
$ sf share request deny ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Access request id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Deny an access request.
Deny a pending access request.
sf share request ls
List access requests.
USAGE
$ sf share request ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List access requests.
List pending access requests with requested role and route scope.
ALIASES
$ sf share request list
sf share revoke ID
Revoke a Space Grant.
USAGE
$ sf share revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Grant id (see `sf share list`).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Revoke a Space Grant.
Revoke one managed Grant. Config Grants must be changed in sf.jsonc; credential Grants are normally revoked through
their credential command.
sf share token
Manage machine access.
USAGE
$ sf share token [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage machine access.
Create, list, rotate, and revoke header-only machine credentials backed by scoped Grants.
sf share token create
Create a machine credential.
USAGE
$ sf share token create --name <value> --path <value>... [--json] [--api-url <value>] [--profile <value>] [--token
<value>] [-y] [--claim-token <value>] [-o <value>] [--space <value>] [--can view|comment|publish|manage] [--exclude
<value>...] [--target <value>] [--expires <value>] [--show-secret]
FLAGS
--can=<option> [default: view] Capability preset.
<options: view|comment|publish|manage>
--exclude=<value>... [default: ] Local exclusion pattern.
--expires=<value> Expiry such as 7d or 30m.
--name=<value> (required) Human-readable machine name.
--path=<value>... (required) Included route pattern.
--show-secret Print the one-time token in JSON or non-interactive output.
--target=<value> [default: live] Published target selector.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Create a machine credential.
Create a named header-only machine credential and scoped Grant. The token is returned once.
sf share token ls
List machine access.
USAGE
$ sf share token ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List machine access.
List machine credential metadata and the Grants they admit.
ALIASES
$ sf share token list
sf share token revoke ID
Revoke machine access.
USAGE
$ sf share token revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
ID Machine credential id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Revoke machine access.
Revoke a machine credential and its canonical Grant.
sf share token rotate ID
Rotate a machine credential.
USAGE
$ sf share token rotate ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--show-secret]
ARGUMENTS
ID Machine credential id.
FLAGS
--show-secret Print the one-time token in JSON or non-interactive output.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Rotate a machine credential.
Rotate a machine credential, fence the old token, and return the replacement once.
sf skills
Install or update Spacefast agent skills.
USAGE
$ sf skills [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--agent
auto|all|universal|generic|codex|claude|claude-code|copilot|cursor|opencode|vscode|github-copilot] [--project]
[--copy] [--list] [--dry-run]
FLAGS
--agent=<option> [default: auto] Agent to install for. `auto` lets npx skills detect installed agents.
<options:
auto|all|universal|generic|codex|claude|claude-code|copilot|cursor|opencode|vscode|github-copilot>
--copy Copy skill files instead of symlinking when npx skills supports symlinks.
--dry-run Print the npx skills command without running it.
--list List skills in the Spacefast package without installing.
--project Install into this project instead of the agent's global skills directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Install or update Spacefast agent skills.
Install or update the Spacefast agent skill through the official npx skills installer.
ALIASES
$ sf skills install
EXAMPLES
Install or update the Spacefast skill for detected agents.
$ sf skills
Install or update the Spacefast skill for Codex.
$ sf skills --agent codex
Install the Spacefast skill to every npx skills-supported agent.
$ sf skills --agent all
sf skills status
Check Spacefast skill installation.
USAGE
$ sf skills status [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--agent
auto|all|universal|generic|codex|claude|claude-code|copilot|cursor|opencode|vscode|github-copilot] [--project]
FLAGS
--agent=<option> [default: auto] Agent to check. `auto` checks common Spacefast-supported agents.
<options:
auto|all|universal|generic|codex|claude|claude-code|copilot|cursor|opencode|vscode|github-copilot>
--project Check project-local skills instead of global skill directories.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Check Spacefast skill installation.
Check whether the Spacefast skill is installed in known npx skills locations.
ALIASES
$ sf skills doctor
EXAMPLES
Check all common global skill locations.
$ sf skills status
Check the Codex Spacefast skill location.
$ sf skills doctor --agent codex
Check this project's Claude Code skill location.
$ sf skills status --project --agent claude-code
sf spaces
Manage spaces.
USAGE
$ sf spaces [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage spaces.
Manage Spacefast spaces.
sf spaces add
Create an empty space.
USAGE
$ sf spaces add [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>] [-n
<value>] [--slug <value>] [--hostname-scope team|global] [--spa auto|true|false] [--mode website|files]
[--save-state] [--show-secret]
SPACE METADATA FLAGS
-n, --name=<value> Set the space title.
--hostname-scope=<option> Managed hostname scope for newly created spaces.
<options: team|global>
--mode=<option> Space serving mode.
<options: website|files>
--slug=<value> Set the space slug when creating a new space.
--spa=<option> [default: auto] Control single-page app fallback detection.
<options: auto|true|false>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]save-state Write the created space to .spacefast/state.json.
OUTPUT FLAGS
--show-secret Print private Open and Claim URLs. Secrets are hidden from JSON and non-interactive output by default.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create an empty space.
Create an empty space and save it to .spacefast/state.json.
ALIASES
$ sf spaces create
EXAMPLES
Create an empty space.
$ sf spaces add --name docs
sf spaces claim
Claim an anonymous space.
USAGE
$ sf spaces claim [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [--space <value>] [-o <value>] [--wait]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
DESCRIPTION
Claim an anonymous space.
Move a saved anonymous space into your account. If needed, the CLI starts browser login first.
EXAMPLES
Claim the space saved in the current directory.
$ sf spaces claim
Claim a space into a specific team.
$ sf spaces claim --space spc_xxx --claim-token claim_xxx --team my-team
sf spaces download
Download a space version.
USAGE
$ sf spaces download [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--output <value>] [--overwrite] [-j <value>] [-v <value>]
FLAGS
-j, --concurrency=<value> [default: 10] Number of files to download at the same time.
-v, --version=<value> [default: latest] Version ID, version ref, number, or "latest".
--output=<value> [default: .] Directory to write downloaded files into.
--overwrite Overwrite files that already exist in the output directory.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Download a space version.
Download files from a space version. Defaults to the latest version.
EXAMPLES
Download the latest version's files into ./out.
$ sf spaces download --space docs --output ./out
Download version v3, overwriting existing files.
$ sf spaces download --space docs --version v3 --overwrite
sf spaces duplicate
Duplicate a space with a download-and-publish copy.
USAGE
$ sf spaces duplicate [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--slug <value>] [--title <value>] [--version <value>] [--wait]
[--wait-timeout <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DUPLICATE TARGET FLAGS
--slug=<value> Slug for the duplicate space.
--title=<value> Title for the duplicate space.
DUPLICATE SOURCE FLAGS
--version=<value> Version to duplicate. Defaults to the live version.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the duplicate to become ready.
DESCRIPTION
Duplicate a space with a download-and-publish copy.
Download an existing space version and publish those files as a new space.
EXAMPLES
Duplicate the docs space into a new docs-copy space.
$ sf spaces duplicate --space docs --slug docs-copy
sf spaces export
Export a space archive.
USAGE
$ sf spaces export [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--version <value>] [--output <value>] [--overwrite] [--wait]
[--wait-timeout <value>]
FLAGS
--output=<value> Download the ready archive to this path (implies --wait).
--overwrite Overwrite an existing archive file when --output is set.
--version=<value> Export a single version instead of the default set.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Export a space archive.
Create a portable export archive of the selected Space. With --wait it returns the download link; add --output to
download the zip.
EXAMPLES
$ sf spaces export --wait --output ./site-export.zip
$ sf spaces export --version ver_123 --wait
sf spaces get
Show a space.
USAGE
$ sf spaces get [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show a space.
Resolve a space from --space or .spacefast/state.json and print its live runtime state, current version, and runtime
details.
EXAMPLES
Show the space linked to the current directory.
$ sf spaces get
Show a specific space by slug, ID, or URL.
$ sf spaces get --space docs
sf spaces import [ARCHIVE]
Import a space archive.
USAGE
$ sf spaces import [ARCHIVE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--from-export <value>] [--publish] [--wait] [--wait-timeout
<value>]
ARGUMENTS
[ARCHIVE] Path to a Spacefast export zip archive.
FLAGS
--from-export=<value> Import from an existing export ID instead of uploading an archive.
--publish Publish the imported version once it is ready.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Import a space archive.
Import an export archive into the selected space as draft versions. Pass --publish to promote the imported version
when it is ready.
EXAMPLES
$ sf spaces import ./site-export.zip
$ sf spaces import --from-export exp_123 --publish
sf spaces ls
List spaces.
USAGE
$ sf spaces ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>] [--limit
<value>]
FLAGS
--limit=<value> Maximum number of spaces to return (default 50, max 100).
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List spaces.
List spaces accessible to the current login, optionally filtered by team.
ALIASES
$ sf spaces list
EXAMPLES
List spaces accessible to the current login.
$ sf spaces ls
List spaces for a specific team.
$ sf spaces ls --team acme
sf spaces rm
Delete a space.
USAGE
$ sf spaces rm [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--wait]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
DESCRIPTION
Delete a space.
Queue deletion for the selected space.
ALIASES
$ sf spaces remove
$ sf spaces delete
EXAMPLES
Delete a space after confirmation.
$ sf spaces rm --space docs
Delete without the confirmation prompt.
$ sf spaces rm --space docs --yes
sf spaces rotate-claim
Rotate anonymous claim authority.
USAGE
$ sf spaces rotate-claim [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [--space <value>]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
SPACE SELECTION FLAGS
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
DESCRIPTION
Rotate anonymous claim authority.
Replace an anonymous Space's claim token and browser claim link without changing recipient Links.
EXAMPLES
Rotate the anonymous Space saved in the current directory.
$ sf spaces rotate-claim
sf spaces transfer TEAM
Transfer a space to another team.
USAGE
$ sf spaces transfer TEAM [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
ARGUMENTS
TEAM Target team slug, ID, or name.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Transfer a space to another team.
Request a transfer of the selected space to another team. The transfer applies after a member of the target team
accepts it.
EXAMPLES
$ sf spaces transfer acme --space spc_123
sf spaces update
Rename or update a space.
USAGE
$ sf spaces update [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [--wait] [--wait-timeout <value>] [--mode website|files] [--spa
auto|true|false] [--slug <value>] [-n <value>] [--viewer-description <value>] [--viewer-og-image-path <value>]
[--viewer-title <value>]
SITE METADATA FLAGS
-n, --name=<value> Space title.
--mode=<option> Serving mode.
<options: website|files>
--spa=<option> Enable or disable SPA fallback. `auto` leaves the current setting unchanged.
<options: auto|true|false>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
IDENTITY FLAGS
--slug=<value> New space slug. Must be sent without other update flags.
VIEWER METADATA FLAGS
--viewer-description=<value> Social preview description. Pass null to clear.
--viewer-og-image-path=<value> Social preview image path. Pass null to clear.
--viewer-title=<value> Viewer page title. Pass null to clear.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Rename or update a space.
Patch space identity, serving metadata, and generated viewer metadata.
EXAMPLES
Rename the space and its managed view.fast hostname.
$ sf spaces update --space docs --slug developers --wait
Change the space title.
$ sf spaces update --space docs --name "Developer docs"
Switch serving mode to files and disable SPA fallback.
$ sf spaces update --space docs --mode files --spa false
sf status
Show CLI status.
USAGE
$ sf status [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--include-claim-url]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
OUTPUT FLAGS
--include-claim-url Include a still-pending one-time claim URL.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Show CLI status.
Show authenticated user, default team, and the space the current directory is linked to.
EXAMPLES
Show login, default team, and the linked space.
$ sf status
Include a still-pending one-time claim URL.
$ sf status --include-claim-url
sf switch [TEAM]
Switch teams.
USAGE
$ sf switch [TEAM] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
[TEAM] Team slug, ID, or name.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Switch teams.
Set the default team for future CLI commands.
EXAMPLES
Set acme as the default team for future commands.
$ sf switch acme
sf teams
Manage teams.
USAGE
$ sf teams [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage teams.
Manage teams and members.
sf teams accept INVITATION
Accept a team invitation.
USAGE
$ sf teams accept INVITATION [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
INVITATION Invitation id from the invite link.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Accept a team invitation.
Accept a team invitation and join the team as the current login.
EXAMPLES
Accept a team invitation.
$ sf teams accept inv_123
sf teams create NAME
Create a team.
USAGE
$ sf teams create NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
NAME Display name for the new team.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a team.
Create a new team owned by the current login.
ALIASES
$ sf teams add
EXAMPLES
Create a new team.
$ sf teams create "Acme Inc"
sf teams defaults [ROOTACCESS]
Manage future-space defaults.
USAGE
$ sf teams defaults [ROOTACCESS] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
[ROOTACCESS] Future Space root access: private, team, or public.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage future-space defaults.
Show or set the Grant preset materialized for Spaces this team creates in the future.
EXAMPLES
Show the team's future-space default.
$ sf teams defaults
Make future spaces private by default.
$ sf teams defaults private
sf teams invitations
Manage team invitations.
USAGE
$ sf teams invitations [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage team invitations.
Manage team invitations.
sf teams invitations add EMAIL
Create a team invitation.
USAGE
$ sf teams invitations add EMAIL [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
[--role owner|admin|member]
ARGUMENTS
EMAIL Email address to invite.
FLAGS
--role=<option> [default: member] Role to grant when the invitation is accepted.
<options: owner|admin|member>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a team invitation.
Invite a person to a team.
ALIASES
$ sf teams invitations create
EXAMPLES
Invite a member to the team.
$ sf teams invitations add jane@example.com --role member
sf teams invitations cancel INVITATION
Cancel a team invitation.
USAGE
$ sf teams invitations cancel INVITATION [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
INVITATION Invitation id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Cancel a team invitation.
Cancel a team invitation.
EXAMPLES
Cancel a team invitation.
$ sf teams invitations cancel inv_123
sf teams invitations ls
List team invitations.
USAGE
$ sf teams invitations ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List team invitations.
List pending and historical team invitations.
ALIASES
$ sf teams invitations list
EXAMPLES
List team invitations.
$ sf teams invitations ls
sf teams invitations resend INVITATION
Resend a team invitation.
USAGE
$ sf teams invitations resend INVITATION [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>]
ARGUMENTS
INVITATION Invitation id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Resend a team invitation.
Resend a pending team invitation.
EXAMPLES
Resend a pending team invitation.
$ sf teams invitations resend inv_123
sf teams ls
List teams.
USAGE
$ sf teams ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List teams.
List teams available to the current login.
ALIASES
$ sf teams list
EXAMPLES
List teams available to the current login.
$ sf teams ls
sf teams members
Manage team members.
USAGE
$ sf teams members [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage team members.
Manage team members.
sf teams members ls
List team members.
USAGE
$ sf teams members ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List team members.
List members in a team.
ALIASES
$ sf teams members list
EXAMPLES
List members in a team.
$ sf teams members ls
sf teams members rm MEMBER
Remove a team member.
USAGE
$ sf teams members rm MEMBER [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
MEMBER Member id or email.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Remove a team member.
Remove a member from a team.
ALIASES
$ sf teams members remove
$ sf teams members delete
EXAMPLES
Remove a member from a team.
$ sf teams members rm jane@example.com
sf teams switch [TEAM]
Set default team.
USAGE
$ sf teams switch [TEAM] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o <value>]
ARGUMENTS
[TEAM] Team slug, ID, or name.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Set default team.
Set the default team for future CLI publishes.
EXAMPLES
Set acme as the default team.
$ sf teams switch acme
sf transfers accept ID
Accept a space transfer.
USAGE
$ sf transfers accept ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID Transfer ID.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Accept a space transfer.
Accept a pending space transfer as a member of the target team. The space then moves to the new team.
ALIASES
$ sf transfers confirm
EXAMPLES
Accept a pending space transfer.
$ sf transfers accept trf_123
sf transfers cancel ID
Cancel a space transfer.
USAGE
$ sf transfers cancel ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID Transfer ID.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Cancel a space transfer.
Cancel a pending space transfer.
EXAMPLES
Cancel a pending space transfer.
$ sf transfers cancel trf_123
sf versions
Manage versions.
USAGE
$ sf versions [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage versions.
List, promote, and roll back space versions.
sf versions download
Download a version archive.
USAGE
$ sf versions download [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>] [-v <value>] [--output <value>] [--overwrite] [--wait] [--wait-timeout
<value>]
FLAGS
-v, --version=<value> [default: latest] Version ID, version ref, number, or "latest".
--output=<value> Archive file path, or an existing directory to write the archive into.
--overwrite Overwrite an existing archive file.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
EXECUTION FLAGS
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> Seconds to wait for queued work to finish before giving up.
DESCRIPTION
Download a version archive.
Create a scoped export for one version and download the resulting archive.
EXAMPLES
Download the latest version as an archive.
$ sf versions download --space docs --output ./archive.tar.gz
Download version v3, overwriting an existing archive.
$ sf versions download --space docs --version v3 --overwrite
sf versions get [VERSION]
Show a version.
USAGE
$ sf versions get [VERSION] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
[VERSION] Version ID, ref, or number, for example ver_123, v12, or 12.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Show a version.
Show one version's status, source, Version URL, diagnostics, and failure details.
EXAMPLES
Inspect version v12 of the linked space.
$ sf versions get v12
Print a version of a selected space as JSON.
$ sf versions get ver_123 --space docs --json
sf versions ls
List space versions.
USAGE
$ sf versions ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--claim-token
<value>] [-o <value>] [--space <value>]
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List space versions.
List space versions and mark the live and currently deploying entries.
ALIASES
$ sf versions list
EXAMPLES
List versions for the linked space.
$ sf versions ls
List versions for a specific space.
$ sf versions ls --space docs
sf versions rm [VERSION]
Delete a version.
USAGE
$ sf versions rm [VERSION] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>]
ARGUMENTS
[VERSION] Version ID, ref, or number, for example ver_123, v12, or 12.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Delete a version.
Delete a version and purge its files. Versions referenced by a channel (live) cannot be deleted; promote another
version first. The version URL starts serving a tombstone.
ALIASES
$ sf versions remove
$ sf versions delete
EXAMPLES
Delete version v12 of the linked space.
$ sf versions rm v12
Delete without a confirmation prompt.
$ sf versions rm ver_123 --space docs --yes
sf whoami
Show the current Spacefast account.
USAGE
$ sf whoami [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Show the current Spacefast account.
Verify the active token and print the authenticated account.
EXAMPLES
Show the authenticated account.
$ sf whoami
Print the account as JSON for scripting.
$ sf whoami --json
sf zero
Manage Zero runtime apps.
USAGE
$ sf zero [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage Zero runtime apps.
Build and run Spacefast Zero capsules.
sf zero auth [ACTION] [SOURCE]
Manage Zero auth.
USAGE
$ sf zero auth [ACTION] [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-o
<value>] [--user-id <value>] [--user <value>] [--email <value>] [--name <value>]
ARGUMENTS
[ACTION] (login|status|logout|as|reset|local-status) [default: status] Auth action.
[SOURCE] [default: .] Capsule source directory.
FLAGS
--email=<value> Local authenticated email.
--name=<value> Local authenticated display name.
--user=<value> Alias for --user-id.
--user-id=<value> Local authenticated user id for `zero auth as`.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage Zero auth.
Manage Spacefast auth for Zero deploys and local Zero dev auth identity.
EXAMPLES
$ sf zero auth login
$ sf zero auth status
$ sf zero auth logout
$ sf zero auth as --user-id usr_local --email user@example.test
$ sf zero auth local-status
$ sf zero auth reset
sf zero build [SOURCE]
Build a Zero artifact manifest.
USAGE
$ sf zero build [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--out
<value>] [--finalize-out <value>] [--runner-sha256 <value>] [--previous-artifact <value>] [--central-realtime-url
<value>] [--auth-sign-in-url <value>] [--auth-sign-out-url <value>] [--public-inspect] [--drop | --rename]
ARGUMENTS
[SOURCE] [default: .] Capsule source directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
RUNTIME FLAGS
--auth-sign-in-url=<value> Central Spacefast auth URL that starts hosted Zero WP.com sign-in.
--auth-sign-out-url=<value> Central Spacefast auth URL that signs out hosted Zero users.
--central-realtime-url=<value> Central Spacefast realtime URL for production mutation events.
--drop Allow generated Zero migration plans to include explicit drop operations.
--previous-artifact=<value> Path to a previous Zero artifact or finalize payload for update migration planning.
--public-inspect Make hosted Zero inspect metadata public. Private is the default.
--rename Allow generated Zero migration plans to include explicit rename operations.
--runner-sha256=<value> Expected sha256 digest for the prebuilt Rust runner.
OUTPUT FLAGS
--finalize-out=<value> [default: .spacefast/zero/finalize.json] Path to write the runtime finalize payload.
--out=<value> [default: .spacefast/zero/artifact.json] Path to write the Zero artifact manifest.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Build a Zero artifact manifest.
Build a Spacefast Zero capsule artifact manifest.
EXAMPLES
$ sf zero build
$ sf zero build ./todo --out .spacefast/zero/artifact.json
$ sf zero build ./todo --central-realtime-url https://realtime.spacefast.example
sf zero create NAME
Create a Zero app.
USAGE
$ sf zero create NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--template
todo|guestbook] [--title <value>] [--no-git]
ARGUMENTS
NAME Directory name for the new capsule.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
TEMPLATE FLAGS
--no-git Do not initialize a git repository for the new capsule.
--template=<option> [default: todo] Starter template to create.
<options: todo|guestbook>
--title=<value> Display title for the starter app.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a Zero app.
Create a new Spacefast Zero capsule from a starter template.
EXAMPLES
$ sf zero new my-app
$ sf zero new my-app --title Todo --no-git
$ sf zero new guestbook --template guestbook
sf zero db [TARGET]
Inspect or dump Zero database data.
USAGE
$ sf zero db [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--dump] [--inspect-token <value>] [--local-url <value>]
[--port <value>] [--table <value>] [--limit <value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, domain, or Zero deploy URL.
FLAGS
--dump Dump rows from the Zero database.
--inspect-token=<value> Alias for --claim-token when inspecting private anonymous deploys.
--limit=<value> Maximum rows per table for --dump (default 25, max 100).
--local-url=<value> Read database metadata from a local `sf zero dev` server.
--port=<value> Alias for local inspection at http://127.0.0.1:<port>.
--table=<value> Restrict --dump to one table.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Inspect or dump Zero database data.
Inspect or dump the local or deployed Spacefast Zero database.
EXAMPLES
$ sf zero db my-space
$ sf zero db --space my-space
$ sf zero db --port 8787 --dump
$ sf zero db --space my-space --dump --table todos
$ sf zero db --local-url http://127.0.0.1:8787 --dump
sf zero db dump [TARGET]
Dump Zero database rows.
USAGE
$ sf zero db dump [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--inspect-token <value>] [--local-url <value>] [--port
<value>] [--table <value>] [--limit <value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, domain, or Zero deploy URL.
FLAGS
--inspect-token=<value> Alias for --claim-token when inspecting private anonymous deploys.
--limit=<value> Maximum rows per table to dump (default 25, max 100).
--local-url=<value> Read database rows from a local `sf zero dev` server.
--port=<value> Alias for local inspection at http://127.0.0.1:<port>.
--table=<value> Restrict the dump to one table.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Dump Zero database rows.
Dump rows from the local or deployed Spacefast Zero database.
EXAMPLES
$ sf zero db dump my-space
$ sf zero db dump --space my-space
$ sf zero db dump --port 8787
$ sf zero db dump --space my-space --table todos
$ sf zero db dump --local-url http://127.0.0.1:8787
sf zero db list [TARGET]
List Zero database tables.
USAGE
$ sf zero db list [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--inspect-token <value>] [--local-url <value>] [--port
<value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, domain, or Zero deploy URL.
FLAGS
--inspect-token=<value> Alias for --claim-token when inspecting private anonymous deploys.
--local-url=<value> Read database metadata from a local `sf zero dev` server.
--port=<value> Alias for local inspection at http://127.0.0.1:<port>.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List Zero database tables.
List tables in the local or deployed Spacefast Zero database.
ALIASES
$ sf zero db ls
EXAMPLES
$ sf zero db list my-space
$ sf zero db list --space my-space
$ sf zero db list --port 8787
$ sf zero db list --local-url http://127.0.0.1:8787
sf zero db migrate [SOURCE]
Plan Zero database migrations.
USAGE
$ sf zero db migrate [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--out
<value>] [--finalize-out <value>] [--runner-sha256 <value>] [--previous-artifact <value>] [--central-realtime-url
<value>] [--auth-sign-in-url <value>] [--auth-sign-out-url <value>] [--public-inspect] [--drop | --rename]
ARGUMENTS
[SOURCE] [default: .] Capsule source directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
RUNTIME FLAGS
--auth-sign-in-url=<value> Central Spacefast auth URL that starts hosted Zero WP.com sign-in.
--auth-sign-out-url=<value> Central Spacefast auth URL that signs out hosted Zero users.
--central-realtime-url=<value> Central Spacefast realtime URL for production mutation events.
--drop Allow generated Zero migration plans to include explicit drop operations.
--previous-artifact=<value> Path to a previous Zero artifact or finalize payload for update migration planning.
--public-inspect Make hosted Zero inspect metadata public. Private is the default.
--rename Allow generated Zero migration plans to include explicit rename operations.
--runner-sha256=<value> Expected sha256 digest for the prebuilt Rust runner.
OUTPUT FLAGS
--finalize-out=<value> [default: .spacefast/zero/finalize.json] Path to write the runtime finalize payload.
--out=<value> [default: .spacefast/zero/artifact.json] Path to write the Zero artifact manifest.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Plan Zero database migrations.
Plan Spacefast Zero database migrations from the current source tree without deploying.
EXAMPLES
$ sf zero db migrate
$ sf zero db migrate ./todo --previous-artifact .spacefast/zero/previous.json
$ sf zero db migrate --drop
$ sf zero db migrate --rename
sf zero deploy [SOURCE]
Build and deploy a Zero app.
USAGE
$ sf zero deploy [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [-n <value>] [--slug <value>] [--hostname-scope team|global]
[--spa auto|true|false] [-m <value>] [--git-branch <value>] [--git-commit <value>] [--git-ref <value>]
[--git-repository <value>] [--source-type direct-upload|git] [--out <value>] [--finalize-out <value>]
[--runner-sha256 <value>] [--previous-artifact <value>] [--central-realtime-url <value>] [--auth-sign-in-url
<value>] [--auth-sign-out-url <value>] [--public-inspect] [--drop | --rename] [--dry-run] [--wait] [--wait-timeout
<value>] [--publish-out <value>]
ARGUMENTS
[SOURCE] [default: .] Capsule source directory.
VERSION SOURCE FLAGS
-m, --message=<value> [env: SPACEFAST_PUBLISH_MESSAGE] Plain-language changelog entry for this version, shown
in version history. Overrides the detected git commit message.
--git-branch=<value> [env: SPACEFAST_GIT_BRANCH] Git branch name to record on the version.
--git-commit=<value> [env: SPACEFAST_GIT_COMMIT] Git commit SHA to record on the version.
--git-ref=<value> [env: SPACEFAST_GIT_REF] Git ref to record on the version.
--git-repository=<value> [env: SPACEFAST_GIT_REPOSITORY] Git repository to record on the version, for example
owner/repo.
--source-type=<option> [env: SPACEFAST_SOURCE_TYPE] Version source type to record.
<options: direct-upload|git>
SPACE METADATA FLAGS
-n, --name=<value> Set the space title.
--hostname-scope=<option> Managed hostname scope for newly created spaces.
<options: team|global>
--slug=<value> Set the space slug when creating a new space.
--spa=<option> [default: auto] Control single-page app fallback detection.
<options: auto|true|false>
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
RUNTIME FLAGS
--auth-sign-in-url=<value> Central Spacefast auth URL that starts hosted Zero WP.com sign-in.
--auth-sign-out-url=<value> Central Spacefast auth URL that signs out hosted Zero users.
--central-realtime-url=<value> Central Spacefast realtime URL for production mutation events.
--drop Allow generated Zero migration plans to include explicit drop operations.
--previous-artifact=<value> Path to a previous Zero artifact or finalize payload for update migration planning.
--public-inspect Make hosted Zero inspect metadata public. Private is the default.
--rename Allow generated Zero migration plans to include explicit rename operations.
--runner-sha256=<value> Expected sha256 digest for the prebuilt Rust runner.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
EXECUTION FLAGS
--dry-run Build and print the deploy plan without uploading files or writing remote state.
--[no-]wait Wait until queued publish work finishes before returning.
--wait-timeout=<value> [default: 900] Seconds to wait for the version to become ready.
OUTPUT FLAGS
--finalize-out=<value> [default: .spacefast/zero/finalize.json] Path to write the runtime finalize payload.
--out=<value> [default: .spacefast/zero/artifact.json] Path to write the Zero artifact manifest.
--publish-out=<value> [default: .spacefast/zero/public] Directory to write the public Zero shell before deploying.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Build and deploy a Zero app.
Build a Spacefast Zero capsule, materialize its public shell, and deploy it to Spacefast.
EXAMPLES
$ sf zero deploy
$ sf zero deploy ./todo --space my-space
$ sf zero deploy ./todo --central-realtime-url https://realtime.spacefast.example
sf zero dev [SOURCE]
Run local Zero dev server.
USAGE
$ sf zero dev [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--host
<value>] [--port <value>] [--state-backend memory|sqlite|mysql] [--dry-run] [--watch] [--watch-interval <value>]
ARGUMENTS
[SOURCE] [default: .] Capsule source directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
SERVER FLAGS
--dry-run Print the local dev server plan without starting the foreground server.
--host=<value> [default: 127.0.0.1] Host interface for the local dev server.
--port=<value> [default: 8787] Port for the local HTTP and websocket dev server.
--state-backend=<option> [default: memory] Local state adapter to advertise to the Zero client transport.
<options: memory|sqlite|mysql>
--[no-]watch Poll source files and reload the local Zero runtime after changes.
--watch-interval=<value> [default: 1000] Source polling interval in milliseconds.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Run local Zero dev server.
Run a local Spacefast Zero dev server with a foreground localhost websocket endpoint.
EXAMPLES
$ sf zero dev
$ sf zero dev --port 8787 --dry-run --json
sf zero inspect [TARGET]
Inspect Zero runtime metadata.
USAGE
$ sf zero inspect [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--inspect-token <value>] [--local-url <value>] [--port
<value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, domain, or Zero deploy URL.
FLAGS
--inspect-token=<value> Alias for --claim-token when inspecting private anonymous deploys.
--local-url=<value> Read inspect metadata from a local `sf zero dev` server.
--port=<value> Alias for local inspection at http://127.0.0.1:<port>.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Inspect Zero runtime metadata.
Inspect the Spacefast Zero runtime locally or on a deployed space.
EXAMPLES
$ sf zero inspect my-space
$ sf zero inspect --space my-space
$ sf zero inspect --port 8787
$ sf zero inspect --local-url http://127.0.0.1:8787
sf zero logs [TARGET]
List Zero runtime logs.
USAGE
$ sf zero logs [TARGET] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
[--claim-token <value>] [-o <value>] [--space <value>] [--limit <value>] [--cursor <value>] [--inspect-token
<value>] [--local-url <value>] [--port <value>] [--requestId <value>] [--handlerName <value>]
ARGUMENTS
[TARGET] Space ID, slug, live URL, domain, or Zero deploy URL.
FLAGS
--cursor=<value> Pagination cursor returned by a previous request.
--handlerName=<value> Filter logs by handler name — the mutation name on Zero.
--inspect-token=<value> Alias for --claim-token when inspecting private anonymous deploys.
--limit=<value> [default: 50] Maximum log entries to return.
--local-url=<value> Read logs from a local `sf zero dev` server.
--port=<value> Alias for local inspection at http://127.0.0.1:<port>.
--requestId=<value> Filter logs by request id.
SPACE SELECTION FLAGS
-o, --team=<value> [env: SPACEFAST_TEAM] Team slug, ID, or name.
--space=<value> [env: SPACEFAST_SPACE] Space ID, live URL, domain, or slug.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
AUTHENTICATION FLAGS
--claim-token=<value> [env: SPACEFAST_CLAIM_TOKEN] Anonymous space claim token.
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List Zero runtime logs.
List runtime logs for the local or deployed Spacefast Zero runtime.
EXAMPLES
$ sf zero logs my-space
$ sf zero logs --space my-space
$ sf zero logs --limit 25 --requestId req_123
$ sf zero logs --port 8787
$ sf zero logs --local-url http://127.0.0.1:8787
sf zero new NAME
Create a Zero app.
USAGE
$ sf zero new NAME [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--template
todo|guestbook] [--title <value>] [--no-git]
ARGUMENTS
NAME Directory name for the new capsule.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
TEMPLATE FLAGS
--no-git Do not initialize a git repository for the new capsule.
--template=<option> [default: todo] Starter template to create.
<options: todo|guestbook>
--title=<value> Display title for the starter app.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a Zero app.
Create a new Spacefast Zero capsule from a starter template.
EXAMPLES
$ sf zero new my-app
$ sf zero new my-app --title Todo --no-git
$ sf zero new guestbook --template guestbook
sf zero run-many [SOURCE]
Run many local Zero dev servers.
USAGE
$ sf zero run-many [SOURCE] [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--base-port
<value>] [--count <value>] [--host <value>] [--state-backend memory|sqlite|mysql] [--dry-run]
ARGUMENTS
[SOURCE] [default: .] Capsule source directory.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
SERVER FLAGS
--base-port=<value> [default: 4000] First local port to bind.
--count=<value> [default: 20] Number of local dev servers to start.
--dry-run Print the local dev server plans without starting foreground servers.
--host=<value> [default: 127.0.0.1] Host interface for the local dev servers.
--state-backend=<option> [default: memory] Local state adapter to advertise to each Zero client transport.
<options: memory|sqlite|mysql>
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Run many local Zero dev servers.
Run many local Spacefast Zero dev servers on consecutive localhost ports.
EXAMPLES
$ sf zero run-many
$ sf zero run-many ./todo --count 20 --base-port 4000
$ sf zero run-many --count 3 --base-port 5000 --dry-run --json
sf zero token
Manage Zero tokens.
USAGE
$ sf zero token [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Manage Zero tokens.
Manage API tokens for Zero apps using Spacefast API keys.
sf zero token create
Create a Zero token.
USAGE
$ sf zero token create [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [-n <value>]
[--personal] [--preset ci_deploy|space_publisher|space_admin|site_admin|domain_manager|team_admin|billing_viewer]
FLAGS
-n, --name=<value> Human-readable token name.
--personal Create a personal token instead of the default CI deploy preset.
--preset=<option> Access preset for the new API token.
<options:
ci_deploy|space_publisher|space_admin|site_admin|domain_manager|team_admin|billing_viewer>
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Create a Zero token.
Create a Spacefast API key for Zero deploy workflows.
ALIASES
$ sf zero token add
EXAMPLES
Create a Zero deploy token with the default CI deploy preset.
$ sf zero token create --name ci
Create a Zero token with the team admin preset.
$ sf zero token create --name admin --preset team_admin
sf zero token list
List Zero tokens.
USAGE
$ sf zero token list [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--limit <value>]
FLAGS
--limit=<value> Maximum number of API tokens to return (default 50, max 100).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List Zero tokens.
List Spacefast API keys usable by Zero deploy workflows.
EXAMPLES
List API keys usable by Zero deploy workflows.
$ sf zero token list
sf zero token ls
List Zero tokens.
USAGE
$ sf zero token ls [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y] [--limit <value>]
FLAGS
--limit=<value> Maximum number of API tokens to return (default 50, max 100).
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
List Zero tokens.
List Spacefast API keys usable by Zero deploy workflows.
EXAMPLES
List API keys usable by Zero deploy workflows.
$ sf zero token ls
sf zero token revoke ID
Revoke a Zero token.
USAGE
$ sf zero token revoke ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID API token id.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke a Zero token.
Revoke a Spacefast API key used by Zero deploy workflows.
EXAMPLES
Revoke a Zero deploy token.
$ sf zero token revoke key_123
sf zero token rm ID
Revoke a Zero token.
USAGE
$ sf zero token rm ID [--json] [--api-url <value>] [--profile <value>] [--token <value>] [-y]
ARGUMENTS
ID API token id.
GLOBAL FLAGS
-y, --yes [env: SPACEFAST_YES] Skip confirmation prompts.
--api-url=<value> [env: SPACEFAST_API_URL] Spacefast API base URL.
--profile=<value> [env: SPACEFAST_PROFILE] Named provider profile from `sf profiles`.
GLOBAL FLAGS
--json Format output as json.
AUTHENTICATION FLAGS
--token=<value> [env: SPACEFAST_TOKEN] Access token for non-interactive auth.
DESCRIPTION
Revoke a Zero token.
Revoke a Spacefast API key used by Zero deploy workflows.
ALIASES
$ sf zero token remove
$ sf zero token delete
EXAMPLES
Remove (revoke) a Zero deploy token.
$ sf zero token rm key_123
Common Workflows
sf publish [dir] [--spa auto|true|false] [--name name] [--token token] [--json]
sf publish [dir] --dry-run [--json]
sf init [--title name] [--mode website|files] [--spa auto|true|false]
sf doctor [--json]
sf spaces claim [--team team] [--token token]
sf delete [--space ref] [--json]
sf login [--token token]
sf logout
sf whoami
sf inspect [--space ref]
sf versions [--space ref]
sf rollback <version> [--space ref]
sf promote <version> [--space ref]
sf publish [dir] --build [--root-directory path] [--output-directory dist] [--skip-install] [--skip-build]
sf apply [--space ref] [--no-wait]
sf routing compute [--space ref]
sf duplicate [--space ref] [--title value] [--slug value] [--team team]
sf variables
sf variables list [--show-values]
sf variables pull [--format env|json]
sf variables set <name> <value>
sf variables delete <name>
sf domains
sf domains add <hostname> [--role standard|redirect] [--redirect-to hostname] [--no-wait]
sf domains check <domain-id-or-hostname> [--no-wait]
sf teams default [team]
sf teams members [--team team]
sf teams invitations [--team team]
sf teams invitations create <email> [--role owner|admin|member]
sf teams invitations resend <invitation>
sf teams invitations cancel <invitation>
sf metadata patch [--title value] [--mode website|files] [--spa true|false]
sf open [path] [--space ref]
sf fetch [path] [--space ref]
sf share list [--space ref]
sf share check --as public --path /docs [--space ref]
sf share grant --to public|team --can view|comment|publish|manage --path '/docs/**' [--space ref]
sf share revoke <grant-id> [--space ref]
sf share people invite <email> [--role viewer|commenter|editor] [--scope path]
sf share link create --name <name> [--path '/docs/**'] [--expires duration]
```text
`publish` defaults to the current directory. `--spa auto` is the default and only
enables SPA fallback when the output strongly looks like a single-page app.
`delete` removes the current space selected by `.spacefast/state.json`, or the
space passed with `--space`.
The CLI is oclif-native. Use `sf help` or `sf <command> --help` for
generated command docs, strict flag validation, aliases, grouped flags,
environment-variable hints, and examples. Use `sf autocomplete` to install
shell completions.
Use `--json` on any Spacefast command for machine-readable output. Errors
use the same shape everywhere:
```json
{
"error": {
"code": "auth_required",
"message": "No access token available. Run `sf login` first.",
"details": {}
}
}
Stable exit codes:
0: success
1: unexpected error
2: validation error
10: auth required or invalid token
20: resource not found
30: conflict
40: network/API reachability failure
50: wait timeout
Agent examples
sf doctor --json
sf teams --json
sf teams default my-team
sf init --title "Docs" --mode website
sf publish ./dist --dry-run --json
sf publish ./dist --json --wait
sf publish ./dist --space docs --json --no-wait
sf domains add docs.example.com --space docs --json --wait
```text
Interactive login uses browser device authorization:
```bash
sf login
For CI, pass --token or set SPACEFAST_TOKEN.
Authenticated first publishes use your default team. If your account has
one team, the CLI stores it automatically after login or the first
authenticated publish. If you belong to multiple teams, set the default
once:
sf teams default my-team
```text
You can still override a single command with `--team`.
Anonymous publishes save the claim token locally and print a browser claim URL.
To keep publishing and managing an anonymous space:
```bash
sf spaces claim
If you are not logged in, claim starts login first, then moves the saved space
into your account.