@veewo/claw 0.1.61 → 0.1.63

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/README.md CHANGED
@@ -32,7 +32,7 @@ claw plan create --title "My task" --goal "Define the first task"
32
32
  claw plan create "My templated task" --template default --goal "Route through the default template"
33
33
  ```
34
34
 
35
- `claw plan create` uses explicit `--template` first, otherwise the project's configured `defaultPlanTemplate`, and finally falls back to the built-in `default` seed template. You can select a template explicitly with `claw plan create "<title>" --template <name>` or `claw plan create --template <name> --title "<title>"`.
35
+ `claw plan create` uses explicit `--template` first, otherwise the project's configured `defaultPlanTemplate`, and finally falls back to the built-in `default` template. You can select a template explicitly with `claw plan create "<title>" --template <name>` or `claw plan create --template <name> --title "<title>"`.
36
36
 
37
37
  Projects can add reusable templates directly under `.claw/templates` with `.json`, `.js`, `.mjs`, or `.cjs` files. Put `defaultPlanTemplate` in `.claw/project.json` for a shared team default, or in `.claw/project-override.json` for a local personal override.
38
38
 
package/dist/cli.js CHANGED
@@ -3,13 +3,15 @@ import fs from "node:fs";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
5
  import { spawn, spawnSync } from "node:child_process";
6
- import { buildDirectWorkflowGuidance, checkProjectProtocol, ClawError, buildPlanWorkflowGuidance, buildMemoryIndex, buildSessionStartDefaultPrompt, buildSessionStartRecoveredPrompt, editPlan, ensureProjectProtocol, enforceTaskRetention, ingestTruth, initProject, resolveProjectContext, resolveContext, searchMemory, showPlan, createSubplan, switchTask, writePlan, } from "@veewo/claw-core";
6
+ import { buildDirectWorkflowGuidance, checkProjectProtocol, ClawError, buildPlanWorkflowGuidance, buildMemoryIndex, buildSessionStartDefaultPrompt, buildSessionStartRecoveredPrompt, editPlan, ensureProjectProtocol, enforceTaskRetention, ingestTruth, initProject, getTemplateTaskDoneChoices, resolvePlanTemplateFile, resolveProjectContext, resolveContext, resolveSeedPlanTemplate, searchMemory, showPlan, createSubplan, switchTask, writePlan, } from "@veewo/claw-core";
7
7
  const CLI_VERSION = readCliVersion();
8
8
  const TOP_LEVEL_COMMANDS = [
9
9
  { name: "init [options]", summary: "Initialize and normalize the .claw project surface." },
10
10
  { name: "context [--task <name>]", summary: "Resolve project context, auto-initializing or correcting .claw state." },
11
11
  { name: "check", summary: "Check and auto-correct .claw project protocol fields." },
12
12
  { name: "plan <subcommand> [options]", summary: "Plan lifecycle: create, edit, show, done." },
13
+ { name: "template <subcommand> [options]", summary: "Plan template helpers such as validation." },
14
+ { name: "task <subcommand> [options]", summary: "Task lifecycle helpers inside an existing plan." },
13
15
  { name: "subplan create [options]", summary: "Create a subplan nested under a parent task item." },
14
16
  { name: "switch-task --from <task> --to <task>", summary: "Switch the active task, carrying inherited context." },
15
17
  { name: "search [<query>] [options]", summary: "Recall project memory, truth, ADR, and declared docs." },
@@ -27,7 +29,7 @@ const COMMAND_HELP = {
27
29
  { flag: "--ext-path <path>", detail: "External doc path to index (repeatable)." },
28
30
  { flag: "--external-truth-skill <skill>", detail: "Skill id for external truth-writer dispatch." },
29
31
  { flag: "--external-adr-skill <skill>", detail: "Skill id for external adr-writer dispatch." },
30
- { flag: "--planning true|false", detail: "Enable planning-prefixed seed plans (default true)." },
32
+ { flag: "--planning true|false", detail: "Enable planning-aware default template behavior (default true)." },
31
33
  { flag: "--external-planning-skill <skill>", detail: "Skill id for an external planning skill." },
32
34
  { flag: "--gitnexus true|false", detail: "Enable GitNexus integration (default false)." },
33
35
  { flag: "--max-tasks-to-keep <n>", detail: "Max active tasks before archival pruning (default 99)." },
@@ -54,7 +56,7 @@ const COMMAND_HELP = {
54
56
  "{script} plan create \"<title>\" [--goal <text>]",
55
57
  "{script} plan create --title <text> [--goal <text>] [--template <name>]",
56
58
  ],
57
- description: "Create the task scope and initial plan from a template. Uses explicit `--template` first, otherwise the project's configured `defaultPlanTemplate`, and finally falls back to the built-in `default`; planning-enabled projects start in process.discussing with planning and activation bridge tasks, while planning-disabled projects start directly in process.active with one executable task.",
59
+ description: "Create the task scope and initial plan from a template. Uses explicit `--template` first, otherwise the project's configured `defaultPlanTemplate`, and finally falls back to the built-in `default`; planning-enabled projects start in process.discussing with the default planning bridge tasks, while planning-disabled projects start directly in process.active with one executable task.",
58
60
  summary: "Create the task scope and initial plan.",
59
61
  options: [
60
62
  { flag: "--title <text>", detail: "Task title (required unless a positional title is given)." },
@@ -64,7 +66,7 @@ const COMMAND_HELP = {
64
66
  },
65
67
  edit: {
66
68
  usage: ["{script} plan edit --task <name> [options]"],
67
- description: "Edit an existing plan: update status, append or patch tasks, add references, rules, and key decisions.",
69
+ description: "Edit an existing plan: update status, append tasks, apply merge-patch updates, add references, rules, and key decisions.",
68
70
  summary: "Edit a plan: status, tasks, references, rules, key decisions.",
69
71
  options: [
70
72
  { flag: "--task <name>", detail: "(required) Task name to edit." },
@@ -72,8 +74,9 @@ const COMMAND_HELP = {
72
74
  { flag: "--plan-status <status>", detail: "Set plan status (e.g. process.active, process.wait)." },
73
75
  { flag: "--task-id <id>", detail: "Target a specific task by id for status updates." },
74
76
  { flag: "--task-status <status>", detail: "Set the task status (e.g. pending, in_progress, done)." },
77
+ { flag: "--task-choice <choice-id>", detail: "Record the route choice when a task is marked done through a route-aware template." },
75
78
  { flag: "--append-tasks <json-file>", detail: "Append tasks from a JSON array file." },
76
- { flag: "--patch <json-file>", detail: "Apply a partial plan patch from a JSON file." },
79
+ { flag: "--patch <json-file>", detail: "Apply a JSON merge-patch object from a file. Objects merge recursively, null deletes fields, arrays replace the whole field." },
77
80
  { flag: "--rule <text>", detail: "Append a rule (repeatable)." },
78
81
  { flag: "--key-decision <text>", detail: "Append a key decision (repeatable)." },
79
82
  { flag: "--reference-path <path>", detail: "Add a reference (requires --reference-why)." },
@@ -99,7 +102,43 @@ const COMMAND_HELP = {
99
102
  { flag: "--plan <relative-path>", detail: "Plan file relative to the task dir." },
100
103
  { flag: "--summary <text>", detail: "Retrospective summary (required unless a patch provides retrospective.summary)." },
101
104
  { flag: "--change-summary <text>", detail: "Optional change summary." },
102
- { flag: "--patch <json-file>", detail: "Apply a partial plan patch (e.g. with retrospective.summary)." },
105
+ { flag: "--patch <json-file>", detail: "Apply a JSON merge-patch object (for example one that sets retrospective.summary)." },
106
+ ],
107
+ },
108
+ },
109
+ },
110
+ template: {
111
+ usage: ["{script} template <subcommand> [options]"],
112
+ description: "Helpers for inspecting and validating plan templates.",
113
+ subcommands: {
114
+ validate: {
115
+ usage: [
116
+ "{script} template validate --template <name>",
117
+ "{script} template validate --file <path>",
118
+ "{script} template validate <name>",
119
+ ],
120
+ description: "Validate through the same template resolver used by plan create and subplan create. Use `--template` for built-in, project, package, or skill-local templates, or `--file` to validate a specific template file directly.",
121
+ summary: "Validate a plan template.",
122
+ options: [
123
+ { flag: "--template <name>", detail: "Template id resolved from built-ins, project templates, packages, and skill-local templates." },
124
+ { flag: "--file <path>", detail: "Explicit template file path to validate." },
125
+ ],
126
+ },
127
+ },
128
+ },
129
+ task: {
130
+ usage: ["{script} task <subcommand> [options]"],
131
+ description: "Task-focused helpers layered on top of plan edits.",
132
+ subcommands: {
133
+ done: {
134
+ usage: ["{script} task done --task <name> --id <number> [--choice <choice-id>] [--plan <relative-path>]"],
135
+ description: "Mark a task item as done. Route-aware templates may require `--choice`, and the selected choice is persisted as `task.choiceId` in the plan state.",
136
+ summary: "Mark a task item as done, optionally recording a routing choice.",
137
+ options: [
138
+ { flag: "--task <name>", detail: "(required) Task name to edit." },
139
+ { flag: "--id <number>", detail: "(required) Task item id to mark done." },
140
+ { flag: "--choice <choice-id>", detail: "Route choice id required by templates that define guidance.onDone.choices." },
141
+ { flag: "--plan <relative-path>", detail: "Plan file relative to the task dir (defaults to the active plan)." },
103
142
  ],
104
143
  },
105
144
  },
@@ -224,7 +263,7 @@ async function main() {
224
263
  printJson(initProject(initInput));
225
264
  return;
226
265
  case "context":
227
- printJson(runContextCommand(args));
266
+ printJson(await runContextCommand(args));
228
267
  return;
229
268
  case "check":
230
269
  const checkResult = ensureProjectProtocol(process.cwd());
@@ -241,6 +280,12 @@ async function main() {
241
280
  case "plan":
242
281
  await runPlan(args);
243
282
  return;
283
+ case "template":
284
+ await runTemplate(args);
285
+ return;
286
+ case "task":
287
+ await runTask(args);
288
+ return;
244
289
  case "subplan":
245
290
  await runSubplan(args);
246
291
  return;
@@ -319,6 +364,7 @@ async function runPlan(args) {
319
364
  planStatus: readOptionalFlag(args, "--plan-status"),
320
365
  taskId: readOptionalNumber(args, "--task-id"),
321
366
  taskStatus: readOptionalFlag(args, "--task-status"),
367
+ taskChoiceId: readOptionalFlag(args, "--task-choice"),
322
368
  appendTasks: appendTasksPath ? readJson(appendTasksPath) : undefined,
323
369
  host: process.env.CLAW_HOST ?? undefined,
324
370
  });
@@ -372,6 +418,72 @@ async function runPlan(args) {
372
418
  throw new ClawError("PROJECT_CONFIG_INVALID", `Unknown plan subcommand "${subcommand ?? ""}".`);
373
419
  }
374
420
  }
421
+ async function runTemplate(args) {
422
+ const subcommand = args.shift();
423
+ switch (subcommand) {
424
+ case "validate": {
425
+ const templateName = readOptionalFlag(args, "--template") ?? readOptionalPositionalArg(args);
426
+ const templateFile = readOptionalFlag(args, "--file");
427
+ if (!templateName && !templateFile) {
428
+ throw new ClawError("PROJECT_CONFIG_INVALID", "template validate requires either `--template <name>` or `--file <path>`.");
429
+ }
430
+ if (templateName && templateFile) {
431
+ throw new ClawError("PROJECT_CONFIG_INVALID", "template validate accepts either `--template` or `--file`, but not both.");
432
+ }
433
+ assertNoRemainingArgs(args, "template validate");
434
+ const project = resolveProjectContext(process.cwd());
435
+ const template = templateFile
436
+ ? await resolvePlanTemplateFile(path.resolve(process.cwd(), templateFile))
437
+ : await resolveSeedPlanTemplate({
438
+ projectRoot: project.projectRoot,
439
+ templateName,
440
+ });
441
+ const choiceRequiredTasks = template.tasks.flatMap((task) => {
442
+ const choiceIds = Object.keys(getTemplateTaskDoneChoices(template, task.id) ?? {});
443
+ return choiceIds.length > 0 ? [{ taskId: task.id, choiceIds }] : [];
444
+ });
445
+ printJson({
446
+ command: "template.validate",
447
+ ok: true,
448
+ templateId: template.id,
449
+ source: template.source,
450
+ ...(template.templatePath ? { templatePath: template.templatePath } : {}),
451
+ status: template.status,
452
+ taskCount: template.tasks.length,
453
+ taskIds: template.tasks.map((task) => task.id),
454
+ choiceRequiredTasks,
455
+ ...(template.configOverride ? { configOverride: template.configOverride } : {}),
456
+ });
457
+ return;
458
+ }
459
+ default:
460
+ throw new ClawError("PROJECT_CONFIG_INVALID", `Unknown template subcommand "${subcommand ?? ""}".`, {
461
+ command: "template",
462
+ subcommand,
463
+ });
464
+ }
465
+ }
466
+ async function runTask(args) {
467
+ const subcommand = args.shift();
468
+ switch (subcommand) {
469
+ case "done": {
470
+ const result = await editPlan({
471
+ cwd: process.cwd(),
472
+ taskName: readRequiredFlag(args, "--task"),
473
+ planFile: readOptionalFlag(args, "--plan"),
474
+ taskId: readRequiredNumber(args, "--id"),
475
+ taskStatus: "done",
476
+ taskChoiceId: readOptionalFlag(args, "--choice"),
477
+ host: process.env.CLAW_HOST ?? undefined,
478
+ });
479
+ assertNoRemainingArgs(args, "task done");
480
+ printJson(compactPlanCommandResult("task.done", result));
481
+ return;
482
+ }
483
+ default:
484
+ throw new ClawError("PROJECT_CONFIG_INVALID", `Unknown task subcommand "${subcommand ?? ""}".`);
485
+ }
486
+ }
375
487
  function runSearch(args) {
376
488
  const subcommand = args[0];
377
489
  if (subcommand === "index") {
@@ -419,7 +531,7 @@ function runDirect(args) {
419
531
  host: process.env.CLAW_HOST ?? undefined,
420
532
  }), completionRefresh));
421
533
  }
422
- function runContextCommand(args, cwd = process.cwd(), ownerSessionKey = resolveOwnerSessionKey()) {
534
+ async function runContextCommand(args, cwd = process.cwd(), ownerSessionKey = resolveOwnerSessionKey()) {
423
535
  const taskName = readOptionalFlag(args, "--task");
424
536
  let initialized = false;
425
537
  let corrected = false;
@@ -446,7 +558,7 @@ function runContextCommand(args, cwd = process.cwd(), ownerSessionKey = resolveO
446
558
  resolved = resolveContext(cwd, taskName);
447
559
  }
448
560
  const activeWorkflow = !taskName && ownerSessionKey
449
- ? tryResolveActiveWorkflowSnapshot(cwd, ownerSessionKey)
561
+ ? await tryResolveActiveWorkflowSnapshot(cwd, ownerSessionKey)
450
562
  : null;
451
563
  return {
452
564
  ...resolved,
@@ -462,15 +574,17 @@ function runContextCommand(args, cwd = process.cwd(), ownerSessionKey = resolveO
462
574
  }
463
575
  function syncProjectVersionWithCli(cwd, project) {
464
576
  const projectVersion = normalizeVersionString(project.projectConfig?.version);
577
+ const autoUpdateEnabled = project.projectConfig?.autoUpdate === true;
465
578
  if (!projectVersion) {
466
579
  updateProjectJsonVersion(project.projectJsonPath, CLI_VERSION);
467
580
  return {
468
581
  cliVersion: CLI_VERSION,
469
582
  projectVersion: null,
470
583
  projectVersionAligned: true,
471
- cliUpdateAttempted: false,
472
- cliUpdateSucceeded: false,
473
584
  cliVersionLagging: false,
585
+ updateAvailable: false,
586
+ autoUpdateEnabled,
587
+ updateSkill: "claw-kit:update",
474
588
  };
475
589
  }
476
590
  const comparison = compareSemver(projectVersion, CLI_VERSION);
@@ -480,9 +594,10 @@ function syncProjectVersionWithCli(cwd, project) {
480
594
  cliVersion: CLI_VERSION,
481
595
  projectVersion,
482
596
  projectVersionAligned: true,
483
- cliUpdateAttempted: false,
484
- cliUpdateSucceeded: false,
485
597
  cliVersionLagging: false,
598
+ updateAvailable: false,
599
+ autoUpdateEnabled,
600
+ updateSkill: "claw-kit:update",
486
601
  };
487
602
  }
488
603
  if (comparison === 0) {
@@ -490,54 +605,39 @@ function syncProjectVersionWithCli(cwd, project) {
490
605
  cliVersion: CLI_VERSION,
491
606
  projectVersion,
492
607
  projectVersionAligned: false,
493
- cliUpdateAttempted: false,
494
- cliUpdateSucceeded: false,
495
608
  cliVersionLagging: false,
609
+ updateAvailable: false,
610
+ autoUpdateEnabled,
611
+ updateSkill: "claw-kit:update",
496
612
  };
497
613
  }
498
614
  const latestPublishedVersion = resolveLatestPublishedClawVersion(cwd);
615
+ const updateAvailable = !!latestPublishedVersion && compareSemver(latestPublishedVersion, CLI_VERSION) > 0;
499
616
  if (latestPublishedVersion && compareSemver(latestPublishedVersion, projectVersion) < 0) {
500
617
  return {
501
618
  cliVersion: CLI_VERSION,
502
619
  projectVersion,
503
620
  projectVersionAligned: false,
504
- cliUpdateAttempted: false,
505
- cliUpdateSucceeded: false,
506
621
  cliVersionLagging: true,
622
+ updateAvailable,
623
+ autoUpdateEnabled,
624
+ updateSkill: "claw-kit:update",
507
625
  latestPublishedVersion,
508
626
  message: `Project config version ${projectVersion} is newer than CLI ${CLI_VERSION}, and npm latest is only ${latestPublishedVersion}.`,
509
627
  };
510
628
  }
511
- const command = "npm install -g @veewo/claw@latest";
512
- const install = runCommand("npm", ["install", "-g", "@veewo/claw@latest"], cwd);
513
- if (commandFailed(install)) {
514
- return {
515
- cliVersion: CLI_VERSION,
516
- projectVersion,
517
- projectVersionAligned: false,
518
- cliUpdateAttempted: true,
519
- cliUpdateSucceeded: false,
520
- cliVersionLagging: true,
521
- latestPublishedVersion,
522
- command,
523
- exitCode: install.status ?? 0,
524
- stdout: install.stdout ?? "",
525
- stderr: install.stderr ?? "",
526
- message: `Project config version ${projectVersion} is newer than CLI ${CLI_VERSION}, and automatic CLI update failed.`,
527
- };
528
- }
529
629
  return {
530
630
  cliVersion: CLI_VERSION,
531
631
  projectVersion,
532
632
  projectVersionAligned: false,
533
- cliUpdateAttempted: true,
534
- cliUpdateSucceeded: true,
535
- cliVersionLagging: false,
633
+ cliVersionLagging: true,
634
+ updateAvailable,
635
+ autoUpdateEnabled,
636
+ updateSkill: "claw-kit:update",
536
637
  latestPublishedVersion,
537
- command,
538
- exitCode: install.status ?? 0,
539
- stdout: install.stdout ?? "",
540
- stderr: install.stderr ?? "",
638
+ message: updateAvailable
639
+ ? `Published claw-kit ${latestPublishedVersion} is newer than local CLI ${CLI_VERSION}.`
640
+ : `Project config version ${projectVersion} is newer than CLI ${CLI_VERSION}, but no newer published claw CLI was found.`,
541
641
  };
542
642
  }
543
643
  function runTruth(args) {
@@ -609,7 +709,7 @@ async function runSessionStartHook() {
609
709
  return;
610
710
  }
611
711
  try {
612
- const context = runContextCommand([], hookCwd, ownerSessionKey);
712
+ const context = await runContextCommand([], hookCwd, ownerSessionKey);
613
713
  const additionalContext = buildSessionStartAdditionalContext(context, hookCwd);
614
714
  if (!additionalContext) {
615
715
  return;
@@ -646,9 +746,11 @@ function resolveHookCwd(payload) {
646
746
  }
647
747
  function containsClawDir(cwd) {
648
748
  try {
649
- let current = path.resolve(cwd);
749
+ const startDir = path.resolve(cwd);
750
+ const tempDir = safeResolveTempDir();
751
+ let current = startDir;
650
752
  while (true) {
651
- if (fs.existsSync(path.join(current, ".claw"))) {
753
+ if (fs.existsSync(path.join(current, ".claw")) && shouldTreatHookClawDirAsProjectRoot(current, startDir, tempDir)) {
652
754
  return true;
653
755
  }
654
756
  const parent = path.dirname(current);
@@ -662,10 +764,30 @@ function containsClawDir(cwd) {
662
764
  return false;
663
765
  }
664
766
  }
767
+ function shouldTreatHookClawDirAsProjectRoot(candidateRoot, startDir, tempDir) {
768
+ const candidate = path.resolve(candidateRoot);
769
+ const start = path.resolve(startDir);
770
+ if (tempDir && isWithinDir(start, tempDir) && candidate !== tempDir && isWithinDir(tempDir, candidate)) {
771
+ return false;
772
+ }
773
+ return true;
774
+ }
775
+ function isWithinDir(target, root) {
776
+ return target === root || target.startsWith(`${root}${path.sep}`);
777
+ }
778
+ function safeResolveTempDir() {
779
+ try {
780
+ return path.resolve(os.tmpdir());
781
+ }
782
+ catch {
783
+ return null;
784
+ }
785
+ }
665
786
  function buildSessionStartAdditionalContext(context, sessionCwd) {
787
+ const versionSyncPrompt = buildVersionSyncPrompt(context);
666
788
  const activeWorkflow = context.activeWorkflow;
667
789
  if (activeWorkflow) {
668
- return buildRecoveredWorkflowAdditionalContext(activeWorkflow);
790
+ return buildRecoveredWorkflowAdditionalContext(activeWorkflow, versionSyncPrompt);
669
791
  }
670
792
  const project = context.project;
671
793
  if (!project) {
@@ -680,9 +802,15 @@ function buildSessionStartAdditionalContext(context, sessionCwd) {
680
802
  const projectId = typeof project.projectId === "string" ? project.projectId : projectName;
681
803
  const clawDir = typeof project.clawDir === "string" ? project.clawDir : path.join(projectRoot, ".claw");
682
804
  const protocolOk = context.protocolCheck?.ok === true ? "ok" : "needs attention";
683
- return buildSessionStartDefaultPrompt({ projectName, projectId, clawDir, protocolOk });
805
+ const prompt = buildSessionStartDefaultPrompt({ projectName, projectId, clawDir, protocolOk });
806
+ if (!versionSyncPrompt) {
807
+ return prompt;
808
+ }
809
+ return versionSyncPrompt.placement === "prefix"
810
+ ? `${versionSyncPrompt.lines.join("\n")}\n${prompt}`
811
+ : `${prompt}\n${versionSyncPrompt.lines.join("\n")}`;
684
812
  }
685
- function buildRecoveredWorkflowAdditionalContext(activeWorkflow) {
813
+ function buildRecoveredWorkflowAdditionalContext(activeWorkflow, versionSyncPrompt) {
686
814
  const taskName = String(activeWorkflow.taskName ?? "");
687
815
  const planFile = String(activeWorkflow.planFile ?? "plan.json");
688
816
  const planStatus = String(activeWorkflow.planStatus ?? "");
@@ -696,7 +824,7 @@ function buildRecoveredWorkflowAdditionalContext(activeWorkflow) {
696
824
  const askUser = summarizeAskUser(workflowGuidance?.askUser);
697
825
  const goalMode = summarizeGoalMode(workflowGuidance?.goalMode);
698
826
  const planContentLines = planContent ? summarizeRecoveredPlanContent(planContent) : [];
699
- return buildSessionStartRecoveredPrompt({
827
+ const prompt = buildSessionStartRecoveredPrompt({
700
828
  taskName,
701
829
  planFile,
702
830
  planStatus,
@@ -709,6 +837,61 @@ function buildRecoveredWorkflowAdditionalContext(activeWorkflow) {
709
837
  goalMode: goalMode ?? "",
710
838
  planContentLines,
711
839
  });
840
+ if (!versionSyncPrompt) {
841
+ return prompt;
842
+ }
843
+ return versionSyncPrompt.placement === "prefix"
844
+ ? `${versionSyncPrompt.lines.join("\n")}\n${prompt}`
845
+ : `${prompt}\n${versionSyncPrompt.lines.join("\n")}`;
846
+ }
847
+ function buildVersionSyncPrompt(context) {
848
+ const startupRecovery = asJsonRecord(context.startupRecovery);
849
+ const versionSync = asJsonRecord(startupRecovery?.versionSync);
850
+ if (!versionSync) {
851
+ return null;
852
+ }
853
+ const cliVersion = typeof versionSync.cliVersion === "string" ? versionSync.cliVersion.trim() : "";
854
+ const projectVersion = typeof versionSync.projectVersion === "string" ? versionSync.projectVersion.trim() : "";
855
+ const latestPublishedVersion = typeof versionSync.latestPublishedVersion === "string"
856
+ ? versionSync.latestPublishedVersion.trim()
857
+ : "";
858
+ const message = typeof versionSync.message === "string" ? versionSync.message.trim() : "";
859
+ const autoUpdateEnabled = versionSync.autoUpdateEnabled === true;
860
+ const updateAvailable = versionSync.updateAvailable === true;
861
+ const updateSkill = typeof versionSync.updateSkill === "string" ? versionSync.updateSkill.trim() : "claw-kit:update";
862
+ if (versionSync.cliVersionLagging !== true) {
863
+ return null;
864
+ }
865
+ if (autoUpdateEnabled && updateAvailable && cliVersion && latestPublishedVersion) {
866
+ return {
867
+ placement: "suffix",
868
+ lines: [
869
+ `Before anything else, a newer claw-kit version was detected: local CLI ${cliVersion}, published latest ${latestPublishedVersion}.`,
870
+ `First action: use ${updateSkill} to update the claw-kit CLI and the current host plugin surface before continuing any other work.`,
871
+ ],
872
+ };
873
+ }
874
+ if (message) {
875
+ return {
876
+ placement: "suffix",
877
+ lines: [`Startup note: ${message}`],
878
+ };
879
+ }
880
+ if (cliVersion && projectVersion && latestPublishedVersion) {
881
+ return {
882
+ placement: "suffix",
883
+ lines: [
884
+ `Startup note: project version ${projectVersion} is newer than CLI ${cliVersion}, and npm latest is ${latestPublishedVersion}.`,
885
+ ],
886
+ };
887
+ }
888
+ if (cliVersion && projectVersion) {
889
+ return {
890
+ placement: "suffix",
891
+ lines: [`Startup note: project version ${projectVersion} is newer than CLI ${cliVersion}.`],
892
+ };
893
+ }
894
+ return null;
712
895
  }
713
896
  function summarizeRecoveredPlanContent(planContent) {
714
897
  const lines = [];
@@ -757,7 +940,7 @@ function summarizeRecoveredPlanContent(planContent) {
757
940
  }
758
941
  return lines.length > 0 ? lines : ["- plan content present in activeWorkflow.planContent JSON."];
759
942
  }
760
- function tryResolveActiveWorkflowSnapshot(cwd, ownerSessionKey) {
943
+ async function tryResolveActiveWorkflowSnapshot(cwd, ownerSessionKey) {
761
944
  const project = resolveProjectContext(cwd);
762
945
  const taskName = findSessionBoundTask(project.tasksDir, ownerSessionKey);
763
946
  if (!taskName) {
@@ -775,10 +958,11 @@ function tryResolveActiveWorkflowSnapshot(cwd, ownerSessionKey) {
775
958
  planStatus: result.plan.status,
776
959
  planSummary: result.planView.collapsedSummary,
777
960
  planContent: result.plan,
778
- workflowGuidance: buildPlanWorkflowGuidance({
961
+ workflowGuidance: await buildPlanWorkflowGuidance({
779
962
  taskName: result.taskName,
780
963
  planFile: result.planFile,
781
964
  plan: result.plan,
965
+ projectRoot: project.projectRoot,
782
966
  projectConfig: project.projectConfig,
783
967
  }),
784
968
  };
@@ -917,6 +1101,10 @@ function compactPlanCommandResult(command, result, completionRefresh) {
917
1101
  planPath: resolvedPlanPath,
918
1102
  ...(archivedPlanPath ? { archivedPlanPath } : {}),
919
1103
  planStatus: result.planStatus,
1104
+ ...(result.previousPlanStatus ? { previousPlanStatus: result.previousPlanStatus } : {}),
1105
+ ...(result.emittedEvents?.length ? { emittedEvents: result.emittedEvents } : {}),
1106
+ ...(result.changedTaskIds?.length ? { changedTaskIds: result.changedTaskIds } : {}),
1107
+ ...(result.appendedTaskIds?.length ? { appendedTaskIds: result.appendedTaskIds } : {}),
920
1108
  nextsteps: result.workflowGuidance.nextsteps,
921
1109
  ...(result.workflowGuidance.nextTask ? { nextTask: result.workflowGuidance.nextTask } : {}),
922
1110
  ...(result.workflowGuidance.delegateSubagents?.length
@@ -1450,6 +1638,11 @@ function commandFailed(result) {
1450
1638
  }
1451
1639
  return (result.status ?? 0) !== 0;
1452
1640
  }
1641
+ function asJsonRecord(value) {
1642
+ return value && typeof value === "object" && !Array.isArray(value)
1643
+ ? value
1644
+ : undefined;
1645
+ }
1453
1646
  function resolveLatestPublishedClawVersion(cwd) {
1454
1647
  const result = runCommand("npm", ["view", "@veewo/claw", "version"], cwd);
1455
1648
  if (commandFailed(result)) {
@@ -1563,6 +1756,13 @@ function readOptionalNumber(args, flag) {
1563
1756
  }
1564
1757
  return value;
1565
1758
  }
1759
+ function readRequiredNumber(args, flag) {
1760
+ const value = readOptionalNumber(args, flag);
1761
+ if (value === undefined) {
1762
+ throw new ClawError("PROJECT_CONFIG_INVALID", `Missing required flag ${flag}.`, { flag });
1763
+ }
1764
+ return value;
1765
+ }
1566
1766
  function readBooleanValueFlag(args, flag) {
1567
1767
  const raw = readOptionalFlag(args, flag);
1568
1768
  if (raw === undefined) {
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.61",
3
+ "version": "0.1.63",
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.61"
34
+ "@veewo/claw-core": "0.1.63"
35
35
  },
36
36
  "scripts": {
37
37
  "build": "tsc -p tsconfig.json",