CLI reference
Commands
Every Sandscape CLI command with a one-line summary. Add --json to any command for machine-readable, line-delimited output.
Add --json to any command for machine-readable, line-delimited output you can
parse (including progress events) instead of human text.
Synopsis
sandscape login [--json] [--api-url <url>]
sandscape logout [--json]
sandscape skill install [--here [dir]] [--all] [--harness <a,b>] [--json]
sandscape list [--json] [--no-pick] [--api-url <url>]
sandscape clone <session_id> [target_dir] [--json] [--api-url <url>]
sandscape pull [target_dir] [--json] [--force] [--api-url <url>]
sandscape push [target_dir] [--json] [--api-url <url>]
sandscape publish [target_dir] --title <t> [--json] [--api-url <url>]
sandscape init <folder> [--name <n>] [--backfill] [--json] [--api-url <url>]Commands
sandscape login— authorize this machine once (device-code flow). Required before anything else. With--jsonit emitsverificationthenauthorized/errorevents — see Login.sandscape logout— forget the stored credentials on this machine (revoke the token itself from the Sandscape account UI).sandscape skill install— install the bundledsandscape-cliAgent Skill. The default is a global install into each detected agent's skills dir plus the cross-tool~/.agents/skills.--allinstalls into every known dir,--harness claude,codex,…restricts,--here [dir]installs into a project's.claude/+.agents/instead.sandscape list— list your projects (id, name, status). Doubles as a cheap auth check: exit 0 = authorized, exit 1 = needslogin.sandscape clone <session_id> [dir]— clone one of your projects into a new folder.sandscape pull [--force]— download the latest version.--forceoverwrites local edits on conflicting files — see First round-trip.sandscape push— upload your local changes.sandscape publish --title "<title>"— publish the game so others can play it. The server rebuilds from its own bundle and re-validates; the CLI only sends metadata.sandscape init <folder> [--name <n>] [--backfill]— import your own game folder as a new Sandscape project. Maps the folder tree verbatim (honoring.gitignore/.sandscapeignore, always skippingnode_modules/+.git/) and auto-registers recognized asset files for FREE.--backfillruns an optional, coin-metered pass that enriches design metadata — it prints the cost and your balance first. See Import your own game.
For flags, exit codes, the version/divergence model, and --json event shapes,
see the Reference.