chorus-codes 0.8.32 → 0.8.34

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.
Files changed (101) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +1 -1
  3. package/.next/build-manifest.json +2 -2
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  6. package/.next/server/app/_global-error.html +1 -1
  7. package/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/.next/server/app/_not-found.html +1 -1
  16. package/.next/server/app/_not-found.rsc +1 -1
  17. package/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  19. package/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  22. package/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  23. package/.next/server/app/connect/page_client-reference-manifest.js +1 -1
  24. package/.next/server/app/demo/[scenario]/page_client-reference-manifest.js +1 -1
  25. package/.next/server/app/new/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/new.html +1 -1
  27. package/.next/server/app/new.rsc +1 -1
  28. package/.next/server/app/new.segments/_full.segment.rsc +1 -1
  29. package/.next/server/app/new.segments/_head.segment.rsc +1 -1
  30. package/.next/server/app/new.segments/_index.segment.rsc +1 -1
  31. package/.next/server/app/new.segments/_tree.segment.rsc +1 -1
  32. package/.next/server/app/new.segments/new/__PAGE__.segment.rsc +1 -1
  33. package/.next/server/app/new.segments/new.segment.rsc +1 -1
  34. package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  35. package/.next/server/app/onboarding.html +1 -1
  36. package/.next/server/app/onboarding.rsc +1 -1
  37. package/.next/server/app/onboarding.segments/_full.segment.rsc +1 -1
  38. package/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
  39. package/.next/server/app/onboarding.segments/_index.segment.rsc +1 -1
  40. package/.next/server/app/onboarding.segments/_tree.segment.rsc +1 -1
  41. package/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +1 -1
  42. package/.next/server/app/onboarding.segments/onboarding.segment.rsc +1 -1
  43. package/.next/server/app/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/personas/page_client-reference-manifest.js +1 -1
  45. package/.next/server/app/personas.html +1 -1
  46. package/.next/server/app/personas.rsc +1 -1
  47. package/.next/server/app/personas.segments/_full.segment.rsc +1 -1
  48. package/.next/server/app/personas.segments/_head.segment.rsc +1 -1
  49. package/.next/server/app/personas.segments/_index.segment.rsc +1 -1
  50. package/.next/server/app/personas.segments/_tree.segment.rsc +1 -1
  51. package/.next/server/app/personas.segments/personas/__PAGE__.segment.rsc +1 -1
  52. package/.next/server/app/personas.segments/personas.segment.rsc +1 -1
  53. package/.next/server/app/runs/[runId]/page_client-reference-manifest.js +1 -1
  54. package/.next/server/app/runs/page_client-reference-manifest.js +1 -1
  55. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  56. package/.next/server/app/settings/permissions/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/settings.html +1 -1
  58. package/.next/server/app/settings.rsc +1 -1
  59. package/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  60. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  61. package/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  62. package/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  63. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  64. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  65. package/.next/server/app/templates/page_client-reference-manifest.js +1 -1
  66. package/.next/server/app/templates.html +1 -1
  67. package/.next/server/app/templates.rsc +1 -1
  68. package/.next/server/app/templates.segments/_full.segment.rsc +1 -1
  69. package/.next/server/app/templates.segments/_head.segment.rsc +1 -1
  70. package/.next/server/app/templates.segments/_index.segment.rsc +1 -1
  71. package/.next/server/app/templates.segments/_tree.segment.rsc +1 -1
  72. package/.next/server/app/templates.segments/templates/__PAGE__.segment.rsc +1 -1
  73. package/.next/server/app/templates.segments/templates.segment.rsc +1 -1
  74. package/.next/server/app-paths-manifest.json +1 -1
  75. package/.next/server/middleware-build-manifest.js +1 -1
  76. package/.next/server/pages/404.html +1 -1
  77. package/.next/server/pages/500.html +1 -1
  78. package/.next/server/server-reference-manifest.json +1 -1
  79. package/.next/trace +20 -20
  80. package/.next/trace-build +1 -1
  81. package/dist/cli/commands/quickstart.js +347 -0
  82. package/dist/cli/commands/quickstart.js.map +1 -0
  83. package/dist/cli/index.js +2 -0
  84. package/dist/cli/index.js.map +1 -1
  85. package/dist/daemon/agents/gemini.js +8 -3
  86. package/dist/daemon/agents/gemini.js.map +1 -1
  87. package/dist/daemon/agents/preflight.js +6 -1
  88. package/dist/daemon/agents/preflight.js.map +1 -1
  89. package/dist/daemon/headless.js +48 -1
  90. package/dist/daemon/headless.js.map +1 -1
  91. package/dist/daemon/routes/chats.js +14 -0
  92. package/dist/daemon/routes/chats.js.map +1 -1
  93. package/dist/daemon/runner/reviewer-driver.js +80 -47
  94. package/dist/daemon/runner/reviewer-driver.js.map +1 -1
  95. package/dist/lib/telemetry.js +128 -1
  96. package/dist/lib/telemetry.js.map +1 -1
  97. package/package.json +1 -1
  98. package/dist/lib/voice-failure-tracker.js +0 -137
  99. package/dist/lib/voice-failure-tracker.js.map +0 -1
  100. /package/.next/static/{SWXQPO69cP827e-nghsmJ → HUuyUYZ9yRigNLlSWMQ_E}/_buildManifest.js +0 -0
  101. /package/.next/static/{SWXQPO69cP827e-nghsmJ → HUuyUYZ9yRigNLlSWMQ_E}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":10935461,"timestamp":6944373282727,"id":14,"parentId":1,"tags":{},"startTime":1778335743709,"traceId":"be7ab5832b9ec2f6"},{"name":"run-typescript","duration":5810780,"timestamp":6944384221706,"id":2118,"parentId":1,"tags":{},"startTime":1778335754648,"traceId":"be7ab5832b9ec2f6"},{"name":"static-check","duration":409432,"timestamp":6944390071133,"id":2121,"parentId":1,"tags":{},"startTime":1778335760497,"traceId":"be7ab5832b9ec2f6"},{"name":"static-generation","duration":1425113,"timestamp":6944390684412,"id":2161,"parentId":1,"tags":{},"startTime":1778335761110,"traceId":"be7ab5832b9ec2f6"},{"name":"collect-build-traces","duration":6181367,"timestamp":6944390480984,"id":2158,"parentId":1,"tags":{},"startTime":1778335760907,"traceId":"be7ab5832b9ec2f6"},{"name":"telemetry-flush","duration":38,"timestamp":6944396663989,"id":2170,"parentId":1,"tags":{},"startTime":1778335767090,"traceId":"be7ab5832b9ec2f6"},{"name":"next-build","duration":23473934,"timestamp":6944373190103,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778335743616,"traceId":"be7ab5832b9ec2f6"}]
1
+ [{"name":"run-webpack","duration":11030681,"timestamp":7027139961110,"id":14,"parentId":1,"tags":{},"startTime":1778418510387,"traceId":"1d9870be8997ff6a"},{"name":"run-typescript","duration":5665091,"timestamp":7027150995329,"id":2118,"parentId":1,"tags":{},"startTime":1778418521421,"traceId":"1d9870be8997ff6a"},{"name":"static-check","duration":469166,"timestamp":7027156717193,"id":2121,"parentId":1,"tags":{},"startTime":1778418527143,"traceId":"1d9870be8997ff6a"},{"name":"static-generation","duration":1269144,"timestamp":7027157354688,"id":2161,"parentId":1,"tags":{},"startTime":1778418527781,"traceId":"1d9870be8997ff6a"},{"name":"collect-build-traces","duration":6407134,"timestamp":7027157186805,"id":2158,"parentId":1,"tags":{},"startTime":1778418527613,"traceId":"1d9870be8997ff6a"},{"name":"telemetry-flush","duration":31,"timestamp":7027163595584,"id":2170,"parentId":1,"tags":{},"startTime":1778418534022,"traceId":"1d9870be8997ff6a"},{"name":"next-build","duration":23728095,"timestamp":7027139867530,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1778418510294,"traceId":"1d9870be8997ff6a"}]
@@ -0,0 +1,347 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports._testing = void 0;
37
+ exports.runQuickstart = runQuickstart;
38
+ exports.registerQuickstartCommand = registerQuickstartCommand;
39
+ const path = __importStar(require("path"));
40
+ const fs = __importStar(require("fs"));
41
+ const os = __importStar(require("os"));
42
+ const daemon_discovery_js_1 = require("../../lib/daemon-discovery.js");
43
+ const ui_js_1 = require("../ui.js");
44
+ const QUICKSTART_TEMPLATE_ID = 'quickstart-self-test';
45
+ const SAMPLE_ARTIFACT = `// Quickstart self-test artifact — a tiny snippet with a real bug.
46
+ // Reviewers should flag the off-by-one in the loop bound.
47
+
48
+ function average(numbers) {
49
+ let sum = 0;
50
+ for (let i = 0; i <= numbers.length; i++) {
51
+ sum += numbers[i];
52
+ }
53
+ return sum / numbers.length;
54
+ }
55
+ `;
56
+ const SAMPLE_WORK = 'Quickstart self-test for chorus — does the reviewer catch the off-by-one in the average() loop?';
57
+ /** Build the smallest valid review-only YAML that uses one detected lineage. */
58
+ function buildQuickstartYaml(lineage, model) {
59
+ // Keep crossLineage off — a user with only one CLI installed must
60
+ // still be able to run quickstart. The 'require: 1' threshold means
61
+ // a single reviewer's verdict is enough to settle the chat.
62
+ return `id: ${QUICKSTART_TEMPLATE_ID}
63
+ name: Quickstart Self-Test
64
+ description: |
65
+ Auto-generated by \`chorus quickstart\` — single reviewer slot routed
66
+ to whichever CLI the user has on PATH. Replaced on every quickstart
67
+ invocation to match the latest detected lineage.
68
+ author: chorus
69
+ agreementThreshold: 1.0
70
+ onThresholdMet: ask
71
+ maxRounds: 1
72
+ yoloDefault: false
73
+ estimatedBaselineTokens: 300
74
+ ship:
75
+ enabled: false
76
+ phases:
77
+ - id: review
78
+ kind: review_only
79
+ title: Quickstart Review
80
+ description: Single reviewer critiques the supplied artifact.
81
+ reviewer:
82
+ require: 1
83
+ crossLineage: false
84
+ candidates:
85
+ - lineage: ${lineage}${model ? `\n models:\n - ${model}` : ''}
86
+ inputs:
87
+ include: []
88
+ exclude: []
89
+ artifact:
90
+ label: Code snippet
91
+ hint: Quickstart self-test artifact (auto-supplied).
92
+ maxBytes: 16384
93
+ `;
94
+ }
95
+ async function pollChat(baseUrl, chatId, signal) {
96
+ let lastStatus = '';
97
+ while (!signal.aborted) {
98
+ const r = await fetch(`${baseUrl}/chats/${chatId}`);
99
+ if (!r.ok)
100
+ throw new Error(`status fetch failed: ${r.status}`);
101
+ const env = (await r.json());
102
+ const data = env.data;
103
+ if (!data)
104
+ throw new Error('chat status missing data');
105
+ if (data.status !== lastStatus) {
106
+ process.stdout.write(` ${ui_js_1.c.gray('·')} status: ${ui_js_1.c.cyan(data.status)}\n`);
107
+ lastStatus = data.status;
108
+ }
109
+ if (data.status === 'approved' ||
110
+ data.status === 'merged' ||
111
+ data.status === 'blocked' ||
112
+ data.status === 'cancelled' ||
113
+ data.status === 'failed' ||
114
+ data.status === 'no_review') {
115
+ return data;
116
+ }
117
+ await new Promise((resolve) => setTimeout(resolve, 1500));
118
+ }
119
+ throw new Error('aborted');
120
+ }
121
+ function readReviewerAnswer(chatDir) {
122
+ // Round 1 is the only round for review-only; one reviewer dir lives
123
+ // inside it (we built the template that way). Walk to find it.
124
+ const round1 = path.join(chatDir, 'round-1');
125
+ if (!fs.existsSync(round1))
126
+ return null;
127
+ const reviewerDirs = fs
128
+ .readdirSync(round1)
129
+ .filter((n) => n.startsWith('reviewer-'));
130
+ if (reviewerDirs.length === 0)
131
+ return null;
132
+ const answerFile = path.join(round1, reviewerDirs[0], 'answer.md');
133
+ if (!fs.existsSync(answerFile))
134
+ return null;
135
+ const body = fs.readFileSync(answerFile, 'utf-8');
136
+ if (body.startsWith('## REVIEWER FAILED')) {
137
+ return { kind: 'failed', body };
138
+ }
139
+ return { kind: 'ok', body };
140
+ }
141
+ async function runQuickstart(opts = {}) {
142
+ console.log('');
143
+ console.log(` ${ui_js_1.sym.rocket} ${ui_js_1.c.bold('Chorus quickstart')} ${ui_js_1.c.dim('— 30-second self-test')}`);
144
+ console.log('');
145
+ // 1. Daemon up?
146
+ const info = (0, daemon_discovery_js_1.readDaemonInfo)();
147
+ if (!info) {
148
+ console.log(` ${ui_js_1.c.red('✗')} daemon not running`);
149
+ console.log(` run ${ui_js_1.c.bold('chorus start')} first, then re-run quickstart`);
150
+ process.exitCode = 1;
151
+ return;
152
+ }
153
+ const healthy = await (0, daemon_discovery_js_1.isDaemonHealthy)(info.daemonPort, 1500);
154
+ if (!healthy) {
155
+ console.log(` ${ui_js_1.c.red('✗')} daemon not responding on :${info.daemonPort}`);
156
+ console.log(` run ${ui_js_1.c.bold('chorus stop && chorus start')} to recycle`);
157
+ process.exitCode = 1;
158
+ return;
159
+ }
160
+ const baseUrl = opts.daemonUrl ?? `http://127.0.0.1:${info.daemonPort}`;
161
+ console.log(` ${ui_js_1.c.green('✓')} daemon healthy on :${info.daemonPort}`);
162
+ // 2. Pick a CLI lineage.
163
+ const { detectAllClis } = await import('../../lib/cli-detect.js');
164
+ const detected = detectAllClis(true).filter((d) => d.found);
165
+ if (detected.length === 0) {
166
+ console.log('');
167
+ console.log(` ${ui_js_1.c.red('✗')} no CLIs detected on PATH`);
168
+ console.log(` install Claude Code, Codex, Gemini CLI, OpenCode, or Kimi CLI`);
169
+ console.log(` then run ${ui_js_1.c.bold('chorus connect')} to wire MCP`);
170
+ console.log(` ${ui_js_1.c.gray('details:')} ${ui_js_1.c.bold('chorus diagnose')}`);
171
+ process.exitCode = 1;
172
+ return;
173
+ }
174
+ // Map cli-detect ids to lineage strings the template-schema accepts.
175
+ // Models intentionally omitted — the daemon's voices seed picks the
176
+ // canonical default for each lineage, which keeps quickstart in sync
177
+ // with whatever the user has configured / whatever ships as the
178
+ // current default. Hardcoding model strings here proved brittle in
179
+ // self-review (4 reviewers flagged drift risk for kimi-k2.6, gpt-5.5,
180
+ // opencode/claude-sonnet-4-6).
181
+ const cliToLineage = {
182
+ 'claude-code': 'anthropic',
183
+ 'codex-cli': 'openai',
184
+ 'gemini-cli': 'google',
185
+ 'opencode-cli': 'opencode',
186
+ 'kimi-cli': 'moonshot',
187
+ };
188
+ const first = detected[0];
189
+ const lineage = cliToLineage[first.id];
190
+ if (!lineage) {
191
+ console.log(` ${ui_js_1.c.red('✗')} detected CLI '${first.id}' has no quickstart mapping`);
192
+ process.exitCode = 1;
193
+ return;
194
+ }
195
+ console.log(` ${ui_js_1.c.green('✓')} reviewer: ${ui_js_1.c.bold(first.id)} ${ui_js_1.c.gray('(lineage:')} ${lineage}${ui_js_1.c.gray(')')}`);
196
+ // 3. Upsert the quickstart template (no model — defaults from the seed).
197
+ const yaml = buildQuickstartYaml(lineage);
198
+ const upsert = await fetch(`${baseUrl}/templates`, {
199
+ method: 'POST',
200
+ headers: { 'Content-Type': 'application/json' },
201
+ body: JSON.stringify({ id: QUICKSTART_TEMPLATE_ID, yaml }),
202
+ });
203
+ if (!upsert.ok) {
204
+ const text = await upsert.text();
205
+ console.log(` ${ui_js_1.c.red('✗')} template upsert failed: ${upsert.status} ${text.slice(0, 200)}`);
206
+ process.exitCode = 1;
207
+ return;
208
+ }
209
+ console.log(` ${ui_js_1.c.green('✓')} template seeded`);
210
+ // 4. Fire the chat.
211
+ const chatRes = await fetch(`${baseUrl}/chats`, {
212
+ method: 'POST',
213
+ headers: { 'Content-Type': 'application/json' },
214
+ body: JSON.stringify({
215
+ work: SAMPLE_WORK,
216
+ templateId: QUICKSTART_TEMPLATE_ID,
217
+ artifact: SAMPLE_ARTIFACT,
218
+ }),
219
+ });
220
+ if (!chatRes.ok) {
221
+ const text = await chatRes.text();
222
+ console.log(` ${ui_js_1.c.red('✗')} chat create failed: ${chatRes.status} ${text.slice(0, 200)}`);
223
+ process.exitCode = 1;
224
+ return;
225
+ }
226
+ const chatEnv = (await chatRes.json());
227
+ const chatId = chatEnv.data?.id;
228
+ if (!chatId) {
229
+ console.log(` ${ui_js_1.c.red('✗')} chat create returned no id`);
230
+ process.exitCode = 1;
231
+ return;
232
+ }
233
+ const cockpitUrl = await resolveCockpitUrlSafe();
234
+ console.log(` ${ui_js_1.c.green('✓')} chat fired ${ui_js_1.c.gray('(id: ' + chatId + ')')}`);
235
+ if (cockpitUrl) {
236
+ console.log(` watch live: ${ui_js_1.c.cyan(`${cockpitUrl}/runs/${chatId}`)}`);
237
+ }
238
+ console.log('');
239
+ // 5. Poll until terminal. Cap at 4 minutes — if a reviewer hasn't
240
+ // finished by then, something's wrong with the CLI itself, not chorus.
241
+ // Ctrl+C handler is registered BEFORE polling so a user who bails
242
+ // mid-chat doesn't leave the daemon running an orphan reviewer in
243
+ // the background. Self-review (4 reviewers) flagged this as the
244
+ // primary blocker — without cancel-on-SIGINT, every quickstart that
245
+ // gets interrupted leaves a chat consuming subscription quota.
246
+ const ac = new AbortController();
247
+ const timeout = setTimeout(() => ac.abort(), 4 * 60_000);
248
+ let cancelled = false;
249
+ const onSigint = () => {
250
+ if (cancelled)
251
+ return;
252
+ cancelled = true;
253
+ ac.abort();
254
+ // Best-effort daemon cancel. Synchronous-ish — we don't await
255
+ // because the SIGINT handler should return quickly so Node can
256
+ // exit cleanly. The daemon's /chats/:id/cancel route is idempotent
257
+ // so a double-cancel is harmless.
258
+ void fetch(`${baseUrl}/chats/${chatId}/cancel`, { method: 'POST' }).catch(() => {
259
+ /* daemon may already be tearing down — best effort */
260
+ });
261
+ console.log('');
262
+ console.log(` ${ui_js_1.c.gray('Ctrl-C — cancelling chat ' + chatId + '...')}`);
263
+ };
264
+ process.on('SIGINT', onSigint);
265
+ let final;
266
+ try {
267
+ final = await pollChat(baseUrl, chatId, ac.signal);
268
+ }
269
+ catch (err) {
270
+ console.log(` ${ui_js_1.c.red('✗')} ${err instanceof Error ? err.message : String(err)}`);
271
+ process.exitCode = 1;
272
+ return;
273
+ }
274
+ finally {
275
+ clearTimeout(timeout);
276
+ process.off('SIGINT', onSigint);
277
+ }
278
+ console.log('');
279
+ console.log(` ${ui_js_1.sym.pointer} ${ui_js_1.c.bold('Result')} ${ui_js_1.c.gray('— status: ' + final.status + (final.verdict ? ', verdict: ' + final.verdict : ''))}`);
280
+ console.log('');
281
+ // 6. Render the reviewer's output (or its failure summary).
282
+ const chatDir = path.join(os.homedir(), '.chorus', 'chats', chatId);
283
+ const answer = readReviewerAnswer(chatDir);
284
+ if (!answer) {
285
+ console.log(` ${ui_js_1.c.gray('(no reviewer output on disk yet — refresh the run page)')}`);
286
+ }
287
+ else if (answer.kind === 'failed') {
288
+ console.log(ui_js_1.c.red(answer.body.slice(0, 1500)));
289
+ console.log('');
290
+ console.log(` ${ui_js_1.c.gray('see')} ${ui_js_1.c.bold('chorus diagnose')} ${ui_js_1.c.gray('for failure context')}`);
291
+ process.exitCode = 1;
292
+ return;
293
+ }
294
+ else {
295
+ // Trim long responses to ~80 lines so terminal isn't flooded.
296
+ const lines = answer.body.split('\n');
297
+ const display = lines.slice(0, 80).join('\n');
298
+ console.log(display);
299
+ if (lines.length > 80) {
300
+ console.log(` ${ui_js_1.c.gray(`(${lines.length - 80} more lines on disk)`)}`);
301
+ }
302
+ }
303
+ console.log('');
304
+ if (cockpitUrl) {
305
+ console.log(` ${ui_js_1.c.gray('full run:')} ${ui_js_1.c.cyan(`${cockpitUrl}/runs/${chatId}`)}`);
306
+ }
307
+ console.log('');
308
+ }
309
+ async function resolveCockpitUrlSafe() {
310
+ // Read the cockpit port out of `~/.chorus/daemon.json` rather than
311
+ // string-substituting the daemon URL (the substitution broke on any
312
+ // non-default port — `:17707` → `:15050`, and any user with a
313
+ // custom cockpit port saw a wrong link). The daemon writes both
314
+ // ports to daemon.json on startup; falling back to null means the
315
+ // terminal output simply omits the link rather than printing one
316
+ // that 404s.
317
+ try {
318
+ const info = (0, daemon_discovery_js_1.readDaemonInfo)();
319
+ if (!info)
320
+ return null;
321
+ return `http://127.0.0.1:${info.cockpitPort}`;
322
+ }
323
+ catch {
324
+ return null;
325
+ }
326
+ }
327
+ function registerQuickstartCommand(program) {
328
+ program
329
+ .command('quickstart')
330
+ .description('Fire a 30-second sample chat against your first-detected CLI to confirm chorus works end-to-end')
331
+ .action(async () => {
332
+ try {
333
+ await runQuickstart();
334
+ }
335
+ catch (err) {
336
+ console.error('quickstart failed:', err instanceof Error ? err.message : err);
337
+ process.exit(1);
338
+ }
339
+ });
340
+ }
341
+ exports._testing = {
342
+ buildQuickstartYaml,
343
+ QUICKSTART_TEMPLATE_ID,
344
+ SAMPLE_ARTIFACT,
345
+ SAMPLE_WORK,
346
+ };
347
+ //# sourceMappingURL=quickstart.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../../src/cli/commands/quickstart.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -12,6 +12,7 @@ const daemon_discovery_js_1 = require("../lib/daemon-discovery.js");
12
12
  const diagnose_js_1 = require("./commands/diagnose.js");
13
13
  const doctor_js_1 = require("./commands/doctor.js");
14
14
  const init_js_1 = require("./commands/init.js");
15
+ const quickstart_js_1 = require("./commands/quickstart.js");
15
16
  const start_js_1 = require("./commands/start.js");
16
17
  const status_js_1 = require("./commands/status.js");
17
18
  const stop_js_1 = require("./commands/stop.js");
@@ -63,6 +64,7 @@ program.addHelpText('beforeAll', () => {
63
64
  (0, doctor_js_1.registerDoctorCommand)(program);
64
65
  (0, diagnose_js_1.registerDiagnoseCommand)(program);
65
66
  (0, update_js_1.registerUpdateCommand)(program);
67
+ (0, quickstart_js_1.registerQuickstartCommand)(program);
66
68
  program
67
69
  .command('ui')
68
70
  .description('Open the Chorus web UI in default browser')
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -60,11 +60,16 @@ exports.geminiShim = {
60
60
  */
61
61
  runHeadless(opts) {
62
62
  // -p needs a non-empty value to flip gemini into non-interactive mode.
63
- // The single-space placeholder is harmless once stdin carries the real
64
- // prompt (gemini concatenates them with the stdin content first).
63
+ // Windows note: when daemon spawns with shell:true (required for .cmd
64
+ // shims, see headless.ts), Node concatenates argv with spaces and the
65
+ // shell collapses runs of whitespace — the original placeholder ' '
66
+ // got eaten and gemini parsed --output-format as the -p value, then
67
+ // exited with help. Use a non-whitespace placeholder. The trailing
68
+ // character on the prompt is harmless: gemini appends it after the
69
+ // stdin payload, which our reviewers ignore as content noise.
65
70
  const args = [
66
71
  '-p',
67
- ' ',
72
+ '_',
68
73
  '--output-format',
69
74
  'stream-json',
70
75
  '--skip-trust',
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/daemon/agents/gemini.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/daemon/agents/gemini.ts"],"names":[],"mappings":"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"}
@@ -74,7 +74,12 @@ function preTrustCodexWorkspace(codexHome, cwd) {
74
74
  else {
75
75
  node_fs_1.default.mkdirSync(codexHome, { recursive: true });
76
76
  }
77
- const marker = `[projects."${cwd}"]`;
77
+ // TOML basic strings (double-quoted) interpret \U/\u as unicode escapes.
78
+ // Windows paths like "C:\Users\..." trip "too few unicode value digits"
79
+ // when codex parses its config. Both Codex and Node accept forward slashes
80
+ // on Windows, so we normalize at write time.
81
+ const normalizedCwd = cwd.replace(/\\/g, '/');
82
+ const marker = `[projects."${normalizedCwd}"]`;
78
83
  if (body.includes(marker))
79
84
  return; // already present
80
85
  const block = `\n${marker}\ntrust_level = "trusted"\n`;
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../../src/daemon/agents/preflight.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;AAiBH,0DAyCC;AAMD,wDAeC;AA7ED,sDAAyB;AACzB,0DAA6B;AAC7B,sDAAyB;AAEzB;;;;;;;;;;GAUG;AACH,SAAgB,uBAAuB,CAAC,GAAW;IACjD,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;IAC3D,IAAI,MAAM,GAA4B,EAAE,CAAC;IAEzC,IAAI,iBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,iBAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACjD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;YAC1D,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QACtE,CAAC,CAAE,MAAM,CAAC,QAAoD;QAC9D,CAAC,CAAC,EAAE,CAAC,CAAC;IAER,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,sBAAsB,KAAK,IAAI,CAAC;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,oCAAoC,KAAK,IAAI,CAAC;IACtE,IAAI,OAAO,IAAI,QAAQ;QAAE,OAAO,CAAC,mBAAmB;IAEpD,QAAQ,CAAC,GAAG,CAAC,GAAG;QACd,GAAG,QAAQ;QACX,sBAAsB,EAAE,IAAI;KAC7B,CAAC;IAEF,iBAAE,CAAC,aAAa,CACd,UAAU,EACV,IAAI,CAAC,SAAS,CACZ;QACE,GAAG,MAAM;QACT,QAAQ;QACR,oCAAoC,EAAE,IAAI;KAC3C,EACD,IAAI,EACJ,CAAC,CACF,EACD,OAAO,CACR,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,SAAiB,EAAE,GAAW;IACnE,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACvD,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,IAAI,iBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,GAAG,iBAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,iBAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,MAAM,MAAM,GAAG,cAAc,GAAG,IAAI,CAAC;IACrC,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,kBAAkB;IAErD,MAAM,KAAK,GAAG,KAAK,MAAM,6BAA6B,CAAC;IACvD,iBAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC"}
1
+ {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../../src/daemon/agents/preflight.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;;;AAiBH,0DAyCC;AAMD,wDAoBC;AAlFD,sDAAyB;AACzB,0DAA6B;AAC7B,sDAAyB;AAEzB;;;;;;;;;;GAUG;AACH,SAAgB,uBAAuB,CAAC,GAAW;IACjD,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,iBAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;IAC3D,IAAI,MAAM,GAA4B,EAAE,CAAC;IAEzC,IAAI,iBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,iBAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACjD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;YAC1D,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QACtE,CAAC,CAAE,MAAM,CAAC,QAAoD;QAC9D,CAAC,CAAC,EAAE,CAAC,CAAC;IAER,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;IACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,sBAAsB,KAAK,IAAI,CAAC;IACzD,MAAM,QAAQ,GAAG,MAAM,CAAC,oCAAoC,KAAK,IAAI,CAAC;IACtE,IAAI,OAAO,IAAI,QAAQ;QAAE,OAAO,CAAC,mBAAmB;IAEpD,QAAQ,CAAC,GAAG,CAAC,GAAG;QACd,GAAG,QAAQ;QACX,sBAAsB,EAAE,IAAI;KAC7B,CAAC;IAEF,iBAAE,CAAC,aAAa,CACd,UAAU,EACV,IAAI,CAAC,SAAS,CACZ;QACE,GAAG,MAAM;QACT,QAAQ;QACR,oCAAoC,EAAE,IAAI;KAC3C,EACD,IAAI,EACJ,CAAC,CACF,EACD,OAAO,CACR,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAgB,sBAAsB,CAAC,SAAiB,EAAE,GAAW;IACnE,MAAM,UAAU,GAAG,mBAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;IACvD,IAAI,IAAI,GAAG,EAAE,CAAC;IAEd,IAAI,iBAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,GAAG,iBAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;SAAM,CAAC;QACN,iBAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,2EAA2E;IAC3E,6CAA6C;IAC7C,MAAM,aAAa,GAAG,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,cAAc,aAAa,IAAI,CAAC;IAC/C,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,CAAC,kBAAkB;IAErD,MAAM,KAAK,GAAG,KAAK,MAAM,6BAA6B,CAAC;IACvD,iBAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,GAAG,KAAK,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC"}
@@ -61,6 +61,41 @@ const fs = __importStar(require("fs"));
61
61
  const os = __importStar(require("os"));
62
62
  const path = __importStar(require("path"));
63
63
  const cli_paths_js_1 = require("../lib/cli-paths.js");
64
+ // Cache binary→path resolutions. `where` shells out — don't repeat per spawn.
65
+ const binaryPathCache = new Map();
66
+ /**
67
+ * Resolve a binary name to a full path with extension. Critical on Windows
68
+ * where Node's spawn won't resolve `.cmd` shims (npm globals like
69
+ * claude.cmd, codex.cmd, gemini.cmd) without shell:true (DEP0190 in
70
+ * Node 22+). On Unix returns the name unchanged — spawn handles PATH
71
+ * resolution natively for ELF/script files with shebangs.
72
+ */
73
+ function resolveBinaryPath(command) {
74
+ if (process.platform !== 'win32')
75
+ return command;
76
+ // Use the Windows-specific isAbsolute (`path.win32`) so absolute
77
+ // detection works the same on a real Windows host AND on a Linux CI
78
+ // run where the test stubs `process.platform = 'win32'` but the
79
+ // top-level `path` module is still POSIX.
80
+ if (path.win32.isAbsolute(command))
81
+ return command;
82
+ const cached = binaryPathCache.get(command);
83
+ if (cached)
84
+ return cached;
85
+ const r = (0, child_process_1.spawnSync)('where', [command], { encoding: 'utf-8', timeout: 3000 });
86
+ if (r.status !== 0 || !r.stdout) {
87
+ binaryPathCache.set(command, command);
88
+ return command; // fallback — daemon will surface ENOENT cleanly.
89
+ }
90
+ // npm globals on Windows ship two siblings: `claude` (Bash shim, not
91
+ // executable by Node spawn) and `claude.cmd` (Windows shim). `where`
92
+ // returns both; we must pick the .cmd/.bat/.exe variant for Node.
93
+ const lines = r.stdout.split(/\r?\n/).map((s) => s.trim()).filter(Boolean);
94
+ const preferred = lines.find((l) => /\.(cmd|bat|exe)$/i.test(l));
95
+ const resolved = preferred ?? lines[0] ?? command;
96
+ binaryPathCache.set(command, resolved);
97
+ return resolved;
98
+ }
64
99
  /**
65
100
  * Cached merged PATH for subprocess spawns. Populated by the daemon
66
101
  * boot path via `primeRuntimePath()`. Synchronous reads only — spawn
@@ -230,10 +265,22 @@ function reapOrphanProcesses() {
230
265
  function spawnHeadless(opts) {
231
266
  const timeoutMs = opts.timeoutMs ?? DEFAULT_TIMEOUT_MS;
232
267
  const startedAt = Date.now();
233
- const child = (0, child_process_1.spawn)(opts.command, [...opts.args], {
268
+ // Windows CLIs ship as .cmd shims (npm globals: claude.cmd, codex.cmd,
269
+ // gemini.cmd). Node 18.20+/20.x/22+ added CVE-2024-27980 mitigations that
270
+ // *block* spawn of .cmd/.bat without shell:true (EINVAL). We:
271
+ // 1. Resolve to the full .cmd path via `where` (cached) so PATH lookups
272
+ // always pick the .cmd shim, never the Bash sibling.
273
+ // 2. Set shell:true ONLY on Windows. DEP0190 fires informationally; our
274
+ // args are fixed CLI flags (not user-controlled) so the shell-escaping
275
+ // class of risks doesn't apply here.
276
+ // On Unix this is a no-op: spawn handles ELF/shebang scripts natively.
277
+ const isWindows = process.platform === 'win32';
278
+ const resolvedCommand = resolveBinaryPath(opts.command);
279
+ const child = (0, child_process_1.spawn)(resolvedCommand, [...opts.args], {
234
280
  cwd: opts.cwd,
235
281
  env: spawnEnv(opts.env),
236
282
  stdio: ['pipe', 'pipe', 'pipe'],
283
+ shell: isWindows,
237
284
  });
238
285
  if (child.pid !== undefined) {
239
286
  registerPid({
@@ -1 +1 @@
1
- {"version":3,"file":"headless.js","sourceRoot":"","sources":["../../src/daemon/headless.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headless.js","sourceRoot":"","sources":["../../src/daemon/headless.ts"],"names":[],"mappings":"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"}
@@ -254,6 +254,20 @@ function registerChatRoutes(fastify, { tmuxMgr, errorDetector }) {
254
254
  hasRepoPath: repoPath !== undefined,
255
255
  attachedFileCount: files?.length ?? 0,
256
256
  }, 'chat created');
257
+ // Latch the install's first-ever chat-fire timestamp for telemetry
258
+ // activation analytics. Idempotent — only writes the first time.
259
+ // Fire-and-forget: a settings-write failure must not block the
260
+ // chat-create path. Lazy-imported to keep this route's import
261
+ // graph minimal and tolerant of telemetry-disabled builds.
262
+ void (async () => {
263
+ try {
264
+ const { markFirstChatFired } = await import('../../lib/telemetry.js');
265
+ await markFirstChatFired();
266
+ }
267
+ catch {
268
+ /* never block chat creation on telemetry */
269
+ }
270
+ })();
257
271
  // Auto-fire the runner. Earlier code left chats inert until a
258
272
  // client hit /chats/:id/stream — fine for the cockpit (the run
259
273
  // page subscribes on open), but the MCP path (autonomous batch