CLI

Install the cashsdk CLI with Homebrew or npm, sign in with a setup or MCP token, and run your whole store setup from the terminal.

The CashSDK CLI (cashsdk) is a single native binary that runs your account from the terminal: it performs every deterministic setup step, shows what is left and who has to do it, tails live events, and generates typed catalog constants and integration snippets for your app code.

Install#

bash
brew install cashsdk/tap/cashsdk
bash
npm i -g cashsdk-cli
bash
npx cashsdk-cli doctor

The npm package embeds prebuilt binaries for macOS (Apple silicon and Intel), Linux (x64 and arm64) and Windows (x64); Node is only the launcher.

Sign in#

The CLI authenticates with a setup token (csk_st_…) or a durable MCP token (csk_mcp_…):

TokenWhere to get itScope
Setup tokenyour app's page, "Generate prompt"one app, setup routes only, expires after 24h
MCP tokenSettings, MCP, "Create token"your workspace, durable; use for daily work and CI
bash
cashsdk auth set --app app_your_id --token csk_st_...

The token is stored once at ~/.config/cashsdk/config.json (mode 0600) and never has to appear on a command line again. In CI, set CASHSDK_TOKEN and CASHSDK_APP in the environment instead; they override the file.

Secret keys (csk_sk_…) authenticate the server data API, not the CLI. The CLI refuses them up front with an explanation. Re-generating the dashboard prompt revokes the previous setup token, so avoid re-generating while a session is mid-run.

From zero to a working setup#

bash
cashsdk doctor              # reachability, credential, app, checklist
cashsdk setup guide         # what is next, with the command for each step
cashsdk setup run           # every deterministic step in one idempotent pass
cashsdk snippets            # compilable SDK snippets for your app code
cashsdk setup verify --wait # watches until every checklist item passes

setup run syncs the store catalog, wires a paywall, placement and campaign, prints the store-console steps only you can do, and requests the notification test. Re-running is always safe. Two things are never guessed: which entitlement a product unlocks (pass --map product=entitlement), and store credentials, which upload only in the dashboard.

What it's for#

  • Guided setup with setup guide, setup run, setup status, setup verify --wait.
  • Generate typed code with codegen (--lang swift|kotlin|typescript), so catalog drift becomes a compile error.
  • Inspect with catalog, paywalls, templates, apps, whoami.
  • Observe with events, transactions, and the live doctor.
  • Connect agents with connect (Claude Code, Cursor, Codex MCP configs).
  • Gate CI with checklist --require-complete and precise exit codes.

Next steps#