@veewo/claw 0.1.68 → 0.1.69

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/dist/cli.js CHANGED
@@ -2,6 +2,7 @@
2
2
  import fs from "node:fs";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
+ import { createHash } from "node:crypto";
5
6
  import { spawn, spawnSync } from "node:child_process";
6
7
  import { buildDirectWorkflowGuidance, checkProjectProtocol, ClawError, buildPlanWorkflowGuidance, buildMemoryIndex, buildSessionStartDefaultPrompt, buildSessionStartRecoveredPrompt, editPlan, ensureProjectProtocol, enforceTaskRetention, ingestTruth, initProject, getTemplateTaskDoneChoices, resolvePlanTemplateFile, resolveProjectContext, resolveSessionBoundPlan, resolveContext, resolveSeedPlanTemplate, searchMemory, showPlan, createSubplan, switchTask, unbindSession, writePlan, } from "@veewo/claw-core";
7
8
  const CLI_VERSION = readCliVersion();
@@ -9,7 +10,7 @@ const TOP_LEVEL_COMMANDS = [
9
10
  { name: "init [options]", summary: "Initialize and normalize the .claw project surface." },
10
11
  { name: "context [--task <name>]", summary: "Resolve project context, auto-initializing or correcting .claw state." },
11
12
  { name: "check", summary: "Check and auto-correct .claw project protocol fields." },
12
- { name: "plan <subcommand> [options]", summary: "Plan lifecycle: create, edit, show, done." },
13
+ { name: "plan <subcommand> [options]", summary: "Plan lifecycle: create, start, edit, show, done." },
13
14
  { name: "template <subcommand> [options]", summary: "Plan template helpers such as validation." },
14
15
  { name: "task <subcommand> [options]", summary: "Task lifecycle helpers inside an existing plan." },
15
16
  { name: "subplan create [options]", summary: "Create a subplan nested under a parent task item." },
@@ -84,6 +85,18 @@ const COMMAND_HELP = {
84
85
  { flag: "--summary <text>", detail: "Optional change summary." },
85
86
  ],
86
87
  },
88
+ start: {
89
+ usage: ["{script} plan start --task <name> --patch <json-file> --append-tasks <json-file>"],
90
+ description: "Atomically apply refined plan content, append business tasks, complete the default planning/activation bridge, and enter process.active in one serialized mutation.",
91
+ summary: "Atomically refine and activate a default planning plan.",
92
+ options: [
93
+ { flag: "--task <name>", detail: "(required) Task name to refine and activate." },
94
+ { flag: "--plan <relative-path>", detail: "Plan file relative to the task dir (defaults to the active plan)." },
95
+ { flag: "--patch <json-file>", detail: "Apply a JSON merge-patch containing requirements, rules, references, or decisions." },
96
+ { flag: "--append-tasks <json-file>", detail: "Append business tasks from a JSON array file." },
97
+ { flag: "--summary <text>", detail: "Optional change summary." },
98
+ ],
99
+ },
87
100
  show: {
88
101
  usage: ["{script} plan show --task <name> [--plan <relative-path>]"],
89
102
  description: "Show the current plan (status, goal, tasks, references) for a task, including archived plans.",
@@ -235,6 +248,10 @@ async function main() {
235
248
  process.stdout.write(`${CLI_VERSION}\n`);
236
249
  return;
237
250
  }
251
+ if (command === "search" && args.length === 1 && args[0] === "help") {
252
+ printHelp(["search"]);
253
+ return;
254
+ }
238
255
  if (command &&
239
256
  command !== "help" &&
240
257
  !command.startsWith("-") &&
@@ -366,12 +383,36 @@ async function runPlan(args) {
366
383
  taskStatus: readOptionalFlag(args, "--task-status"),
367
384
  taskChoiceId: readOptionalFlag(args, "--task-choice"),
368
385
  appendTasks: appendTasksPath ? readJson(appendTasksPath) : undefined,
386
+ commandSource: "plan.edit",
369
387
  host: process.env.CLAW_HOST ?? undefined,
370
388
  ownerSessionKey: resolveOwnerSessionKey() ?? undefined,
371
389
  });
372
390
  printJson(compactPlanCommandResult("plan.edit", result));
373
391
  return;
374
392
  }
393
+ case "start": {
394
+ const patchPath = readOptionalFlag(args, "--patch");
395
+ const appendTasksPath = readOptionalFlag(args, "--append-tasks");
396
+ if (!patchPath && !appendTasksPath) {
397
+ throw new ClawError("PROJECT_CONFIG_INVALID", "plan start requires --patch, --append-tasks, or both.");
398
+ }
399
+ const result = await editPlan({
400
+ cwd: process.cwd(),
401
+ taskName: readRequiredFlag(args, "--task"),
402
+ planFile: readOptionalFlag(args, "--plan"),
403
+ changeSummary: readOptionalFlag(args, "--summary"),
404
+ patch: patchPath ? readJson(patchPath) : undefined,
405
+ appendTasks: appendTasksPath ? readJson(appendTasksPath) : undefined,
406
+ planStatus: "process.active",
407
+ completeLifecycleBridge: true,
408
+ commandSource: "plan.start",
409
+ host: process.env.CLAW_HOST ?? undefined,
410
+ ownerSessionKey: resolveOwnerSessionKey() ?? undefined,
411
+ });
412
+ assertNoRemainingArgs(args, "plan start");
413
+ printJson(compactPlanCommandResult("plan.start", result));
414
+ return;
415
+ }
375
416
  case "done": {
376
417
  const patchPath = readOptionalFlag(args, "--patch");
377
418
  const summary = readOptionalFlag(args, "--summary");
@@ -380,7 +421,7 @@ async function runPlan(args) {
380
421
  if (!mergedPatch?.retrospective?.summary?.trim()) {
381
422
  throw new ClawError("PROJECT_CONFIG_INVALID", "plan done requires --summary or a patch file containing retrospective.summary.");
382
423
  }
383
- ensureGitNexusReadyForPlanDone(process.cwd());
424
+ const gitNexusPreflightAnalyzed = ensureGitNexusReadyForPlanDone(process.cwd());
384
425
  const result = await editPlan({
385
426
  cwd: process.cwd(),
386
427
  taskName: readRequiredFlag(args, "--task"),
@@ -388,12 +429,14 @@ async function runPlan(args) {
388
429
  changeSummary: readOptionalFlag(args, "--change-summary"),
389
430
  patch: mergedPatch,
390
431
  planStatus: "end.completed",
432
+ commandSource: "plan.done",
391
433
  host: process.env.CLAW_HOST ?? undefined,
392
434
  ownerSessionKey: resolveOwnerSessionKey() ?? undefined,
393
435
  });
394
436
  const completionRefresh = queueCompletionRefresh({
395
437
  cwd: process.cwd(),
396
438
  taskName: result.taskName,
439
+ skipGitNexusRefresh: gitNexusPreflightAnalyzed,
397
440
  });
398
441
  printJson(compactPlanCommandResult("plan.done", result, completionRefresh));
399
442
  return;
@@ -1082,6 +1125,7 @@ function compactPlanCommandResult(command, result, completionRefresh) {
1082
1125
  ? completionRefresh.taskRetention.archivedCurrentTask.archivedPlanPath
1083
1126
  : undefined;
1084
1127
  const resolvedPlanPath = archivedPlanPath ?? result.planPath;
1128
+ const hostActions = buildHostActions(result);
1085
1129
  return {
1086
1130
  ok: true,
1087
1131
  command,
@@ -1090,6 +1134,8 @@ function compactPlanCommandResult(command, result, completionRefresh) {
1090
1134
  planStatus: result.planStatus,
1091
1135
  ...(result.previousPlanStatus ? { previousPlanStatus: result.previousPlanStatus } : {}),
1092
1136
  ...(result.emittedEvents?.length ? { emittedEvents: result.emittedEvents } : {}),
1137
+ ...(result.events?.length ? { events: result.events } : {}),
1138
+ ...(hostActions.length ? { hostActions } : {}),
1093
1139
  ...(result.changedTaskIds?.length ? { changedTaskIds: result.changedTaskIds } : {}),
1094
1140
  ...(result.appendedTaskIds?.length ? { appendedTaskIds: result.appendedTaskIds } : {}),
1095
1141
  nextsteps: result.workflowGuidance.nextsteps,
@@ -1118,6 +1164,43 @@ function compactPlanCommandResult(command, result, completionRefresh) {
1118
1164
  planSummary: result.planView.collapsedSummary,
1119
1165
  };
1120
1166
  }
1167
+ function buildHostActions(result) {
1168
+ const latestEvent = result.events?.at(-1);
1169
+ if (!latestEvent) {
1170
+ return [];
1171
+ }
1172
+ const actions = [];
1173
+ if (result.plan) {
1174
+ let assignedInProgress = false;
1175
+ const plan = result.plan.tasks.map((task) => {
1176
+ let status = task.status === "done" ? "completed" : "pending";
1177
+ if (!assignedInProgress && result.planStatus === "process.active" && task.status !== "done") {
1178
+ status = "in_progress";
1179
+ assignedInProgress = true;
1180
+ }
1181
+ return { step: task.title, status };
1182
+ });
1183
+ actions.push({
1184
+ id: `${latestEvent.mutationId}:update_plan`,
1185
+ sourceEventId: latestEvent.eventId,
1186
+ tool: "update_plan",
1187
+ input: {
1188
+ explanation: result.workflowGuidance.summary,
1189
+ plan,
1190
+ },
1191
+ });
1192
+ }
1193
+ if (result.workflowGuidance.goalTool) {
1194
+ const { tool, ...input } = result.workflowGuidance.goalTool;
1195
+ actions.push({
1196
+ id: `${latestEvent.mutationId}:${tool}`,
1197
+ sourceEventId: latestEvent.eventId,
1198
+ tool,
1199
+ input,
1200
+ });
1201
+ }
1202
+ return actions;
1203
+ }
1121
1204
  function compactDirectCommandResult(command, workflowGuidance, completionRefresh) {
1122
1205
  return {
1123
1206
  ok: true,
@@ -1182,9 +1265,10 @@ function queueCompletionRefresh(input) {
1182
1265
  if (includeTaskMemory && !taskRetention.archivedCurrentTask) {
1183
1266
  operations.push("memory.reindex.task");
1184
1267
  }
1185
- if (project.projectConfig?.gitnexus === true) {
1268
+ if (project.projectConfig?.gitnexus === true && !input.skipGitNexusRefresh) {
1186
1269
  operations.push("gitnexus.refresh");
1187
1270
  }
1271
+ const dirtyHash = computeCompletionDirtyHash(input.cwd, input.taskName, operations);
1188
1272
  fs.mkdirSync(path.dirname(statusFile), { recursive: true });
1189
1273
  fs.writeFileSync(statusFile, JSON.stringify({
1190
1274
  ok: true,
@@ -1193,12 +1277,40 @@ function queueCompletionRefresh(input) {
1193
1277
  cwd: input.cwd,
1194
1278
  taskName: input.taskName,
1195
1279
  operations,
1280
+ dirtyHash,
1196
1281
  }, null, 2), "utf-8");
1197
- launchCompletionRefreshWorker({
1198
- cwd: input.cwd,
1199
- taskName: input.taskName,
1282
+ const flight = claimCompletionRefreshFlight({
1283
+ clawDir: project.clawDir,
1200
1284
  statusFile,
1285
+ dirtyHash,
1286
+ operations,
1287
+ queuedAt: startedAt,
1201
1288
  });
1289
+ if (flight.leader) {
1290
+ launchCompletionRefreshWorker({
1291
+ cwd: input.cwd,
1292
+ taskName: input.taskName,
1293
+ statusFile,
1294
+ });
1295
+ }
1296
+ else {
1297
+ const coalescedStatus = {
1298
+ ok: true,
1299
+ coalesced: true,
1300
+ queued: true,
1301
+ startedAt,
1302
+ cwd: input.cwd,
1303
+ taskName: input.taskName,
1304
+ operations,
1305
+ dirtyHash,
1306
+ leaderStatusFile: flight.leaderStatusFile,
1307
+ };
1308
+ fs.writeFileSync(statusFile, `${JSON.stringify(coalescedStatus, null, 2)}\n`, "utf-8");
1309
+ const leaderStatus = tryReadCompletionRefreshStatus(flight.leaderStatusFile);
1310
+ if (leaderStatus && "finishedAt" in leaderStatus) {
1311
+ fs.writeFileSync(statusFile, `${JSON.stringify({ ...leaderStatus, coalesced: true, leaderStatusFile: flight.leaderStatusFile }, null, 2)}\n`, "utf-8");
1312
+ }
1313
+ }
1202
1314
  return {
1203
1315
  taskRetention,
1204
1316
  asyncRefresh: {
@@ -1206,6 +1318,8 @@ function queueCompletionRefresh(input) {
1206
1318
  startedAt,
1207
1319
  statusFile,
1208
1320
  operations,
1321
+ dirtyHash,
1322
+ ...(!flight.leader ? { coalesced: true, leaderStatusFile: flight.leaderStatusFile } : {}),
1209
1323
  },
1210
1324
  };
1211
1325
  }
@@ -1276,9 +1390,16 @@ function runInternalCompletionRefresh(args) {
1276
1390
  const statusFile = readRequiredFlag(args, "--status-file");
1277
1391
  const startedAt = new Date().toISOString();
1278
1392
  const queuedStatus = readJson(statusFile);
1279
- const operations = "operations" in queuedStatus && Array.isArray(queuedStatus.operations)
1393
+ const flightDir = getCompletionRefreshFlightDir(resolveProjectContext(cwd).clawDir);
1394
+ const initialFlight = readCompletionRefreshFlightState(flightDir);
1395
+ const operations = initialFlight?.operations ?? ("operations" in queuedStatus && Array.isArray(queuedStatus.operations)
1280
1396
  ? queuedStatus.operations
1281
- : ["memory.reindex.project"];
1397
+ : ["memory.reindex.project"]);
1398
+ updateCompletionRefreshFlightState(flightDir, (state) => ({
1399
+ ...state,
1400
+ pid: process.pid,
1401
+ startedAt,
1402
+ }));
1282
1403
  try {
1283
1404
  fs.writeFileSync(statusFile, `${JSON.stringify({
1284
1405
  ok: true,
@@ -1288,13 +1409,40 @@ function runInternalCompletionRefresh(args) {
1288
1409
  taskName,
1289
1410
  operations,
1290
1411
  }, null, 2)}\n`, "utf-8");
1291
- const projectMemory = buildMemoryIndex({
1292
- cwd,
1293
- scope: "project",
1294
- });
1295
- const taskMemory = operations.includes("memory.reindex.task")
1296
- ? tryBuildTaskMemoryIndex(cwd, taskName)
1297
- : undefined;
1412
+ let projectMemory;
1413
+ let taskMemory;
1414
+ let gitnexus;
1415
+ let refreshCycles = 0;
1416
+ let dirtyHash = "";
1417
+ while (refreshCycles < 3) {
1418
+ refreshCycles += 1;
1419
+ dirtyHash = computeCompletionDirtyHash(cwd, taskName, operations);
1420
+ projectMemory = buildMemoryIndex({ cwd, scope: "project" });
1421
+ taskMemory = operations.includes("memory.reindex.task")
1422
+ ? tryBuildTaskMemoryIndex(cwd, taskName)
1423
+ : undefined;
1424
+ gitnexus = operations.includes("gitnexus.refresh")
1425
+ ? refreshGitNexusIfEnabled(cwd, resolveProjectContext(cwd).projectConfig)
1426
+ : {
1427
+ enabled: false,
1428
+ reason: resolveProjectContext(cwd).projectConfig?.gitnexus === true
1429
+ ? "gitnexus refresh was satisfied by plan-done preflight"
1430
+ : "gitnexus is not enabled in .claw/project.json",
1431
+ };
1432
+ const latestFlight = readCompletionRefreshFlightState(flightDir);
1433
+ const latestDirtyHash = computeCompletionDirtyHash(cwd, taskName, latestFlight?.operations ?? operations);
1434
+ if (latestDirtyHash === dirtyHash && latestFlight?.requestedDirtyHash === dirtyHash) {
1435
+ break;
1436
+ }
1437
+ if (latestFlight?.operations) {
1438
+ for (const operation of latestFlight.operations) {
1439
+ if (!operations.includes(operation)) {
1440
+ operations.push(operation);
1441
+ }
1442
+ }
1443
+ }
1444
+ }
1445
+ const finalFlight = readCompletionRefreshFlightState(flightDir);
1298
1446
  const status = {
1299
1447
  ok: true,
1300
1448
  startedAt,
@@ -1305,9 +1453,12 @@ function runInternalCompletionRefresh(args) {
1305
1453
  project: projectMemory,
1306
1454
  ...(taskMemory ? { task: taskMemory } : {}),
1307
1455
  },
1308
- gitnexus: refreshGitNexusIfEnabled(cwd, resolveProjectContext(cwd).projectConfig),
1456
+ gitnexus,
1457
+ dirtyHash,
1458
+ refreshCycles,
1459
+ coalescedCount: Math.max(0, (finalFlight?.statusFiles.length ?? 1) - 1),
1309
1460
  };
1310
- fs.writeFileSync(statusFile, `${JSON.stringify(status, null, 2)}\n`, "utf-8");
1461
+ writeCompletionRefreshFinalStatuses(flightDir, statusFile, status);
1311
1462
  }
1312
1463
  catch (error) {
1313
1464
  const payload = {
@@ -1327,10 +1478,180 @@ function runInternalCompletionRefresh(args) {
1327
1478
  message: error instanceof Error ? error.message : "Unknown completion refresh failure.",
1328
1479
  },
1329
1480
  };
1330
- fs.writeFileSync(statusFile, `${JSON.stringify(payload, null, 2)}\n`, "utf-8");
1481
+ writeCompletionRefreshFinalStatuses(flightDir, statusFile, payload);
1331
1482
  process.exitCode = 1;
1332
1483
  }
1333
1484
  }
1485
+ function getCompletionRefreshFlightDir(clawDir) {
1486
+ return path.join(clawDir, "logs", "completion-refresh", "inflight.lock");
1487
+ }
1488
+ function claimCompletionRefreshFlight(input) {
1489
+ const flightDir = getCompletionRefreshFlightDir(input.clawDir);
1490
+ try {
1491
+ fs.mkdirSync(flightDir);
1492
+ const state = {
1493
+ schemaVersion: 1,
1494
+ queuedAt: input.queuedAt,
1495
+ leaderStatusFile: input.statusFile,
1496
+ statusFiles: [input.statusFile],
1497
+ requestedDirtyHash: input.dirtyHash,
1498
+ operations: input.operations,
1499
+ };
1500
+ writeCompletionRefreshFlightState(flightDir, state);
1501
+ return { leader: true, leaderStatusFile: input.statusFile };
1502
+ }
1503
+ catch (error) {
1504
+ if (!isFileAlreadyExistsError(error)) {
1505
+ throw error;
1506
+ }
1507
+ }
1508
+ const existing = readCompletionRefreshFlightState(flightDir);
1509
+ if (!existing || isCompletionRefreshFlightStale(existing)) {
1510
+ fs.rmSync(flightDir, { recursive: true, force: true });
1511
+ return claimCompletionRefreshFlight(input);
1512
+ }
1513
+ const updated = updateCompletionRefreshFlightState(flightDir, (state) => ({
1514
+ ...state,
1515
+ statusFiles: Array.from(new Set([...state.statusFiles, input.statusFile])),
1516
+ requestedDirtyHash: input.dirtyHash,
1517
+ operations: Array.from(new Set([...state.operations, ...input.operations])),
1518
+ }));
1519
+ return { leader: false, leaderStatusFile: updated.leaderStatusFile };
1520
+ }
1521
+ function readCompletionRefreshFlightState(flightDir) {
1522
+ const statePath = path.join(flightDir, "state.json");
1523
+ if (!fs.existsSync(statePath)) {
1524
+ return null;
1525
+ }
1526
+ try {
1527
+ return JSON.parse(fs.readFileSync(statePath, "utf-8"));
1528
+ }
1529
+ catch {
1530
+ return null;
1531
+ }
1532
+ }
1533
+ function tryReadCompletionRefreshStatus(statusFile) {
1534
+ if (!fs.existsSync(statusFile)) {
1535
+ return null;
1536
+ }
1537
+ try {
1538
+ return JSON.parse(fs.readFileSync(statusFile, "utf-8"));
1539
+ }
1540
+ catch {
1541
+ return null;
1542
+ }
1543
+ }
1544
+ function writeCompletionRefreshFlightState(flightDir, state) {
1545
+ const statePath = path.join(flightDir, "state.json");
1546
+ const tempPath = `${statePath}.${process.pid}.tmp`;
1547
+ fs.writeFileSync(tempPath, `${JSON.stringify(state, null, 2)}\n`, "utf-8");
1548
+ fs.renameSync(tempPath, statePath);
1549
+ }
1550
+ function updateCompletionRefreshFlightState(flightDir, update) {
1551
+ const lockPath = path.join(flightDir, "state.write.lock");
1552
+ let lockFd;
1553
+ for (let attempt = 0; attempt < 50; attempt += 1) {
1554
+ try {
1555
+ lockFd = fs.openSync(lockPath, "wx");
1556
+ break;
1557
+ }
1558
+ catch (error) {
1559
+ if (!isFileAlreadyExistsError(error)) {
1560
+ throw error;
1561
+ }
1562
+ Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 10);
1563
+ }
1564
+ }
1565
+ if (lockFd === undefined) {
1566
+ throw new ClawError("PROJECT_CONFIG_INVALID", "Timed out updating completion refresh single-flight state.");
1567
+ }
1568
+ try {
1569
+ const current = readCompletionRefreshFlightState(flightDir);
1570
+ if (!current) {
1571
+ throw new ClawError("PROJECT_CONFIG_INVALID", "Completion refresh single-flight state is missing.");
1572
+ }
1573
+ const next = update(current);
1574
+ writeCompletionRefreshFlightState(flightDir, next);
1575
+ return next;
1576
+ }
1577
+ finally {
1578
+ fs.closeSync(lockFd);
1579
+ fs.rmSync(lockPath, { force: true });
1580
+ }
1581
+ }
1582
+ function writeCompletionRefreshFinalStatuses(flightDir, leaderStatusFile, status) {
1583
+ const flight = readCompletionRefreshFlightState(flightDir);
1584
+ const statusFiles = flight?.statusFiles ?? [leaderStatusFile];
1585
+ for (const target of statusFiles) {
1586
+ const payload = target === leaderStatusFile
1587
+ ? status
1588
+ : { ...status, coalesced: true, leaderStatusFile };
1589
+ fs.writeFileSync(target, `${JSON.stringify(payload, null, 2)}\n`, "utf-8");
1590
+ }
1591
+ fs.rmSync(flightDir, { recursive: true, force: true });
1592
+ }
1593
+ function isCompletionRefreshFlightStale(state) {
1594
+ if (state.pid) {
1595
+ try {
1596
+ process.kill(state.pid, 0);
1597
+ return false;
1598
+ }
1599
+ catch {
1600
+ return true;
1601
+ }
1602
+ }
1603
+ return Date.now() - Date.parse(state.queuedAt) > 60_000;
1604
+ }
1605
+ function isFileAlreadyExistsError(error) {
1606
+ return error instanceof Error && "code" in error && error.code === "EEXIST";
1607
+ }
1608
+ function computeCompletionDirtyHash(cwd, taskName, operations) {
1609
+ const hash = createHash("sha256");
1610
+ hash.update(JSON.stringify([...operations].sort()));
1611
+ const project = resolveProjectContext(cwd);
1612
+ const roots = [
1613
+ path.join(project.clawDir, "memory.md"),
1614
+ path.join(project.clawDir, "truth"),
1615
+ path.join(project.tasksDir, taskName),
1616
+ ];
1617
+ const files = roots.flatMap((root) => listCompletionFingerprintFiles(root)).sort();
1618
+ for (const filePath of files) {
1619
+ hash.update(path.relative(cwd, filePath));
1620
+ hash.update(fs.readFileSync(filePath));
1621
+ }
1622
+ const gitStatus = runCommand("git", ["status", "--porcelain=v1", "--untracked-files=no"], cwd);
1623
+ if (!commandFailed(gitStatus)) {
1624
+ hash.update(gitStatus.stdout ?? "");
1625
+ const gitDiff = runCommand("git", ["diff", "--no-ext-diff", "--binary"], cwd);
1626
+ if (!commandFailed(gitDiff)) {
1627
+ hash.update(gitDiff.stdout ?? "");
1628
+ }
1629
+ }
1630
+ return hash.digest("hex");
1631
+ }
1632
+ function listCompletionFingerprintFiles(root) {
1633
+ if (!fs.existsSync(root)) {
1634
+ return [];
1635
+ }
1636
+ const stat = fs.statSync(root);
1637
+ if (stat.isFile()) {
1638
+ return /\.(?:md|json)$/i.test(root) ? [root] : [];
1639
+ }
1640
+ const files = [];
1641
+ for (const entry of fs.readdirSync(root, { withFileTypes: true })) {
1642
+ if (entry.name === "logs" || entry.name.endsWith(".sqlite")) {
1643
+ continue;
1644
+ }
1645
+ const child = path.join(root, entry.name);
1646
+ if (entry.isDirectory()) {
1647
+ files.push(...listCompletionFingerprintFiles(child));
1648
+ }
1649
+ else if (/\.(?:md|json)$/i.test(entry.name)) {
1650
+ files.push(child);
1651
+ }
1652
+ }
1653
+ return files;
1654
+ }
1334
1655
  function tryBuildTaskMemoryIndex(cwd, taskName) {
1335
1656
  try {
1336
1657
  return buildMemoryIndex({
@@ -1373,6 +1694,13 @@ function compactCompletionRefresh(completionRefresh) {
1373
1694
  startedAt: completionRefresh.asyncRefresh.startedAt,
1374
1695
  statusFile: completionRefresh.asyncRefresh.statusFile,
1375
1696
  operations: completionRefresh.asyncRefresh.operations,
1697
+ dirtyHash: completionRefresh.asyncRefresh.dirtyHash,
1698
+ ...(completionRefresh.asyncRefresh.coalesced
1699
+ ? {
1700
+ coalesced: true,
1701
+ leaderStatusFile: completionRefresh.asyncRefresh.leaderStatusFile,
1702
+ }
1703
+ : {}),
1376
1704
  },
1377
1705
  };
1378
1706
  }
@@ -1396,11 +1724,11 @@ function shouldFallbackToPlainAnalyze(result) {
1396
1724
  function ensureGitNexusReadyForPlanDone(cwd) {
1397
1725
  const project = resolveProjectContext(cwd);
1398
1726
  if (project.projectConfig?.gitnexus !== true) {
1399
- return;
1727
+ return false;
1400
1728
  }
1401
1729
  ensureGitNexusInstalled(project.projectRoot);
1402
1730
  seedGitNexusEmbeddingCache(project.projectRoot, project.projectConfig);
1403
- ensureGitNexusEmbeddingsEnabled(project.projectRoot);
1731
+ return ensureGitNexusEmbeddingsEnabled(project.projectRoot);
1404
1732
  }
1405
1733
  function ensureGitNexusInstalled(cwd) {
1406
1734
  if (isGitNexusAvailable(cwd)) {
@@ -1437,9 +1765,10 @@ function ensureGitNexusInstalled(cwd) {
1437
1765
  }
1438
1766
  function ensureGitNexusEmbeddingsEnabled(cwd) {
1439
1767
  if (readGitNexusEmbeddingsEnabled(cwd)) {
1440
- return;
1768
+ return false;
1441
1769
  }
1442
1770
  runGitNexusAnalyze(cwd, { embeddings: true });
1771
+ return true;
1443
1772
  }
1444
1773
  function readGitNexusEmbeddingsEnabled(cwd) {
1445
1774
  const metaPath = path.join(cwd, ".gitnexus", "meta.json");
@@ -1456,7 +1785,7 @@ function readGitNexusEmbeddingsEnabled(cwd) {
1456
1785
  }
1457
1786
  function runGitNexusAnalyze(cwd, options = {}) {
1458
1787
  const primaryArgs = ["analyze", ...(options.embeddings ? ["--embeddings"] : []), "--no-ai-context"];
1459
- const primary = runCommand("gitnexus", primaryArgs, cwd);
1788
+ const primary = runCommandWithLockRetry("gitnexus", primaryArgs, cwd);
1460
1789
  if (primary.error) {
1461
1790
  throw new ClawError("PROJECT_CONFIG_INVALID", "gitnexus analyze failed.", {
1462
1791
  cwd,
@@ -1483,7 +1812,7 @@ function runGitNexusAnalyze(cwd, options = {}) {
1483
1812
  });
1484
1813
  }
1485
1814
  const fallbackArgs = ["analyze", ...(options.embeddings ? ["--embeddings"] : [])];
1486
- const fallback = runCommand("gitnexus", fallbackArgs, cwd);
1815
+ const fallback = runCommandWithLockRetry("gitnexus", fallbackArgs, cwd);
1487
1816
  if (commandFailed(fallback)) {
1488
1817
  throw new ClawError("PROJECT_CONFIG_INVALID", "gitnexus analyze fallback failed.", {
1489
1818
  cwd,
@@ -1612,13 +1941,32 @@ function resolveCommandOnPath(command) {
1612
1941
  return null;
1613
1942
  }
1614
1943
  function runCommand(command, args, cwd) {
1615
- return spawnSync(command, args, {
1944
+ const resolvedCommand = resolveCommandOnPath(command) ?? command;
1945
+ if (process.platform === "win32" && /\.(?:cmd|bat)$/i.test(resolvedCommand)) {
1946
+ return spawnSync(process.env.ComSpec ?? "cmd.exe", ["/d", "/s", "/c", resolvedCommand, ...args], {
1947
+ cwd,
1948
+ encoding: "utf-8",
1949
+ windowsHide: true,
1950
+ });
1951
+ }
1952
+ return spawnSync(resolvedCommand, args, {
1616
1953
  cwd,
1617
1954
  encoding: "utf-8",
1618
- shell: process.platform === "win32",
1619
1955
  windowsHide: true,
1620
1956
  });
1621
1957
  }
1958
+ function runCommandWithLockRetry(command, args, cwd) {
1959
+ let result = runCommand(command, args, cwd);
1960
+ for (const delayMs of [100, 250]) {
1961
+ const output = `${result.stdout ?? ""}\n${result.stderr ?? ""}`;
1962
+ if (!commandFailed(result) || !/(?:database|index|graph)?.{0,20}(?:busy|locked)|(?:busy|locked).{0,20}(?:database|index|graph)?/i.test(output)) {
1963
+ break;
1964
+ }
1965
+ Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, delayMs);
1966
+ result = runCommand(command, args, cwd);
1967
+ }
1968
+ return result;
1969
+ }
1622
1970
  function commandFailed(result) {
1623
1971
  if (result.error) {
1624
1972
  return true;
@@ -1716,7 +2064,7 @@ function readRequiredSearchQuery(args) {
1716
2064
  });
1717
2065
  }
1718
2066
  if (args.length === 0) {
1719
- throw new ClawError("PROJECT_CONFIG_INVALID", "Missing required flag --query.", { flag: "--query" });
2067
+ throw new ClawError("PROJECT_CONFIG_INVALID", 'Missing search query. Use: `claw search --query "<topic>"`.', { flag: "--query", recommendedCommand: 'claw search --query "<topic>"' });
1720
2068
  }
1721
2069
  const positionalQuery = args.join(" ").trim();
1722
2070
  args.splice(0, args.length);
@@ -1848,17 +2196,17 @@ function printTopLevelUsage() {
1848
2196
  process.stderr.write(lines.join("\n"));
1849
2197
  process.stderr.write("\n");
1850
2198
  }
1851
- function printSimpleHelp(label, entry) {
2199
+ function printSimpleHelp(label, entry, output = process.stderr) {
1852
2200
  const lines = [
1853
2201
  ...renderUsage(entry.usage),
1854
2202
  "",
1855
2203
  entry.description,
1856
2204
  ...renderOptions(entry.options),
1857
2205
  ];
1858
- process.stderr.write(lines.join("\n"));
1859
- process.stderr.write("\n");
2206
+ output.write(lines.join("\n"));
2207
+ output.write("\n");
1860
2208
  }
1861
- function printGroupHelp(label, node) {
2209
+ function printGroupHelp(label, node, output = process.stderr) {
1862
2210
  const lines = [
1863
2211
  ...renderUsage(node.usage),
1864
2212
  "",
@@ -1876,8 +2224,8 @@ function printGroupHelp(label, node) {
1876
2224
  }
1877
2225
  lines.push("", `Run \`claw help ${label} <subcommand>\` for details.`);
1878
2226
  }
1879
- process.stderr.write(lines.join("\n"));
1880
- process.stderr.write("\n");
2227
+ output.write(lines.join("\n"));
2228
+ output.write("\n");
1881
2229
  }
1882
2230
  function firstSentence(text) {
1883
2231
  const match = text.match(/^[^.]*\./);
@@ -1911,12 +2259,13 @@ function printHelp(topic) {
1911
2259
  process.exitCode = 1;
1912
2260
  return;
1913
2261
  }
2262
+ const successOutput = cmd === "search" ? process.stdout : process.stderr;
1914
2263
  if (sub === undefined) {
1915
2264
  if (node.subcommands) {
1916
- printGroupHelp(cmd, node);
2265
+ printGroupHelp(cmd, node, successOutput);
1917
2266
  }
1918
2267
  else {
1919
- printSimpleHelp(cmd, node);
2268
+ printSimpleHelp(cmd, node, successOutput);
1920
2269
  }
1921
2270
  return;
1922
2271
  }
@@ -1928,7 +2277,7 @@ function printHelp(topic) {
1928
2277
  }
1929
2278
  const subEntry = node.subcommands?.[sub];
1930
2279
  if (subEntry) {
1931
- printSimpleHelp(`${cmd} ${sub}`, subEntry);
2280
+ printSimpleHelp(`${cmd} ${sub}`, subEntry, successOutput);
1932
2281
  return;
1933
2282
  }
1934
2283
  if (node.subcommands) {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@veewo/claw",
3
- "version": "0.1.68",
3
+ "version": "0.1.69",
4
4
  "type": "module",
5
5
  "description": "CLI for running the .claw workflow: project planning, recall, truth ingestion, and closeout.",
6
6
  "keywords": [
@@ -31,7 +31,7 @@
31
31
  "claw": "./dist/bin.js"
32
32
  },
33
33
  "dependencies": {
34
- "@veewo/claw-core": "0.1.68"
34
+ "@veewo/claw-core": "0.1.69"
35
35
  },
36
36
  "scripts": {
37
37
  "build": "tsc -p tsconfig.json",