planflow-ai 1.3.5 → 1.4.3

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 (123) hide show
  1. package/.claude/commands/brainstorm.md +6 -14
  2. package/.claude/commands/create-contract.md +6 -38
  3. package/.claude/commands/create-plan.md +18 -38
  4. package/.claude/commands/discovery-plan.md +19 -49
  5. package/.claude/commands/execute-plan.md +116 -77
  6. package/.claude/commands/flow.md +27 -2
  7. package/.claude/commands/heartbeat.md +12 -14
  8. package/.claude/commands/learn.md +20 -80
  9. package/.claude/commands/note.md +6 -23
  10. package/.claude/commands/resume-work.md +261 -0
  11. package/.claude/commands/review-code.md +19 -51
  12. package/.claude/commands/review-pr.md +21 -57
  13. package/.claude/commands/setup.md +8 -56
  14. package/.claude/commands/write-tests.md +7 -41
  15. package/.claude/resources/core/atomic-commits.md +380 -0
  16. package/.claude/resources/core/autopilot-mode.md +3 -2
  17. package/.claude/resources/core/compaction-guide.md +15 -1
  18. package/.claude/resources/core/heartbeat.md +129 -1
  19. package/.claude/resources/core/per-task-verification.md +362 -0
  20. package/.claude/resources/core/phase-isolation.md +237 -4
  21. package/.claude/resources/core/session-scratchpad.md +1 -0
  22. package/.claude/resources/core/shared-context.md +110 -0
  23. package/.claude/resources/core/wave-execution.md +407 -0
  24. package/.claude/resources/patterns/plans-patterns.md +56 -0
  25. package/.claude/resources/patterns/plans-templates.md +152 -0
  26. package/.claude/resources/skills/create-plan-skill.md +71 -5
  27. package/.claude/resources/skills/execute-plan-skill.md +420 -14
  28. package/.claude/resources/skills/resume-work-skill.md +159 -0
  29. package/README.md +154 -96
  30. package/dist/cli/commands/brain.d.ts +20 -0
  31. package/dist/cli/commands/brain.d.ts.map +1 -0
  32. package/dist/cli/commands/brain.js +127 -0
  33. package/dist/cli/commands/brain.js.map +1 -0
  34. package/dist/cli/commands/init.d.ts.map +1 -1
  35. package/dist/cli/commands/init.js +10 -1
  36. package/dist/cli/commands/init.js.map +1 -1
  37. package/dist/cli/commands/state-query.d.ts +13 -0
  38. package/dist/cli/commands/state-query.d.ts.map +1 -0
  39. package/dist/cli/commands/state-query.js +32 -0
  40. package/dist/cli/commands/state-query.js.map +1 -0
  41. package/dist/cli/commands/state.d.ts +12 -0
  42. package/dist/cli/commands/state.d.ts.map +1 -0
  43. package/dist/cli/commands/state.js +47 -0
  44. package/dist/cli/commands/state.js.map +1 -0
  45. package/dist/cli/daemon/desktop-notifier.d.ts +16 -0
  46. package/dist/cli/daemon/desktop-notifier.d.ts.map +1 -0
  47. package/dist/cli/daemon/desktop-notifier.js +53 -0
  48. package/dist/cli/daemon/desktop-notifier.js.map +1 -0
  49. package/dist/cli/daemon/event-writer.d.ts +22 -0
  50. package/dist/cli/daemon/event-writer.d.ts.map +1 -0
  51. package/dist/cli/daemon/event-writer.js +76 -0
  52. package/dist/cli/daemon/event-writer.js.map +1 -0
  53. package/dist/cli/daemon/heartbeat-daemon.js +81 -1
  54. package/dist/cli/daemon/heartbeat-daemon.js.map +1 -1
  55. package/dist/cli/daemon/log-writer.d.ts +17 -0
  56. package/dist/cli/daemon/log-writer.d.ts.map +1 -0
  57. package/dist/cli/daemon/log-writer.js +62 -0
  58. package/dist/cli/daemon/log-writer.js.map +1 -0
  59. package/dist/cli/daemon/notification-router.d.ts +17 -0
  60. package/dist/cli/daemon/notification-router.d.ts.map +1 -0
  61. package/dist/cli/daemon/notification-router.js +35 -0
  62. package/dist/cli/daemon/notification-router.js.map +1 -0
  63. package/dist/cli/daemon/prompt-manager.d.ts +27 -0
  64. package/dist/cli/daemon/prompt-manager.d.ts.map +1 -0
  65. package/dist/cli/daemon/prompt-manager.js +107 -0
  66. package/dist/cli/daemon/prompt-manager.js.map +1 -0
  67. package/dist/cli/daemon/shared-context.d.ts +38 -0
  68. package/dist/cli/daemon/shared-context.d.ts.map +1 -0
  69. package/dist/cli/daemon/shared-context.js +129 -0
  70. package/dist/cli/daemon/shared-context.js.map +1 -0
  71. package/dist/cli/handlers/claude.d.ts.map +1 -1
  72. package/dist/cli/handlers/claude.js +18 -0
  73. package/dist/cli/handlers/claude.js.map +1 -1
  74. package/dist/cli/handlers/shared.js +1 -1
  75. package/dist/cli/handlers/shared.js.map +1 -1
  76. package/dist/cli/index.js +30 -0
  77. package/dist/cli/index.js.map +1 -1
  78. package/dist/cli/state/brain-query.d.ts +48 -0
  79. package/dist/cli/state/brain-query.d.ts.map +1 -0
  80. package/dist/cli/state/brain-query.js +113 -0
  81. package/dist/cli/state/brain-query.js.map +1 -0
  82. package/dist/cli/state/flowconfig-parser.d.ts +16 -0
  83. package/dist/cli/state/flowconfig-parser.d.ts.map +1 -0
  84. package/dist/cli/state/flowconfig-parser.js +166 -0
  85. package/dist/cli/state/flowconfig-parser.js.map +1 -0
  86. package/dist/cli/state/heartbeat-state.d.ts +16 -0
  87. package/dist/cli/state/heartbeat-state.d.ts.map +1 -0
  88. package/dist/cli/state/heartbeat-state.js +97 -0
  89. package/dist/cli/state/heartbeat-state.js.map +1 -0
  90. package/dist/cli/state/model-router.d.ts +8 -0
  91. package/dist/cli/state/model-router.d.ts.map +1 -0
  92. package/dist/cli/state/model-router.js +36 -0
  93. package/dist/cli/state/model-router.js.map +1 -0
  94. package/dist/cli/state/plan-parser.d.ts +16 -0
  95. package/dist/cli/state/plan-parser.d.ts.map +1 -0
  96. package/dist/cli/state/plan-parser.js +124 -0
  97. package/dist/cli/state/plan-parser.js.map +1 -0
  98. package/dist/cli/state/session-state.d.ts +21 -0
  99. package/dist/cli/state/session-state.d.ts.map +1 -0
  100. package/dist/cli/state/session-state.js +36 -0
  101. package/dist/cli/state/session-state.js.map +1 -0
  102. package/dist/cli/state/state-md-parser.d.ts +18 -0
  103. package/dist/cli/state/state-md-parser.d.ts.map +1 -0
  104. package/dist/cli/state/state-md-parser.js +222 -0
  105. package/dist/cli/state/state-md-parser.js.map +1 -0
  106. package/dist/cli/state/types.d.ts +137 -0
  107. package/dist/cli/state/types.d.ts.map +1 -0
  108. package/dist/cli/state/types.js +8 -0
  109. package/dist/cli/state/types.js.map +1 -0
  110. package/dist/cli/state/wave-calculator.d.ts +18 -0
  111. package/dist/cli/state/wave-calculator.d.ts.map +1 -0
  112. package/dist/cli/state/wave-calculator.js +134 -0
  113. package/dist/cli/state/wave-calculator.js.map +1 -0
  114. package/dist/cli/types.d.ts +15 -0
  115. package/dist/cli/types.d.ts.map +1 -1
  116. package/package.json +7 -2
  117. package/templates/shared/CLAUDE.md.template +4 -0
  118. package/.claude/resources/core/_index.md +0 -304
  119. package/.claude/resources/languages/_index.md +0 -76
  120. package/.claude/resources/patterns/_index.md +0 -200
  121. package/.claude/resources/skills/_index.md +0 -285
  122. package/.claude/resources/tools/_index.md +0 -110
  123. package/.claude/resources/tools/reference-expansion-tool.md +0 -326
@@ -0,0 +1 @@
1
+ {"version":3,"file":"brain.js","sourceRoot":"","sources":["../../../src/cli/commands/brain.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,aAAa,CAAC;AAuIrE,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA4DjE"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAwB,MAAM,aAAa,CAAC;AAwIrE,wBAAsB,OAAO,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAqEjE"}
@@ -12,6 +12,7 @@ import { initClawHub } from '../handlers/clawhub.js';
12
12
  import { initCodex } from '../handlers/codex.js';
13
13
  import { initShared } from '../handlers/shared.js';
14
14
  import { startHeartbeatIfNeeded } from './heartbeat.js';
15
+ import { openProjectBrain } from '../state/brain-query.js';
15
16
  function printBanner() {
16
17
  log.header('Plan-Flow Setup');
17
18
  log.info('Structured AI-assisted development workflows for discovery, planning, execution, code reviews, and testing.');
@@ -101,7 +102,7 @@ function printNextSteps(platforms) {
101
102
  log.blank();
102
103
  log.header('Heartbeat Daemon');
103
104
  log.info('The heartbeat daemon runs in the background to execute scheduled tasks.');
104
- log.info('Manage it with: npx plan-flow heartbeat start|stop|status');
105
+ log.info('Manage it with: npx planflow-ai heartbeat start|stop|status');
105
106
  log.blank();
106
107
  log.header('Brain & Obsidian Vault');
107
108
  log.info('Your project brain lives at flow/brain/ — features, errors, and decisions are tracked here.');
@@ -155,6 +156,14 @@ export async function runInit(options) {
155
156
  results.push({ platform: 'shared', result: sharedResult });
156
157
  // Start heartbeat daemon in background
157
158
  await startHeartbeatIfNeeded(target);
159
+ // Build brain index in background (fire-and-forget)
160
+ const brain = await openProjectBrain(target);
161
+ if (brain) {
162
+ log.info('Brain index building in background (hybrid search will be available shortly)...');
163
+ void brain.rebuild()
164
+ .then(() => brain.close())
165
+ .catch(() => brain.close());
166
+ }
158
167
  // Print summary and next steps
159
168
  printSummary(results, target);
160
169
  printNextSteps(platforms);
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * State Query CLI command
3
+ *
4
+ * Searches the project-scoped brain index and outputs matching results as JSON.
5
+ */
6
+ export declare function runStateQuery(options: {
7
+ query: string;
8
+ scope?: string;
9
+ type?: string;
10
+ limit?: number;
11
+ target: string;
12
+ }): Promise<void>;
13
+ //# sourceMappingURL=state-query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-query.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/state-query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,wBAAsB,aAAa,CAAC,OAAO,EAAE;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BhB"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * State Query CLI command
3
+ *
4
+ * Searches the project-scoped brain index and outputs matching results as JSON.
5
+ */
6
+ import { openProjectBrain, queryProjectBrain, closeProjectBrain } from '../state/brain-query.js';
7
+ export async function runStateQuery(options) {
8
+ let brain = null;
9
+ try {
10
+ brain = await openProjectBrain(options.target);
11
+ if (!brain) {
12
+ process.stdout.write(JSON.stringify({ results: [], warning: 'Project brain unavailable' }, null, 2) + '\n');
13
+ return;
14
+ }
15
+ const queryOpts = {
16
+ scope: options.scope ?? 'all',
17
+ type: options.type,
18
+ limit: options.limit ?? 10,
19
+ };
20
+ const results = await queryProjectBrain(brain, options.query, queryOpts);
21
+ process.stdout.write(JSON.stringify({ results }, null, 2) + '\n');
22
+ }
23
+ catch (error) {
24
+ const message = error instanceof Error ? error.message : String(error);
25
+ process.stdout.write(JSON.stringify({ error: message }, null, 2) + '\n');
26
+ process.exitCode = 1;
27
+ }
28
+ finally {
29
+ closeProjectBrain(brain);
30
+ }
31
+ }
32
+ //# sourceMappingURL=state-query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state-query.js","sourceRoot":"","sources":["../../../src/cli/commands/state-query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAGjG,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAMnC;IACC,IAAI,KAAK,GAAQ,IAAI,CAAC;IAEtB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAE/C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,2BAA2B,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACtF,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAiB;YAC9B,KAAK,EAAG,OAAO,CAAC,KAA+B,IAAI,KAAK;YACxD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;SAC3B,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAEzE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACzE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;YAAS,CAAC;QACT,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * State CLI command
3
+ *
4
+ * Outputs deterministic JSON representing current plan-flow state.
5
+ * Composes all parsers: config, session, heartbeat (always),
6
+ * and plan/waves/tiers (when --plan is provided).
7
+ */
8
+ export declare function runState(options: {
9
+ plan?: string;
10
+ target: string;
11
+ }): Promise<void>;
12
+ //# sourceMappingURL=state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAYH,wBAAsB,QAAQ,CAAC,OAAO,EAAE;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,IAAI,CAAC,CAmChB"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * State CLI command
3
+ *
4
+ * Outputs deterministic JSON representing current plan-flow state.
5
+ * Composes all parsers: config, session, heartbeat (always),
6
+ * and plan/waves/tiers (when --plan is provided).
7
+ */
8
+ import { join } from 'node:path';
9
+ import { parseFlowConfig } from '../state/flowconfig-parser.js';
10
+ import { getSessionState } from '../state/session-state.js';
11
+ import { getHeartbeatSummary } from '../state/heartbeat-state.js';
12
+ import { parseStateMd } from '../state/state-md-parser.js';
13
+ import { parsePlan } from '../state/plan-parser.js';
14
+ import { calculateWaves } from '../state/wave-calculator.js';
15
+ import { calculateModelTiers } from '../state/model-router.js';
16
+ export async function runState(options) {
17
+ try {
18
+ const flowDir = join(options.target, 'flow');
19
+ const config = parseFlowConfig(flowDir);
20
+ const session = getSessionState(flowDir);
21
+ const heartbeat = getHeartbeatSummary(flowDir);
22
+ const execution = parseStateMd(flowDir);
23
+ const output = {
24
+ config,
25
+ session,
26
+ heartbeat,
27
+ ...(execution ? { execution } : {}),
28
+ };
29
+ if (options.plan) {
30
+ const phases = parsePlan(options.plan);
31
+ const waves = calculateWaves(phases);
32
+ const model_tiers = calculateModelTiers(phases, config.model_routing);
33
+ output.plan = {
34
+ phases,
35
+ waves,
36
+ model_tiers,
37
+ };
38
+ }
39
+ process.stdout.write(JSON.stringify(output, null, 2) + '\n');
40
+ }
41
+ catch (error) {
42
+ const message = error instanceof Error ? error.message : String(error);
43
+ process.stdout.write(JSON.stringify({ error: message }, null, 2) + '\n');
44
+ process.exitCode = 1;
45
+ }
46
+ }
47
+ //# sourceMappingURL=state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAG/D,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAG9B;IACC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAE7C,MAAM,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAExC,MAAM,MAAM,GAAgB;YAC1B,MAAM;YACN,OAAO;YACP,SAAS;YACT,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpC,CAAC;QAEF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;YAEtE,MAAM,CAAC,IAAI,GAAG;gBACZ,MAAM;gBACN,KAAK;gBACL,WAAW;aACZ,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QACzE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Desktop notifier — thin wrapper around node-notifier.
3
+ * Fire-and-forget: never throws, never blocks.
4
+ * Degrades silently on headless servers or when node-notifier is unavailable.
5
+ */
6
+ import type { NotificationEvent } from '../types.js';
7
+ /**
8
+ * Send a desktop notification for the given event.
9
+ *
10
+ * - Title: "Plan-Flow Heartbeat"
11
+ * - Message: "{task}: {message}"
12
+ * - Fire-and-forget — does not await the OS notification result
13
+ * - Catches ALL errors; logs to console.error but never throws
14
+ */
15
+ export declare function sendDesktopNotification(event: NotificationEvent): void;
16
+ //# sourceMappingURL=desktop-notifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"desktop-notifier.d.ts","sourceRoot":"","sources":["../../../src/cli/daemon/desktop-notifier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA6BrD;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAetE"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Desktop notifier — thin wrapper around node-notifier.
3
+ * Fire-and-forget: never throws, never blocks.
4
+ * Degrades silently on headless servers or when node-notifier is unavailable.
5
+ */
6
+ const NOTIFICATION_TITLE = 'Plan-Flow Heartbeat';
7
+ /**
8
+ * Lazily resolved notifier instance.
9
+ * `null` means the import failed (headless server, missing native deps, etc.)
10
+ */
11
+ let cachedNotifier;
12
+ async function getNotifier() {
13
+ if (cachedNotifier !== undefined)
14
+ return cachedNotifier;
15
+ try {
16
+ // Dynamic import — may fail on headless systems
17
+ const mod = await import('node-notifier');
18
+ // node-notifier exports its instance as both default and named
19
+ cachedNotifier = (mod.default ?? mod);
20
+ return cachedNotifier;
21
+ }
22
+ catch {
23
+ // node-notifier unavailable — degrade silently
24
+ cachedNotifier = null;
25
+ return null;
26
+ }
27
+ }
28
+ /**
29
+ * Send a desktop notification for the given event.
30
+ *
31
+ * - Title: "Plan-Flow Heartbeat"
32
+ * - Message: "{task}: {message}"
33
+ * - Fire-and-forget — does not await the OS notification result
34
+ * - Catches ALL errors; logs to console.error but never throws
35
+ */
36
+ export function sendDesktopNotification(event) {
37
+ // Intentionally not awaited — fire-and-forget
38
+ void (async () => {
39
+ try {
40
+ const notifier = await getNotifier();
41
+ if (!notifier)
42
+ return;
43
+ notifier.notify({
44
+ title: NOTIFICATION_TITLE,
45
+ message: `${event.task}: ${event.message}`,
46
+ });
47
+ }
48
+ catch (error) {
49
+ console.error('Desktop notification failed (non-fatal):', error);
50
+ }
51
+ })();
52
+ }
53
+ //# sourceMappingURL=desktop-notifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"desktop-notifier.js","sourceRoot":"","sources":["../../../src/cli/daemon/desktop-notifier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,kBAAkB,GAAG,qBAAqB,CAAC;AAKjD;;;GAGG;AACH,IAAI,cAA+C,CAAC;AAEpD,KAAK,UAAU,WAAW;IACxB,IAAI,cAAc,KAAK,SAAS;QAAE,OAAO,cAAc,CAAC;IAExD,IAAI,CAAC;QACH,gDAAgD;QAChD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;QAC1C,+DAA+D;QAC/D,cAAc,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAiB,CAAC;QACtD,OAAO,cAAc,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;QAC/C,cAAc,GAAG,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAwB;IAC9D,8CAA8C;IAC9C,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAEtB,QAAQ,CAAC,MAAM,CAAC;gBACd,KAAK,EAAE,kBAAkB;gBACzB,OAAO,EAAE,GAAG,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE;aAC3C,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;AACP,CAAC"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Event writer — appends NotificationEvent records to a JSONL file.
3
+ * Uses atomic write (write-to-temp then rename) to prevent corruption.
4
+ */
5
+ import type { NotificationEvent, NotificationLevel, NotificationType } from '../types.js';
6
+ /**
7
+ * Create a NotificationEvent with an auto-generated id and current timestamp.
8
+ */
9
+ export declare function createEvent(task: string, type: NotificationType, level: NotificationLevel, message: string, phase?: string): NotificationEvent;
10
+ /**
11
+ * Append a single event to the JSONL file using atomic write.
12
+ *
13
+ * Reads the existing file (if any), appends the new JSON line,
14
+ * writes to a temp file, then renames over the original.
15
+ */
16
+ export declare function appendEvent(flowDir: string, event: NotificationEvent): Promise<void>;
17
+ /**
18
+ * Read all events from the JSONL file. Returns an empty array if the file
19
+ * does not exist.
20
+ */
21
+ export declare function readEvents(flowDir: string): Promise<NotificationEvent[]>;
22
+ //# sourceMappingURL=event-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-writer.d.ts","sourceRoot":"","sources":["../../../src/cli/daemon/event-writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAW1F;;GAEG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,iBAAiB,EACxB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,iBAAiB,CAUnB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,IAAI,CAAC,CAuBf;AAED;;;GAGG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAiB9E"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Event writer — appends NotificationEvent records to a JSONL file.
3
+ * Uses atomic write (write-to-temp then rename) to prevent corruption.
4
+ */
5
+ import { readFile, writeFile, rename, mkdir } from 'node:fs/promises';
6
+ import { randomUUID } from 'node:crypto';
7
+ import { dirname, join } from 'node:path';
8
+ const EVENTS_FILENAME = '.heartbeat-events.jsonl';
9
+ /**
10
+ * Build the full path to the events file for a given flow directory.
11
+ */
12
+ function eventsPath(flowDir) {
13
+ return join(flowDir, EVENTS_FILENAME);
14
+ }
15
+ /**
16
+ * Create a NotificationEvent with an auto-generated id and current timestamp.
17
+ */
18
+ export function createEvent(task, type, level, message, phase) {
19
+ return {
20
+ id: randomUUID(),
21
+ timestamp: new Date(),
22
+ task,
23
+ type,
24
+ level,
25
+ phase,
26
+ message,
27
+ };
28
+ }
29
+ /**
30
+ * Append a single event to the JSONL file using atomic write.
31
+ *
32
+ * Reads the existing file (if any), appends the new JSON line,
33
+ * writes to a temp file, then renames over the original.
34
+ */
35
+ export async function appendEvent(flowDir, event) {
36
+ const filePath = eventsPath(flowDir);
37
+ const dir = dirname(filePath);
38
+ await mkdir(dir, { recursive: true });
39
+ let existing = '';
40
+ try {
41
+ existing = await readFile(filePath, 'utf-8');
42
+ }
43
+ catch {
44
+ // File does not exist yet — start fresh
45
+ }
46
+ const line = JSON.stringify({
47
+ ...event,
48
+ timestamp: event.timestamp instanceof Date ? event.timestamp.toISOString() : event.timestamp,
49
+ });
50
+ const updated = existing ? `${existing.trimEnd()}\n${line}\n` : `${line}\n`;
51
+ const tempPath = `${filePath}.tmp`;
52
+ await writeFile(tempPath, updated, 'utf-8');
53
+ await rename(tempPath, filePath);
54
+ }
55
+ /**
56
+ * Read all events from the JSONL file. Returns an empty array if the file
57
+ * does not exist.
58
+ */
59
+ export async function readEvents(flowDir) {
60
+ const filePath = eventsPath(flowDir);
61
+ let content;
62
+ try {
63
+ content = await readFile(filePath, 'utf-8');
64
+ }
65
+ catch {
66
+ return [];
67
+ }
68
+ return content
69
+ .split('\n')
70
+ .filter((line) => line.trim().length > 0)
71
+ .map((line) => {
72
+ const parsed = JSON.parse(line);
73
+ return { ...parsed, timestamp: new Date(parsed.timestamp) };
74
+ });
75
+ }
76
+ //# sourceMappingURL=event-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-writer.js","sourceRoot":"","sources":["../../../src/cli/daemon/event-writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG1C,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAElD;;GAEG;AACH,SAAS,UAAU,CAAC,OAAe;IACjC,OAAO,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CACzB,IAAY,EACZ,IAAsB,EACtB,KAAwB,EACxB,OAAe,EACf,KAAc;IAEd,OAAO;QACL,EAAE,EAAE,UAAU,EAAE;QAChB,SAAS,EAAE,IAAI,IAAI,EAAE;QACrB,IAAI;QACJ,IAAI;QACJ,KAAK;QACL,KAAK;QACL,OAAO;KACR,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAe,EACf,KAAwB;IAExB,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAE9B,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEtC,IAAI,QAAQ,GAAG,EAAE,CAAC;IAClB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAAC,MAAM,CAAC;QACP,wCAAwC;IAC1C,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,GAAG,KAAK;QACR,SAAS,EAAE,KAAK,CAAC,SAAS,YAAY,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS;KAC7F,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC,OAAO,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,CAAC;IAE5E,MAAM,QAAQ,GAAG,GAAG,QAAQ,MAAM,CAAC;IACnC,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,MAAM,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;AACnC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAe;IAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IAErC,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,OAAO;SACX,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;SACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;IAC9D,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -8,7 +8,10 @@
8
8
  import { readFileSync, writeFileSync, existsSync, unlinkSync, watch, appendFileSync, statSync } from 'node:fs';
9
9
  import { join } from 'node:path';
10
10
  import { spawn } from 'node:child_process';
11
+ import { randomUUID } from 'node:crypto';
11
12
  import { parseHeartbeatFile } from './heartbeat-parser.js';
13
+ import { notify } from './notification-router.js';
14
+ import { writePrompt } from './prompt-manager.js';
12
15
  const target = process.argv[2] || process.cwd();
13
16
  const heartbeatPath = join(target, 'flow', 'heartbeat.md');
14
17
  const pidPath = join(target, 'flow', '.heartbeat.pid');
@@ -18,7 +21,47 @@ let taskRunning = false;
18
21
  const ACTIVE_SESSION_ERROR = 'cannot be launched inside another Claude Code session';
19
22
  const MAX_RETRIES = 5;
20
23
  const RETRY_DELAY_MS = 60_000;
24
+ const TAIL_LINES = 20;
21
25
  const retryCountMap = new Map();
26
+ const flowDir = join(target, 'flow');
27
+ /**
28
+ * Create a NotificationEvent with consistent structure.
29
+ */
30
+ function createEvent(task, type, level, message, phase) {
31
+ return {
32
+ id: randomUUID(),
33
+ timestamp: new Date(),
34
+ task: task.name,
35
+ type,
36
+ level,
37
+ message,
38
+ ...(phase ? { phase } : {}),
39
+ };
40
+ }
41
+ /**
42
+ * Return the last N lines from a string.
43
+ */
44
+ function tailLines(text, n) {
45
+ const lines = text.split('\n');
46
+ return lines.slice(-n).join('\n');
47
+ }
48
+ /**
49
+ * Read the autopilot setting from flow/.flowconfig.
50
+ * Returns true if autopilot is enabled, false otherwise.
51
+ */
52
+ function readAutopilot() {
53
+ try {
54
+ const configPath = join(flowDir, '.flowconfig');
55
+ if (!existsSync(configPath))
56
+ return false;
57
+ const content = readFileSync(configPath, 'utf-8');
58
+ const match = content.match(/^autopilot:\s*(true|false)/m);
59
+ return match?.[1] === 'true';
60
+ }
61
+ catch {
62
+ return false;
63
+ }
64
+ }
22
65
  function log(message) {
23
66
  const timestamp = new Date().toISOString();
24
67
  const line = `[${timestamp}] ${message}\n`;
@@ -86,6 +129,10 @@ function executeTask(task) {
86
129
  }
87
130
  taskRunning = true;
88
131
  log(`Executing "${task.name}": ${task.command}`);
132
+ // Snapshot prompt file state before task runs
133
+ const promptExistedBefore = existsSync(join(flowDir, '.heartbeat-prompt.md'));
134
+ // Emit task_started notification (fire-and-forget)
135
+ void notify(createEvent(task, 'task_started', 'info', `Starting task: ${task.name}`), flowDir);
89
136
  // Strip CLAUDECODE env var to avoid "nested session" detection.
90
137
  // The daemon runs detached — it's not actually nested.
91
138
  const cleanEnv = { ...process.env };
@@ -118,13 +165,42 @@ function executeTask(task) {
118
165
  });
119
166
  child.on('close', (code) => {
120
167
  taskRunning = false;
168
+ const outputTail = tailLines(stdout, TAIL_LINES);
169
+ const errorTail = tailLines(stderr, TAIL_LINES);
121
170
  if (code === 0) {
122
- log(`Task "${task.name}" completed successfully`);
123
171
  retryCountMap.delete(task.name);
172
+ // Check if the task created a NEW prompt file (blocked via file, not exit code)
173
+ const promptPath = join(flowDir, '.heartbeat-prompt.md');
174
+ if (!promptExistedBefore && existsSync(promptPath)) {
175
+ log(`Task "${task.name}" completed but created prompt file — treating as blocked`);
176
+ void notify(createEvent(task, 'task_blocked', 'error', `Task needs input: ${task.name}`), flowDir);
177
+ }
178
+ else {
179
+ log(`Task "${task.name}" completed successfully`);
180
+ // Emit task_complete notification (fire-and-forget)
181
+ void notify(createEvent(task, 'task_complete', 'info', `Task completed: ${task.name}`), flowDir);
182
+ }
124
183
  if (task.oneShot) {
125
184
  disableOneShotTask(task.name);
126
185
  }
127
186
  }
187
+ else if (code === 2) {
188
+ // Exit code 2 — task needs human input
189
+ log(`Task "${task.name}" blocked — needs input (exit code 2)`);
190
+ if (stderr)
191
+ log(` stderr: ${stderr.slice(0, 500)}`);
192
+ const isAutopilot = readAutopilot();
193
+ // Emit task_blocked notification (fire-and-forget)
194
+ void notify(createEvent(task, 'task_blocked', 'error', `Task blocked (needs input): ${task.name}${isAutopilot ? ' [autopilot ON]' : ''}`), flowDir);
195
+ if (!isAutopilot) {
196
+ void writePrompt(task.name, outputTail, errorTail, flowDir);
197
+ log(` prompt written to flow/${'.heartbeat-prompt.md'} — waiting for human input`);
198
+ }
199
+ else {
200
+ log(` Autopilot ON — skipping prompt, continuing`);
201
+ }
202
+ log(` context (last ${TAIL_LINES} lines): ${outputTail.slice(0, 500)}`);
203
+ }
128
204
  else if (stderr.includes(ACTIVE_SESSION_ERROR)) {
129
205
  scheduleRetry(task);
130
206
  }
@@ -132,6 +208,8 @@ function executeTask(task) {
132
208
  log(`Task "${task.name}" failed with code ${code}`);
133
209
  if (stderr)
134
210
  log(` stderr: ${stderr.slice(0, 500)}`);
211
+ // Emit task_failed notification (fire-and-forget)
212
+ void notify(createEvent(task, 'task_failed', 'error', `Task failed (exit ${code}): ${task.name}${errorTail ? '\n' + errorTail.slice(0, 300) : ''}`), flowDir);
135
213
  }
136
214
  if (stdout)
137
215
  log(` output: ${stdout.slice(0, 500)}`);
@@ -139,6 +217,8 @@ function executeTask(task) {
139
217
  child.on('error', (err) => {
140
218
  taskRunning = false;
141
219
  log(`Task "${task.name}" error: ${err.message}`);
220
+ // Emit task_failed notification for spawn errors (fire-and-forget)
221
+ void notify(createEvent(task, 'task_failed', 'error', `Task spawn error: ${task.name} — ${err.message}`), flowDir);
142
222
  });
143
223
  }
144
224
  function scheduleRetry(task) {
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat-daemon.js","sourceRoot":"","sources":["../../../src/cli/daemon/heartbeat-daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat-daemon.js","sourceRoot":"","sources":["../../../src/cli/daemon/heartbeat-daemon.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Log writer — appends formatted one-liner entries to flow/log.md.
3
+ * Auto-creates the file with a header if it does not exist.
4
+ */
5
+ import type { NotificationEvent } from '../types.js';
6
+ /**
7
+ * Build a single log line from a NotificationEvent.
8
+ *
9
+ * Format: `[2026-03-17 14:00] <icon> <task>: <message>`
10
+ */
11
+ export declare function formatLogLine(event: NotificationEvent): string;
12
+ /**
13
+ * Append a formatted log entry to flow/log.md.
14
+ * Creates the file with a header if it does not exist.
15
+ */
16
+ export declare function appendLog(flowDir: string, event: NotificationEvent): Promise<void>;
17
+ //# sourceMappingURL=log-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"log-writer.d.ts","sourceRoot":"","sources":["../../../src/cli/daemon/log-writer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA4BrD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAM9D;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,IAAI,CAAC,CAoBf"}