cimplify

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.

One-shot prompt
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

From zero to production
# 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 --primary

End state: https://shop.example.com resolves to the production deployment of your linked project.

What each step does, in one line

#CommandWhat happens on the wireVerify
0curl ... install | shWorker 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.
1cimplify initMaterializes 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/.
2bun devconcurrently 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.
3cimplify loginPKCE 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 } }.
4cimplify projects create / linkPOST /v1/businesses/<bid>/projects creates project + git repo. link writes .cimplify/project.json..cimplify/project.json exists; cimplify status --json resolves the project.
5cimplify env pushReads .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.
6cimplify deployMints a short-TTL clone token → git pushPOST /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.
7cimplify domains add / verifyadd 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.
8cimplify 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 state

Re-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

StepTime
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

On this page