@kadj-amoah/showrunner 1.1.2 → 1.1.3
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 +9 -0
- package/dist/cli.js +31 -27
- package/dist/cli.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,15 @@
|
|
|
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.3] — 2026-05-24
|
|
6
|
+
|
|
7
|
+
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.
|
|
8
|
+
|
|
9
|
+
### Changed
|
|
10
|
+
|
|
11
|
+
- **Bare-command welcome rewritten to one-thing-at-a-time.** Each state (chromium missing, no project here, project here) now shows a single next command and a one-line description, instead of a 15-line wall that duplicated `init`'s footer and crammed multiple ideas per line. The outside-project branch now just points at `showrunner init` and defers all sequencing to `init`'s own output.
|
|
12
|
+
- **`init` next-steps footer tightened.** The previous `cp .env.example .env # then paste in: KEY_A, KEY_B` line conflated three things (file op, key list, no-keys alternative). Now split: step 2 is the `cp`, step 3 lists each required env var on its own line alongside the dashboard URL it's issued from, with the `agent_bridge` alternative as a single parenthetical at the end. Each step is exactly one observable action.
|
|
13
|
+
|
|
5
14
|
## [1.1.2] — 2026-05-24
|
|
6
15
|
|
|
7
16
|
Hot-fix for a regression discovered while smoke-testing the v1.1.1 install on CachyOS.
|
package/dist/cli.js
CHANGED
|
@@ -5660,23 +5660,35 @@ function printNextSteps(projectName, resolved) {
|
|
|
5660
5660
|
let step = 1;
|
|
5661
5661
|
lines.push(` ${step++}. cd ${projectName}`);
|
|
5662
5662
|
if (envVars.length > 0) {
|
|
5663
|
-
|
|
5664
|
-
lines.push(` ${step++}.
|
|
5663
|
+
lines.push(` ${step++}. cp .env.example .env`);
|
|
5664
|
+
lines.push(` ${step++}. Edit .env to fill in:`);
|
|
5665
|
+
for (const v of envVars) {
|
|
5666
|
+
const dash = PROVIDER_DASHBOARDS[v];
|
|
5667
|
+
lines.push(` ${v}${dash ? ` (get it at ${dash})` : ""}`);
|
|
5668
|
+
}
|
|
5669
|
+
lines.push(
|
|
5670
|
+
` (No keys? Switch llm.default.provider to \`agent_bridge\` in demo.yaml \u2014 uses your local Claude CLI instead.)`
|
|
5671
|
+
);
|
|
5665
5672
|
} else {
|
|
5666
5673
|
lines.push(
|
|
5667
|
-
` ${step++}. (
|
|
5674
|
+
` ${step++}. (.env not needed \u2014 agent_bridge LLM + ${resolved.tts} TTS don't use API keys.)`
|
|
5668
5675
|
);
|
|
5669
5676
|
}
|
|
5670
|
-
lines.push(` ${step++}.
|
|
5677
|
+
lines.push(` ${step++}. Edit docs/PRD.md (the stub explains what each section is for).`);
|
|
5671
5678
|
lines.push(` ${step++}. showrunner doctor -c demo.yaml`);
|
|
5672
|
-
lines.push(` ${step++}. showrunner run -c demo.yaml
|
|
5679
|
+
lines.push(` ${step++}. showrunner run -c demo.yaml # \u2192 output/demo_final.mp4`);
|
|
5673
5680
|
lines.push("");
|
|
5674
5681
|
lines.push(
|
|
5675
|
-
`
|
|
5682
|
+
`Don't want to write a PRD? Run \`showrunner understand -c demo.yaml --interactive\` instead \u2014 it asks 5 questions and builds the product model from your answers.`
|
|
5676
5683
|
);
|
|
5677
5684
|
lines.push("");
|
|
5678
5685
|
process.stdout.write(lines.join("\n"));
|
|
5679
5686
|
}
|
|
5687
|
+
var PROVIDER_DASHBOARDS = {
|
|
5688
|
+
ANTHROPIC_API_KEY: "https://console.anthropic.com/settings/keys",
|
|
5689
|
+
OPENAI_API_KEY: "https://platform.openai.com/api-keys",
|
|
5690
|
+
ELEVENLABS_API_KEY: "https://elevenlabs.io/app/settings/api-keys"
|
|
5691
|
+
};
|
|
5680
5692
|
function requiredEnvVars(resolved) {
|
|
5681
5693
|
const vars = /* @__PURE__ */ new Set();
|
|
5682
5694
|
if (resolved.llm === "anthropic") vars.add("ANTHROPIC_API_KEY");
|
|
@@ -7603,7 +7615,7 @@ async function fileExists10(path) {
|
|
|
7603
7615
|
|
|
7604
7616
|
// src/cli.ts
|
|
7605
7617
|
var program = new Command();
|
|
7606
|
-
program.name("showrunner").description("Automated product demo recording & production tool").version("1.1.
|
|
7618
|
+
program.name("showrunner").description("Automated product demo recording & production tool").version("1.1.3").option("--json", "emit structured JSON logs to stdout").option("--log-level <level>", "log level (debug|info|warn|error)").hook("preAction", (thisCmd) => {
|
|
7607
7619
|
const opts = thisCmd.opts();
|
|
7608
7620
|
if (opts.json) logger.setJson(true);
|
|
7609
7621
|
if (opts.logLevel) logger.setLevel(opts.logLevel);
|
|
@@ -7664,34 +7676,26 @@ async function printWelcome() {
|
|
|
7664
7676
|
} catch {
|
|
7665
7677
|
}
|
|
7666
7678
|
const browserMissing = await isChromiumMissing();
|
|
7667
|
-
const lines = ["", `Showrunner v1.1.
|
|
7679
|
+
const lines = ["", `Showrunner v1.1.3`, ""];
|
|
7668
7680
|
if (browserMissing) {
|
|
7669
|
-
lines.push(`
|
|
7681
|
+
lines.push(`Showrunner records using Chromium. You haven't installed it yet.`);
|
|
7670
7682
|
lines.push(``);
|
|
7671
|
-
lines.push(` showrunner install-browser
|
|
7683
|
+
lines.push(` showrunner install-browser`);
|
|
7672
7684
|
lines.push(``);
|
|
7673
|
-
|
|
7674
|
-
if (inProject) {
|
|
7675
|
-
lines.push(`
|
|
7685
|
+
lines.push(`(~150 MB, one-off. Re-run \`showrunner\` after it finishes for the next step.)`);
|
|
7686
|
+
} else if (inProject) {
|
|
7687
|
+
lines.push(`This is a Showrunner project (found demo.yaml).`);
|
|
7676
7688
|
lines.push(``);
|
|
7677
|
-
lines.push(` showrunner doctor -c demo.yaml
|
|
7678
|
-
lines.push(` showrunner run -c demo.yaml
|
|
7689
|
+
lines.push(` showrunner doctor -c demo.yaml # check everything is wired correctly`);
|
|
7690
|
+
lines.push(` showrunner run -c demo.yaml # then run the full pipeline`);
|
|
7679
7691
|
lines.push(``);
|
|
7680
|
-
lines.push(`
|
|
7692
|
+
lines.push(`Full command list: \`showrunner --help\``);
|
|
7681
7693
|
} else {
|
|
7682
|
-
lines.push(`No
|
|
7683
|
-
lines.push(``);
|
|
7684
|
-
lines.push(` showrunner init --name my-demo --url http://localhost:3000`);
|
|
7685
|
-
lines.push(``);
|
|
7686
|
-
lines.push(`Then inside the new directory:`);
|
|
7694
|
+
lines.push(`No Showrunner project in this directory. To create one:`);
|
|
7687
7695
|
lines.push(``);
|
|
7688
|
-
lines.push(`
|
|
7689
|
-
lines.push(` cp .env.example .env # paste provider keys, or use agent_bridge (no keys)`);
|
|
7690
|
-
lines.push(` $EDITOR docs/PRD.md # write your product brief`);
|
|
7691
|
-
lines.push(` showrunner doctor -c demo.yaml # preflight`);
|
|
7692
|
-
lines.push(` showrunner run -c demo.yaml # full pipeline \u2192 output/demo_final.mp4`);
|
|
7696
|
+
lines.push(` showrunner init`);
|
|
7693
7697
|
lines.push(``);
|
|
7694
|
-
lines.push(
|
|
7698
|
+
lines.push(`\`init\` scaffolds the project and prints the next 4 commands tailored to your provider choice.`);
|
|
7695
7699
|
}
|
|
7696
7700
|
lines.push("");
|
|
7697
7701
|
process.stdout.write(lines.join("\n"));
|