@entelligentsia/forgecli 1.0.10 → 1.0.20

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 (183) hide show
  1. package/CHANGELOG.md +191 -0
  2. package/dist/CHANGELOG-forge-plugin.md +211 -0
  3. package/dist/bin/forge.js +0 -0
  4. package/dist/extensions/forgecli/config-layer.js.map +1 -1
  5. package/dist/extensions/forgecli/context-governor-compaction.d.ts +83 -0
  6. package/dist/extensions/forgecli/context-governor-compaction.js +302 -0
  7. package/dist/extensions/forgecli/context-governor-compaction.js.map +1 -0
  8. package/dist/extensions/forgecli/context-governor.d.ts +173 -0
  9. package/dist/extensions/forgecli/context-governor.js +618 -0
  10. package/dist/extensions/forgecli/context-governor.js.map +1 -0
  11. package/dist/extensions/forgecli/dashboard/component.d.ts +105 -0
  12. package/dist/extensions/forgecli/dashboard/component.js +861 -0
  13. package/dist/extensions/forgecli/dashboard/component.js.map +1 -0
  14. package/dist/extensions/forgecli/dashboard/register.d.ts +2 -0
  15. package/dist/extensions/forgecli/dashboard/register.js +31 -0
  16. package/dist/extensions/forgecli/dashboard/register.js.map +1 -0
  17. package/dist/extensions/forgecli/dashboard/theme.d.ts +27 -0
  18. package/dist/extensions/forgecli/dashboard/theme.js +91 -0
  19. package/dist/extensions/forgecli/dashboard/theme.js.map +1 -0
  20. package/dist/extensions/forgecli/dashboard/view-model.d.ts +35 -0
  21. package/dist/extensions/forgecli/dashboard/view-model.js +54 -0
  22. package/dist/extensions/forgecli/dashboard/view-model.js.map +1 -0
  23. package/dist/extensions/forgecli/fix-bug.js +126 -7
  24. package/dist/extensions/forgecli/fix-bug.js.map +1 -1
  25. package/dist/extensions/forgecli/forge-artifact-tool.js +2 -1
  26. package/dist/extensions/forgecli/forge-artifact-tool.js.map +1 -1
  27. package/dist/extensions/forgecli/forge-commands.js +1 -0
  28. package/dist/extensions/forgecli/forge-commands.js.map +1 -1
  29. package/dist/extensions/forgecli/forge-init/phase4-register.js +53 -0
  30. package/dist/extensions/forgecli/forge-init/phase4-register.js.map +1 -1
  31. package/dist/extensions/forgecli/forge-subagent.d.ts +20 -1
  32. package/dist/extensions/forgecli/forge-subagent.js +23 -7
  33. package/dist/extensions/forgecli/forge-subagent.js.map +1 -1
  34. package/dist/extensions/forgecli/forge-tools.js +3 -1
  35. package/dist/extensions/forgecli/forge-tools.js.map +1 -1
  36. package/dist/extensions/forgecli/hook-dispatcher.d.ts +3 -1
  37. package/dist/extensions/forgecli/hook-dispatcher.js +37 -3
  38. package/dist/extensions/forgecli/hook-dispatcher.js.map +1 -1
  39. package/dist/extensions/forgecli/index.js +38 -1
  40. package/dist/extensions/forgecli/index.js.map +1 -1
  41. package/dist/extensions/forgecli/lib/halt-advisor.d.ts +59 -0
  42. package/dist/extensions/forgecli/lib/halt-advisor.js +113 -0
  43. package/dist/extensions/forgecli/lib/halt-advisor.js.map +1 -0
  44. package/dist/extensions/forgecli/migration-engine.js +25 -12
  45. package/dist/extensions/forgecli/migration-engine.js.map +1 -1
  46. package/dist/extensions/forgecli/orchestrator-status-bar.d.ts +26 -0
  47. package/dist/extensions/forgecli/orchestrator-status-bar.js +213 -0
  48. package/dist/extensions/forgecli/orchestrator-status-bar.js.map +1 -0
  49. package/dist/extensions/forgecli/orchestrator-tree.d.ts +96 -0
  50. package/dist/extensions/forgecli/orchestrator-tree.js +390 -0
  51. package/dist/extensions/forgecli/orchestrator-tree.js.map +1 -0
  52. package/dist/extensions/forgecli/project-orientation.js +12 -8
  53. package/dist/extensions/forgecli/project-orientation.js.map +1 -1
  54. package/dist/extensions/forgecli/regenerate.d.ts +16 -0
  55. package/dist/extensions/forgecli/regenerate.js +110 -0
  56. package/dist/extensions/forgecli/regenerate.js.map +1 -1
  57. package/dist/extensions/forgecli/run-sprint.d.ts +3 -1
  58. package/dist/extensions/forgecli/run-sprint.js +34 -3
  59. package/dist/extensions/forgecli/run-sprint.js.map +1 -1
  60. package/dist/extensions/forgecli/run-task.d.ts +66 -1
  61. package/dist/extensions/forgecli/run-task.js +323 -12
  62. package/dist/extensions/forgecli/run-task.js.map +1 -1
  63. package/dist/extensions/forgecli/thread-switcher.d.ts +4 -1
  64. package/dist/extensions/forgecli/thread-switcher.js +118 -762
  65. package/dist/extensions/forgecli/thread-switcher.js.map +1 -1
  66. package/dist/extensions/forgecli/viewport-events.js +32 -0
  67. package/dist/extensions/forgecli/viewport-events.js.map +1 -1
  68. package/dist/forge-payload/.base-pack/commands/fix-bug.md +1 -1
  69. package/dist/forge-payload/.base-pack/commands/run-sprint.md +1 -1
  70. package/dist/forge-payload/.base-pack/commands/run-task.md +1 -1
  71. package/dist/forge-payload/.base-pack/personas/architect.md +1 -1
  72. package/dist/forge-payload/.base-pack/personas/bug-fixer.md +1 -1
  73. package/dist/forge-payload/.base-pack/personas/collator.md +3 -3
  74. package/dist/forge-payload/.base-pack/personas/engineer.md +1 -1
  75. package/dist/forge-payload/.base-pack/personas/librarian.md +1 -1
  76. package/dist/forge-payload/.base-pack/personas/orchestrator.md +1 -1
  77. package/dist/forge-payload/.base-pack/personas/product-manager.md +1 -1
  78. package/dist/forge-payload/.base-pack/personas/qa-engineer.md +1 -1
  79. package/dist/forge-payload/.base-pack/personas/supervisor.md +1 -1
  80. package/dist/forge-payload/.base-pack/workflows/_fragments/event-emission-schema.md +1 -1
  81. package/dist/forge-payload/.base-pack/workflows/_fragments/friction-emit.md +1 -1
  82. package/dist/forge-payload/.base-pack/workflows/_fragments/iron-laws.md +1 -1
  83. package/dist/forge-payload/.base-pack/workflows/_fragments/progress-reporting.md +2 -2
  84. package/dist/forge-payload/.base-pack/workflows/_fragments/store-cli-verbs.md +11 -2
  85. package/dist/forge-payload/.base-pack/workflows/architect_approve.md +6 -7
  86. package/dist/forge-payload/.base-pack/workflows/architect_review_sprint_completion.md +2 -2
  87. package/dist/forge-payload/.base-pack/workflows/architect_sprint_intake.md +2 -2
  88. package/dist/forge-payload/.base-pack/workflows/architect_sprint_plan.md +5 -5
  89. package/dist/forge-payload/.base-pack/workflows/collator_agent.md +4 -6
  90. package/dist/forge-payload/.base-pack/workflows/commit_task.md +5 -6
  91. package/dist/forge-payload/.base-pack/workflows/enhance.md +5 -5
  92. package/dist/forge-payload/.base-pack/workflows/implement_plan.md +15 -7
  93. package/dist/forge-payload/.base-pack/workflows/migrate_structural.md +12 -13
  94. package/dist/forge-payload/.base-pack/workflows/plan_task.md +12 -6
  95. package/dist/forge-payload/.base-pack/workflows/review_code.md +12 -11
  96. package/dist/forge-payload/.base-pack/workflows/review_plan.md +12 -11
  97. package/dist/forge-payload/.base-pack/workflows/sprint_retrospective.md +3 -3
  98. package/dist/forge-payload/.base-pack/workflows/triage.md +12 -9
  99. package/dist/forge-payload/.base-pack/workflows/update_implementation.md +2 -2
  100. package/dist/forge-payload/.base-pack/workflows/update_plan.md +2 -2
  101. package/dist/forge-payload/.base-pack/workflows/validate_task.md +9 -9
  102. package/dist/forge-payload/.base-pack/workflows-js/wfl-fix-bug.js +490 -0
  103. package/dist/forge-payload/.base-pack/workflows-js/wfl-run-sprint.js +416 -0
  104. package/dist/forge-payload/.base-pack/workflows-js/wfl-run-task.js +608 -0
  105. package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
  106. package/dist/forge-payload/.schemas/config.schema.json +2 -3
  107. package/dist/forge-payload/.schemas/enum-catalog.json +2 -2
  108. package/dist/forge-payload/.schemas/event.schema.json +16 -0
  109. package/dist/forge-payload/.schemas/migrations.json +359 -18
  110. package/dist/forge-payload/commands/health.md +29 -0
  111. package/dist/forge-payload/commands/rebuild.md +143 -15
  112. package/dist/forge-payload/commands/update.md +28 -27
  113. package/dist/forge-payload/hooks/preflight-session.cjs +99 -0
  114. package/dist/forge-payload/init/phases/phase-3-materialize.md +18 -5
  115. package/dist/forge-payload/integrity.json +7 -6
  116. package/dist/forge-payload/meta/fragments/tool-discipline.md +1 -1
  117. package/dist/forge-payload/meta/personas/meta-architect.md +1 -1
  118. package/dist/forge-payload/meta/personas/meta-bug-fixer.md +1 -1
  119. package/dist/forge-payload/meta/personas/meta-collator.md +7 -7
  120. package/dist/forge-payload/meta/personas/meta-engineer.md +1 -1
  121. package/dist/forge-payload/meta/personas/meta-orchestrator.md +1 -1
  122. package/dist/forge-payload/meta/personas/meta-supervisor.md +1 -1
  123. package/dist/forge-payload/meta/tool-specs/store-cli.spec.md +1 -1
  124. package/dist/forge-payload/meta/workflows/_fragments/event-emission-schema.md +1 -1
  125. package/dist/forge-payload/meta/workflows/_fragments/friction-emit.md +1 -1
  126. package/dist/forge-payload/meta/workflows/_fragments/iron-laws.md +1 -1
  127. package/dist/forge-payload/meta/workflows/_fragments/progress-reporting.md +2 -2
  128. package/dist/forge-payload/meta/workflows/_fragments/store-cli-verbs.md +11 -2
  129. package/dist/forge-payload/meta/workflows/meta-approve.md +6 -7
  130. package/dist/forge-payload/meta/workflows/meta-bug-triage.md +12 -9
  131. package/dist/forge-payload/meta/workflows/meta-collate.md +5 -7
  132. package/dist/forge-payload/meta/workflows/meta-commit.md +5 -6
  133. package/dist/forge-payload/meta/workflows/meta-enhance.md +5 -5
  134. package/dist/forge-payload/meta/workflows/meta-fix-bug.md +35 -11
  135. package/dist/forge-payload/meta/workflows/meta-implement.md +15 -7
  136. package/dist/forge-payload/meta/workflows/meta-migrate.md +13 -14
  137. package/dist/forge-payload/meta/workflows/meta-new-sprint.md +3 -3
  138. package/dist/forge-payload/meta/workflows/meta-orchestrate.md +138 -39
  139. package/dist/forge-payload/meta/workflows/meta-plan-sprint.md +6 -6
  140. package/dist/forge-payload/meta/workflows/meta-plan-task.md +12 -6
  141. package/dist/forge-payload/meta/workflows/meta-retro.md +4 -4
  142. package/dist/forge-payload/meta/workflows/meta-retrospective.md +4 -4
  143. package/dist/forge-payload/meta/workflows/meta-review-implementation.md +12 -11
  144. package/dist/forge-payload/meta/workflows/meta-review-plan.md +12 -11
  145. package/dist/forge-payload/meta/workflows/meta-review-sprint-completion.md +3 -3
  146. package/dist/forge-payload/meta/workflows/meta-sprint-intake.md +3 -3
  147. package/dist/forge-payload/meta/workflows/meta-sprint-plan.md +6 -6
  148. package/dist/forge-payload/meta/workflows/meta-update-implementation.md +2 -2
  149. package/dist/forge-payload/meta/workflows/meta-update-plan.md +2 -2
  150. package/dist/forge-payload/meta/workflows/meta-validate.md +9 -9
  151. package/dist/forge-payload/schemas/config.schema.json +2 -3
  152. package/dist/forge-payload/schemas/enum-catalog.json +2 -2
  153. package/dist/forge-payload/schemas/event.schema.json +16 -0
  154. package/dist/forge-payload/schemas/structure-manifest.json +75 -73
  155. package/dist/forge-payload/skills/refresh-kb-links/SKILL.md +14 -7
  156. package/dist/forge-payload/tools/banners.cjs +29 -10
  157. package/dist/forge-payload/tools/check-structure.cjs +88 -7
  158. package/dist/forge-payload/tools/collate.cjs +48 -2
  159. package/dist/forge-payload/tools/manage-config.cjs +5 -7
  160. package/dist/forge-payload/tools/parse-gates.cjs +73 -1
  161. package/dist/forge-payload/tools/postflight-gate.cjs +298 -0
  162. package/dist/forge-payload/tools/preflight-gate.cjs +47 -0
  163. package/dist/forge-payload/tools/substitute-placeholders.cjs +5 -4
  164. package/dist/forge-payload/tools/verify-phase.cjs +17 -0
  165. package/package.json +2 -2
  166. package/dist/bin/forgecli.d.ts +0 -2
  167. package/dist/bin/forgecli.js +0 -6
  168. package/dist/bin/forgecli.js.map +0 -1
  169. package/dist/extensions/forgecli/config-tui/index.d.ts +0 -5
  170. package/dist/extensions/forgecli/config-tui/index.js +0 -5
  171. package/dist/extensions/forgecli/config-tui/index.js.map +0 -1
  172. package/dist/extensions/forgecli/loaders/persona-skill-loader.d.ts +0 -45
  173. package/dist/extensions/forgecli/loaders/persona-skill-loader.js +0 -227
  174. package/dist/extensions/forgecli/loaders/persona-skill-loader.js.map +0 -1
  175. package/dist/extensions/forgecli/loaders/template-render.d.ts +0 -20
  176. package/dist/extensions/forgecli/loaders/template-render.js +0 -85
  177. package/dist/extensions/forgecli/loaders/template-render.js.map +0 -1
  178. package/dist/extensions/forgecli/loaders/workflow-loader.d.ts +0 -41
  179. package/dist/extensions/forgecli/loaders/workflow-loader.js +0 -164
  180. package/dist/extensions/forgecli/loaders/workflow-loader.js.map +0 -1
  181. package/dist/forge-payload/.base-pack/workflows/fix_bug.md +0 -446
  182. package/dist/forge-payload/.base-pack/workflows/orchestrate_task.md +0 -928
  183. package/dist/forge-payload/.base-pack/workflows/run_sprint.md +0 -225
@@ -1 +1 @@
1
- {"version":3,"file":"thread-switcher.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/thread-switcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread-switcher.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/thread-switcher.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@
12
12
  // Used by run-task, fix-bug, and run-sprint (ceremony) so every subagent
13
13
  // "bubbles" usage up the same way. Top-level viewports read aggregate usage
14
14
  // via SessionRegistry.getAggregateUsage().
15
+ import { getOrchestratorTree } from "./orchestrator-tree.js";
15
16
  import { extractThinkingOneLiner, extractTurnPreview, argHint as fmtArgHint, RISKY_TAG, readUsage, resultShape, toolGlyph, } from "./viewport-renderer.js";
16
17
  function extractCompression(result) {
17
18
  if (!result || typeof result !== "object")
@@ -25,6 +26,27 @@ function extractCompression(result) {
25
26
  export function attachViewportObserver(opts) {
26
27
  const { registry, sessionId, phaseRole, displayRole, beginHeader, writeDebug, setStatusVerbose, notify, verboseKeys, afterEach, } = opts;
27
28
  const role = displayRole ?? phaseRole;
29
+ const tree = getOrchestratorTree();
30
+ // Helper to resolve the correct active node ID in the OrchestratorTree.
31
+ const resolveNodeId = () => {
32
+ const exactId = `${sessionId}:${phaseRole}`;
33
+ const exactNode = tree.getNode(exactId);
34
+ if (exactNode && exactNode.status === "running")
35
+ return exactId;
36
+ const parentNode = tree.getNode(sessionId);
37
+ if (parentNode) {
38
+ const prefix = `${sessionId}:${phaseRole}:`;
39
+ for (const cid of parentNode.children) {
40
+ if (cid.startsWith(prefix)) {
41
+ const child = tree.getNode(cid);
42
+ if (child && child.status === "running") {
43
+ return cid;
44
+ }
45
+ }
46
+ }
47
+ }
48
+ return exactId;
49
+ };
28
50
  const state = {
29
51
  turn: 0,
30
52
  toolCount: 0,
@@ -46,6 +68,7 @@ export function attachViewportObserver(opts) {
46
68
  const tailPrefix = () => `[${role} ${formatTime(Date.now())} t${state.turn}]`;
47
69
  const appendTail = (line, opts) => {
48
70
  registry.appendTail(sessionId, phaseRole, line, opts);
71
+ tree.appendTail(resolveNodeId(), line, opts);
49
72
  };
50
73
  const extractErrorSummary = (result) => {
51
74
  const raw = typeof result === "string"
@@ -89,6 +112,7 @@ export function attachViewportObserver(opts) {
89
112
  toolsThisTurn = 0;
90
113
  firstLineOfTurn = true;
91
114
  registry.bumpTurn(sessionId);
115
+ tree.bumpNodeTurn(resolveNodeId());
92
116
  break;
93
117
  }
94
118
  case "turn_end": {
@@ -98,6 +122,8 @@ export function attachViewportObserver(opts) {
98
122
  state.cumUsage.output += delta.output;
99
123
  state.cumUsage.cacheRead += delta.cacheRead;
100
124
  registry.setPhaseUsage(sessionId, phaseRole, state.cumUsage);
125
+ const nodeId = resolveNodeId();
126
+ tree.setNodeUsage(nodeId, state.cumUsage);
101
127
  // Capture which (provider, model) actually served this turn so
102
128
  // the per-phase tail-view footer can display it. Cheap; the
103
129
  // registry no-ops when the value hasn't changed.
@@ -107,6 +133,7 @@ export function attachViewportObserver(opts) {
107
133
  provider: msg.provider,
108
134
  model: msg.model,
109
135
  });
136
+ tree.setNodeModel(nodeId, msg.model ?? "", msg.provider ?? "");
110
137
  }
111
138
  const closingBodies = [];
112
139
  const thinking = extractThinkingOneLiner(e.message);
@@ -115,6 +142,7 @@ export function attachViewportObserver(opts) {
115
142
  const preview = extractTurnPreview(e.message);
116
143
  if (preview) {
117
144
  registry.setTurnPreview(sessionId, preview);
145
+ tree.setTurnPreview(nodeId, preview);
118
146
  if (setStatusVerbose && verboseKeys?.messageKey) {
119
147
  setStatusVerbose(verboseKeys.messageKey, ` "${preview}"`);
120
148
  }
@@ -158,6 +186,7 @@ export function attachViewportObserver(opts) {
158
186
  args: e.args,
159
187
  });
160
188
  registry.recordToolStart(sessionId, e.toolCallId, e.toolName, e.args);
189
+ tree.incrementNodeToolCount(resolveNodeId());
161
190
  const riskPrefix = risky ? `${RISKY_TAG} ` : "";
162
191
  emitTurnLine(`${riskPrefix}${glyph} ${e.toolName}${hint ? ` ${hint}` : ""}`, risky ? { warning: true } : undefined);
163
192
  break;
@@ -173,8 +202,10 @@ export function attachViewportObserver(opts) {
173
202
  result: e.result,
174
203
  });
175
204
  registry.recordToolEnd(sessionId, e.toolCallId, e.toolName, e.isError, e.result);
205
+ const nodeId = resolveNodeId();
176
206
  if (e.isError) {
177
207
  state.errCount++;
208
+ tree.incrementNodeErrCount(nodeId);
178
209
  emitTurnLine(`⚠ ${e.toolName} failed: ${extractErrorSummary(e.result)}`, { warning: true });
179
210
  }
180
211
  else {
@@ -186,6 +217,7 @@ export function attachViewportObserver(opts) {
186
217
  state.cumCompression.calls++;
187
218
  state.cumCompression.tokensSaved += comp.before - comp.after;
188
219
  registry.setPhaseCompression(sessionId, phaseRole, state.cumCompression);
220
+ tree.setNodeCompression(nodeId, state.cumCompression);
189
221
  }
190
222
  }
191
223
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"viewport-events.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/viewport-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viewport-events.js","sourceRoot":"","sources":["../../../src/extensions/forgecli/viewport-events.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ FORGE_ROOT: !`echo "${CLAUDE_PLUGIN_ROOT}"`
15
15
 
16
16
  ## Execute
17
17
 
18
- Read `.forge/workflows/fix_bug.md` and follow it.
18
+ workflow('wfl:fix-bug', $ARGUMENTS)
19
19
 
20
20
  ## Arguments
21
21
 
@@ -15,7 +15,7 @@ FORGE_ROOT: !`echo "${CLAUDE_PLUGIN_ROOT}"`
15
15
 
16
16
  ## Execute
17
17
 
18
- Read `.forge/workflows/run_sprint.md` and follow it.
18
+ workflow('wfl:run-sprint', $ARGUMENTS)
19
19
 
20
20
  ## Arguments
21
21
 
@@ -15,7 +15,7 @@ FORGE_ROOT: !`echo "${CLAUDE_PLUGIN_ROOT}"`
15
15
 
16
16
  ## Execute
17
17
 
18
- Read `.forge/workflows/orchestrate_task.md` and follow it.
18
+ workflow('wfl:run-task', $ARGUMENTS)
19
19
 
20
20
  ## Arguments
21
21
 
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Architect. I plan sprints, approve completed tasks, an
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" north
9
+ node .forge/tools/banners.cjs north
10
10
  ```
11
11
  ## What I Need to Know
12
12
 
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Bug Fixer. I triage, reproduce, root-cause, and fix re
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" oracle
9
+ node .forge/tools/banners.cjs oracle
10
10
  ```
11
11
  ## What I Need to Know
12
12
 
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Collator. I deterministically regenerate markdown view
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" drift
9
+ node .forge/tools/banners.cjs drift
10
10
  ```
11
11
  ## What I Produce
12
12
 
@@ -17,9 +17,9 @@ FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoo
17
17
 
18
18
  ## Preferred Method
19
19
 
20
- Read `paths.forgeRoot` from `.forge/config.json` → set as `FORGE_ROOT`. Then run:
20
+ Run the vendored collate tool:
21
21
  ```bash
22
- node "$FORGE_ROOT/tools/collate.cjs"
22
+ node .forge/tools/collate.cjs
23
23
  ```
24
24
 
25
25
  ## Fallback Method
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Engineer. I plan, implement, and document task work wi
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" forge
9
+ node .forge/tools/banners.cjs forge
10
10
  ```
11
11
  ## What I Need to Know
12
12
 
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Librarian. I maintain the knowledge base, ensure docum
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" tomoshibi
9
+ node .forge/tools/banners.cjs tomoshibi
10
10
  ```
11
11
 
12
12
  ## What I Need to Know
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Orchestrator. I wire atomic workflows into a pipeline,
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" forge
9
+ node .forge/tools/banners.cjs forge
10
10
  ```
11
11
 
12
12
  ## What I Need to Know
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Product Manager. I run sprint intake interviews and ca
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" forge
9
+ node .forge/tools/banners.cjs forge
10
10
  ```
11
11
 
12
12
  ## What I Need to Know
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} QA Engineer. I validate that implementations satisfy t
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" lumen
9
+ node .forge/tools/banners.cjs lumen
10
10
  ```
11
11
  ## Iron Laws
12
12
 
@@ -6,7 +6,7 @@ I am the {{PROJECT_NAME}} Supervisor. I review plans and implementations for cor
6
6
 
7
7
  Run this command using the Bash tool as my first action (before any file reads or other tool use):
8
8
  ```bash
9
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)") && node "$FORGE_ROOT/tools/banners.cjs" oracle
9
+ node .forge/tools/banners.cjs oracle
10
10
  ```
11
11
  ## Iron Laws
12
12
 
@@ -59,7 +59,7 @@ After the subagent returns, the orchestrator constructs the event from:
59
59
  The orchestrator then emits via:
60
60
 
61
61
  ```
62
- node "$FORGE_ROOT/tools/store-cli.cjs" emit {sprintId} '{complete-event-json}'
62
+ node .forge/tools/store-cli.cjs emit {sprintId} '{complete-event-json}'
63
63
  ```
64
64
 
65
65
  ## Why no example record here
@@ -42,7 +42,7 @@ fields (`model`, `provider`, `eventId`, timestamps, token counts) are
42
42
  at drain time.
43
43
 
44
44
  ```sh
45
- node "$FORGE_ROOT/tools/friction-emit.cjs" \
45
+ node .forge/tools/friction-emit.cjs \
46
46
  --workflow {workflow-key} \
47
47
  --persona {persona-noun} \
48
48
  --issue skill_unused \
@@ -21,7 +21,7 @@ An Iron Laws section MUST contain exactly these three bullets in this order:
21
21
 
22
22
  - {WORKFLOW_SPECIFIC_LAW}
23
23
  - Read `.forge/personas/{persona}.md` first; print the persona identity line (emoji, name, tagline) to stdout before any other tool use.
24
- - All store I/O via `forge_store` (or `node "$FORGE_ROOT/tools/store-cli.cjs"`). Never edit `.forge/store/*.json` directly.
24
+ - All store I/O via `forge_store` (or `node .forge/tools/store-cli.cjs`). Never edit `.forge/store/*.json` directly.
25
25
  ```
26
26
 
27
27
  ### Slot definitions
@@ -25,7 +25,7 @@ orchestrator monitors in real time.
25
25
  **Writing entries:** Use `store-cli progress`:
26
26
 
27
27
  ```
28
- node "$FORGE_ROOT/tools/store-cli.cjs" progress {sprintId} {agentName} {bannerKey} {status} "detail text"
28
+ node .forge/tools/store-cli.cjs progress {sprintId} {agentName} {bannerKey} {status} "detail text"
29
29
  ```
30
30
 
31
31
  **Monitoring:** The orchestrator starts a Monitor on the progress log before
@@ -34,5 +34,5 @@ spawning each subagent and stops it after the subagent returns.
34
34
  **Clearing:** The orchestrator clears the progress log at task start:
35
35
 
36
36
  ```
37
- node "$FORGE_ROOT/tools/store-cli.cjs" progress-clear {sprintId}
37
+ node .forge/tools/store-cli.cjs progress-clear {sprintId}
38
38
  ```
@@ -28,7 +28,7 @@ Notes for subagents:
28
28
  Do not `write` a task back with a new `status` field; the FSM is enforced
29
29
  by `update-status`. Syntax requires the field keyword `status` as the third
30
30
  argument — four args total:
31
- `node "$FORGE_ROOT/tools/store-cli.cjs" update-status task {taskId} status {value}`
31
+ `node .forge/tools/store-cli.cjs update-status task {taskId} status {value}`
32
32
  The three-arg form `update-status task {taskId} {value}` is WRONG and will
33
33
  error. Always include `status` between the id and the value.
34
34
  - **`emit`** appends an event. There is no `append-event` / `add-event`.
@@ -38,6 +38,15 @@ Notes for subagents:
38
38
  canonical phase→filename map (so `set-summary {taskId} validation` just works).
39
39
  Never pass a hand-built `engineering/sprints/.../…-SUMMARY.json` path. Do not
40
40
  inline summaries into the entity via `write`.
41
+ - **`forge_store` tool shape (not CLI flags).** The tool has exactly two
42
+ fields: `command` (string) and `args` (positional string array). There is
43
+ NO `entity` / `id` / `phase` named field — passing them silently drops them.
44
+ The summary call is `forge_store({ command:"set-summary", args:["<id>", "<phase>"] })`
45
+ where `args[0]` is the record id and `args[1]` is the LITERAL phase key
46
+ (`plan`, `review_plan`, `implementation`, `code_review`, `validation`,
47
+ `triage`, `approve`). `args[1]` is NEVER the record id and NEVER a path —
48
+ putting the id in both slots is the canonical failure and the phase-ownership
49
+ guard rejects it with `expected summary key '<phase>'`.
41
50
  - **Artifact I/O:** Use `forge_artifact` for ALL phase artifact reads and writes
42
51
  (PLAN.md, PROGRESS.md, *-SUMMARY.json, CODE_REVIEW.md, etc.). Never construct
43
52
  artifact file paths manually — the tool resolves paths from entity IDs and
@@ -56,7 +65,7 @@ Notes for subagents:
56
65
  These spellings are parsed literally by tools (`preflight-gate.cjs`,
57
66
  `collate.cjs`) — do not invent new spellings or rename them in prose.
58
67
  - If you need a verb not on this list, run
59
- `node "$FORGE_ROOT/tools/store-cli.cjs" --help` before improvising.
68
+ `node .forge/tools/store-cli.cjs --help` before improvising.
60
69
  - If you supply an unknown verb, entity type, enum value, or field name,
61
70
  store-cli appends a **Did you mean?** suggestion to the error message.
62
71
  Suggestions use Levenshtein distance (≤ 2) and a curated drift map for
@@ -26,7 +26,7 @@ deps:
26
26
 
27
27
  - Approve only when the implementation is consistent with the project's architecture and the deployment posture is understood. Architectural sign-off is not a rubber stamp — it is the last point at which cross-cutting concerns can be caught cheaply.
28
28
  - Read `.forge/personas/architect.md` first; print the persona identity line (emoji, name, tagline) to stdout before any other tool use.
29
- - All store I/O via `forge_store` (or `node "$FORGE_ROOT/tools/store-cli.cjs"`). Never edit `.forge/store/*.json` directly.
29
+ - All store I/O via `forge_store` (or `node .forge/tools/store-cli.cjs`). Never edit `.forge/store/*.json` directly.
30
30
 
31
31
  ## Store-Write Verification
32
32
 
@@ -37,9 +37,8 @@ deps:
37
37
  ```
38
38
 
39
39
  0a. Pre-flight Gate Check:
40
- - Resolve FORGE_ROOT (`node -e "console.log(require('./.forge/config.json').paths.forgeRoot)"`).
41
40
  - **Entity-mode resolution:** read the kickoff arguments. `--task {id}` → `entity_kind = "task"`, `record_id = {id}`. `--bug {id}` → `entity_kind = "bug"`, `record_id = {id}`. All store-cli calls below substitute `{entity_kind}` and `{record_id}` for the literal "task"/{taskId} placeholders.
42
- - Run: `node "$FORGE_ROOT/tools/preflight-gate.cjs" --phase approve --{entity_kind} {record_id}`
41
+ - Run: `node .forge/tools/preflight-gate.cjs --phase approve --{entity_kind} {record_id}`
43
42
  - Exit 1 (gate failed) → print stderr and HALT. Do not proceed; do not attempt to produce the artifact.
44
43
  - Exit 2 (misconfiguration) → print stderr and HALT.
45
44
  - Exit 0 → continue.
@@ -48,7 +47,7 @@ deps:
48
47
  - If `--force` is present in the invocation arguments, skip this step entirely.
49
48
  - If `entity_kind == "bug"`, skip this step entirely (bug state is managed by meta-fix-bug.md).
50
49
  - Read current task state:
51
- `node "$FORGE_ROOT/tools/store-cli.cjs" read task {record_id} --json`
50
+ `node .forge/tools/store-cli.cjs read task {record_id} --json`
52
51
  - Extract the `status` field from the JSON output.
53
52
  - Allowed states for this phase: `review-approved`.
54
53
  - If the current status is NOT in the allowed set:
@@ -81,7 +80,7 @@ deps:
81
80
 
82
81
  4. Finalize:
83
82
  - Transitions:
84
- - **Task mode** — Update status: `node "$FORGE_ROOT/tools/store-cli.cjs" update-status task {taskId} status approved`. The status IS the verdict signal for task-mode commit gate (`STATUS_SOURCE` in `read-verdict.cjs`).
83
+ - **Task mode** — Update status: `node .forge/tools/store-cli.cjs update-status task {taskId} status approved`. The status IS the verdict signal for task-mode commit gate (`STATUS_SOURCE` in `read-verdict.cjs`).
85
84
  - **Bug mode** — NO status write. The bug remains `in-progress`. The verdict signal travels through `summaries.approve.verdict` written in step 5 below (read by `read-verdict.cjs § BUG_PHASE_VERDICT_SOURCE`). Writing `bug.status` here — especially writing `approved` or `verified` — violates `meta-fix-bug.md § Iron Laws #2` and is the trap that produced the FORGE-BUG-002 regression.
86
85
  - **Do NOT emit a phase event yourself.** The orchestrator (or kickoff handler) owns event emission — it composes the canonical event from runtime telemetry (model, provider, tokens, wall times) plus the SUMMARY you write in the next step. Subagents that call `store-cli emit` for phase events hallucinate runtime facts (see Plan 11 / Slice 2). Write the SUMMARY and return.
87
86
 
@@ -101,11 +100,11 @@ deps:
101
100
  - Call (task mode) — optional for tasks, since `task.status` is the canonical signal.
102
101
  The sidecar path is auto-resolved from the record's `path` — never pass it:
103
102
  ```
104
- node "$FORGE_ROOT/tools/store-cli.cjs" set-summary {taskId} approve
103
+ node .forge/tools/store-cli.cjs set-summary {taskId} approve
105
104
  ```
106
105
  Or (bug mode) — REQUIRED for bugs, this is the canonical verdict signal:
107
106
  ```
108
- node "$FORGE_ROOT/tools/store-cli.cjs" set-bug-summary {bugId} approve
107
+ node .forge/tools/store-cli.cjs set-bug-summary {bugId} approve
109
108
  ```
110
109
  - In bug mode, if the set-bug-summary call exits non-zero, fix the sidecar JSON and retry. Do not return without a valid summary — the downstream commit gate has no other way to read the approval verdict.
111
110
  ```
@@ -36,10 +36,10 @@ deps:
36
36
  4. Finalize:
37
37
  - If step-3 verdict is `Approved`:
38
38
  - Update sprint status to `completed` via
39
- `node "$FORGE_ROOT/tools/store-cli.cjs" update-status sprint {sprintId} status completed`
39
+ `node .forge/tools/store-cli.cjs update-status sprint {sprintId} status completed`
40
40
  - If step-3 verdict is `Revision Required` and orchestrator passed `mode=partial`:
41
41
  - Update sprint status to `partially-completed` via
42
- `node "$FORGE_ROOT/tools/store-cli.cjs" update-status sprint {sprintId} status partially-completed`
42
+ `node .forge/tools/store-cli.cjs update-status sprint {sprintId} status partially-completed`
43
43
  - If step-3 verdict is `Revision Required` and orchestrator passed `mode=complete`:
44
44
  - Do NOT transition status. Leave the sprint at its current status and exit;
45
45
  the orchestrator will surface the verdict to the user.
@@ -18,7 +18,7 @@ deps:
18
18
 
19
19
  - Capture requirements accurately; do not editorialize or pre-select options on the user's behalf. The product manager documents what the user says, not what the agent thinks is best.
20
20
  - Read `.forge/personas/product-manager.md` first; print the persona identity line (emoji, name, tagline) to stdout before any other tool use.
21
- - All store I/O via `forge_store` (or `node "$FORGE_ROOT/tools/store-cli.cjs"`). Never edit `.forge/store/*.json` directly.
21
+ - All store I/O via `forge_store` (or `node .forge/tools/store-cli.cjs`). Never edit `.forge/store/*.json` directly.
22
22
 
23
23
  ## Algorithm
24
24
 
@@ -51,7 +51,7 @@ deps:
51
51
  - Ensure all deliverables are measurable and testable
52
52
 
53
53
  5. Finalize:
54
- - Update sprint status via `node "$FORGE_ROOT/tools/store-cli.cjs" update-status sprint {sprintId} status planning`
54
+ - Update sprint status via `node .forge/tools/store-cli.cjs update-status sprint {sprintId} status planning`
55
55
  - **Do NOT emit a phase event yourself.** The orchestrator (or kickoff handler) owns event emission — it composes the canonical event from runtime telemetry (model, provider, tokens, wall times) plus the SUMMARY you write in the next step. Subagents that call `store-cli emit` for phase events hallucinate runtime facts (see Plan 11 / Slice 2). Write the SUMMARY and return.
56
56
  ```
57
57
 
@@ -27,8 +27,8 @@ deps:
27
27
  1. Load Context:
28
28
  - Query the store to orient on current project state before reading docs:
29
29
  ```sh
30
- node "$FORGE_ROOT/tools/store-cli.cjs" nlp "latest sprint"
31
- node "$FORGE_ROOT/tools/store-cli.cjs" nlp "open bugs"
30
+ node .forge/tools/store-cli.cjs nlp "latest sprint"
31
+ node .forge/tools/store-cli.cjs nlp "open bugs"
32
32
  ```
33
33
  Use results (titles, statuses, excerpts, file refs) to skip manual MASTER_INDEX.md navigation where sufficient.
34
34
  - Read SPRINT_REQUIREMENTS.md
@@ -48,11 +48,11 @@ deps:
48
48
 
49
49
  4. Documentation:
50
50
  - Write SPRINT_PLAN.md to `engineering/sprints/{sprintId}/SPRINT_PLAN.md`
51
- - Create each task via `node "$FORGE_ROOT/tools/store-cli.cjs" write task '{task-json}'`.
51
+ - Create each task via `node .forge/tools/store-cli.cjs write task '{task-json}'`.
52
52
  If the command exits non-zero or the PreToolUse hook blocks the write:
53
53
  parse the error, correct the JSON, and retry (see Store-Write Verification).
54
54
  Do not proceed to the next task until this write succeeds.
55
- - Update the sprint record with all new task IDs via `node "$FORGE_ROOT/tools/store-cli.cjs" write sprint '{updated-sprint-json}'` (the sprint JSON must include the complete `taskIds` array with all newly created task IDs).
55
+ - Update the sprint record with all new task IDs via `node .forge/tools/store-cli.cjs write sprint '{updated-sprint-json}'` (the sprint JSON must include the complete `taskIds` array with all newly created task IDs).
56
56
  If the command exits non-zero or the PreToolUse hook blocks the write:
57
57
  parse the error, correct the JSON, and retry (see Store-Write Verification).
58
58
  Do not proceed until this write succeeds.
@@ -60,7 +60,7 @@ deps:
60
60
  * Folder: `engineering/sprints/{sprintId}/{taskId}/`
61
61
  * File: `TASK_PROMPT.md` — populate from `.forge/templates/TASK_PROMPT_TEMPLATE.md`
62
62
  filling in title, objective, acceptance criteria, entities, DSL/CLI changes, and operational impact
63
- - Update sprint status via `node "$FORGE_ROOT/tools/store-cli.cjs" update-status sprint {sprintId} status active`.
63
+ - Update sprint status via `node .forge/tools/store-cli.cjs update-status sprint {sprintId} status active`.
64
64
  If the command exits non-zero, parse the error and retry
65
65
  (see Store-Write Verification). Do not proceed until this write succeeds.
66
66
 
@@ -18,7 +18,7 @@ deps:
18
18
 
19
19
  - Collation is a read-and-rewrite of generated markdown. Do not mutate any JSON record under `.forge/store/`; the store is the source of truth and collation flows downstream from it.
20
20
  - Read `.forge/personas/collator.md` first; print the persona identity line (emoji, name, tagline) to stdout before any other tool use.
21
- - All store reads via `forge_store` (or `node "$FORGE_ROOT/tools/store-cli.cjs"`). Never edit `.forge/store/*.json` directly.
21
+ - All store reads via `forge_store` (or `node .forge/tools/store-cli.cjs`). Never edit `.forge/store/*.json` directly.
22
22
  - Do NOT call `set-summary` or `set-bug-summary` from within collation. The collator writes markdown views and a `WRITEBACK-SUMMARY.json` disk file only. Calling `set-summary` mutates the JSON store and violates Iron Law 1 (the store is the source of truth; collation flows downstream from it, not into it). The orchestrator reads `WRITEBACK-SUMMARY.json` directly — no store write is needed.
23
23
 
24
24
  <!-- See _fragments/store-write-verification.md — NOTE: this file uses an intentionally modified
@@ -41,8 +41,7 @@ Never set `FORGE_SKIP_WRITE_VALIDATION=1` — operator-only emergency switch.
41
41
 
42
42
  ```
43
43
  1. Preferred: Run Plugin Tool
44
- - Read `paths.forgeRoot` from `.forge/config.json` as `FORGE_ROOT`
45
- - Run: `node "$FORGE_ROOT/tools/collate.cjs" [SPRINT_ID]`
44
+ - Run: `node .forge/tools/collate.cjs [SPRINT_ID]`
46
45
  - If tool succeeds, proceed to Finalize
47
46
 
48
47
  2. Fallback: Manual Collation
@@ -56,9 +55,8 @@ Never set `FORGE_SKIP_WRITE_VALIDATION=1` — operator-only emergency switch.
56
55
  - Rebuild the architecture context pack so orchestrators have a fresh summary
57
56
  after any KB updates (architecture docs may have changed during the sprint):
58
57
  ```
59
- FORGE_ROOT=$(node -e "console.log(require('./.forge/config.json').paths.forgeRoot)")
60
- ENGINEERING=$(node "$FORGE_ROOT/tools/manage-config.cjs" get paths.engineering 2>/dev/null || echo engineering)
61
- node "$FORGE_ROOT/tools/build-context-pack.cjs" \
58
+ ENGINEERING=$(node .forge/tools/manage-config.cjs get paths.engineering 2>/dev/null || echo engineering)
59
+ node .forge/tools/build-context-pack.cjs \
62
60
  --arch-dir "$ENGINEERING/architecture" \
63
61
  --out-md .forge/cache/context-pack.md \
64
62
  --out-json .forge/cache/context-pack.json