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 CashSDK with npm, Homebrew or a release binary, sign in through your browser, and set up every supported platform 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
Or download the binary for your platform from the
latest release and put it
on your PATH. Builds are published for macOS (Apple silicon and Intel), Linux
(x64 and arm64) and Windows (x64).
Check it with cashsdk version, which prints the version you installed.
npm install -g cashsdk-cli@2.1.0
# Or run without a global install:
npx cashsdk-cli@2.1.0 version
The npm package includes the same five platform binaries as the GitHub release and carries
build provenance. cashsdk version should report cashsdk 2.1.0.
Sign in with your browser#
CLI 2.1.0 includes browser sign-in and is available through Homebrew and
GitHub releases and npm. Check cashsdk version after upgrading.
cashsdk login
cashsdk connect claude
cashsdk connect cursor --write
cashsdk connect codex
Login opens CashSDK, where you compare the terminal verification code, select a
workspace and optionally one app, then approve access. The CLI stores private
credentials and refreshes its session automatically. --no-browser prints the
URL for you to open on the same computer. Use cashsdk auth set for headless
machines and CI.
connect defaults to OAuth and does not copy your CLI session to
other clients. connect --with-token is an explicit fallback for a saved durable
MCP or setup token. Each editor signs in independently. The
plugin and skill can be installed without the CLI.
Headless and CI authentication#
For headless use, the CLI also accepts 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.