@karum/cli
v0.3.0
Published
Unified CLI for the Karum platform — auth, theme publishing, integrations, webhooks.
Downloads
996
Maintainers
Readme
@karum/cli
Unified CLI for the Karum platform. Binary: karum.
# after publish (see PUBLISH.md):
npx @karum/cli login
# or global:
npm i -g @karum/cli && karum login
# from the monorepo (today):
pnpm -F @karum/cli build && node packages/cli/dist/bin.js loginCommands
Auth & environments
| Command | Description |
| --- | --- |
| karum login [--url <baseUrl>] [--store <id>] [--profile <name>] | Browser-authorize (opens the panel, you approve — no password in the terminal). Add --token <jwt> or --email <e> --password <p> for non-interactive CI. Stores a profile in ~/.karum/config.json. |
| karum whoami | Show the active profile's identity + validate the token (/auth/sessions). |
| karum logout [--profile <name>] | Remove a stored profile. |
| karum env list \| use <name> \| add <name> --url <u> --token <t> [--store <id>] \| remove <name> | Manage named environments (prod / staging / local). |
KARUM_API_URL / KARUM_API_TOKEN / KARUM_STORE_ID env vars override the active profile (CI-friendly).
Theme (delegates to @karum/theme-kit)
karum theme <init | validate | compile | preview | dev | pull | push | deploy> [options] — the active profile's URL/token/store are injected automatically.
Integration
| Command | Description |
| --- | --- |
| karum integration scaffold [--dir <path>] [--name <name>] | Scaffold a local integration project (integration.json + handlers). |
| karum integration push --url <deliveryUrl> [--dir <path>] | Register a webhook subscription for the manifest's topics. |
| karum integration logs --webhook <id> | Recent delivery attempts for a webhook. |
Webhooks
karum webhooks <list | topics | deliveries <id> | test <id>> — manage tenant webhook endpoints.
Auth model
login stores a merchant JWT (the only token accepted as Authorization: Bearer across the theme-packages and webhooks APIs). API keys (sk_live_…) authenticate via the x-api-key header and are not interchangeable here.
Development
pnpm -F @karum/cli build # tsc -b
pnpm -F @karum/cli test # vitest
pnpm -F @karum/cli run typecheck