
Introducing the Rheo CLI
@getrheo/cli is live — manage apps, flows, channels, experiments, analytics, rollouts, and media from your terminal, CI, or AI agents with personal workspace API keys.
The Rheo dashboard is still the fastest way to design and preview flows on a canvas. But product work does not stop at the browser. Teams script publish checks, agents pull experiment stats, and CI needs a way to list channels without clicking through Account settings.
@getrheo/cli is that interface. It is a terminal client for workspace members: read and write the same product surface the dashboard uses, authenticated with a personal workspace API key, gated by your live role. Full reference: CLI docs.
What you can do today
Install once, then operate on the workspace from any shell:
npm install -g @getrheo/cli
rheo --help
Or skip the global install:
npx @getrheo/cli --help
Covered today:
| Area | Examples |
|---|---|
| Apps | List, get, create, update branding, delete |
| Flows | Draft, versions, save-draft, publish, archive, duplicate |
| Channels | History, assign / unassign flows, archive |
| Experiments | Create, variants, stats, stop, promote |
| Analytics | App overview and flow step metrics (JSON; default last 7 UTC days) |
| Rollouts | Policy, submit, approve, reject |
| Media | List, upload, rename, archive |
Writes use --body '{"…"}' or --file payload.json. Destructive actions require --confirm-name. Machine-readable output is available with --json on lists; mutations and analytics already return JSON.
Out of scope on purpose: billing, members, workspace settings, AI helpers, notifications, and customer records. Those stay in the dashboard.
Auth that matches the dashboard
CLI traffic does not use publishable SDK keys (ob_pk_…). Those authenticate mobile resolve/events. The CLI uses workspace API keys (rheo_wk_…).
- Open Account → Personal in the Rheo dashboard.
- Create a CLI API key and copy the secret once.
- Save it locally:
rheo auth login --api-key rheo_wk_…
rheo whoami
Keys are user-bound and workspace-scoped. Any member can mint a personal key. Mutations follow your current role the same way the dashboard does: owners and admins get broad product writes; editors can ship flows and submit rollouts; viewers stay read-heavy and get 403 on most writes.
For CI, skip the config file and export the key:
export RHEO_API_KEY=rheo_wk_…
export RHEO_API_URL=https://api.getrheo.io # optional
rheo apps list --json
Why a CLI matters for flow platforms
Rheo already separates binary cadence from flow cadence: integrate the SDK once, then publish journey changes over the air. The missing piece for engineering-heavy teams was a programmable client for that second cadence.
Common patterns we built for:
- CI gates — fail a pipeline if a flow still has an unpublished draft before a channel assignment.
- Agent workflows — pull experiment stats or flow analytics as JSON, then propose the next change without scraping the UI.
- Ops scripts — archive a stale channel, reassign a flow, or upload media assets from a release job.
- Local debugging —
rheo flows getandrheo flows draftwhen you need the raw manifest next to your editor.
The canvas remains the place to design. The CLI is the place to automate what you already decided.
A short tour
Confirm identity and capabilities:
rheo whoami
List apps and inspect a flow draft:
rheo apps list --json
rheo flows draft <flowId>
Publish after you have validated the payload (or after an agent wrote a draft via save-draft):
rheo flows publish <flowId>
Read last-week analytics without opening the dashboard:
rheo analytics app-overview <appId>
rheo analytics funnel <flowId>
Full command reference lives in the CLI docs.
Get started
- Create a workspace API key under Account → Personal.
npm install -g @getrheo/cliandrheo auth login --api-key ….- Run
rheo whoami, then the reads and writes your role allows.
Start for free if you do not have a workspace yet. Ship flows from the canvas when you are designing; ship the same product from the terminal when you are automating.