@konstantdotcloud/boombox 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +79 -110
- package/dist/boombox.js +1 -1
- package/dist/index.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,96 +1,44 @@
|
|
|
1
1
|
# @konstantdotcloud/boombox
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
The command line for **Boombox** — your company's governed AI runtime.
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
Ask Gary (the expert inside Boombox) about your business, add files to its memory, run and share **cassettes** (reusable, governed jobs), and connect Boombox to Claude or Cursor as an MCP server.
|
|
6
|
+
|
|
7
|
+
> You need a Boombox account. The CLI signs you in, then talks to your own Boombox instance. Everything runs against your tenant; your API key stays on your machine.
|
|
6
8
|
|
|
7
9
|
## Install
|
|
8
10
|
|
|
9
11
|
```bash
|
|
10
|
-
|
|
12
|
+
npm install -g @konstantdotcloud/boombox
|
|
11
13
|
```
|
|
12
14
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## Quickstart
|
|
15
|
+
Then sign in:
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
boombox login
|
|
19
|
-
boombox whoami # verifies tenant, user, VM URL, and key expiry
|
|
20
|
-
boombox ask "what's at risk on the BNY deal this week?" # one-shot Gary answer over your org
|
|
21
|
-
boombox ingest ./transcripts # upload local files into HomeBase so Gary can answer
|
|
22
|
-
boombox run weekly_recap # trigger a cassette and tail it to a terminal state
|
|
23
|
-
boombox share <run_id> # mint a no-login link to the run's surface
|
|
24
|
-
boombox admin ui # open the VM admin UI through a short-lived cloud grant
|
|
18
|
+
boombox login
|
|
25
19
|
```
|
|
26
20
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
## Commands
|
|
21
|
+
No install needed for one-offs — run any command with `npx`:
|
|
30
22
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
| `boombox login [--tenant <tenant_id>]` | Browser sign-in through `boombox.konstant.cloud`; writes tenant id, VM URL, API key, and expiry to `~/.boombox/config.toml`. |
|
|
35
|
-
| `boombox whoami` | Calls the VM identity endpoint; prints tenant id, user id, VM URL, key expiry, days remaining. |
|
|
36
|
-
| `boombox enroll` | Browser enrollment flow that signs in via WorkOS, provisions an inbox + key, and writes config. |
|
|
37
|
-
| `boombox init` | Manual config fallback for raw provisioned credentials. Prefer `boombox login`. |
|
|
38
|
-
| `boombox doctor` | Connectivity + auth check (config, VM reachability, key validity, MCP boot). |
|
|
23
|
+
```bash
|
|
24
|
+
npx @konstantdotcloud/boombox ask "what changed this week?"
|
|
25
|
+
```
|
|
39
26
|
|
|
40
|
-
|
|
41
|
-
| Command | What it does |
|
|
42
|
-
|-|-|
|
|
43
|
-
| `boombox ask <question> [--model <tier>] [--thinking <level>] [--thread <id>] [--fresh] [--json]` | One-shot question to Gary (HomeBase synthesis + artifacts). `--model`: auto\|fast\|reason\|explore\|premium\|opus. `--thinking`: off\|minimal\|low\|medium\|high\|xhigh. |
|
|
44
|
-
| `boombox run <cassette_name> [--input key=value ...] [--no-tail] [--json]` | Triggers a cassette, prompts for required missing inputs, then polls to a terminal state unless `--no-tail`. |
|
|
45
|
-
| `boombox share <run_id> [--ttl <days>] [--email <addr>] [--json]` | Mints a no-login, signed, expiring run-room link for a run and prints the shareable URL (default TTL 14 days). |
|
|
46
|
-
| `boombox ingest <path...> [--recursive] [--json]` | Uploads local files (transcripts, docs) into HomeBase via presigned upload so Gary can answer over them. |
|
|
27
|
+
## First five minutes
|
|
47
28
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
| `boombox cassettes publish <draft_id> --name <name> [--version <n>] [--json]` | Publishes a dry-run-approved draft to the tenant tier; renders gate rejections (e.g. `dry-run-not-green`) with fix guidance. |
|
|
56
|
-
|
|
57
|
-
### Runs, logs, artifacts
|
|
58
|
-
| Command | What it does |
|
|
59
|
-
|-|-|
|
|
60
|
-
| `boombox runs list [--cassette <id>] [--since 24h] [--actor <id>] [--status <s>] [--limit 20]` | Lists recent runs (run id, cassette, actor, status, duration, start). |
|
|
61
|
-
| `boombox runs show <run_id>` | One run: spec hash, inputs, step trace, delivery receipts, error summary, replay ref. |
|
|
62
|
-
| `boombox logs tail [--cassette <id>]` | Tails run/step events from the VM SSE stream. Ctrl+C exits cleanly. |
|
|
63
|
-
| `boombox artifacts open <artifact_id>` | Opens the artifact URL in the system browser. |
|
|
29
|
+
```bash
|
|
30
|
+
boombox login # opens a browser, signs you in, saves your config
|
|
31
|
+
boombox ask "what's at risk on the BNY deal this week?" # one-shot answer over your org
|
|
32
|
+
boombox ingest ./transcripts # add local files to your company's memory
|
|
33
|
+
boombox run weekly_recap # run a cassette and watch it to completion
|
|
34
|
+
boombox share <run_id> # get a no-login link to the result
|
|
35
|
+
```
|
|
64
36
|
|
|
65
|
-
|
|
66
|
-
| Command | What it does |
|
|
67
|
-
|-|-|
|
|
68
|
-
| `boombox mcp add --id <server_id> --name <display> --url <url> [--transport streamable_http\|sse] [--auth-header <h>] [--secret-ref <ENV_KEY>] [--tools t1,t2]` | Registers a tenant-owned MCP server on this VM for cassettes to reference. |
|
|
69
|
-
| `boombox mcp list` | Lists tenant MCP servers registered on this VM. |
|
|
70
|
-
| `boombox mcp rm <server_id>` | Removes a tenant MCP server registration. |
|
|
71
|
-
| `boombox mcp status <server_id> [--enable\|--disable]` | Enables or disables a tenant MCP server registration. |
|
|
72
|
-
| `boombox capabilities list [--kind <k>] [--status available\|missing]` | Lists registered recipes, tools, artifact templates, prompt templates. |
|
|
73
|
-
| `boombox keys list` | Lists tenant API keys visible to the current API key authority. |
|
|
74
|
-
|
|
75
|
-
### Serve (MCP / HTTP) & process control
|
|
76
|
-
| Command | What it does |
|
|
77
|
-
|-|-|
|
|
78
|
-
| `boombox serve [--mcp] [--http] [--port <port>] [--profile default\|advanced\|operator]` | Boots the stdio MCP server (`--mcp`) and/or the local HTTP proxy (`--http`). |
|
|
79
|
-
| `boombox status` | Checks VM health, `/v2/api/info`, and run-event stream reachability. |
|
|
80
|
-
| `boombox reload` | SIGHUP a running `boombox serve` to re-read config. |
|
|
81
|
-
| `boombox restart [--no-detach] [--timeout <ms>]` | Stops and respawns `boombox serve` (detached by default). |
|
|
82
|
-
| `boombox stop [--timeout <ms>]` | Stops a running `boombox serve`. |
|
|
83
|
-
| `boombox upgrade [--check] [--force]` | Self-update through the npm registry. |
|
|
84
|
-
|
|
85
|
-
### Admin (super-admin)
|
|
86
|
-
| Command | What it does |
|
|
87
|
-
|-|-|
|
|
88
|
-
| `boombox admin ui [--cloud-url <url>]` | Requests a short-lived admin grant and opens the tenant VM admin UI. |
|
|
89
|
-
| `boombox admin provision <tenant> [--name <n>] [--company <c>] [--ceo <c>] [--control-plane <url>] [--admin-key <key>] [--json]` | Super-admin: provision a tenant (doc + keypair + VM) via the control plane. Needs `ADMIN_API_KEY` (flag or `BOOMBOX_ADMIN_API_KEY`). |
|
|
37
|
+
`boombox whoami` shows who you're signed in as; `boombox doctor` checks your setup if something looks off.
|
|
90
38
|
|
|
91
|
-
##
|
|
39
|
+
## Connect it to Claude or Cursor (MCP)
|
|
92
40
|
|
|
93
|
-
|
|
41
|
+
Add this to your MCP client's config and restart the client:
|
|
94
42
|
|
|
95
43
|
```json
|
|
96
44
|
{
|
|
@@ -103,56 +51,77 @@ For MCP clients, run `boombox serve --mcp` after `boombox login` succeeds (see [
|
|
|
103
51
|
}
|
|
104
52
|
```
|
|
105
53
|
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
## Config file
|
|
54
|
+
Your AI client can then call Gary directly — ask questions, manage threads, fetch artifacts. Choose how much it can do with `--profile` (or the `GARY_MCP_PROFILE` env var): `default` (ask + threads + artifacts), `advanced` (adds cassette authoring), `operator` (adds admin).
|
|
109
55
|
|
|
110
|
-
|
|
56
|
+
## Command reference
|
|
111
57
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
58
|
+
### Ask, run, share, ingest
|
|
59
|
+
| Command | What it does |
|
|
60
|
+
|-|-|
|
|
61
|
+
| `boombox ask <question>` | One-shot answer from Gary over your org. Flags: `--model auto\|fast\|reason\|explore\|premium\|opus`, `--thinking off\|…\|xhigh`, `--thread <id>`, `--fresh`, `--json`. |
|
|
62
|
+
| `boombox run <cassette> [--input k=v …]` | Run a cassette; prompts for missing inputs, then waits for it to finish. `--no-tail` to fire-and-exit, `--json` for raw output. |
|
|
63
|
+
| `boombox share <run_id>` | Mint a no-login, expiring link to a run's result. `--ttl <days>` (default 14), `--email <addr>`, `--json`. |
|
|
64
|
+
| `boombox ingest <path…>` | Upload files (transcripts, docs) into your company memory. `--recursive`, `--json`. |
|
|
117
65
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
66
|
+
### Cassettes
|
|
67
|
+
| Command | What it does |
|
|
68
|
+
|-|-|
|
|
69
|
+
| `boombox cassettes list [--status published\|draft\|all]` | List cassettes available to you. |
|
|
70
|
+
| `boombox cassettes show <id> [--draft]` | Print a cassette's definition (YAML). |
|
|
71
|
+
| `boombox cassettes validate <id> [--draft]` | Run readiness checks on a cassette. |
|
|
72
|
+
| `boombox cassettes dry-run <id> [--draft]` | Dry-run a draft — verdict + blockers, no durable writes. |
|
|
73
|
+
| `boombox cassettes publish <draft_id> --name <name>` | Publish a dry-run-approved draft. `--version <n>`, `--json`. |
|
|
121
74
|
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
75
|
+
### Runs & artifacts
|
|
76
|
+
| Command | What it does |
|
|
77
|
+
|-|-|
|
|
78
|
+
| `boombox runs list [--cassette <id>] [--since 24h] [--status <s>] [--limit 20]` | List recent runs. |
|
|
79
|
+
| `boombox runs show <run_id>` | One run in detail: inputs, step trace, receipts, errors. |
|
|
80
|
+
| `boombox logs tail [--cassette <id>]` | Stream live run/step events (Ctrl+C to stop). |
|
|
81
|
+
| `boombox artifacts open <artifact_id>` | Open an artifact in your browser. |
|
|
125
82
|
|
|
126
|
-
|
|
127
|
-
|
|
83
|
+
### Identity & setup
|
|
84
|
+
| Command | What it does |
|
|
85
|
+
|-|-|
|
|
86
|
+
| `boombox login [--tenant <id>]` | Sign in via the browser; writes `~/.boombox/config.toml`. |
|
|
87
|
+
| `boombox whoami` | Show who you're signed in as + key expiry. |
|
|
88
|
+
| `boombox doctor` | Check config, connectivity, and auth. |
|
|
89
|
+
| `boombox enroll` / `boombox init` | First-time enrollment / manual config (most people just use `login`). |
|
|
128
90
|
|
|
129
|
-
|
|
91
|
+
### Connect your own MCP servers, capabilities, keys
|
|
92
|
+
| Command | What it does |
|
|
93
|
+
|-|-|
|
|
94
|
+
| `boombox mcp add --id <id> --name <name> --url <url> [--transport streamable_http\|sse] [--tools a,b]` | Register a tenant-owned MCP server your cassettes can call. |
|
|
95
|
+
| `boombox mcp list` / `rm <id>` / `status <id> [--enable\|--disable]` | Manage your registered MCP servers. |
|
|
96
|
+
| `boombox capabilities list` | List your registered recipes, tools, and templates. |
|
|
97
|
+
| `boombox keys list` | List your tenant API keys. |
|
|
130
98
|
|
|
131
|
-
|
|
99
|
+
### Serve & process control
|
|
100
|
+
| Command | What it does |
|
|
101
|
+
|-|-|
|
|
102
|
+
| `boombox serve [--mcp] [--http] [--port <p>] [--profile <p>]` | Start the MCP server (`--mcp`) and/or a local web UI proxy (`--http`). |
|
|
103
|
+
| `boombox status` | Check your Boombox instance's health. |
|
|
104
|
+
| `boombox reload` / `restart` / `stop` | Manage a running `boombox serve`. |
|
|
105
|
+
| `boombox upgrade [--check]` | Update this CLI to the latest version. |
|
|
132
106
|
|
|
133
|
-
|
|
107
|
+
### Admin (super-admin only)
|
|
108
|
+
| Command | What it does |
|
|
109
|
+
|-|-|
|
|
110
|
+
| `boombox admin ui` | Open the admin UI in your browser. |
|
|
111
|
+
| `boombox admin provision <tenant>` | Provision a new tenant (needs `ADMIN_API_KEY`). |
|
|
134
112
|
|
|
135
|
-
|
|
113
|
+
## Configuration
|
|
136
114
|
|
|
137
|
-
|
|
138
|
-
- `GET /api/...` → proxied to the configured VM/cloud gateway with `Authorization: Bearer <api_key>` injected. The browser never sees your API key.
|
|
139
|
-
- `GET /gateway/...` → rewritten to `/api/gateway/...` upstream.
|
|
140
|
-
- `GET /healthz` → 200 if config loaded.
|
|
115
|
+
Your settings live in `~/.boombox/config.toml` — your tenant id, your instance URL, and your API key. It's created with `600` permissions and never leaves your machine. Point the CLI at a different file with `BOOMBOX_HOME=/some/dir`.
|
|
141
116
|
|
|
142
|
-
|
|
117
|
+
`boombox login` writes this for you; you rarely touch it directly.
|
|
143
118
|
|
|
144
119
|
## Troubleshooting
|
|
145
120
|
|
|
146
|
-
- **`
|
|
147
|
-
- **`
|
|
148
|
-
-
|
|
149
|
-
- **
|
|
150
|
-
- **Port 8787 already in use** — pass `--port 9000` to `boombox serve --http`, or set `http_port` in config.
|
|
151
|
-
- **MCP boot test fails** — make sure your Node version is `>= 20`.
|
|
152
|
-
|
|
153
|
-
## Privacy & data
|
|
154
|
-
|
|
155
|
-
The CLI stores config and API keys locally; it does not store run output, telemetry, or tenant data on disk. Runtime data, replay packets, artifacts, and events live in the tenant VM/Mongo path configured for that tenant. LLM calls route through the tenant's configured provider path.
|
|
121
|
+
- **`config not found`** — run `boombox login`.
|
|
122
|
+
- **`401` / `403`** — your key expired or is invalid; run `boombox login` again.
|
|
123
|
+
- **can't reach your instance** — check `boombox status`; confirm your instance URL in `~/.boombox/config.toml`.
|
|
124
|
+
- **MCP won't boot** — make sure you're on Node 20+.
|
|
156
125
|
|
|
157
126
|
## License
|
|
158
127
|
|
package/dist/boombox.js
CHANGED
|
@@ -37694,7 +37694,7 @@ var {
|
|
|
37694
37694
|
init_esm_shims();
|
|
37695
37695
|
|
|
37696
37696
|
// package.json
|
|
37697
|
-
var version = "0.3.
|
|
37697
|
+
var version = "0.3.1";
|
|
37698
37698
|
|
|
37699
37699
|
// src/lib/version.ts
|
|
37700
37700
|
var BOOMBOX_VERSION = version;
|
package/dist/index.js
CHANGED
|
@@ -34669,7 +34669,7 @@ init_esm_shims();
|
|
|
34669
34669
|
init_esm_shims();
|
|
34670
34670
|
|
|
34671
34671
|
// package.json
|
|
34672
|
-
var version = "0.3.
|
|
34672
|
+
var version = "0.3.1";
|
|
34673
34673
|
|
|
34674
34674
|
// src/lib/version.ts
|
|
34675
34675
|
var BOOMBOX_VERSION = version;
|
package/package.json
CHANGED