TL;DR: zero to production
Ten commands from an empty shell to a live storefront at a custom domain. The full developer journey through the Cimplify CLI in one page.
If you want the full narrative (installing, scaffolding, local dev, auth, projects, env, deploy, domains), read the Quickstart and the CLI reference. This page is the scannable command list.
Drive it from an agent
Paste this into Claude Code, Cursor, or any MCP-aware assistant. The agent fans out through the MCP tool surface or shells cimplify --json; both terminate on the first non-zero exit code.
Set up a Cimplify <retail> storefront called <my-store> and deploy it to <shop.example.com>.
Follow the sequence at https://cimplify.dev/docs/tldr step-by-step.
After every command, echo the JSON envelope and stop on the first non-zero
exit code, naming the code from https://cimplify.dev/docs/cli#exit-codes.
Use cimplify_get_deployment_status (MCP) or `cimplify status --json` (shell)
to poll, never `sleep`. Idempotency: re-running any step is safe.A pre-prompted library for common tasks (rebrand, add a section, migrate SDK versions) lives at Agent prompts.
The ten commands
# 0. Install the CLI (one-time, ~5s)
curl -fsSL https://cimplify.io/install | sh
# 1. Scaffold a Next.js storefront from an embedded template
cimplify init my-store --template retail
cd my-store
# 2. Local dev: mock API on :8787 + Next dev on :3000
bun dev
# 3. Authorize the CLI (browser PKCE; --api-key for CI)
cimplify login
# 4. Create the cloud project + link this directory
cimplify projects create my-store
cimplify link <project-id> # writes .cimplify/project.json
# 5. Push env vars to the preview scope
cimplify env push --scope=preview # non-destructive; --overwrite to replace scope
# 6. Preview deploy (git push + build + poll + URL printed on success)
cimplify deploy
# 7. Bring a custom domain (DNS records printed by `add`)
cimplify domains add shop.example.com
cimplify domains verify shop.example.com
# 8. Promote and route the domain to production
cimplify deploy --prod
cimplify domains attach shop.example.com --env=production --primaryEnd state: https://shop.example.com resolves to the production deployment of your linked project.
What each step does, in one line
| # | Command | What happens on the wire | Verify |
|---|---|---|---|
| 0 | curl ... install | sh | Worker serves install.sh → detects OS+arch → downloads matching binary from the latest cli-v* GitHub release → verifies sha256 → ~/.local/bin/cimplify. | cimplify --version prints a semver. |
| 1 | cimplify init | Materializes one of six embedded templates (bakery · restaurant · retail · services · grocery · fashion) and runs bun install. | Directory exists with lib/brand.ts, package.json, and node_modules/. |
| 2 | bun dev | concurrently runs cimplify-mock --seed retail (real backend, seeded data) + next dev. | http://localhost:3000 renders the storefront; curl localhost:8787/v1/catalogue/products returns products. |
| 3 | cimplify login | PKCE on a loopback redirect. Token persisted at ~/.config/cimplify/auth.json (mode 0600). --api-key dk_… for CI. | cimplify whoami --json returns { ok: true, data: { account, business } }. |
| 4 | cimplify projects create / link | POST /v1/businesses/<bid>/projects creates project + git repo. link writes .cimplify/project.json. | .cimplify/project.json exists; cimplify status --json resolves the project. |
| 5 | cimplify env push | Reads .env.local, POST to /env-vars/bulk-set with overwrite=false. Public NEXT_PUBLIC_* keys are not encrypted. | cimplify env ls --scope=preview --json lists the expected keys. |
| 6 | cimplify deploy | Mints a short-TTL clone token → git push → POST /deploy → polls /progress. Prints Deployed: <url> on success. Exit codes: 0 active · 2 superseded · 1 failed · 12 timeout. | Exit 0 and a preview URL of the form https://<sha>--<project>.cimplify.app. |
| 7 | cimplify domains add / verify | add returns DNS records (TXT verify token + CNAME to a cimplify.app host). verify resolves and marks the domain verified. | cimplify domains ls --json shows the domain as verified=true. |
| 8 | cimplify deploy --prod / domains attach | --prod flips env_scope: production through the same code path. attach writes a ProjectDomain row binding the verified domain to the prod scope. | https://<your-domain> resolves; cimplify status --prod --json shows the production deployment as active. |
Resume mid-flow
Every step is idempotent and the state lives outside your shell. If a session drops:
cimplify whoami # step 3 done?
cimplify status # steps 4–8: project linked, latest deploy, primary domain
cimplify env ls # step 5: what's already pushed
cimplify domains ls # step 7: verified / attached stateRe-running any command above is safe: deploy dedupes on (project, git_sha, env_scope), env push defaults to non-destructive, domains add is a no-op if the domain already exists.
Typical timing
| Step | Time |
|---|---|
| Install + init + bun install | ~60s |
bun dev, see the storefront | ~10s |
Rebrand (lib/brand.ts, app/globals.css @theme) | minutes to hours |
| Login + projects create + link | ~30s |
| First preview deploy | ~60–90s build |
| Domain verify (after DNS) | minutes (DNS TTL) |
| Promote to prod | ~60–90s |
Headless / agent flow
Every command above accepts --json (single envelope on stdout, no progress chatter) and --yes (auto-confirm prompts). Distinct exit codes per error class: NOT_LINKED=4, NOT_LOGGED_IN=20, NETWORK_ERROR=10, AUTH_FAILED=21, INVALID_INPUT=30, ABORTED=3, INTERACTIVE_REQUIRED=7, NOT_FOUND=9, TIMEOUT=12.
Agents can also drive the same flow through MCP. Every CLI command has a 1:1 tool (cimplify_create_project, cimplify_set_env, cimplify_deploy, cimplify_get_deployment_status, cimplify_add_domain, etc.). See MCP server for connection details.
Next
- Quickstart: three integration tiers (scaffolded template, typed client, REST)
- CLI reference: every subcommand with flags and JSON envelopes
- Deploy: preview vs production, rollback, logs
- Domains: verify, attach, promote primary
Docs
Build storefronts, embed checkout, and let agents transact on Cimplify. The SDK, hosted checkout, and UCP all share one backend and one data model.
Quickstart
From zero to a working storefront in 60 seconds. `cimplify init` scaffolds a Next.js app wired to the local mock; the same code points at your live business when you bring keys.