@kadj-amoah/showrunner 1.1.3 → 1.1.5
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/CHANGELOG.md +49 -0
- package/dist/cli.js +922 -168
- package/dist/cli.js.map +1 -1
- package/package.json +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,55 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to Showrunner are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); the project tracks loose semver — minor bumps for new capability, patch for fixes.
|
|
4
4
|
|
|
5
|
+
## [1.1.5] — 2026-05-24
|
|
6
|
+
|
|
7
|
+
**Phase B + Phase C of the interactive-setup overhaul shipped together.** When the wizard's URL probe fails, it now tries progressively smarter strategies before falling back to a warning.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- **`showrunner set-target` subcommand.** `set-target -c demo.yaml --url http://new-url:port` re-probes the URL, and on success rewrites `recording.target_url` in `demo.yaml`. `--force` skips the probe if you know better. Lets you re-point an existing project after starting your dev server, without re-running `init`.
|
|
12
|
+
- **Port-scan during `init`.** When the user-entered URL doesn't respond, the wizard probes common dev ports on `localhost` in parallel (3000, 3001, 4321, 5173, 5174, 8000, 8080 — covers Next, CRA, Astro, Vite, Django, Vue CLI). Responding ports are offered as a `select` list so the user can just pick the one that's actually up. Total scan time is ~1 second worst case (parallel probes with 800ms timeout each).
|
|
13
|
+
- **Agent-driven dev-server discovery (Phase C).** When the user picks `agent_bridge` as the LLM and has `claude` on PATH, the wizard offers to inspect the project and propose a `command + args + url`. On confirm:
|
|
14
|
+
1. Showrunner snapshots `package.json`, README head, `.env.example`, and common framework configs (vite/next/astro/nuxt/svelte/vue/webpack/remix/gatsby/rsbuild) — total payload capped at ~10 KB.
|
|
15
|
+
2. Spawns `claude -p --output-format json` with a structured prompt + Zod schema for the response.
|
|
16
|
+
3. Validates the proposal (`command`, `args[]`, `url`, `confidence`, one-sentence `rationale`).
|
|
17
|
+
4. Shows the proposal as a `note` and asks the user to confirm spawning it.
|
|
18
|
+
5. On confirm: spawns the dev-server detached + unref'd, polls the proposed URL every 750ms for up to 60s, and reports the spawned PID so the user can stop it later with `kill <pid>`.
|
|
19
|
+
|
|
20
|
+
### Changed
|
|
21
|
+
|
|
22
|
+
- **`init`'s URL section is now a cascade** (`text` prompt → direct probe → port-scan offer → optional agent discovery → fallback). Each step short-circuits on success, so the common case (server already running on the typed URL) still wraps in one quick probe.
|
|
23
|
+
- **`src/setup/targetProbe.ts`** is now used by both `init` and `set-target`; previously the probe was inlined in `doctor`.
|
|
24
|
+
|
|
25
|
+
### Known limitations
|
|
26
|
+
|
|
27
|
+
- The agent-spawned dev server doesn't get tracked across runs — Showrunner doesn't write a PID file or offer a `teardown` for it. Stop it manually with `kill <pid>` (the wizard prints the PID prominently). PID-tracking is a candidate for v1.2.0.
|
|
28
|
+
- `set-target` rewrites `demo.yaml` via `yaml.dump`, which strips comments from the file. Acceptable trade-off for now; CHANGELOG warns the user inline.
|
|
29
|
+
- Agent discovery requires `agent_bridge` as the LLM choice. Future versions will also dispatch via `anthropic` / `openai` providers when those are selected.
|
|
30
|
+
|
|
31
|
+
## [1.1.4] — 2026-05-24
|
|
32
|
+
|
|
33
|
+
**Phase A of the interactive-setup overhaul.** `showrunner init` now walks you through configuration via a real terminal wizard instead of scaffolding placeholder files and expecting you to fill them in afterwards.
|
|
34
|
+
|
|
35
|
+
### Added
|
|
36
|
+
|
|
37
|
+
- **`showrunner init` is interactive by default** (when stdout is a TTY). The wizard:
|
|
38
|
+
1. Detects your environment — `claude` CLI on PATH, `ffmpeg`/`ffprobe`, chromium install, provider env vars already set — and surfaces what it found before any prompts fire.
|
|
39
|
+
2. Asks the right questions in order: project name → resolution preset → LLM provider (defaults to `agent_bridge` if `claude` is detected) → API key paste-in (masked) → TTS provider → API key paste-in → target URL.
|
|
40
|
+
3. **Probes the target URL** with a 4s HEAD request. If your dev server is up, it prints `reachable (HTTP 200, …ms)`; if not, it tells you to run `showrunner set-target` later (subcommand coming in v1.1.5) instead of failing.
|
|
41
|
+
4. Writes a real `.env` (not just `.env.example`) populated with the keys you pasted. `.env.example` still ships for reference / version-controlled documentation.
|
|
42
|
+
- **`--yes` flag for non-interactive use.** `showrunner init --yes` skips the wizard and uses defaults / passed `--name`/`--url`/`--llm-provider`/`--tts-provider`/`--resolution` flags. CI-friendly. When `stdout` isn't a TTY (e.g. piped output) Showrunner forces this mode regardless.
|
|
43
|
+
- **`@clack/prompts` dependency** for the wizard UI — small, ESM-first, no postinstall, no postinstall network hops.
|
|
44
|
+
|
|
45
|
+
### Changed
|
|
46
|
+
|
|
47
|
+
- **`init` footer now adapts to what the wizard already did.** When the wizard wrote your keys into `.env`, the footer skips the "edit .env" step entirely and confirms ".env is already populated". When only some keys were provided (you skipped a prompt), the footer lists just the missing ones with their dashboard URLs.
|
|
48
|
+
|
|
49
|
+
### Coming next
|
|
50
|
+
|
|
51
|
+
- **v1.1.5 (Phase B):** standalone `showrunner set-target` subcommand for re-pointing at a new URL after you start your dev server, plus port-scanning common dev-server ports during init to suggest the right URL automatically.
|
|
52
|
+
- **v1.2.0 (Phase C):** if you've picked `agent_bridge` and have `claude` on PATH, the wizard can offer to read your project, infer your dev-server command + URL, and optionally spawn the server for you.
|
|
53
|
+
|
|
5
54
|
## [1.1.3] — 2026-05-24
|
|
6
55
|
|
|
7
56
|
UX polish on the post-install discovery path, prompted by author feedback during the CachyOS install smoke-test of v1.1.2 ("the entire welcome wagon needs to be worked on"). No functional change — pure copy + structure.
|