@walwal-harness/cli 3.2.0 → 3.2.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/bin/init.js +45 -6
- package/package.json +2 -2
package/bin/init.js
CHANGED
|
@@ -303,7 +303,44 @@ function installSessionHook() {
|
|
|
303
303
|
}
|
|
304
304
|
|
|
305
305
|
// ─────────────────────────────────────────
|
|
306
|
-
// 3c.
|
|
306
|
+
// 3c. Statusline (persistent status bar)
|
|
307
|
+
// ─────────────────────────────────────────
|
|
308
|
+
function installStatusline() {
|
|
309
|
+
log('Installing statusline...');
|
|
310
|
+
|
|
311
|
+
const settingsDir = path.join(PROJECT_ROOT, '.claude');
|
|
312
|
+
const settingsFile = path.join(settingsDir, 'settings.json');
|
|
313
|
+
|
|
314
|
+
ensureDir(settingsDir);
|
|
315
|
+
|
|
316
|
+
let settings = {};
|
|
317
|
+
if (fileExists(settingsFile)) {
|
|
318
|
+
try {
|
|
319
|
+
settings = JSON.parse(fs.readFileSync(settingsFile, 'utf8'));
|
|
320
|
+
} catch (e) {
|
|
321
|
+
log('WARNING: Could not parse existing .claude/settings.json, creating new');
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
// Check if statusLine is already configured
|
|
326
|
+
if (settings.statusLine && settings.statusLine.command &&
|
|
327
|
+
settings.statusLine.command.includes('harness-statusline')) {
|
|
328
|
+
log('Statusline already installed');
|
|
329
|
+
return;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
settings.statusLine = {
|
|
333
|
+
type: 'command',
|
|
334
|
+
command: 'bash scripts/harness-statusline.sh',
|
|
335
|
+
refreshInterval: 3
|
|
336
|
+
};
|
|
337
|
+
|
|
338
|
+
fs.writeFileSync(settingsFile, JSON.stringify(settings, null, 2) + '\n');
|
|
339
|
+
log('Statusline installed — persistent status bar at terminal bottom');
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
// ─────────────────────────────────────────
|
|
343
|
+
// 3d. UserPromptSubmit hook (auto dispatcher routing)
|
|
307
344
|
// ─────────────────────────────────────────
|
|
308
345
|
function installUserPromptSubmitHook() {
|
|
309
346
|
log('Installing UserPromptSubmit hook (auto dispatcher routing)...');
|
|
@@ -514,11 +551,12 @@ What it does:
|
|
|
514
551
|
1. Scaffolds .harness/ directory (actions, archive, gotchas, config)
|
|
515
552
|
2. Installs skills to .claude/skills/ (dispatcher, planner, generators, evaluators)
|
|
516
553
|
3. Copies helper scripts to scripts/
|
|
517
|
-
4. Registers SessionStart hook (boot-time
|
|
518
|
-
5.
|
|
519
|
-
6.
|
|
520
|
-
7.
|
|
521
|
-
8. Checks
|
|
554
|
+
4. Registers SessionStart hook (compact boot-time status)
|
|
555
|
+
5. Installs statusline (persistent 1-line status bar at terminal bottom)
|
|
556
|
+
6. Registers UserPromptSubmit hook (auto-route every prompt through harness-dispatcher)
|
|
557
|
+
7. Creates AGENTS.md + CLAUDE.md symlink
|
|
558
|
+
8. Checks Playwright MCP configuration
|
|
559
|
+
9. Checks recommended external skills (Vercel, design skills)
|
|
522
560
|
|
|
523
561
|
Auto routing:
|
|
524
562
|
Every user prompt is routed through harness-dispatcher.
|
|
@@ -555,6 +593,7 @@ function main() {
|
|
|
555
593
|
installSkills();
|
|
556
594
|
installScripts();
|
|
557
595
|
installSessionHook();
|
|
596
|
+
installStatusline();
|
|
558
597
|
installUserPromptSubmitHook();
|
|
559
598
|
setupAgentsMd();
|
|
560
599
|
checkPlaywrightMcp();
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walwal-harness/cli",
|
|
3
|
-
"version": "3.2.
|
|
3
|
+
"version": "3.2.1",
|
|
4
4
|
"description": "Production harness for AI agent engineering — Planner, Generator(BE/FE), Evaluator(Func/Visual), optional Brainstormer (requirements refinement). Supports React and Flutter FE stacks.",
|
|
5
5
|
"bin": {
|
|
6
6
|
"walwal-harness": "bin/init.js"
|
|
@@ -36,6 +36,6 @@
|
|
|
36
36
|
"gotchas/"
|
|
37
37
|
],
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@walwal-harness/cli": "^3.2.
|
|
39
|
+
"@walwal-harness/cli": "^3.2.1"
|
|
40
40
|
}
|
|
41
41
|
}
|