wize-dev-kit 0.4.0 → 0.4.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/CHANGELOG.md CHANGED
@@ -5,6 +5,16 @@ Format inspired by [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [0.4.1] — 2026-06-13
9
+
10
+ ### Fixed
11
+
12
+ - Installer no longer skips the "How should the agents call you?" prompt due to residual input from previous `prompts`-library questions.
13
+
14
+ ### Added
15
+
16
+ - Interactive install now detects AI harness CLIs on PATH and offers to launch `/wize-orchestrator` directly, showing the exact command (e.g. `claude -p /wize-orchestrator`).
17
+
8
18
  ## [0.4.0] — 2026-06-13
9
19
 
10
20
  Adapts four BMAD Method step-based flows into the Wize universe: spec, architecture, code review, and research.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "wize-dev-kit",
4
- "version": "0.4.0",
4
+ "version": "0.4.1",
5
5
  "description": "Full-lifecycle AI-assisted development kit with Test Architect and Whiteport Design Studio embedded. Inspired by BMAD Method and WDS.",
6
6
  "keywords": [
7
7
  "ai",
@@ -21,6 +21,7 @@ const { cmdSync: cmdSyncReal } = require('./commands/sync.js');
21
21
  const { cmdAgentList, cmdAgentCreate, cmdAgentEdit } = require('./commands/agent.js');
22
22
  const { cmdDoctor } = require('./commands/doctor.js');
23
23
  const { cmdDocumentProject } = require('./commands/document-project.js');
24
+ const { detectHarnessCli, manualInstructions } = require('./baseline.js');
24
25
 
25
26
  const INTERACTIVE = process.stdout.isTTY && process.stdin.isTTY;
26
27
 
@@ -127,6 +128,13 @@ function getRl() {
127
128
  function prompt(question) {
128
129
  process.stdout.write(question);
129
130
  getRl();
131
+ // In interactive mode, discard any residual lines left by previous
132
+ // prompts (e.g. the prompts library) so this prompt always waits for
133
+ // fresh user input. In non-TTY / piped mode, those queued lines are
134
+ // intentional input and must be consumed in order.
135
+ if (INTERACTIVE) {
136
+ _queue = [];
137
+ }
130
138
  if (_queue.length) return Promise.resolve(_queue.shift().trim());
131
139
  return new Promise(resolve => _waiters.push((line) => resolve(line.trim())));
132
140
  }
@@ -461,6 +469,32 @@ async function cmdInstall(args) {
461
469
  }
462
470
  }
463
471
 
472
+ // Offer to open a detected AI harness interactively.
473
+ if (INTERACTIVE) {
474
+ const ideTargetCodes = targets.map(t => t.code);
475
+ const harnesses = detectHarnessCli({ preferIde: ideTargetCodes });
476
+ if (harnesses.length) {
477
+ const primary = harnesses[0];
478
+ const { cmd, args } = primary.buildCmd('/wize-orchestrator');
479
+ const shown = `${cmd} ${args.map(a => /\s/.test(a) ? '"' + a + '"' : a).join(' ')}`;
480
+ const openHarness = await confirm(
481
+ `\nA harness was detected: ${primary.code} (${primary.path}).\n` +
482
+ `Open it now with Wizer? (runs: ${shown})`,
483
+ true
484
+ );
485
+ if (openHarness) {
486
+ const { spawnSync } = require('node:child_process');
487
+ console.log(`\nLaunching ${shown}...`);
488
+ spawnSync(cmd, args, { cwd, stdio: 'inherit' });
489
+ } else {
490
+ console.log(manualInstructions(primary).replace('/wize-document-project', '/wize-orchestrator'));
491
+ }
492
+ } else {
493
+ console.log('\nNo AI harness CLI detected on PATH (claude / codex / opencode).');
494
+ console.log('Open your IDE in this repo and run: /wize-orchestrator');
495
+ }
496
+ }
497
+
464
498
  console.log('\n──────────────────────────────────────────────────────────────');
465
499
  console.log('Done.');
466
500
  console.log('');