demobite 1.0.0 → 1.0.2

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 CHANGED
@@ -11,7 +11,8 @@ npx demobite
11
11
  ```
12
12
 
13
13
  That one command checks your setup, installs the recorder skill for
14
- [Claude Code](https://claude.com/claude-code), and wires the DemoBites
14
+ your coding agent — [Claude Code](https://claude.com/claude-code), Cursor,
15
+ or Codex — and wires the DemoBites
15
16
  management MCP so your agent can also run your Update Center and Demo Center.
16
17
  Sign-in happens through your own browser — no passwords in the terminal, ever.
17
18
  Then you just ask your agent:
@@ -30,12 +31,59 @@ The agent storyboards the flow, films it in a real Chrome, and stages the take
30
31
  for your approval inside DemoBites. You approve in the product; the platform
31
32
  does the rest.
32
33
 
34
+ ## Manage DemoBites from your agent (MCP)
35
+
36
+ Recording is half the story. The same package wires the **DemoBites management
37
+ MCP** — a control plane your agent uses to run your Update Center and Demo
38
+ Center. Your customers' agents read your centers; your agent runs them.
39
+
40
+ ```bash
41
+ npx demobite mcp
42
+ ```
43
+
44
+ Claude Code is registered automatically. Any other MCP client works over
45
+ Streamable HTTP: point it at `https://app.demobites.com/api/mcp` with the
46
+ `Authorization: Bearer <key>` header the command prints (in Cursor, add both
47
+ under Settings → MCP). Then talk to your agent like a teammate:
48
+
49
+ > "Create a release with my latest bites, add Spanish, and publish it."
50
+
51
+ > "What's on our Demo Center? Swap the checkout bite for the onboarding one."
52
+
53
+ ### What it can do — 19 tools
54
+
55
+ | Group | Tools |
56
+ |---|---|
57
+ | Connect | `get_started` · `connect_demobites` · `check_connection` · `get_recording_options` |
58
+ | Read | `get_status` · `list_bites` · `list_releases` · `get_release` · `list_languages` |
59
+ | Draft & edit | `create_release` · `update_release` · `assign_bites_to_release` · `update_center_settings` · `add_language` · `update_demo_center` |
60
+ | Publish — with your approval | `publish_release` · `unpublish_release` · `remove_language` · `publish_demo_center` |
61
+
62
+ The server describes itself: any client's `tools/list` returns every tool with
63
+ its full input schema, straight from the running code.
64
+
65
+ ### You stay in charge
66
+
67
+ Draft work executes directly, exactly like clicking around the product. But
68
+ anything that touches a **public** page is two-phase: the tool returns a
69
+ human-readable preview plus a single-use confirmation token, your agent shows
70
+ you the preview, and only your go-ahead executes it. Tokens expire in ten
71
+ minutes, are bound to the exact action and arguments, and every management
72
+ call lands in an audit log.
73
+
74
+ ### Plans
75
+
76
+ Connecting and reading are open. Managing requires the **Grow** plan.
77
+ Recording works on every plan.
78
+
79
+ Full guide: [Manage from your agent](https://www.demobites.com/docs/bites/manage-from-your-agent)
80
+
33
81
  ## What's in this repository
34
82
 
35
83
  | Directory | What it is |
36
84
  |---|---|
37
85
  | `launcher/` | The `npx demobite` entry — environment checks, skill install, login |
38
- | `skill/` | The DemoBites recorder skill for Claude Code (staging, preview, approval flow) |
86
+ | `skill/` | The DemoBites recorder skill for coding agents (staging, preview, approval flow) |
39
87
  | `recorder/` | The open recorder — same filming engine, no account, ends at a polished `demo.mp4` |
40
88
  | `scripts/` | The shared engine: filming, clock calibration, cutting |
41
89
 
@@ -43,7 +91,7 @@ does the rest.
43
91
 
44
92
  The `recorder/` directory is a standalone skill: the same real-browser filming,
45
93
  hover-anchor clock calibration and camera work, delivering a finished, styled
46
- `demo.mp4` on your disk — no account, no upload. Point Claude Code at it and
94
+ `demo.mp4` on your disk — no account, no upload. Point your coding agent at it and
47
95
  film. When you want narration, zooms, an editable timeline and hosting, the
48
96
  sibling skill in `skill/` is one login away.
49
97
 
@@ -57,7 +105,7 @@ is cryptographically tied to a public commit in this repository.
57
105
  ## Requirements
58
106
 
59
107
  - Node 18+
60
- - [Claude Code](https://claude.com/claude-code) the recorder is agent-driven
108
+ - A coding agent — [Claude Code](https://claude.com/claude-code), Cursor, or Codex; the recorder is agent-driven
61
109
  - Google Chrome (recommended; films with the real browser) — otherwise
62
110
  Chromium is downloaded on first take
63
111
  - ffmpeg (`brew install ffmpeg` on macOS)
@@ -49,8 +49,8 @@ if (chromePaths.some((p) => fs.existsSync(p)) || hasBin("google-chrome")) ok("Go
49
49
  else warn("Google Chrome not found — the recorder will download Chromium on first take");
50
50
  if (hasBin("ffmpeg")) ok("ffmpeg");
51
51
  else warn("ffmpeg not found — install it (macOS: brew install ffmpeg) before recording");
52
- if (hasBin("claude")) ok("Claude Code (the agent that drives the recorder)");
53
- else warn("Claude Code not found — install it from https://claude.com/claude-code, the recorder is agent-driven");
52
+ if (hasBin("claude")) ok("Claude Code (drives the recorder; MCP registers automatically)");
53
+ else warn("Claude Code not found — using Cursor or Codex? They drive the recorder too; MCP setup prints below");
54
54
 
55
55
  // ── 2. Install / update the skill ──────────────────────────────────────────
56
56
  const skillsDir = path.join(os.homedir(), ".claude", "skills");
@@ -139,7 +139,8 @@ Publishing always shows you a preview to approve first.
139
139
  const cfg = readCfg();
140
140
  if (cfg?.api_key) registerMcp(cfg, { quiet: true });
141
141
  console.log(`
142
- Ready. Everything is agent-driven — open Claude Code in your project and ask:
142
+ Ready. Everything is agent-driven — open your coding agent (Claude Code,
143
+ Cursor, Codex) in your project and ask:
143
144
 
144
145
  "Record a demo of <your flow> and upload it to DemoBites"
145
146
  "Create a release with my latest bites and add Spanish"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "demobite",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "The DemoBites agentic recorder \u2014 you prompt, it films a real browser, and DemoBites turns the take into an editable demo bite.",
5
5
  "bin": {
6
6
  "demobite": "launcher/index.mjs"