Want an agent to do it for you instead? The dashboard's one-paste prompt drives this CLI, and the hosted MCP server offers the same operations to chat clients.
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#
brew install cashsdk/tap/cashsdk
npm i -g cashsdk-cli
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_…):
| Token | Where to get it | Scope |
|---|---|---|
| Setup token | your app's page, "Generate prompt" | one app, setup routes only, expires after 24h |
| MCP token | Settings, MCP, "Create token" | your workspace, durable; use for daily work and CI |
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#
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 livedoctor. - Connect agents with
connect(Claude Code, Cursor, Codex MCP configs). - Gate CI with
checklist --require-completeand precise exit codes.