@entelligentsia/forgecli 1.0.25 → 1.0.40

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 (590) hide show
  1. package/CHANGELOG.md +341 -0
  2. package/README.md +2 -0
  3. package/dist/CHANGELOG-forge-plugin.md +264 -0
  4. package/dist/CHANGELOG-pi.md +143 -0
  5. package/dist/bin/argv.d.ts +2 -2
  6. package/dist/bin/argv.js +37 -0
  7. package/dist/bin/argv.js.map +1 -1
  8. package/dist/bin/forge.js +30 -16
  9. package/dist/bin/forge.js.map +1 -1
  10. package/dist/bin/init.d.ts +23 -0
  11. package/dist/bin/init.js +123 -0
  12. package/dist/bin/init.js.map +1 -0
  13. package/dist/bin/reset.d.ts +39 -0
  14. package/dist/bin/reset.js +101 -0
  15. package/dist/bin/reset.js.map +1 -0
  16. package/dist/bin/uninstall.d.ts +20 -0
  17. package/dist/bin/uninstall.js +141 -0
  18. package/dist/bin/uninstall.js.map +1 -0
  19. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.d.ts +40 -0
  20. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js +384 -0
  21. package/dist/extensions/forgecli/claude-bootstrap/bootstrap.js.map +1 -0
  22. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.d.ts +46 -0
  23. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js +245 -0
  24. package/dist/extensions/forgecli/claude-bootstrap/settings-merge.js.map +1 -0
  25. package/dist/extensions/forgecli/claude-bootstrap/uninstall.d.ts +23 -0
  26. package/dist/extensions/forgecli/claude-bootstrap/uninstall.js +235 -0
  27. package/dist/extensions/forgecli/claude-bootstrap/uninstall.js.map +1 -0
  28. package/dist/extensions/forgecli/commands/reset.d.ts +16 -0
  29. package/dist/extensions/forgecli/commands/reset.js +83 -0
  30. package/dist/extensions/forgecli/commands/reset.js.map +1 -0
  31. package/dist/extensions/forgecli/dashboard/component.js +10 -7
  32. package/dist/extensions/forgecli/dashboard/component.js.map +1 -1
  33. package/dist/extensions/forgecli/forge-commands.d.ts +7 -2
  34. package/dist/extensions/forgecli/forge-commands.js +19 -5
  35. package/dist/extensions/forgecli/forge-commands.js.map +1 -1
  36. package/dist/extensions/forgecli/forge-subagent.d.ts +4 -4
  37. package/dist/extensions/forgecli/hooks/forge-permissions.js +20 -6
  38. package/dist/extensions/forgecli/hooks/forge-permissions.js.map +1 -1
  39. package/dist/extensions/forgecli/index.js +6 -3
  40. package/dist/extensions/forgecli/index.js.map +1 -1
  41. package/dist/extensions/forgecli/lib/forge-root.d.ts +6 -0
  42. package/dist/extensions/forgecli/lib/forge-root.js +52 -0
  43. package/dist/extensions/forgecli/lib/forge-root.js.map +1 -1
  44. package/dist/extensions/forgecli/lib/payload-manifest.d.ts +62 -0
  45. package/dist/extensions/forgecli/lib/payload-manifest.js +151 -0
  46. package/dist/extensions/forgecli/lib/payload-manifest.js.map +1 -0
  47. package/dist/extensions/forgecli/orchestrators/advisory-render.d.ts +9 -0
  48. package/dist/extensions/forgecli/orchestrators/advisory-render.js +107 -0
  49. package/dist/extensions/forgecli/orchestrators/advisory-render.js.map +1 -0
  50. package/dist/extensions/forgecli/orchestrators/bug/bug-body.d.ts +1 -0
  51. package/dist/extensions/forgecli/orchestrators/bug/bug-body.js +65 -0
  52. package/dist/extensions/forgecli/orchestrators/bug/bug-body.js.map +1 -0
  53. package/dist/extensions/forgecli/orchestrators/bug/bug-id.d.ts +23 -0
  54. package/dist/extensions/forgecli/orchestrators/bug/bug-id.js +140 -0
  55. package/dist/extensions/forgecli/orchestrators/bug/bug-id.js.map +1 -0
  56. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.d.ts +54 -0
  57. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js +349 -0
  58. package/dist/extensions/forgecli/orchestrators/bug/bug-phase-dispatch.js.map +1 -0
  59. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.d.ts +11 -0
  60. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js +82 -0
  61. package/dist/extensions/forgecli/orchestrators/bug/bug-phases.js.map +1 -0
  62. package/dist/extensions/forgecli/orchestrators/bug/bug-state.d.ts +14 -0
  63. package/dist/extensions/forgecli/orchestrators/bug/bug-state.js +100 -0
  64. package/dist/extensions/forgecli/orchestrators/bug/bug-state.js.map +1 -0
  65. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.d.ts +72 -0
  66. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js +204 -0
  67. package/dist/extensions/forgecli/orchestrators/bug/bug-triage-routing.js.map +1 -0
  68. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.d.ts +38 -0
  69. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js +198 -0
  70. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict-loop.js.map +1 -0
  71. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.d.ts +3 -0
  72. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js +55 -0
  73. package/dist/extensions/forgecli/orchestrators/bug/bug-verdict.js.map +1 -0
  74. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.d.ts +7 -0
  75. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js +293 -0
  76. package/dist/extensions/forgecli/orchestrators/bug/run-bug-command.js.map +1 -0
  77. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.d.ts +2 -0
  78. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js +501 -0
  79. package/dist/extensions/forgecli/orchestrators/bug/run-bug-pipeline.js.map +1 -0
  80. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.d.ts +41 -0
  81. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js +5 -0
  82. package/dist/extensions/forgecli/orchestrators/bug/run-bug-types.js.map +1 -0
  83. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.d.ts +43 -0
  84. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js +85 -0
  85. package/dist/extensions/forgecli/orchestrators/common/orchestrator-entry.js.map +1 -0
  86. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.d.ts +8 -0
  87. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js +37 -0
  88. package/dist/extensions/forgecli/orchestrators/common/orchestrator-misc.js.map +1 -0
  89. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.d.ts +28 -0
  90. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js +45 -0
  91. package/dist/extensions/forgecli/orchestrators/common/orchestrator-notify.js.map +1 -0
  92. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.d.ts +26 -0
  93. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js +75 -0
  94. package/dist/extensions/forgecli/orchestrators/common/orchestrator-transcript-session.js.map +1 -0
  95. package/dist/extensions/forgecli/orchestrators/common/recovery-menu.d.ts +24 -0
  96. package/dist/extensions/forgecli/orchestrators/common/recovery-menu.js +58 -0
  97. package/dist/extensions/forgecli/orchestrators/common/recovery-menu.js.map +1 -0
  98. package/dist/extensions/forgecli/orchestrators/common/reset-pipeline.d.ts +53 -0
  99. package/dist/extensions/forgecli/orchestrators/common/reset-pipeline.js +131 -0
  100. package/dist/extensions/forgecli/orchestrators/common/reset-pipeline.js.map +1 -0
  101. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.d.ts +24 -0
  102. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js +37 -0
  103. package/dist/extensions/forgecli/orchestrators/common/summary-recovery.js.map +1 -0
  104. package/dist/extensions/forgecli/orchestrators/fix-bug.d.ts +9 -93
  105. package/dist/extensions/forgecli/orchestrators/fix-bug.js +23 -1721
  106. package/dist/extensions/forgecli/orchestrators/fix-bug.js.map +1 -1
  107. package/dist/extensions/forgecli/orchestrators/halt-advisor.js +25 -3
  108. package/dist/extensions/forgecli/orchestrators/halt-advisor.js.map +1 -1
  109. package/dist/extensions/forgecli/orchestrators/run-sprint.d.ts +3 -12
  110. package/dist/extensions/forgecli/orchestrators/run-sprint.js +48 -270
  111. package/dist/extensions/forgecli/orchestrators/run-sprint.js.map +1 -1
  112. package/dist/extensions/forgecli/orchestrators/run-task.d.ts +10 -214
  113. package/dist/extensions/forgecli/orchestrators/run-task.js +31 -1481
  114. package/dist/extensions/forgecli/orchestrators/run-task.js.map +1 -1
  115. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.d.ts +33 -0
  116. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js +135 -0
  117. package/dist/extensions/forgecli/orchestrators/sprint/sprint-ceremony.js.map +1 -0
  118. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.d.ts +18 -0
  119. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js +55 -0
  120. package/dist/extensions/forgecli/orchestrators/sprint/sprint-state.js.map +1 -0
  121. package/dist/extensions/forgecli/orchestrators/task/run-task-command.d.ts +9 -0
  122. package/dist/extensions/forgecli/orchestrators/task/run-task-command.js +174 -0
  123. package/dist/extensions/forgecli/orchestrators/task/run-task-command.js.map +1 -0
  124. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.d.ts +2 -0
  125. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js +494 -0
  126. package/dist/extensions/forgecli/orchestrators/task/run-task-pipeline.js.map +1 -0
  127. package/dist/extensions/forgecli/orchestrators/task/run-task-types.d.ts +62 -0
  128. package/dist/extensions/forgecli/orchestrators/task/run-task-types.js +5 -0
  129. package/dist/extensions/forgecli/orchestrators/task/run-task-types.js.map +1 -0
  130. package/dist/extensions/forgecli/orchestrators/task/task-body.d.ts +4 -0
  131. package/dist/extensions/forgecli/orchestrators/task/task-body.js +48 -0
  132. package/dist/extensions/forgecli/orchestrators/task/task-body.js.map +1 -0
  133. package/dist/extensions/forgecli/orchestrators/task/task-events.d.ts +63 -0
  134. package/dist/extensions/forgecli/orchestrators/task/task-events.js +185 -0
  135. package/dist/extensions/forgecli/orchestrators/task/task-events.js.map +1 -0
  136. package/dist/extensions/forgecli/orchestrators/task/task-gates.d.ts +34 -0
  137. package/dist/extensions/forgecli/orchestrators/task/task-gates.js +78 -0
  138. package/dist/extensions/forgecli/orchestrators/task/task-gates.js.map +1 -0
  139. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.d.ts +42 -0
  140. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js +370 -0
  141. package/dist/extensions/forgecli/orchestrators/task/task-phase-dispatch.js.map +1 -0
  142. package/dist/extensions/forgecli/orchestrators/task/task-phases.d.ts +17 -0
  143. package/dist/extensions/forgecli/orchestrators/task/task-phases.js +48 -0
  144. package/dist/extensions/forgecli/orchestrators/task/task-phases.js.map +1 -0
  145. package/dist/extensions/forgecli/orchestrators/task/task-record.d.ts +9 -0
  146. package/dist/extensions/forgecli/orchestrators/task/task-record.js +58 -0
  147. package/dist/extensions/forgecli/orchestrators/task/task-record.js.map +1 -0
  148. package/dist/extensions/forgecli/orchestrators/task/task-state.d.ts +14 -0
  149. package/dist/extensions/forgecli/orchestrators/task/task-state.js +35 -0
  150. package/dist/extensions/forgecli/orchestrators/task/task-state.js.map +1 -0
  151. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.d.ts +36 -0
  152. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js +187 -0
  153. package/dist/extensions/forgecli/orchestrators/task/task-verdict-loop.js.map +1 -0
  154. package/dist/extensions/forgecli/store/store-resolver.d.ts +15 -0
  155. package/dist/extensions/forgecli/store/store-resolver.js +118 -18
  156. package/dist/extensions/forgecli/store/store-resolver.js.map +1 -1
  157. package/dist/extensions/forgecli/update/forge-update-command.js +10 -7
  158. package/dist/extensions/forgecli/update/forge-update-command.js.map +1 -1
  159. package/dist/forge-payload/.base-pack/workflows/collator_agent.md +5 -6
  160. package/dist/forge-payload/.base-pack/workflows/migrate_structural.md +1 -1
  161. package/dist/forge-payload/.base-pack/workflows-js/wfl-init.js +449 -0
  162. package/dist/forge-payload/.claude-plugin/plugin.json +1 -1
  163. package/dist/forge-payload/.schemas/enum-catalog.json +2 -2
  164. package/dist/forge-payload/.schemas/migrations.json +170 -0
  165. package/dist/forge-payload/.schemas/payload-manifest.schema.json +100 -0
  166. package/dist/forge-payload/commands/add-pipeline.md +1 -1
  167. package/dist/forge-payload/commands/add-task.md +3 -3
  168. package/dist/forge-payload/{.base-pack/commands → commands}/approve.md +2 -2
  169. package/dist/forge-payload/commands/ask.md +1 -1
  170. package/dist/forge-payload/commands/check-agent.md +8 -24
  171. package/dist/forge-payload/{.base-pack/commands → commands}/collate.md +2 -2
  172. package/dist/forge-payload/{.base-pack/commands → commands}/commit.md +2 -2
  173. package/dist/forge-payload/commands/config.md +1 -1
  174. package/dist/forge-payload/commands/enhance.md +31 -5
  175. package/dist/forge-payload/{.base-pack/commands → commands}/fix-bug.md +2 -2
  176. package/dist/forge-payload/commands/health.md +1 -1
  177. package/dist/forge-payload/{.base-pack/commands → commands}/implement.md +2 -2
  178. package/dist/forge-payload/commands/init.md +186 -67
  179. package/dist/forge-payload/{.base-pack/commands → commands}/new-sprint.md +2 -2
  180. package/dist/forge-payload/{.base-pack/commands → commands}/plan-sprint.md +2 -2
  181. package/dist/forge-payload/{.base-pack/commands → commands}/plan.md +2 -2
  182. package/dist/forge-payload/commands/rebuild.md +3 -3
  183. package/dist/forge-payload/commands/remove.md +1 -1
  184. package/dist/forge-payload/commands/repair.md +1 -1
  185. package/dist/forge-payload/commands/report-bug.md +1 -1
  186. package/dist/forge-payload/commands/reset.md +117 -0
  187. package/dist/forge-payload/{.base-pack/commands → commands}/retro.md +2 -2
  188. package/dist/forge-payload/{.base-pack/commands → commands}/review-code.md +2 -2
  189. package/dist/forge-payload/{.base-pack/commands → commands}/review-plan.md +2 -2
  190. package/dist/forge-payload/{.base-pack/commands → commands}/run-sprint.md +2 -2
  191. package/dist/forge-payload/{.base-pack/commands → commands}/run-task.md +2 -2
  192. package/dist/forge-payload/commands/status.md +1 -1
  193. package/dist/forge-payload/commands/update.md +3 -3
  194. package/dist/forge-payload/{.base-pack/commands → commands}/validate.md +2 -2
  195. package/dist/forge-payload/hooks/forge-permissions.cjs +29 -6
  196. package/dist/forge-payload/hooks/lib/common.cjs +228 -0
  197. package/dist/forge-payload/hooks/lib/plugin-detection.cjs +106 -0
  198. package/dist/forge-payload/hooks/lib/update-msg.cjs +23 -0
  199. package/dist/forge-payload/hooks/lib/update-url.cjs +46 -0
  200. package/dist/forge-payload/hooks/lib/write-registry.js +53 -0
  201. package/dist/forge-payload/init/discovery/discover-database.md +32 -0
  202. package/dist/forge-payload/init/discovery/discover-processes.md +31 -0
  203. package/dist/forge-payload/init/discovery/discover-routing.md +31 -0
  204. package/dist/forge-payload/init/discovery/discover-stack.md +33 -0
  205. package/dist/forge-payload/init/discovery/discover-testing.md +34 -0
  206. package/dist/forge-payload/init/generation/generate-commands.md +171 -0
  207. package/dist/forge-payload/init/generation/generate-kb-doc.md +60 -0
  208. package/dist/forge-payload/init/generation/generate-persona.md +73 -0
  209. package/dist/forge-payload/init/generation/generate-skill.md +66 -0
  210. package/dist/forge-payload/init/generation/generate-template.md +60 -0
  211. package/dist/forge-payload/init/generation/generate-tools.md +133 -0
  212. package/dist/forge-payload/init/generation/generate-workflows.md +78 -0
  213. package/dist/forge-payload/init/phases/phase-1-collect.md +10 -2
  214. package/dist/forge-payload/init/phases/phase-3-materialize.md +5 -1
  215. package/dist/forge-payload/init/phases/phase-4-register.md +8 -0
  216. package/dist/forge-payload/init/workflow-gen-plan.json +17 -0
  217. package/dist/forge-payload/integrity.json +33 -18
  218. package/dist/forge-payload/meta/workflows/meta-collate.md +5 -6
  219. package/dist/forge-payload/meta/workflows/meta-migrate.md +1 -1
  220. package/dist/forge-payload/payload-manifest.json +314 -0
  221. package/dist/forge-payload/schemas/enum-catalog.json +2 -2
  222. package/dist/forge-payload/schemas/payload-manifest.schema.json +100 -0
  223. package/dist/forge-payload/schemas/structure-manifest.json +5 -12
  224. package/dist/forge-payload/tools/forge-preflight.cjs +268 -0
  225. package/dist/forge-payload/tools/lib/paths.cjs +12 -11
  226. package/dist/forge-payload/tools/lib/pricing.cjs +31 -11
  227. package/dist/forge-payload/tools/query-logger.cjs +34 -0
  228. package/dist/forge-payload/tools/reset-plan.cjs +210 -0
  229. package/dist/forge-payload/tools/store.cjs +4 -1
  230. package/dist/forge-payload/tools/substitute-placeholders.cjs +14 -7
  231. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  232. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +8 -0
  233. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  234. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts +1 -1
  235. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.d.ts.map +1 -1
  236. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +1 -1
  237. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js.map +1 -1
  238. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.d.ts +4 -0
  239. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.d.ts.map +1 -0
  240. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.js +3 -0
  241. package/node_modules/@earendil-works/pi-agent-core/dist/harness/execution-env.js.map +1 -0
  242. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.d.ts +20 -0
  243. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.d.ts.map +1 -0
  244. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.js +92 -0
  245. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/jsonl.js.map +1 -0
  246. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.d.ts +18 -0
  247. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.d.ts.map +1 -0
  248. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.js +42 -0
  249. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/memory.js.map +1 -0
  250. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.d.ts +10 -0
  251. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.d.ts.map +1 -0
  252. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.js +31 -0
  253. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/repo/shared.js.map +1 -0
  254. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.d.ts +30 -0
  255. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.d.ts.map +1 -0
  256. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.js +170 -0
  257. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/jsonl.js.map +1 -0
  258. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.d.ts +26 -0
  259. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.d.ts.map +1 -0
  260. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.js +90 -0
  261. package/node_modules/@earendil-works/pi-agent-core/dist/harness/session/storage/memory.js.map +1 -0
  262. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts +6 -1
  263. package/node_modules/@earendil-works/pi-agent-core/dist/types.d.ts.map +1 -1
  264. package/node_modules/@earendil-works/pi-agent-core/dist/types.js.map +1 -1
  265. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  266. package/node_modules/@earendil-works/pi-ai/README.md +12 -4
  267. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.d.ts.map +1 -1
  268. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js +3 -0
  269. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js.map +1 -1
  270. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +45 -0
  271. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
  272. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +45 -0
  273. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  274. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +1804 -815
  275. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  276. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js +2031 -1384
  277. package/node_modules/@earendil-works/pi-ai/dist/models.generated.js.map +1 -1
  278. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.d.ts.map +1 -1
  279. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js +71 -27
  280. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.js.map +1 -1
  281. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts +1 -1
  282. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.d.ts.map +1 -1
  283. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +24 -16
  284. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js.map +1 -1
  285. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.d.ts.map +1 -1
  286. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js +1 -0
  287. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.js.map +1 -1
  288. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.d.ts.map +1 -1
  289. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js +3 -1
  290. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex-responses.js.map +1 -1
  291. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.d.ts.map +1 -1
  292. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js +35 -13
  293. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-completions.js.map +1 -1
  294. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.d.ts.map +1 -1
  295. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.js +2 -1
  296. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses-shared.js.map +1 -1
  297. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.d.ts.map +1 -1
  298. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js +1 -0
  299. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-responses.js.map +1 -1
  300. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +12 -4
  301. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  302. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  303. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.d.ts.map +1 -1
  304. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.js +13 -1
  305. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/github-copilot.js.map +1 -1
  306. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.d.ts.map +1 -1
  307. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.js +4 -2
  308. package/node_modules/@earendil-works/pi-ai/dist/utils/oauth/openai-codex.js.map +1 -1
  309. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +1 -1
  310. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  311. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +3 -2
  312. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  313. package/node_modules/@earendil-works/pi-ai/package.json +1 -1
  314. package/node_modules/@earendil-works/pi-coding-agent/CHANGELOG.md +143 -0
  315. package/node_modules/@earendil-works/pi-coding-agent/README.md +26 -4
  316. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts +1 -0
  317. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.d.ts.map +1 -1
  318. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +11 -0
  319. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js.map +1 -1
  320. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/project-trust.d.ts +10 -0
  321. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/project-trust.d.ts.map +1 -0
  322. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/project-trust.js +48 -0
  323. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/project-trust.js.map +1 -0
  324. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts +17 -0
  325. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.d.ts.map +1 -0
  326. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js +128 -0
  327. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js.map +1 -0
  328. package/node_modules/@earendil-works/pi-coding-agent/dist/config.d.ts.map +1 -1
  329. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js +9 -1
  330. package/node_modules/@earendil-works/pi-coding-agent/dist/config.js.map +1 -1
  331. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.d.ts +3 -1
  332. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.d.ts.map +1 -1
  333. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.js +4 -1
  334. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-runtime.js.map +1 -1
  335. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts +2 -1
  336. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.d.ts.map +1 -1
  337. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js +2 -2
  338. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session-services.js.map +1 -1
  339. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts +4 -1
  340. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  341. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +16 -3
  342. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  343. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.d.ts.map +1 -1
  344. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js +4 -3
  345. package/node_modules/@earendil-works/pi-coding-agent/dist/core/auth-storage.js.map +1 -1
  346. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts +3 -1
  347. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.d.ts.map +1 -1
  348. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js +9 -3
  349. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/branch-summarization.js.map +1 -1
  350. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/utils.d.ts +1 -1
  351. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/utils.d.ts.map +1 -1
  352. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/utils.js +1 -1
  353. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/utils.js.map +1 -1
  354. package/node_modules/@earendil-works/pi-coding-agent/dist/core/experimental.d.ts +2 -0
  355. package/node_modules/@earendil-works/pi-coding-agent/dist/core/experimental.d.ts.map +1 -0
  356. package/node_modules/@earendil-works/pi-coding-agent/dist/core/experimental.js +4 -0
  357. package/node_modules/@earendil-works/pi-coding-agent/dist/core/experimental.js.map +1 -0
  358. package/node_modules/@earendil-works/pi-coding-agent/dist/core/export-html/template.js +19 -6
  359. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts +1 -1
  360. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.d.ts.map +1 -1
  361. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/index.js.map +1 -1
  362. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts +1 -1
  363. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.d.ts.map +1 -1
  364. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js +4 -4
  365. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/loader.js.map +1 -1
  366. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts +10 -3
  367. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.d.ts.map +1 -1
  368. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js +47 -1
  369. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js.map +1 -1
  370. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts +28 -2
  371. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.d.ts.map +1 -1
  372. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/types.js.map +1 -1
  373. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts +2 -0
  374. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.d.ts.map +1 -1
  375. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js +29 -1
  376. package/node_modules/@earendil-works/pi-coding-agent/dist/core/footer-data-provider.js.map +1 -1
  377. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.d.ts +1 -0
  378. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.d.ts.map +1 -1
  379. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.js +1 -0
  380. package/node_modules/@earendil-works/pi-coding-agent/dist/core/index.js.map +1 -1
  381. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.d.ts.map +1 -1
  382. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js +1 -0
  383. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js.map +1 -1
  384. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts +1 -0
  385. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.d.ts.map +1 -1
  386. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +44 -5
  387. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js.map +1 -1
  388. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts +3 -0
  389. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.d.ts.map +1 -1
  390. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js +47 -13
  391. package/node_modules/@earendil-works/pi-coding-agent/dist/core/package-manager.js.map +1 -1
  392. package/node_modules/@earendil-works/pi-coding-agent/dist/core/project-trust.d.ts +15 -0
  393. package/node_modules/@earendil-works/pi-coding-agent/dist/core/project-trust.d.ts.map +1 -0
  394. package/node_modules/@earendil-works/pi-coding-agent/dist/core/project-trust.js +58 -0
  395. package/node_modules/@earendil-works/pi-coding-agent/dist/core/project-trust.js.map +1 -0
  396. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.d.ts +2 -1
  397. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.d.ts.map +1 -1
  398. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.js +24 -26
  399. package/node_modules/@earendil-works/pi-coding-agent/dist/core/prompt-templates.js.map +1 -1
  400. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-attribution.d.ts +4 -0
  401. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-attribution.d.ts.map +1 -0
  402. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-attribution.js +72 -0
  403. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-attribution.js.map +1 -0
  404. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-display-names.d.ts.map +1 -1
  405. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-display-names.js +3 -0
  406. package/node_modules/@earendil-works/pi-coding-agent/dist/core/provider-display-names.js.map +1 -1
  407. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts +13 -2
  408. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.d.ts.map +1 -1
  409. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js +112 -37
  410. package/node_modules/@earendil-works/pi-coding-agent/dist/core/resource-loader.js.map +1 -1
  411. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.d.ts.map +1 -1
  412. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js +7 -33
  413. package/node_modules/@earendil-works/pi-coding-agent/dist/core/sdk.js.map +1 -1
  414. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.d.ts.map +1 -1
  415. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js +103 -70
  416. package/node_modules/@earendil-works/pi-coding-agent/dist/core/session-manager.js.map +1 -1
  417. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts +20 -2
  418. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.d.ts.map +1 -1
  419. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js +97 -30
  420. package/node_modules/@earendil-works/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  421. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.d.ts.map +1 -1
  422. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js +1 -0
  423. package/node_modules/@earendil-works/pi-coding-agent/dist/core/slash-commands.js.map +1 -1
  424. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.d.ts.map +1 -1
  425. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +1 -1
  426. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js.map +1 -1
  427. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.d.ts.map +1 -1
  428. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js +1 -1
  429. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/find.js.map +1 -1
  430. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.d.ts.map +1 -1
  431. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js +1 -1
  432. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/grep.js.map +1 -1
  433. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.d.ts.map +1 -1
  434. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js +1 -1
  435. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/ls.js.map +1 -1
  436. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.d.ts.map +1 -1
  437. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js +1 -1
  438. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/read.js.map +1 -1
  439. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.d.ts.map +1 -1
  440. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js +1 -1
  441. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/write.js.map +1 -1
  442. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.d.ts +36 -0
  443. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.d.ts.map +1 -0
  444. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js +202 -0
  445. package/node_modules/@earendil-works/pi-coding-agent/dist/core/trust-manager.js.map +1 -0
  446. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts +5 -4
  447. package/node_modules/@earendil-works/pi-coding-agent/dist/index.d.ts.map +1 -1
  448. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js +2 -1
  449. package/node_modules/@earendil-works/pi-coding-agent/dist/index.js.map +1 -1
  450. package/node_modules/@earendil-works/pi-coding-agent/dist/main.d.ts.map +1 -1
  451. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js +72 -32
  452. package/node_modules/@earendil-works/pi-coding-agent/dist/main.js.map +1 -1
  453. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.d.ts.map +1 -1
  454. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js +39 -34
  455. package/node_modules/@earendil-works/pi-coding-agent/dist/migrations.js.map +1 -1
  456. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts +1 -1
  457. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.d.ts.map +1 -1
  458. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/index.js.map +1 -1
  459. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
  460. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.js +2 -2
  461. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/bash-execution.js.map +1 -1
  462. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/first-time-setup.d.ts +25 -0
  463. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -0
  464. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/first-time-setup.js +103 -0
  465. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/first-time-setup.js.map +1 -0
  466. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.d.ts.map +1 -1
  467. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js +7 -0
  468. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/footer.js.map +1 -1
  469. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.d.ts +2 -0
  470. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.d.ts.map +1 -1
  471. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.js +2 -0
  472. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/index.js.map +1 -1
  473. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts +1 -1
  474. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.d.ts.map +1 -1
  475. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.js +10 -13
  476. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/login-dialog.js.map +1 -1
  477. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts +3 -1
  478. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  479. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js +20 -0
  480. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/settings-selector.js.map +1 -1
  481. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
  482. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.js +22 -0
  483. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/tool-execution.js.map +1 -1
  484. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/trust-selector.d.ts +23 -0
  485. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/trust-selector.d.ts.map +1 -0
  486. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/trust-selector.js +91 -0
  487. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/trust-selector.js.map +1 -0
  488. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts +7 -0
  489. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  490. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +101 -5
  491. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js.map +1 -1
  492. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.d.ts.map +1 -1
  493. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.js +1 -0
  494. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/print-mode.js.map +1 -1
  495. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
  496. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +1 -0
  497. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js.map +1 -1
  498. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts +6 -2
  499. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.d.ts.map +1 -1
  500. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js +111 -10
  501. package/node_modules/@earendil-works/pi-coding-agent/dist/package-manager-cli.js.map +1 -1
  502. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.d.ts +1 -0
  503. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.d.ts.map +1 -1
  504. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.js +78 -0
  505. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/changelog.js.map +1 -1
  506. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/git.d.ts.map +1 -1
  507. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/git.js +54 -22
  508. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/git.js.map +1 -1
  509. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/open-browser.d.ts +9 -0
  510. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/open-browser.d.ts.map +1 -0
  511. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/open-browser.js +22 -0
  512. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/open-browser.js.map +1 -0
  513. package/node_modules/@earendil-works/pi-coding-agent/docs/containerization.md +111 -0
  514. package/node_modules/@earendil-works/pi-coding-agent/docs/docs.json +8 -0
  515. package/node_modules/@earendil-works/pi-coding-agent/docs/extensions.md +67 -13
  516. package/node_modules/@earendil-works/pi-coding-agent/docs/index.md +2 -0
  517. package/node_modules/@earendil-works/pi-coding-agent/docs/models.md +4 -3
  518. package/node_modules/@earendil-works/pi-coding-agent/docs/packages.md +1 -1
  519. package/node_modules/@earendil-works/pi-coding-agent/docs/prompt-templates.md +9 -2
  520. package/node_modules/@earendil-works/pi-coding-agent/docs/providers.md +5 -0
  521. package/node_modules/@earendil-works/pi-coding-agent/docs/rpc.md +1 -1
  522. package/node_modules/@earendil-works/pi-coding-agent/docs/sdk.md +5 -0
  523. package/node_modules/@earendil-works/pi-coding-agent/docs/security.md +59 -0
  524. package/node_modules/@earendil-works/pi-coding-agent/docs/settings.md +15 -0
  525. package/node_modules/@earendil-works/pi-coding-agent/docs/skills.md +1 -1
  526. package/node_modules/@earendil-works/pi-coding-agent/docs/terminal-setup.md +36 -2
  527. package/node_modules/@earendil-works/pi-coding-agent/docs/themes.md +1 -1
  528. package/node_modules/@earendil-works/pi-coding-agent/docs/tmux.md +4 -2
  529. package/node_modules/@earendil-works/pi-coding-agent/docs/tui.md +10 -1
  530. package/node_modules/@earendil-works/pi-coding-agent/docs/usage.md +19 -2
  531. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/README.md +2 -0
  532. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-header.ts +1 -1
  533. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-anthropic/package.json +1 -1
  534. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
  535. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/doom-overlay/index.ts +1 -1
  536. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/index.ts +531 -0
  537. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package-lock.json +185 -0
  538. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/gondolin/package.json +19 -0
  539. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/handoff.ts +1 -1
  540. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/interactive-shell.ts +1 -1
  541. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/overlay-qa-tests.ts +152 -81
  542. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/project-trust.ts +64 -0
  543. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/qna.ts +1 -1
  544. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/question.ts +1 -1
  545. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/questionnaire.ts +1 -1
  546. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/sandbox/package.json +1 -1
  547. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/snake.ts +1 -1
  548. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/space-invaders.ts +1 -1
  549. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/summarize.ts +1 -1
  550. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/tic-tac-toe.ts +1 -1
  551. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/todo.ts +1 -1
  552. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/tools.ts +5 -0
  553. package/node_modules/@earendil-works/pi-coding-agent/examples/extensions/with-deps/package.json +1 -1
  554. package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +12 -419
  555. package/node_modules/@earendil-works/pi-coding-agent/package.json +5 -8
  556. package/node_modules/@earendil-works/pi-tui/README.md +13 -1
  557. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts +2 -0
  558. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.d.ts.map +1 -1
  559. package/node_modules/@earendil-works/pi-tui/dist/autocomplete.js.map +1 -1
  560. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts +6 -1
  561. package/node_modules/@earendil-works/pi-tui/dist/components/editor.d.ts.map +1 -1
  562. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +102 -43
  563. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js.map +1 -1
  564. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts +2 -1
  565. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.d.ts.map +1 -1
  566. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js +11 -1
  567. package/node_modules/@earendil-works/pi-tui/dist/components/markdown.js.map +1 -1
  568. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.d.ts +1 -1
  569. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.d.ts.map +1 -1
  570. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js +2 -2
  571. package/node_modules/@earendil-works/pi-tui/dist/fuzzy.js.map +1 -1
  572. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
  573. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  574. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  575. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts +4 -7
  576. package/node_modules/@earendil-works/pi-tui/dist/terminal.d.ts.map +1 -1
  577. package/node_modules/@earendil-works/pi-tui/dist/terminal.js +38 -77
  578. package/node_modules/@earendil-works/pi-tui/dist/terminal.js.map +1 -1
  579. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts +20 -4
  580. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  581. package/node_modules/@earendil-works/pi-tui/dist/tui.js +244 -42
  582. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  583. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts +1 -0
  584. package/node_modules/@earendil-works/pi-tui/dist/utils.d.ts.map +1 -1
  585. package/node_modules/@earendil-works/pi-tui/dist/utils.js +46 -15
  586. package/node_modules/@earendil-works/pi-tui/dist/utils.js.map +1 -1
  587. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  588. package/package.json +8 -7
  589. package/dist/forge-payload/.base-pack/commands/check-agent.md +0 -22
  590. package/dist/forge-payload/.base-pack/commands/enhance.md +0 -37
@@ -0,0 +1,78 @@
1
+ # Workflow Generation — Per-Subagent Instructions
2
+
3
+ You are generating **ONE** workflow file. You have been given three inputs:
4
+
5
+ 1. A **project brief** (`.forge/init-context.md`) — authoritative for all names,
6
+ paths, and placeholder values
7
+ 2. A **meta-workflow source** — your generation algorithm and Generation Instructions
8
+ 3. A **persona file** (already generated) — embed verbatim as the opening section
9
+
10
+ Your job is to produce exactly one file and return a one-line status.
11
+
12
+ ---
13
+
14
+ ## Inputs
15
+
16
+ Read these three sources before writing anything:
17
+
18
+ - `.forge/init-context.md` — the project brief (passed inline in your prompt)
19
+ - `$FORGE_ROOT/meta/workflows/{meta}` — the meta-workflow for your assigned workflow
20
+ - `.forge/personas/{persona}.md` — the persona file for your assigned role
21
+
22
+ ---
23
+
24
+ ## Rules
25
+
26
+ 1. **Write EXACTLY ONE file:** `.forge/workflows/{id}.md`
27
+
28
+ 2. **Opening section** — the generated file must begin with:
29
+ a. The meta-workflow's YAML frontmatter block (`---` … `---`) verbatim,
30
+ if present. This carries `requirements:` fields used for runtime model
31
+ selection and must be preserved exactly.
32
+ b. Immediately after the closing `---`, embed the persona file content
33
+ verbatim as the first section. Do not paraphrase or summarise.
34
+
35
+ 3. **Placeholder substitution** — all `{SYNTAX_CHECK}`, `{TEST_COMMAND}`,
36
+ `{BUILD_COMMAND}`, `{LINT_COMMAND}` values come from the brief's
37
+ `## Commands` section. Do not invent values.
38
+
39
+ 4. **Name vocabulary** — all persona names, template names, architecture doc
40
+ names, and entity names MUST appear in the brief. Do not invent or rename
41
+ anything not listed there.
42
+
43
+ 5. **Required steps** — follow the meta-workflow's Generation Instructions.
44
+ Include the Knowledge Writeback step and the Event Emission step as defined
45
+ in the meta-workflow (unless the meta explicitly omits them, e.g. quiz_agent).
46
+
47
+ 6. **Enforcement quality** — for review workflows, include:
48
+ - A Rationalization Table of common agent excuses and factual rebuttals
49
+ - "YOU MUST" / "No exceptions" gate language at critical checks
50
+ - An announcement pattern: the agent declares intent at workflow start
51
+
52
+ 7. **No free-form additions** — do not add sections, steps, or notes beyond
53
+ what the meta-workflow and project brief prescribe.
54
+
55
+ ---
56
+
57
+ ## Self-check (mandatory last step)
58
+
59
+ After writing the file, verify before returning:
60
+
61
+ 1. Read back `.forge/workflows/{id}.md`
62
+ 2. Confirm the persona symbol appears as the **first non-blank line after the
63
+ closing `---`** of the frontmatter block (or as the absolute first non-blank
64
+ line if the meta-workflow had no frontmatter). The symbol is listed in the
65
+ brief's `## Personas` section for this workflow's role.
66
+ 3. Confirm **no unsubstituted placeholders** remain (no literal `{TEST_COMMAND}`,
67
+ `{BUILD_COMMAND}`, `{SYNTAX_CHECK}`, or `{LINT_COMMAND}` in the file)
68
+ 4. Record in the manifest:
69
+ ```sh
70
+ node "$FORGE_ROOT/tools/generation-manifest.cjs" record ".forge/workflows/{id}.md"
71
+ ```
72
+ (If generation-manifest.cjs is not yet installed, skip silently.)
73
+
74
+ 5. Return **exactly one line**:
75
+ - `done: <first 80 chars of the written file>` — on success
76
+ - `FAILED: <reason>` — if any step above failed or the file could not be written
77
+
78
+ Do not output anything else after the status line.
@@ -9,6 +9,10 @@ parent directory — the folder containing `meta/` and `init/`).
9
9
 
10
10
  ## Pre-flight — Knowledge Base Folder
11
11
 
12
+ > **Orchestrator note:** If your orchestrator (e.g. the `wfl:init` driver or the CLI-first
13
+ > wrapper) has already supplied a `kbFolder` value, use it directly — skip this prompt.
14
+ > This interactive block applies only to unmediated orchestrator-free execution.
15
+
12
16
  Before Phase 1 begins, ask the user where to create the knowledge base folder:
13
17
 
14
18
  ```
@@ -74,13 +78,13 @@ Using your discovery findings, write `.forge/config.json` with this structure:
74
78
  "engineering": "engineering",
75
79
  "store": ".forge/store",
76
80
  "workflows": ".forge/workflows",
77
- "commands": ".claude/commands/<prefix-lowercased>",
81
+ "commands": ".claude/commands/forge",
78
82
  "templates": ".forge/templates"
79
83
  }
80
84
  }
81
85
  ```
82
86
 
83
- `<prefix-lowercased>` = the `project.prefix` value you chose, lowercased. For example, if prefix is `HELLO`, write `".claude/commands/hello"`.
87
+ `paths.commands` is ALWAYS `".claude/commands/forge"` the command namespace is fixed (CLI-first redesign); it does NOT derive from the project prefix.
84
88
 
85
89
  Write using:
86
90
  ```sh
@@ -103,6 +107,10 @@ If any key is missing or empty, fix it now before proceeding.
103
107
 
104
108
  ### Step 5 — Marketplace Skills
105
109
 
110
+ > **Orchestrator note:** If your orchestrator handles the skills install offer post-workflow
111
+ > (e.g. the `init.md` wrapper does this after `wfl:init` returns), skip this step. Return
112
+ > `{ matches, alreadyInstalled }` from the config-writer agent instead.
113
+
106
114
  Read `$FORGE_ROOT/meta/skill-recommendations.md` for the full mapping.
107
115
 
108
116
  Using the stack discovered above, look up matching skills from the recommendation
@@ -63,13 +63,17 @@ node "$FORGE_ROOT/tools/substitute-placeholders.cjs" \
63
63
  ```
64
64
 
65
65
  Output directories (managed by the tool's `SUBDIR_OUTPUT_MAP`):
66
- - `base-pack/commands/` → `.claude/commands/<prefix-lowercased>/`
67
66
  - `base-pack/personas/` → `.forge/personas/`
68
67
  - `base-pack/skills/` → `.forge/skills/`
69
68
  - `base-pack/workflows/` → `.forge/workflows/`
70
69
  - `base-pack/templates/` → `.forge/templates/`
71
70
  - `base-pack/workflows-js/` → `.claude/workflows/` (JS orchestration workflows — FORGE-S28-T01)
72
71
 
72
+ > Commands are no longer materialised here. Since FORGE-S32-T06 the unified
73
+ > slash-command tree (`forge/forge/commands/`) is installed verbatim to
74
+ > `.claude/commands/forge/` by the bootstrap manifest's single `commands` entry —
75
+ > base-pack no longer carries a `commands/` subdir.
76
+
73
77
  ### Step 3a — Record generated JS workflows in the generation manifest
74
78
 
75
79
  After `substitute-placeholders.cjs` writes the JS workflows, record them in the generation
@@ -102,6 +102,10 @@ console.log('ノ update-check-cache.json written');
102
102
 
103
103
  ### Step 11 — Tomoshibi (refresh-kb-links)
104
104
 
105
+ > **Orchestrator note:** This step is orchestrator-owned. When running under `wfl:init`, the
106
+ > register agent returns `pendingActions: ["refresh-kb-links"]` and the command wrapper
107
+ > invokes the Skill. Do NOT execute this step if your orchestrator owns it.
108
+
105
109
  Use the Skill tool:
106
110
  ```
107
111
  skill: "forge:refresh-kb-links"
@@ -134,6 +138,10 @@ Fallback if unavailable:
134
138
 
135
139
  ### Step 13 — Agent instruction file linking
136
140
 
141
+ > **Orchestrator note:** If your orchestrator pre-answered the CLAUDE.md creation prompt
142
+ > (via `args.createClaudeMd`), use that value directly — skip the interactive prompt.
143
+ > Execute the file creation only if `createClaudeMd === true`.
144
+
137
145
  Check whether any agent instruction file exists at the project root:
138
146
  ```sh
139
147
  ls CLAUDE.md AGENTS.md CLAUDE.local.md .cursorrules 2>/dev/null
@@ -0,0 +1,17 @@
1
+ [
2
+ {"id": "architect_sprint_intake", "meta": "meta-new-sprint.md", "persona": "product-manager"},
3
+ {"id": "architect_sprint_plan", "meta": "meta-plan-sprint.md", "persona": "architect"},
4
+ {"id": "architect_approve", "meta": "meta-approve.md", "persona": "architect"},
5
+ {"id": "architect_review_sprint_completion", "meta": "meta-review-sprint-completion.md","persona": "architect"},
6
+ {"id": "plan_task", "meta": "meta-plan-task.md", "persona": "architect"},
7
+ {"id": "implement_plan", "meta": "meta-implement.md", "persona": "engineer"},
8
+ {"id": "update_plan", "meta": "meta-update-plan.md", "persona": "architect"},
9
+ {"id": "update_implementation", "meta": "meta-update-implementation.md", "persona": "engineer"},
10
+ {"id": "commit_task", "meta": "meta-commit.md", "persona": "engineer"},
11
+ {"id": "review_plan", "meta": "meta-review-plan.md", "persona": "supervisor"},
12
+ {"id": "review_code", "meta": "meta-review-implementation.md", "persona": "supervisor"},
13
+ {"id": "collator_agent", "meta": "meta-collate.md", "persona": "collator"},
14
+ {"id": "sprint_retrospective", "meta": "meta-retro.md", "persona": "architect"},
15
+ {"id": "validate_task", "meta": "meta-validate.md", "persona": "qa-engineer"},
16
+ {"id": "quiz_agent", "meta": "meta-check-agent.md", "persona": "qa-engineer"}
17
+ ]
@@ -1,27 +1,42 @@
1
1
  {
2
- "version": "1.2.21",
3
- "generated": "2026-06-06",
2
+ "version": "1.5.0",
3
+ "generated": "2026-06-11",
4
4
  "note": "Tamper-evident only. Authoritative source: /forge:update from remote.",
5
5
  "files": {
6
- "commands/add-pipeline.md": "529a2fc01be49815efa2cf1147528827ff1bfc12ce2ac8663b5a3a9781f8682e",
7
- "commands/add-task.md": "ce3d66fc38e7e0a7592705c559425c6e122f25280b838b631ad44e514bd64e04",
8
- "commands/ask.md": "df15f0aa68c93d65bfef05adb514c377bfc65617cafcd79534eb9b4149302657",
9
- "commands/check-agent.md": "f92121cb150d4cf601654e25c28d0c13389039518d05433f1040d727054b127e",
10
- "commands/config.md": "e67185f98cf0b045890398083991b9d48f32bf0d53bafda1eaca3ce0337ce49c",
11
- "commands/enhance.md": "d28f6414119e84973809d32900bb7245b51f565aed86112bc7a994bc6941b547",
12
- "commands/health.md": "8f8160d67c09eed9be12445674fc2ab76cf31d548c6268c71f9777dca30c4e47",
13
- "commands/init.md": "cf7a70d55f718304820c310465071d3eea9d14a43131623f46b686499f630d4d",
14
- "commands/rebuild.md": "9de3a3c1e41169e18758c8598e297c2f395f9daefdd9772783b9b676982cf1c2",
15
- "commands/remove.md": "0ca5ec94d52959afaadd74910bd2c81c9872b71c9cc1ce8b89e5af69c06b304f",
16
- "commands/repair.md": "22e21614eee31ee630ead3f587b0b948b8c537e54ecef3b65e7d819c55c0ebd4",
17
- "commands/report-bug.md": "af8a54bf8887b35e5c880898dd45783f6c2e80d3dc031d6479a6be613ac43053",
6
+ "commands/add-pipeline.md": "ed4e666b38542d959287116ff6f25e8f51b10c2f18d1fc54974a996fdaf9d8f7",
7
+ "commands/add-task.md": "1782818b31d602194a2bbab12dda00e3b5a947dd5410ca9078777e79df1ad3ee",
8
+ "commands/approve.md": "063ae5a1c59f111986b63bad40efd6ff51a4ab547be6fe70662300ae214bc49c",
9
+ "commands/ask.md": "9b53c7636533811d689cfc27e5eeb847c92f8f740434657c61db090a53a4e21f",
10
+ "commands/check-agent.md": "1f52d57f9a6769c3e9df43bd84df9fb6ca71a0c6be1b14667b3648c81e05998f",
11
+ "commands/collate.md": "ad65229bcc969040b884d86f44c8ee86e9a7b2026e9367fd036d68935416c425",
12
+ "commands/commit.md": "2400be358e5701c68b248f314eb7b4ffac6434968e98b51e36acdad86c0e1f27",
13
+ "commands/config.md": "e9af723a2cf782d167d75aa29cbbec71e937507b9d7576ad254a5a35acae9df0",
14
+ "commands/enhance.md": "59f442096651b3c3118d162a9c1c3abbd9a4f094e9983afb0ee8467689a574e3",
15
+ "commands/fix-bug.md": "d38e6de69a7dd840271155de861fd79feb83bc1ac59409d3df5b93ebc97cab3d",
16
+ "commands/health.md": "d92d81ab8614608c383a01f4788fa9aa17a9b07c0d62caebad264a6459b45d58",
17
+ "commands/implement.md": "cdec3d802b86634fbfde48a8d08b18d84db4df41cdc7142ee85dacd3df19ace0",
18
+ "commands/init.md": "37fa5ada63b9428bd8356d34c6ece7781338dc74840007be3ddf053e3eb7205c",
19
+ "commands/new-sprint.md": "be6a9c059937e2d13dc68f07f9183c51cbd06fd6ab092e41b538692ee9de37ce",
20
+ "commands/plan-sprint.md": "bfde817baf6f51cd27626abef2553d3d0de9968bc67905c9a939386bd27221e8",
21
+ "commands/plan.md": "8f882d644345bed7d115e46a11e2a83fd1d5d7a39df23fdca2851b04f2e5cce5",
22
+ "commands/rebuild.md": "be7cc69c79883d3caae52b1ce8904404ac6d622b84fc17a278f3fd697230842f",
23
+ "commands/remove.md": "3044c58c699047e94bea4bb26bbe0e8d81425cba1ef2afc7243968e2ee8ab483",
24
+ "commands/repair.md": "90dd34c87768aef50a46224a21280047ed2376ca59785ecf6403cae3177dfc2f",
25
+ "commands/report-bug.md": "ae4eb28b54d171de20e89250daadc2a0859887f1d59845a895bd9543b0c1db6f",
26
+ "commands/reset.md": "b8a97d31c7f8bde5b92d34d1ac42e8795c789e40b58552dbe72db707d60aeb44",
27
+ "commands/retro.md": "9490a1f71bb0bfaa3d01c3be21935f33aacc3994ee1ee81be316a5dcd570695a",
28
+ "commands/review-code.md": "f2e95a764728b39d63d6b7fc9b3b23ca1eae597898204ab94b5b5f8224ff40bc",
29
+ "commands/review-plan.md": "47d3d99a25e7801bfb53816b3e31fd37e87793cabd6b4ac3451fd54914f32d23",
30
+ "commands/run-sprint.md": "0c7b94bae8d4f6e9ed0eb512cefaa73ba740f19f17077847f3b103a723eab0d6",
31
+ "commands/run-task.md": "c0c7fad6aac6b59345c256f4a19cdf28a3a1a9fe23fae329ae8fd44b72c5405a",
18
32
  "commands/search.md": "befc4ba9f3146e7599308b35b95ec315e16895c0c18c9c2bab7549619d79bf1c",
19
- "commands/status.md": "2fa82a0b11d493918781aec6d95c39411f84fa923662ff3152b6de0cc830d755",
20
- "commands/update.md": "c8b69b43567fa5fc328bb3dde31f386d0f577bbcc65dafd525400ae2fb16b132",
33
+ "commands/status.md": "d1f5e9295b472553fafcd270e34be00560beadfb18b98d4b696845fb794102eb",
34
+ "commands/update.md": "00cf09b7fa6e84b7bd137a543a11e52c3dbfe3dfe463982dbd6224435ba52345",
35
+ "commands/validate.md": "8d585adf0694b252f35650282d1a83068d5edb82269176e245ad9299711b1448",
21
36
  "agents/store-query-validator.md": "f4c3573edcf6e28809515705362df611806a805c5269404fb17e31433cf3a81c",
22
37
  "agents/tomoshibi.md": "0c1032df80dfc25a4f482b1276965b5318754d95ccde9f24820846d564e49a27",
23
38
  "hooks/check-update.cjs": "9607cc0c51bedcbc123f5ea1d7a492916f29ee1f838846eec64776d5df70bbea",
24
- "hooks/forge-permissions.cjs": "8de18fe7e6c9ee1751926275a37f4bb68a5a53090d366d2aa44157c106e7857e",
39
+ "hooks/forge-permissions.cjs": "f61969192c2859e73317453cbed6a5cb2613e78525a4a411db1f29b96fbb0e5e",
25
40
  "hooks/post-init.cjs": "b05d65e7192d126733995989998a0b480604e0cc152887e6d7d0807fba3cf70d",
26
41
  "hooks/post-sprint.cjs": "28ddbd2c49d8b746c35d23a90b02362bc684d188159536a971b2d650bb85f3a9",
27
42
  "hooks/preflight-session.cjs": "7b1ad8f12f2a1bb94650e2b632da0ed21862071bf63f4e6452c88007be630fae",
@@ -30,7 +45,7 @@
30
45
  "schemas/transitions/bug.json": "27b17da42d1cebffbd4f61ab3dcd432a0017aa71997d548ed80d22c2fc3fad6a",
31
46
  "schemas/transitions/sprint.json": "2e0a629396e687b0ca88e1814ac3e35d84533a5d55b25237ab67feddce3c9deb",
32
47
  "schemas/transitions/task.json": "4c71849747baa0d585756e57c56325ff6219c078178374e60815dff91e25e3e7",
33
- "schemas/enum-catalog.json": "68260bed8e6fe347bc4a1c870fa1ea51ca1ebc45873aae929624837afe8f0bdb",
48
+ "schemas/enum-catalog.json": "98da96c6495497f2a91edac3a4d66e178ab8cfd6835a5fc9255badca6517c440",
34
49
  "tools/verify-integrity.cjs": "3ec3c970dd3d7c3001f8f373bcc40556803eadd2fc2afafb14f1c232cba4cc3f"
35
50
  }
36
51
  }
@@ -80,12 +80,11 @@ Never set `FORGE_SKIP_WRITE_VALIDATION=1` — operator-only emergency switch.
80
80
  }
81
81
  ```
82
82
  The orchestrator reads this file directly to compose the collation event narrative. Do NOT call `set-summary` to register it — that would mutate the store in violation of Iron Law 1.
83
- - Invoke Tomoshibi via Skill tool to refresh KB and workflow links in agent
84
- instruction files:
85
- ```
86
- Use the Skill tool:
87
- skill: "forge:refresh-kb-links"
88
- ```
83
+ - KB link refresh (best-effort; skip if unavailable):
84
+ When running standalone in the Claude Code TUI, invoke via the Skill tool
85
+ (`skill: "forge:refresh-kb-links"`).
86
+ When running as a subagent within forge-cli (Pi runtime), the TS orchestrator
87
+ calls `runRefreshKbLinks` directly after this phase — skip this step.
89
88
  ```
90
89
 
91
90
  <!-- See _fragments/generation-instructions.md for Generation Instructions template -->
@@ -295,7 +295,7 @@ node .forge/tools/substitute-placeholders.cjs \
295
295
  ```
296
296
 
297
297
  This overwrites `.forge/personas/`, `.forge/skills/`, `.forge/workflows/`,
298
- `.forge/templates/`, and `.claude/commands/<prefix>/` with the freshly substituted
298
+ `.forge/templates/`, and `.claude/commands/forge/` with the freshly substituted
299
299
  base-pack.
300
300
 
301
301
  If `substitute-placeholders.cjs` exits non-zero: halt, report the error to the
@@ -0,0 +1,314 @@
1
+ {
2
+ "$schema": "./schemas/payload-manifest.schema.json",
3
+ "_doc": "Declarative inventory of the default (non --include-full) Forge payload. Each entry maps a source path under forge/forge/ to its bundle path (dist/forge-payload/), install destination (bootstrapped project root), and removal owner (uninstall grouping). Authored in FORGE-S32-T02 from build-payload.cjs Pass-2, bootstrap.ts Steps 2-5, and uninstall.ts. FORGE-S32-T03 wires the three consumers to read this file. The owner enum and select shape are provisional pending T03. --include-full superset entries are intentionally out of scope.",
4
+ "entries": [
5
+ {
6
+ "source": "tools",
7
+ "kind": "dir",
8
+ "bundle": "tools/",
9
+ "install": ".forge/tools/",
10
+ "owner": "forge-scaffold",
11
+ "select": {
12
+ "recursive": false,
13
+ "ext": [".cjs", ".js"],
14
+ "include": [
15
+ "substitute-placeholders.cjs",
16
+ "build-init-context.cjs",
17
+ "build-overlay.cjs",
18
+ "manage-versions.cjs",
19
+ "generation-manifest.cjs",
20
+ "build-persona-pack.cjs",
21
+ "build-context-pack.cjs",
22
+ "seed-store.cjs",
23
+ "manage-config.cjs",
24
+ "banners.cjs",
25
+ "validate-store.cjs",
26
+ "collate.cjs",
27
+ "store-cli.cjs",
28
+ "store.cjs",
29
+ "store-query.cjs",
30
+ "preflight-gate.cjs",
31
+ "postflight-gate.cjs",
32
+ "read-verdict.cjs",
33
+ "parse-gates.cjs",
34
+ "friction-emit.cjs",
35
+ "backfill-provider.cjs",
36
+ "check-structure.cjs",
37
+ "list-skills.js",
38
+ "verify-integrity.cjs",
39
+ "queue-drain.cjs",
40
+ "compression-gate.cjs",
41
+ "judge-proposal.cjs",
42
+ "delete-candidate-detector.cjs",
43
+ "replay-scoring.cjs",
44
+ "artifact.cjs",
45
+ "artifact-store.cjs",
46
+ "verify-apply.cjs",
47
+ "verify-phase.cjs",
48
+ "commit-task.cjs",
49
+ "query-logger.cjs",
50
+ "forge-preflight.cjs",
51
+ "reset-plan.cjs"
52
+ ]
53
+ },
54
+ "note": "Curated TOOLS_TO_COPY allowlist (build-payload Pass-2 2a). Forward-checked only — an unlisted tool is a deliberate minimal-payload exclusion, not drift. New runtime-required tools MUST be added here (FORGE-BUG-030/036 MODULE_NOT_FOUND class)."
55
+ },
56
+ {
57
+ "source": "tools/package.json",
58
+ "kind": "file",
59
+ "bundle": "tools/package.json",
60
+ "install": ".forge/tools/",
61
+ "owner": "forge-scaffold",
62
+ "synthesized": true,
63
+ "note": "FORGE-BUG-030: build-payload.cjs WRITES this {\"type\":\"commonjs\"} scope marker (no source file on disk) so bundled lib/*.js resolve as CommonJS inside \"type\":\"module\" host projects."
64
+ },
65
+ {
66
+ "source": "tools/lib",
67
+ "kind": "dir",
68
+ "bundle": "tools/lib/",
69
+ "install": ".forge/tools/lib/",
70
+ "owner": "forge-scaffold",
71
+ "select": {
72
+ "recursive": false,
73
+ "ext": [".cjs", ".js"],
74
+ "include": [
75
+ "artifact-kinds.cjs",
76
+ "forge-root.cjs",
77
+ "frontmatter.cjs",
78
+ "fsutil.cjs",
79
+ "json-io.cjs",
80
+ "paths.cjs",
81
+ "pricing.cjs",
82
+ "project-root.cjs",
83
+ "result.js",
84
+ "schema-loader.cjs",
85
+ "slug.cjs",
86
+ "suggest.cjs",
87
+ "validate.js",
88
+ "store-facade.cjs",
89
+ "store-nlp.cjs",
90
+ "store-query-exec.cjs"
91
+ ]
92
+ },
93
+ "note": "Curated LIB_ALLOWLIST (build-payload Pass-2 2a). Excludes *.test.cjs. Forward-checked only."
94
+ },
95
+ {
96
+ "source": "hooks",
97
+ "kind": "dir",
98
+ "bundle": "hooks/",
99
+ "install": ".forge/tools/hooks/",
100
+ "owner": "forge-scaffold",
101
+ "select": {
102
+ "recursive": false,
103
+ "ext": [".cjs"],
104
+ "exclude": ["hooks.json", "README.md"]
105
+ },
106
+ "note": "Top-level *.cjs hooks (build-payload Pass-2 2e4). hooks.json and README.md are intentionally not bundled. Installed under .forge/tools/hooks/ and wired into .claude/settings.json."
107
+ },
108
+ {
109
+ "source": "hooks/lib",
110
+ "kind": "dir",
111
+ "bundle": "hooks/lib/",
112
+ "install": ".forge/tools/hooks/lib/",
113
+ "owner": "forge-scaffold",
114
+ "select": {
115
+ "recursive": false,
116
+ "ext": [".cjs", ".js"]
117
+ },
118
+ "note": "Hook runtime deps (common.cjs, write-registry.js, ...) — required or every PostToolUse hook fails with MODULE_NOT_FOUND."
119
+ },
120
+ {
121
+ "source": "schemas",
122
+ "kind": "dir",
123
+ "bundle": ".schemas/",
124
+ "install": ".forge/schemas/",
125
+ "owner": "forge-scaffold",
126
+ "select": {
127
+ "recursive": true,
128
+ "ext": [".schema.json"],
129
+ "exclude": ["__tests__"]
130
+ },
131
+ "note": "Recursive *.schema.json incl. _defs/ (build-payload Pass-2 2e). Bundled to BOTH .schemas/ (forge-cli tool resolution) and the non-dot schemas/ mirror (command prose $FORGE_ROOT/schemas/). The dual bundle is INTENTIONAL and load-bearing (FORGE-S32-T05 reconciliation): health.md:58 + update.md:674 read $FORGE_ROOT/schemas/ with NO .schemas/ fallback, and $FORGE_ROOT resolves to the bundle in plugin mode but the installed non-dot .forge/schemas/ in fallback mode — so neither dir can be dropped without breaking /forge:health or /forge:update. Installed (incl. _defs/) to non-dot .forge/schemas/."
132
+ },
133
+ {
134
+ "source": "schemas/enum-catalog.json",
135
+ "kind": "file",
136
+ "bundle": ".schemas/enum-catalog.json",
137
+ "install": ".forge/schemas/",
138
+ "owner": "forge-scaffold",
139
+ "note": "Non-schema JSON consumed by catalog-loader.ts / transition-guard.ts (build-payload Pass-2 2e1b)."
140
+ },
141
+ {
142
+ "source": "schemas/structure-manifest.json",
143
+ "kind": "file",
144
+ "bundle": "schemas/structure-manifest.json",
145
+ "install": ".forge/schemas/",
146
+ "owner": "forge-scaffold",
147
+ "note": "Read by check-structure.cjs (__dirname/../schemas/structure-manifest.json) — resolved via /forge:health step 8 with NO --forge-root, against installed projects. Bundled via the non-dot schemas/ all-JSON mirror; load-bearing and retained deliberately (FORGE-S32-T05 reconciliation, audit verdict refuted)."
148
+ },
149
+ {
150
+ "source": "schemas/transitions",
151
+ "kind": "dir",
152
+ "bundle": ".schemas/transitions/",
153
+ "bundleOnly": true,
154
+ "owner": "forge-scaffold",
155
+ "select": {
156
+ "recursive": false,
157
+ "ext": [".json"]
158
+ },
159
+ "note": "FSM transition tables (build-payload Pass-2 2e1b). Bundle-only: shipped to dist/forge-payload/.schemas/transitions/ for transition-guard.ts resolution, NOT installed into .forge/schemas/ (the historical install tree never vendored transitions/). FORGE-BUG-044."
160
+ },
161
+ {
162
+ "source": "migrations.json",
163
+ "kind": "file",
164
+ "bundle": ".schemas/migrations.json",
165
+ "bundleOnly": true,
166
+ "owner": "forge-scaffold",
167
+ "note": "Payload-root migrations.json copied into .schemas/ for migration-engine.ts (build-payload Pass-2 2e1). Bundle-only: shipped to dist/forge-payload/.schemas/ for migration-engine resolution, NOT installed into .forge/schemas/. FORGE-BUG-044."
168
+ },
169
+ {
170
+ "source": "commands",
171
+ "kind": "dir",
172
+ "bundle": "commands/",
173
+ "install": ".claude/commands/forge/",
174
+ "owner": "claude-commands",
175
+ "select": {
176
+ "recursive": false,
177
+ "ext": [".md"]
178
+ },
179
+ "note": "Unified Forge slash-command tree (build-payload Pass-2 2e2). Single source of truth for ALL /forge:* commands — the 13 plugin-utility commands plus the materialized base-pack sprint-workflow shims and the three former-collision winners (init, check-agent, enhance). Installed verbatim to .claude/commands/forge/; delegateMarkdownCommand reads <forgeRoot>/commands/<name>.md. The former second tree (init/base-pack/commands/) was collapsed into this one in FORGE-S32-T06 — no more union/collision ordering."
180
+ },
181
+ {
182
+ "source": "init/base-pack",
183
+ "kind": "dir",
184
+ "bundle": ".base-pack/",
185
+ "install": ".forge/.base-pack/",
186
+ "owner": "forge-scaffold",
187
+ "select": {
188
+ "recursive": true
189
+ },
190
+ "note": "Recursive base-pack tree (build-payload Pass-2 2d). Vendored wholesale to .forge/.base-pack/; the workflows-js subset is re-installed by the entry below. The commands/ subtree was collapsed into the unified commands/ entry above in FORGE-S32-T06 — base-pack no longer carries a commands/ subdir."
191
+ },
192
+ {
193
+ "source": "init/base-pack/workflows-js",
194
+ "kind": "dir",
195
+ "bundle": ".base-pack/workflows-js/",
196
+ "install": ".claude/workflows/",
197
+ "owner": "workflows",
198
+ "select": {
199
+ "recursive": false,
200
+ "ext": [".js"],
201
+ "prefix": ["wfl-"]
202
+ },
203
+ "note": "wfl-*.js workflow drivers installed to .claude/workflows/ (bootstrap Step 5)."
204
+ },
205
+ {
206
+ "source": "init/phases",
207
+ "kind": "dir",
208
+ "bundle": "init/phases/",
209
+ "install": ".forge/init/phases/",
210
+ "owner": "forge-scaffold",
211
+ "select": {
212
+ "recursive": false,
213
+ "ext": [".md"]
214
+ },
215
+ "note": "Init rulebook phase prompts read by run-phases.ts / wfl-init.js (build-payload Pass-2 2e-pre)."
216
+ },
217
+ {
218
+ "source": "init/discovery",
219
+ "kind": "dir",
220
+ "bundle": "init/discovery/",
221
+ "install": ".forge/init/discovery/",
222
+ "owner": "forge-scaffold",
223
+ "select": {
224
+ "recursive": false,
225
+ "ext": [".md"]
226
+ },
227
+ "note": "Per-domain discovery prompts (build-payload Pass-2 2e-pre). The curated .init/discovery/discover-*.md bundle subset is a separate build-payload target; install uses the full set."
228
+ },
229
+ {
230
+ "source": "init/generation",
231
+ "kind": "dir",
232
+ "bundle": "init/generation/",
233
+ "install": ".forge/init/generation/",
234
+ "owner": "forge-scaffold",
235
+ "select": {
236
+ "recursive": false,
237
+ "ext": [".md"],
238
+ "include": [
239
+ "generate-commands.md",
240
+ "generate-kb-doc.md",
241
+ "generate-persona.md",
242
+ "generate-skill.md",
243
+ "generate-template.md",
244
+ "generate-tools.md",
245
+ "generate-workflows.md"
246
+ ]
247
+ },
248
+ "note": "Generation prompts (build-payload Pass-2 2e-pre). Curated to the per-subagent rulebooks actually cited at runtime (rebuild.md, phase-2-discover.md, phase-4-register.md, build-manifest.cjs, vendored-tools-closure/command-wfl-conformance tests). FORGE-S32-T05 removed the four superseded orchestrator placeholders (generate-knowledge-base/personas/skills/templates.md) — each had zero live runtime citation (only historical vision/ docs + migration notes). The curated .init/generation/generate-kb-doc.md bundle subset is a separate target."
249
+ },
250
+ {
251
+ "source": "init/workflow-gen-plan.json",
252
+ "kind": "file",
253
+ "bundle": "init/workflow-gen-plan.json",
254
+ "install": ".forge/init/",
255
+ "owner": "forge-scaffold",
256
+ "note": "Referenced by vendored commands (rebuild.md reads .forge/init/workflow-gen-plan.json). INIT_ROOT_FILES (build-payload Pass-2 2e-pre)."
257
+ },
258
+ {
259
+ "source": "meta",
260
+ "kind": "dir",
261
+ "bundle": "meta/",
262
+ "install": ".forge/meta/",
263
+ "owner": "forge-scaffold",
264
+ "select": {
265
+ "recursive": true
266
+ },
267
+ "note": "Personas + skills source-of-truth, recursive (build-payload Pass-2 2a2). build-persona-pack.cjs hashes meta/ for the pack cache key (forge-cli#25 defect A)."
268
+ },
269
+ {
270
+ "source": ".claude-plugin/plugin.json",
271
+ "kind": "file",
272
+ "bundle": ".claude-plugin/plugin.json",
273
+ "install": ".forge/.claude-plugin/",
274
+ "owner": "forge-scaffold",
275
+ "note": "Plugin manifest / version source (build-payload Pass-2 2f)."
276
+ },
277
+ {
278
+ "source": "agents",
279
+ "kind": "dir",
280
+ "bundle": "agents/",
281
+ "install": ".claude/agents/",
282
+ "owner": "claude-assets",
283
+ "select": {
284
+ "recursive": false,
285
+ "ext": [".md"]
286
+ },
287
+ "note": "Plugin Claude Code subagents (tomoshibi, store-query-validator). Tracked by integrity.json (build-payload Pass-2 2e3)."
288
+ },
289
+ {
290
+ "source": "skills",
291
+ "kind": "dir",
292
+ "bundle": "skills/",
293
+ "install": ".claude/skills/",
294
+ "owner": "claude-assets",
295
+ "select": {
296
+ "include": [
297
+ "store-custodian",
298
+ "store-query-grammar",
299
+ "store-query-nlp",
300
+ "refresh-kb-links"
301
+ ]
302
+ },
303
+ "note": "Curated SKILLS_TO_COPY (build-payload Pass-2 2i). Each entry is a skill directory (SKILL.md). Forward-checked only."
304
+ },
305
+ {
306
+ "source": "integrity.json",
307
+ "kind": "file",
308
+ "bundle": "integrity.json",
309
+ "bundleOnly": true,
310
+ "owner": "forge-scaffold",
311
+ "note": "Plugin-tampering manifest resolved at forge-root by verify-integrity.cjs (build-payload Pass-2 2e0b). Bundle-only: shipped to dist/forge-payload/integrity.json for verify-integrity.cjs resolution, NOT installed into a bootstrapped project's .forge/ (the historical install tree never vendored integrity.json — bootstrap only hashes it). FORGE-BUG-045."
312
+ }
313
+ ]
314
+ }
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.2.21",
3
- "generated": "2026-06-06",
2
+ "version": "1.4.11",
3
+ "generated": "2026-06-11",
4
4
  "note": "Authoritative enum catalog. Source: build-enum-catalog.cjs. Regenerate via node forge/tools/build-manifest.cjs.",
5
5
  "enums": {
6
6
  "task.status": [