@kynetic-ai/spec 0.1.2 → 0.3.0

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 (510) hide show
  1. package/README.md +250 -17
  2. package/dist/acp/client.d.ts +18 -4
  3. package/dist/acp/client.d.ts.map +1 -1
  4. package/dist/acp/client.js +44 -26
  5. package/dist/acp/client.js.map +1 -1
  6. package/dist/acp/framing.d.ts +2 -2
  7. package/dist/acp/framing.d.ts.map +1 -1
  8. package/dist/acp/framing.js +37 -29
  9. package/dist/acp/framing.js.map +1 -1
  10. package/dist/acp/index.d.ts +6 -7
  11. package/dist/acp/index.d.ts.map +1 -1
  12. package/dist/acp/index.js +3 -3
  13. package/dist/acp/index.js.map +1 -1
  14. package/dist/acp/types.d.ts +5 -5
  15. package/dist/acp/types.d.ts.map +1 -1
  16. package/dist/acp/types.js +18 -18
  17. package/dist/acp/types.js.map +1 -1
  18. package/dist/agents/adapters.d.ts.map +1 -1
  19. package/dist/agents/adapters.js +24 -13
  20. package/dist/agents/adapters.js.map +1 -1
  21. package/dist/agents/index.d.ts +2 -2
  22. package/dist/agents/index.js +2 -2
  23. package/dist/agents/spawner.d.ts +4 -4
  24. package/dist/agents/spawner.d.ts.map +1 -1
  25. package/dist/agents/spawner.js +6 -6
  26. package/dist/agents/spawner.js.map +1 -1
  27. package/dist/cli/batch-context.d.ts +43 -0
  28. package/dist/cli/batch-context.d.ts.map +1 -0
  29. package/dist/cli/batch-context.js +93 -0
  30. package/dist/cli/batch-context.js.map +1 -0
  31. package/dist/cli/batch-exec.d.ts +116 -0
  32. package/dist/cli/batch-exec.d.ts.map +1 -0
  33. package/dist/cli/batch-exec.js +694 -0
  34. package/dist/cli/batch-exec.js.map +1 -0
  35. package/dist/cli/batch.d.ts +4 -2
  36. package/dist/cli/batch.d.ts.map +1 -1
  37. package/dist/cli/batch.js +15 -14
  38. package/dist/cli/batch.js.map +1 -1
  39. package/dist/cli/command-annotations.d.ts +23 -0
  40. package/dist/cli/command-annotations.d.ts.map +1 -0
  41. package/dist/cli/command-annotations.js +27 -0
  42. package/dist/cli/command-annotations.js.map +1 -0
  43. package/dist/cli/commands/agents.d.ts +46 -0
  44. package/dist/cli/commands/agents.d.ts.map +1 -0
  45. package/dist/cli/commands/agents.js +377 -0
  46. package/dist/cli/commands/agents.js.map +1 -0
  47. package/dist/cli/commands/batch.d.ts +20 -0
  48. package/dist/cli/commands/batch.d.ts.map +1 -0
  49. package/dist/cli/commands/batch.js +214 -0
  50. package/dist/cli/commands/batch.js.map +1 -0
  51. package/dist/cli/commands/clone-for-testing.d.ts +1 -1
  52. package/dist/cli/commands/clone-for-testing.d.ts.map +1 -1
  53. package/dist/cli/commands/clone-for-testing.js +37 -47
  54. package/dist/cli/commands/clone-for-testing.js.map +1 -1
  55. package/dist/cli/commands/derive.d.ts +1 -1
  56. package/dist/cli/commands/derive.d.ts.map +1 -1
  57. package/dist/cli/commands/derive.js +140 -88
  58. package/dist/cli/commands/derive.js.map +1 -1
  59. package/dist/cli/commands/doctor.d.ts +11 -0
  60. package/dist/cli/commands/doctor.d.ts.map +1 -0
  61. package/dist/cli/commands/doctor.js +152 -0
  62. package/dist/cli/commands/doctor.js.map +1 -0
  63. package/dist/cli/commands/export.d.ts +12 -0
  64. package/dist/cli/commands/export.d.ts.map +1 -0
  65. package/dist/cli/commands/export.js +134 -0
  66. package/dist/cli/commands/export.js.map +1 -0
  67. package/dist/cli/commands/help.d.ts +1 -1
  68. package/dist/cli/commands/help.d.ts.map +1 -1
  69. package/dist/cli/commands/help.js +163 -37
  70. package/dist/cli/commands/help.js.map +1 -1
  71. package/dist/cli/commands/inbox.d.ts +1 -1
  72. package/dist/cli/commands/inbox.d.ts.map +1 -1
  73. package/dist/cli/commands/inbox.js +178 -56
  74. package/dist/cli/commands/inbox.js.map +1 -1
  75. package/dist/cli/commands/index.d.ts +31 -19
  76. package/dist/cli/commands/index.d.ts.map +1 -1
  77. package/dist/cli/commands/index.js +31 -19
  78. package/dist/cli/commands/index.js.map +1 -1
  79. package/dist/cli/commands/init.d.ts +5 -1
  80. package/dist/cli/commands/init.d.ts.map +1 -1
  81. package/dist/cli/commands/init.js +108 -57
  82. package/dist/cli/commands/init.js.map +1 -1
  83. package/dist/cli/commands/item.d.ts +1 -1
  84. package/dist/cli/commands/item.d.ts.map +1 -1
  85. package/dist/cli/commands/item.js +557 -274
  86. package/dist/cli/commands/item.js.map +1 -1
  87. package/dist/cli/commands/link.d.ts +1 -1
  88. package/dist/cli/commands/link.d.ts.map +1 -1
  89. package/dist/cli/commands/link.js +55 -46
  90. package/dist/cli/commands/link.js.map +1 -1
  91. package/dist/cli/commands/log.d.ts +1 -1
  92. package/dist/cli/commands/log.d.ts.map +1 -1
  93. package/dist/cli/commands/log.js +57 -51
  94. package/dist/cli/commands/log.js.map +1 -1
  95. package/dist/cli/commands/merge-driver.d.ts +19 -0
  96. package/dist/cli/commands/merge-driver.d.ts.map +1 -0
  97. package/dist/cli/commands/merge-driver.js +398 -0
  98. package/dist/cli/commands/merge-driver.js.map +1 -0
  99. package/dist/cli/commands/meta.d.ts +1 -1
  100. package/dist/cli/commands/meta.d.ts.map +1 -1
  101. package/dist/cli/commands/meta.js +533 -399
  102. package/dist/cli/commands/meta.js.map +1 -1
  103. package/dist/cli/commands/module.d.ts +1 -1
  104. package/dist/cli/commands/module.d.ts.map +1 -1
  105. package/dist/cli/commands/module.js +30 -25
  106. package/dist/cli/commands/module.js.map +1 -1
  107. package/dist/cli/commands/plan-import.d.ts +11 -0
  108. package/dist/cli/commands/plan-import.d.ts.map +1 -0
  109. package/dist/cli/commands/plan-import.js +516 -0
  110. package/dist/cli/commands/plan-import.js.map +1 -0
  111. package/dist/cli/commands/plan.d.ts +10 -0
  112. package/dist/cli/commands/plan.d.ts.map +1 -0
  113. package/dist/cli/commands/plan.js +421 -0
  114. package/dist/cli/commands/plan.js.map +1 -0
  115. package/dist/cli/commands/ralph.d.ts +1 -1
  116. package/dist/cli/commands/ralph.d.ts.map +1 -1
  117. package/dist/cli/commands/ralph.js +1097 -169
  118. package/dist/cli/commands/ralph.js.map +1 -1
  119. package/dist/cli/commands/refs.d.ts +13 -0
  120. package/dist/cli/commands/refs.d.ts.map +1 -0
  121. package/dist/cli/commands/refs.js +283 -0
  122. package/dist/cli/commands/refs.js.map +1 -0
  123. package/dist/cli/commands/search.d.ts +1 -1
  124. package/dist/cli/commands/search.d.ts.map +1 -1
  125. package/dist/cli/commands/search.js +199 -37
  126. package/dist/cli/commands/search.js.map +1 -1
  127. package/dist/cli/commands/serve.d.ts +10 -0
  128. package/dist/cli/commands/serve.d.ts.map +1 -0
  129. package/dist/cli/commands/serve.js +491 -0
  130. package/dist/cli/commands/serve.js.map +1 -0
  131. package/dist/cli/commands/session.d.ts +25 -6
  132. package/dist/cli/commands/session.d.ts.map +1 -1
  133. package/dist/cli/commands/session.js +811 -127
  134. package/dist/cli/commands/session.js.map +1 -1
  135. package/dist/cli/commands/setup-seeding.d.ts +81 -0
  136. package/dist/cli/commands/setup-seeding.d.ts.map +1 -0
  137. package/dist/cli/commands/setup-seeding.js +292 -0
  138. package/dist/cli/commands/setup-seeding.js.map +1 -0
  139. package/dist/cli/commands/setup.d.ts +77 -3
  140. package/dist/cli/commands/setup.d.ts.map +1 -1
  141. package/dist/cli/commands/setup.js +1233 -274
  142. package/dist/cli/commands/setup.js.map +1 -1
  143. package/dist/cli/commands/shadow.d.ts +1 -1
  144. package/dist/cli/commands/shadow.d.ts.map +1 -1
  145. package/dist/cli/commands/shadow.js +70 -50
  146. package/dist/cli/commands/shadow.js.map +1 -1
  147. package/dist/cli/commands/skill-crud.d.ts +58 -0
  148. package/dist/cli/commands/skill-crud.d.ts.map +1 -0
  149. package/dist/cli/commands/skill-crud.js +753 -0
  150. package/dist/cli/commands/skill-crud.js.map +1 -0
  151. package/dist/cli/commands/skill-diff.d.ts +27 -0
  152. package/dist/cli/commands/skill-diff.d.ts.map +1 -0
  153. package/dist/cli/commands/skill-diff.js +840 -0
  154. package/dist/cli/commands/skill-diff.js.map +1 -0
  155. package/dist/cli/commands/skill-install.d.ts +53 -0
  156. package/dist/cli/commands/skill-install.d.ts.map +1 -0
  157. package/dist/cli/commands/skill-install.js +452 -0
  158. package/dist/cli/commands/skill-install.js.map +1 -0
  159. package/dist/cli/commands/skill.d.ts +20 -0
  160. package/dist/cli/commands/skill.d.ts.map +1 -0
  161. package/dist/cli/commands/skill.js +36 -0
  162. package/dist/cli/commands/skill.js.map +1 -0
  163. package/dist/cli/commands/task.d.ts +1 -1
  164. package/dist/cli/commands/task.d.ts.map +1 -1
  165. package/dist/cli/commands/task.js +569 -346
  166. package/dist/cli/commands/task.js.map +1 -1
  167. package/dist/cli/commands/tasks.d.ts +26 -1
  168. package/dist/cli/commands/tasks.d.ts.map +1 -1
  169. package/dist/cli/commands/tasks.js +227 -122
  170. package/dist/cli/commands/tasks.js.map +1 -1
  171. package/dist/cli/commands/trait.d.ts +1 -1
  172. package/dist/cli/commands/trait.d.ts.map +1 -1
  173. package/dist/cli/commands/trait.js +166 -101
  174. package/dist/cli/commands/trait.js.map +1 -1
  175. package/dist/cli/commands/triage.d.ts +7 -0
  176. package/dist/cli/commands/triage.d.ts.map +1 -0
  177. package/dist/cli/commands/triage.js +569 -0
  178. package/dist/cli/commands/triage.js.map +1 -0
  179. package/dist/cli/commands/util.d.ts +7 -0
  180. package/dist/cli/commands/util.d.ts.map +1 -0
  181. package/dist/cli/commands/util.js +30 -0
  182. package/dist/cli/commands/util.js.map +1 -0
  183. package/dist/cli/commands/validate.d.ts +1 -1
  184. package/dist/cli/commands/validate.d.ts.map +1 -1
  185. package/dist/cli/commands/validate.js +264 -83
  186. package/dist/cli/commands/validate.js.map +1 -1
  187. package/dist/cli/commands/workflow.d.ts +16 -0
  188. package/dist/cli/commands/workflow.d.ts.map +1 -0
  189. package/dist/cli/commands/workflow.js +851 -0
  190. package/dist/cli/commands/workflow.js.map +1 -0
  191. package/dist/cli/exit-codes.d.ts +7 -0
  192. package/dist/cli/exit-codes.d.ts.map +1 -1
  193. package/dist/cli/exit-codes.js +26 -18
  194. package/dist/cli/exit-codes.js.map +1 -1
  195. package/dist/cli/help/content.d.ts.map +1 -1
  196. package/dist/cli/help/content.js +86 -71
  197. package/dist/cli/help/content.js.map +1 -1
  198. package/dist/cli/index.d.ts +1 -1
  199. package/dist/cli/index.d.ts.map +1 -1
  200. package/dist/cli/index.js +131 -19
  201. package/dist/cli/index.js.map +1 -1
  202. package/dist/cli/introspection.d.ts +6 -2
  203. package/dist/cli/introspection.d.ts.map +1 -1
  204. package/dist/cli/introspection.js +11 -8
  205. package/dist/cli/introspection.js.map +1 -1
  206. package/dist/cli/output.d.ts +64 -4
  207. package/dist/cli/output.d.ts.map +1 -1
  208. package/dist/cli/output.js +235 -85
  209. package/dist/cli/output.js.map +1 -1
  210. package/dist/cli/parse-utils.d.ts +21 -0
  211. package/dist/cli/parse-utils.d.ts.map +1 -0
  212. package/dist/cli/parse-utils.js +32 -0
  213. package/dist/cli/parse-utils.js.map +1 -0
  214. package/dist/cli/pid-utils.d.ts +72 -0
  215. package/dist/cli/pid-utils.d.ts.map +1 -0
  216. package/dist/cli/pid-utils.js +174 -0
  217. package/dist/cli/pid-utils.js.map +1 -0
  218. package/dist/cli/suggest.d.ts.map +1 -1
  219. package/dist/cli/suggest.js +1 -2
  220. package/dist/cli/suggest.js.map +1 -1
  221. package/dist/cli/validators.d.ts +43 -0
  222. package/dist/cli/validators.d.ts.map +1 -0
  223. package/dist/cli/validators.js +84 -0
  224. package/dist/cli/validators.js.map +1 -0
  225. package/dist/daemon/index.ts +52 -0
  226. package/dist/daemon/middleware/project-context.ts +126 -0
  227. package/dist/daemon/pid.ts +179 -0
  228. package/dist/daemon/project-context.ts +343 -0
  229. package/dist/daemon/routes/inbox.ts +164 -0
  230. package/dist/daemon/routes/items.ts +322 -0
  231. package/dist/daemon/routes/meta.ts +118 -0
  232. package/dist/daemon/routes/projects.ts +162 -0
  233. package/dist/daemon/routes/tasks.ts +327 -0
  234. package/dist/daemon/routes/triage.ts +468 -0
  235. package/dist/daemon/routes/validation.ts +248 -0
  236. package/dist/daemon/server.ts +408 -0
  237. package/dist/daemon/watcher.ts +195 -0
  238. package/dist/daemon/websocket/handler.ts +138 -0
  239. package/dist/daemon/websocket/heartbeat.ts +71 -0
  240. package/dist/daemon/websocket/pubsub.ts +125 -0
  241. package/dist/daemon/websocket/types.ts +66 -0
  242. package/dist/export/html.d.ts +19 -0
  243. package/dist/export/html.d.ts.map +1 -0
  244. package/dist/export/html.js +239 -0
  245. package/dist/export/html.js.map +1 -0
  246. package/dist/export/index.d.ts +10 -0
  247. package/dist/export/index.d.ts.map +1 -0
  248. package/dist/export/index.js +10 -0
  249. package/dist/export/index.js.map +1 -0
  250. package/dist/export/json.d.ts +24 -0
  251. package/dist/export/json.d.ts.map +1 -0
  252. package/dist/export/json.js +198 -0
  253. package/dist/export/json.js.map +1 -0
  254. package/dist/export/triage.d.ts +51 -0
  255. package/dist/export/triage.d.ts.map +1 -0
  256. package/dist/export/triage.js +83 -0
  257. package/dist/export/triage.js.map +1 -0
  258. package/dist/export/types.d.ts +122 -0
  259. package/dist/export/types.d.ts.map +1 -0
  260. package/dist/export/types.js +9 -0
  261. package/dist/export/types.js.map +1 -0
  262. package/dist/index.d.ts +2 -2
  263. package/dist/index.js +2 -2
  264. package/dist/lib/claude-plugin-registry.d.ts +66 -0
  265. package/dist/lib/claude-plugin-registry.d.ts.map +1 -0
  266. package/dist/lib/claude-plugin-registry.js +318 -0
  267. package/dist/lib/claude-plugin-registry.js.map +1 -0
  268. package/dist/merge/arrays.d.ts +87 -0
  269. package/dist/merge/arrays.d.ts.map +1 -0
  270. package/dist/merge/arrays.js +164 -0
  271. package/dist/merge/arrays.js.map +1 -0
  272. package/dist/merge/file-type.d.ts +32 -0
  273. package/dist/merge/file-type.d.ts.map +1 -0
  274. package/dist/merge/file-type.js +70 -0
  275. package/dist/merge/file-type.js.map +1 -0
  276. package/dist/merge/index.d.ts +14 -0
  277. package/dist/merge/index.d.ts.map +1 -0
  278. package/dist/merge/index.js +11 -0
  279. package/dist/merge/index.js.map +1 -0
  280. package/dist/merge/objects.d.ts +46 -0
  281. package/dist/merge/objects.d.ts.map +1 -0
  282. package/dist/merge/objects.js +193 -0
  283. package/dist/merge/objects.js.map +1 -0
  284. package/dist/merge/parse.d.ts +23 -0
  285. package/dist/merge/parse.d.ts.map +1 -0
  286. package/dist/merge/parse.js +78 -0
  287. package/dist/merge/parse.js.map +1 -0
  288. package/dist/merge/resolve.d.ts +66 -0
  289. package/dist/merge/resolve.d.ts.map +1 -0
  290. package/dist/merge/resolve.js +189 -0
  291. package/dist/merge/resolve.js.map +1 -0
  292. package/dist/merge/types.d.ts +82 -0
  293. package/dist/merge/types.d.ts.map +1 -0
  294. package/dist/merge/types.js +8 -0
  295. package/dist/merge/types.js.map +1 -0
  296. package/dist/parser/agent-data-sections.d.ts +53 -0
  297. package/dist/parser/agent-data-sections.d.ts.map +1 -0
  298. package/dist/parser/agent-data-sections.js +118 -0
  299. package/dist/parser/agent-data-sections.js.map +1 -0
  300. package/dist/parser/alignment.d.ts +4 -4
  301. package/dist/parser/alignment.d.ts.map +1 -1
  302. package/dist/parser/alignment.js +27 -22
  303. package/dist/parser/alignment.js.map +1 -1
  304. package/dist/parser/assess.d.ts +5 -5
  305. package/dist/parser/assess.d.ts.map +1 -1
  306. package/dist/parser/assess.js +36 -32
  307. package/dist/parser/assess.js.map +1 -1
  308. package/dist/parser/config.d.ts +351 -0
  309. package/dist/parser/config.d.ts.map +1 -0
  310. package/dist/parser/config.js +326 -0
  311. package/dist/parser/config.js.map +1 -0
  312. package/dist/parser/convention-validation.d.ts +1 -1
  313. package/dist/parser/convention-validation.d.ts.map +1 -1
  314. package/dist/parser/convention-validation.js +21 -16
  315. package/dist/parser/convention-validation.js.map +1 -1
  316. package/dist/parser/coverage-cache.d.ts +49 -0
  317. package/dist/parser/coverage-cache.d.ts.map +1 -0
  318. package/dist/parser/coverage-cache.js +123 -0
  319. package/dist/parser/coverage-cache.js.map +1 -0
  320. package/dist/parser/daemon-status.d.ts +37 -0
  321. package/dist/parser/daemon-status.d.ts.map +1 -0
  322. package/dist/parser/daemon-status.js +67 -0
  323. package/dist/parser/daemon-status.js.map +1 -0
  324. package/dist/parser/doctor.d.ts +107 -0
  325. package/dist/parser/doctor.d.ts.map +1 -0
  326. package/dist/parser/doctor.js +366 -0
  327. package/dist/parser/doctor.js.map +1 -0
  328. package/dist/parser/fix.d.ts +1 -1
  329. package/dist/parser/fix.d.ts.map +1 -1
  330. package/dist/parser/fix.js +31 -27
  331. package/dist/parser/fix.js.map +1 -1
  332. package/dist/parser/index.d.ts +16 -11
  333. package/dist/parser/index.d.ts.map +1 -1
  334. package/dist/parser/index.js +16 -11
  335. package/dist/parser/index.js.map +1 -1
  336. package/dist/parser/items.d.ts +8 -2
  337. package/dist/parser/items.d.ts.map +1 -1
  338. package/dist/parser/items.js +71 -35
  339. package/dist/parser/items.js.map +1 -1
  340. package/dist/parser/meta.d.ts +167 -9
  341. package/dist/parser/meta.d.ts.map +1 -1
  342. package/dist/parser/meta.js +379 -46
  343. package/dist/parser/meta.js.map +1 -1
  344. package/dist/parser/plan-document.d.ts +189 -0
  345. package/dist/parser/plan-document.d.ts.map +1 -0
  346. package/dist/parser/plan-document.js +340 -0
  347. package/dist/parser/plan-document.js.map +1 -0
  348. package/dist/parser/plans.d.ts +59 -0
  349. package/dist/parser/plans.d.ts.map +1 -0
  350. package/dist/parser/plans.js +239 -0
  351. package/dist/parser/plans.js.map +1 -0
  352. package/dist/parser/refs.d.ts +22 -9
  353. package/dist/parser/refs.d.ts.map +1 -1
  354. package/dist/parser/refs.js +102 -50
  355. package/dist/parser/refs.js.map +1 -1
  356. package/dist/parser/setup-status.d.ts +71 -0
  357. package/dist/parser/setup-status.d.ts.map +1 -0
  358. package/dist/parser/setup-status.js +269 -0
  359. package/dist/parser/setup-status.js.map +1 -0
  360. package/dist/parser/shadow.d.ts +150 -19
  361. package/dist/parser/shadow.d.ts.map +1 -1
  362. package/dist/parser/shadow.js +548 -187
  363. package/dist/parser/shadow.js.map +1 -1
  364. package/dist/parser/skill-render.d.ts +317 -0
  365. package/dist/parser/skill-render.d.ts.map +1 -0
  366. package/dist/parser/skill-render.js +943 -0
  367. package/dist/parser/skill-render.js.map +1 -0
  368. package/dist/parser/traits.d.ts +3 -3
  369. package/dist/parser/traits.d.ts.map +1 -1
  370. package/dist/parser/traits.js +2 -2
  371. package/dist/parser/traits.js.map +1 -1
  372. package/dist/parser/validate-skills.d.ts +32 -0
  373. package/dist/parser/validate-skills.d.ts.map +1 -0
  374. package/dist/parser/validate-skills.js +202 -0
  375. package/dist/parser/validate-skills.js.map +1 -0
  376. package/dist/parser/validate.d.ts +45 -3
  377. package/dist/parser/validate.d.ts.map +1 -1
  378. package/dist/parser/validate.js +622 -105
  379. package/dist/parser/validate.js.map +1 -1
  380. package/dist/parser/yaml.d.ts +83 -19
  381. package/dist/parser/yaml.d.ts.map +1 -1
  382. package/dist/parser/yaml.js +478 -173
  383. package/dist/parser/yaml.js.map +1 -1
  384. package/dist/ralph/cli-renderer.d.ts +8 -1
  385. package/dist/ralph/cli-renderer.d.ts.map +1 -1
  386. package/dist/ralph/cli-renderer.js +105 -34
  387. package/dist/ralph/cli-renderer.js.map +1 -1
  388. package/dist/ralph/events.d.ts +10 -10
  389. package/dist/ralph/events.d.ts.map +1 -1
  390. package/dist/ralph/events.js +277 -98
  391. package/dist/ralph/events.js.map +1 -1
  392. package/dist/ralph/index.d.ts +5 -2
  393. package/dist/ralph/index.d.ts.map +1 -1
  394. package/dist/ralph/index.js +9 -3
  395. package/dist/ralph/index.js.map +1 -1
  396. package/dist/ralph/loop-errors.d.ts +83 -0
  397. package/dist/ralph/loop-errors.d.ts.map +1 -0
  398. package/dist/ralph/loop-errors.js +150 -0
  399. package/dist/ralph/loop-errors.js.map +1 -0
  400. package/dist/ralph/subagent.d.ts +83 -0
  401. package/dist/ralph/subagent.d.ts.map +1 -0
  402. package/dist/ralph/subagent.js +174 -0
  403. package/dist/ralph/subagent.js.map +1 -0
  404. package/dist/ralph/wrap-up.d.ts +125 -0
  405. package/dist/ralph/wrap-up.d.ts.map +1 -0
  406. package/dist/ralph/wrap-up.js +270 -0
  407. package/dist/ralph/wrap-up.js.map +1 -0
  408. package/dist/schema/batch.d.ts +95 -0
  409. package/dist/schema/batch.d.ts.map +1 -0
  410. package/dist/schema/batch.js +24 -0
  411. package/dist/schema/batch.js.map +1 -0
  412. package/dist/schema/common.d.ts +2 -2
  413. package/dist/schema/common.d.ts.map +1 -1
  414. package/dist/schema/common.js +34 -31
  415. package/dist/schema/common.js.map +1 -1
  416. package/dist/schema/inbox.d.ts +12 -12
  417. package/dist/schema/inbox.js +4 -4
  418. package/dist/schema/inbox.js.map +1 -1
  419. package/dist/schema/index.d.ts +8 -5
  420. package/dist/schema/index.d.ts.map +1 -1
  421. package/dist/schema/index.js +8 -5
  422. package/dist/schema/index.js.map +1 -1
  423. package/dist/schema/meta.d.ts +1454 -27
  424. package/dist/schema/meta.d.ts.map +1 -1
  425. package/dist/schema/meta.js +198 -21
  426. package/dist/schema/meta.js.map +1 -1
  427. package/dist/schema/plan.d.ts +285 -0
  428. package/dist/schema/plan.d.ts.map +1 -0
  429. package/dist/schema/plan.js +81 -0
  430. package/dist/schema/plan.js.map +1 -0
  431. package/dist/schema/spec.d.ts +72 -33
  432. package/dist/schema/spec.d.ts.map +1 -1
  433. package/dist/schema/spec.js +22 -9
  434. package/dist/schema/spec.js.map +1 -1
  435. package/dist/schema/task.d.ts +172 -161
  436. package/dist/schema/task.d.ts.map +1 -1
  437. package/dist/schema/task.js +21 -12
  438. package/dist/schema/task.js.map +1 -1
  439. package/dist/schema/triage.d.ts +266 -0
  440. package/dist/schema/triage.d.ts.map +1 -0
  441. package/dist/schema/triage.js +134 -0
  442. package/dist/schema/triage.js.map +1 -0
  443. package/dist/sessions/index.d.ts +2 -2
  444. package/dist/sessions/index.d.ts.map +1 -1
  445. package/dist/sessions/index.js +3 -3
  446. package/dist/sessions/index.js.map +1 -1
  447. package/dist/sessions/store.d.ts +233 -1
  448. package/dist/sessions/store.d.ts.map +1 -1
  449. package/dist/sessions/store.js +628 -31
  450. package/dist/sessions/store.js.map +1 -1
  451. package/dist/sessions/types.d.ts +10 -10
  452. package/dist/sessions/types.d.ts.map +1 -1
  453. package/dist/sessions/types.js +10 -9
  454. package/dist/sessions/types.js.map +1 -1
  455. package/dist/strings/errors.d.ts +51 -0
  456. package/dist/strings/errors.d.ts.map +1 -1
  457. package/dist/strings/errors.js +136 -106
  458. package/dist/strings/errors.js.map +1 -1
  459. package/dist/strings/guidance.d.ts.map +1 -1
  460. package/dist/strings/guidance.js +16 -16
  461. package/dist/strings/guidance.js.map +1 -1
  462. package/dist/strings/index.d.ts +4 -4
  463. package/dist/strings/index.d.ts.map +1 -1
  464. package/dist/strings/index.js +4 -4
  465. package/dist/strings/index.js.map +1 -1
  466. package/dist/strings/labels.d.ts +4 -0
  467. package/dist/strings/labels.d.ts.map +1 -1
  468. package/dist/strings/labels.js +45 -41
  469. package/dist/strings/labels.js.map +1 -1
  470. package/dist/strings/validation.d.ts.map +1 -1
  471. package/dist/strings/validation.js +71 -71
  472. package/dist/strings/validation.js.map +1 -1
  473. package/dist/utils/commit.d.ts +1 -1
  474. package/dist/utils/commit.d.ts.map +1 -1
  475. package/dist/utils/commit.js +28 -26
  476. package/dist/utils/commit.js.map +1 -1
  477. package/dist/utils/git.d.ts +1 -1
  478. package/dist/utils/git.d.ts.map +1 -1
  479. package/dist/utils/git.js +40 -38
  480. package/dist/utils/git.js.map +1 -1
  481. package/dist/utils/grep.js +11 -11
  482. package/dist/utils/grep.js.map +1 -1
  483. package/dist/utils/index.d.ts +7 -7
  484. package/dist/utils/index.d.ts.map +1 -1
  485. package/dist/utils/index.js +4 -4
  486. package/dist/utils/index.js.map +1 -1
  487. package/dist/utils/time.d.ts.map +1 -1
  488. package/dist/utils/time.js +10 -10
  489. package/dist/utils/time.js.map +1 -1
  490. package/package.json +28 -5
  491. package/plugin/.claude-plugin/marketplace.json +17 -0
  492. package/plugin/.claude-plugin/plugin.json +5 -0
  493. package/plugin/plugins/kspec/skills/help/SKILL.md +42 -0
  494. package/plugin/plugins/kspec/skills/triage/SKILL.md +206 -0
  495. package/plugin/plugins/kspec/skills/triage/docs/automation.md +120 -0
  496. package/plugin/plugins/kspec/skills/triage/docs/inbox.md +144 -0
  497. package/plugin/plugins/kspec/skills/triage/docs/observations.md +85 -0
  498. package/templates/agents-sections/01-quick-start.md +22 -0
  499. package/templates/agents-sections/02-shadow-branch.md +34 -0
  500. package/templates/agents-sections/03-task-lifecycle.md +48 -0
  501. package/templates/agents-sections/04-pr-workflow.md +17 -0
  502. package/templates/agents-sections/05-commit-convention.md +27 -0
  503. package/templates/agents-sections/06-ralph-loop.md +45 -0
  504. package/templates/hooks/pre-commit +34 -0
  505. package/templates/skills/help/SKILL.md +37 -0
  506. package/templates/skills/manifest.yaml +15 -0
  507. package/templates/skills/triage/SKILL.md +199 -0
  508. package/templates/skills/triage/docs/automation.md +120 -0
  509. package/templates/skills/triage/docs/inbox.md +144 -0
  510. package/templates/skills/triage/docs/observations.md +85 -0
@@ -0,0 +1,421 @@
1
+ /**
2
+ * Plan CLI commands
3
+ * AC: @plan-crud ac-1, ac-2, ac-3, ac-4, ac-7, ac-8, ac-9, ac-30, ac-31
4
+ */
5
+ import * as fs from "node:fs/promises";
6
+ import * as path from "node:path";
7
+ import { markMutating } from "../command-annotations.js";
8
+ import { buildIndexes, createPlan, createTask, filterPlansByStatus, getAuthor, initContext, loadAllTasks, loadPlans, savePlan, saveTask, } from "../../parser/index.js";
9
+ import { commitIfShadow } from "../../parser/shadow.js";
10
+ import { errors } from "../../strings/index.js";
11
+ import { fieldLabels } from "../../strings/labels.js";
12
+ import { formatRelativeTime as formatRelativeTimeUtil } from "../../utils/time.js";
13
+ import { EXIT_CODES } from "../exit-codes.js";
14
+ import { error, info, output, success } from "../output.js";
15
+ import { ulid } from "ulid";
16
+ import { registerPlanImportCommand } from "./plan-import.js";
17
+ import { parseIntOption } from "../validators.js";
18
+ /**
19
+ * Format relative time for display
20
+ */
21
+ function formatRelativeTime(dateStr) {
22
+ return formatRelativeTimeUtil(new Date(dateStr));
23
+ }
24
+ /**
25
+ * Resolve plan ref with error handling
26
+ * AC: @plan-crud ac-8 - get plan by reference
27
+ */
28
+ function resolvePlanRef(ref, plans) {
29
+ const cleanRef = ref.startsWith("@") ? ref.slice(1) : ref;
30
+ const plan = plans.find((p) => p._ulid === cleanRef ||
31
+ p._ulid.toLowerCase().startsWith(cleanRef.toLowerCase()) ||
32
+ p.slugs.includes(cleanRef));
33
+ if (!plan) {
34
+ error(errors.reference.planNotFound(ref));
35
+ process.exit(EXIT_CODES.NOT_FOUND);
36
+ }
37
+ return plan;
38
+ }
39
+ /**
40
+ * Register the 'plan' command group
41
+ */
42
+ export function registerPlanCommands(program) {
43
+ const plan = program
44
+ .command("plan")
45
+ .description("Manage implementation plans");
46
+ // Register plan import subcommand
47
+ registerPlanImportCommand(plan);
48
+ // kspec plan add
49
+ // AC: @plan-crud ac-1, ac-2
50
+ markMutating(plan.command("add"))
51
+ .description("Create a new plan")
52
+ .requiredOption("--title <title>", "Plan title")
53
+ .option("--content <text>", "Plan content (markdown)")
54
+ .option("--content-file <path>", "Read content from markdown file")
55
+ .option("--status <status>", "Initial status (default: draft)")
56
+ .option("--slug <slug>", "Optional slug for the plan")
57
+ .addHelpText("after", `
58
+ Examples:
59
+ $ kspec plan add --title "User Auth" --content "Implement JWT auth..."
60
+ $ kspec plan add --title "API Refactor" --content-file ./plan.md`)
61
+ .action(async (options) => {
62
+ try {
63
+ const ctx = await initContext();
64
+ // Validate content options
65
+ if (options.content && options.contentFile) {
66
+ error("Cannot specify both --content and --content-file. Choose one.");
67
+ process.exit(EXIT_CODES.USAGE_ERROR);
68
+ }
69
+ // Read content from file if specified
70
+ // AC: @plan-crud ac-2
71
+ let content = options.content || "";
72
+ if (options.contentFile) {
73
+ const contentPath = path.resolve(process.cwd(), options.contentFile);
74
+ try {
75
+ content = await fs.readFile(contentPath, "utf-8");
76
+ }
77
+ catch (err) {
78
+ error(`Failed to read content file: ${options.contentFile}`, err);
79
+ process.exit(EXIT_CODES.ERROR);
80
+ }
81
+ }
82
+ // Validate title is non-empty
83
+ if (!options.title || options.title.trim().length === 0) {
84
+ error("Plan title cannot be empty.");
85
+ process.exit(EXIT_CODES.USAGE_ERROR);
86
+ }
87
+ // Generate URL-safe slug from title
88
+ const generateSlug = (title) => {
89
+ return title
90
+ .toLowerCase()
91
+ .replace(/[^a-z0-9]+/g, "-")
92
+ .replace(/^-|-$/g, "")
93
+ .slice(0, 50);
94
+ };
95
+ // Auto-namespace plan slugs with "plan-" prefix to prevent collision with spec slugs
96
+ // If user provides a slug, check for collision with spec items and plans
97
+ // If no slug provided, auto-generate with "plan-" prefix and ensure uniqueness
98
+ const plans = await loadPlans(ctx);
99
+ let planSlug = options.slug || `plan-${generateSlug(options.title)}`;
100
+ // Check for collision with spec items and plans
101
+ const { refIndex } = await buildIndexes(ctx, plans);
102
+ if (options.slug) {
103
+ // Manual slug: check for collision across all namespaces (specs/tasks/plans)
104
+ if (!refIndex.isSlugAvailable(options.slug)) {
105
+ error(`Slug "${options.slug}" collides with existing item. Use a different slug or omit --slug for auto-namespaced slug.`);
106
+ process.exit(EXIT_CODES.CONFLICT);
107
+ }
108
+ }
109
+ else {
110
+ // Auto-generated slug: ensure uniqueness across all namespaces
111
+ let counter = 1;
112
+ const baseSlug = planSlug;
113
+ while (!refIndex.isSlugAvailable(planSlug)) {
114
+ planSlug = `${baseSlug}-${counter}`;
115
+ counter++;
116
+ }
117
+ }
118
+ const input = {
119
+ title: options.title,
120
+ content,
121
+ status: options.status || "draft",
122
+ slugs: [planSlug],
123
+ };
124
+ const newPlan = createPlan(input);
125
+ await savePlan(ctx, newPlan);
126
+ // AC: @plan-crud ac-1 - auto-commit to shadow branch
127
+ await commitIfShadow(ctx.shadow, "plan-add", newPlan.slugs[0] || newPlan._ulid.slice(0, 8), options.title);
128
+ success(`Created plan: ${newPlan._ulid.slice(0, 8)} - ${newPlan.title}`, {
129
+ plan: newPlan,
130
+ });
131
+ }
132
+ catch (err) {
133
+ error(errors.failures.createPlan, err);
134
+ process.exit(EXIT_CODES.ERROR);
135
+ }
136
+ });
137
+ // kspec plan get <ref>
138
+ // AC: @plan-crud ac-8, ac-30
139
+ plan
140
+ .command("get <ref>")
141
+ .description("Show plan details")
142
+ .option("--json", "Output as JSON")
143
+ .action(async (ref, options) => {
144
+ try {
145
+ const ctx = await initContext();
146
+ const plans = await loadPlans(ctx);
147
+ const foundPlan = resolvePlanRef(ref, plans);
148
+ // AC: @plan-crud ac-30 - JSON output
149
+ output(foundPlan, () => {
150
+ // AC: @plan-crud ac-8 - full plan display
151
+ console.log(`${fieldLabels.ulid} ${foundPlan._ulid}`);
152
+ console.log(`${fieldLabels.title} ${foundPlan.title}`);
153
+ console.log(`${fieldLabels.status} ${foundPlan.status}`);
154
+ if (foundPlan.slugs.length > 0) {
155
+ console.log(`Slugs: ${foundPlan.slugs.join(", ")}`);
156
+ }
157
+ console.log(`${fieldLabels.created} ${foundPlan.created_at} (${formatRelativeTime(foundPlan.created_at)})`);
158
+ if (foundPlan.approved_at) {
159
+ console.log(`Approved: ${foundPlan.approved_at} (${formatRelativeTime(foundPlan.approved_at)})`);
160
+ }
161
+ if (foundPlan.completed_at) {
162
+ console.log(`Completed: ${foundPlan.completed_at} (${formatRelativeTime(foundPlan.completed_at)})`);
163
+ }
164
+ // Show derived work
165
+ if (foundPlan.derived_tasks.length > 0 ||
166
+ foundPlan.derived_specs.length > 0) {
167
+ console.log("\nDerived Work:");
168
+ if (foundPlan.derived_specs.length > 0) {
169
+ console.log(` Specs: ${foundPlan.derived_specs.join(", ")}`);
170
+ }
171
+ if (foundPlan.derived_tasks.length > 0) {
172
+ console.log(` Tasks: ${foundPlan.derived_tasks.join(", ")}`);
173
+ }
174
+ }
175
+ // Show content
176
+ if (foundPlan.content) {
177
+ console.log("\n─── Content ───");
178
+ console.log(foundPlan.content);
179
+ }
180
+ // Show notes
181
+ if (foundPlan.notes.length > 0) {
182
+ console.log("\n─── Notes ───");
183
+ for (const note of foundPlan.notes) {
184
+ const age = formatRelativeTime(note.created_at);
185
+ const author = note.author ? ` by ${note.author}` : "";
186
+ console.log(`\n[${age}${author}]`);
187
+ console.log(note.content);
188
+ }
189
+ }
190
+ });
191
+ }
192
+ catch (err) {
193
+ error(errors.failures.getPlan, err);
194
+ process.exit(EXIT_CODES.ERROR);
195
+ }
196
+ });
197
+ // kspec plan set <ref>
198
+ // AC: @plan-crud ac-3, ac-4
199
+ markMutating(plan.command("set <ref>"))
200
+ .description("Update plan fields")
201
+ .option("--title <title>", "Update title")
202
+ .option("--status <status>", "Update status")
203
+ .option("--slug <slug>", "Add a slug")
204
+ .action(async (ref, options) => {
205
+ try {
206
+ const ctx = await initContext();
207
+ const plans = await loadPlans(ctx);
208
+ const foundPlan = resolvePlanRef(ref, plans);
209
+ // AC: @plan-crud ac-4 - prevent transitions from terminal states
210
+ if (options.status &&
211
+ (foundPlan.status === "completed" || foundPlan.status === "rejected")) {
212
+ error("Cannot transition from terminal status");
213
+ process.exit(EXIT_CODES.CONFLICT);
214
+ }
215
+ const changes = [];
216
+ if (options.title) {
217
+ foundPlan.title = options.title;
218
+ changes.push("title");
219
+ }
220
+ if (options.status) {
221
+ const oldStatus = foundPlan.status;
222
+ foundPlan.status = options.status;
223
+ changes.push(`status: ${oldStatus} → ${options.status}`);
224
+ // AC: @plan-crud ac-3 - set approved_at timestamp when transitioning to approved
225
+ if (options.status === "approved" && !foundPlan.approved_at) {
226
+ foundPlan.approved_at = new Date().toISOString();
227
+ }
228
+ }
229
+ if (options.slug) {
230
+ if (!foundPlan.slugs.includes(options.slug)) {
231
+ // Check for collision with specs/tasks/plans
232
+ const { refIndex } = await buildIndexes(ctx, plans);
233
+ if (!refIndex.isSlugAvailable(options.slug)) {
234
+ error(`Slug "${options.slug}" collides with existing item. Use a different slug.`);
235
+ process.exit(EXIT_CODES.CONFLICT);
236
+ }
237
+ foundPlan.slugs.push(options.slug);
238
+ changes.push(`slug: +${options.slug}`);
239
+ }
240
+ }
241
+ if (changes.length === 0) {
242
+ info("No changes specified");
243
+ return;
244
+ }
245
+ await savePlan(ctx, foundPlan);
246
+ await commitIfShadow(ctx.shadow, "plan-set", foundPlan.slugs[0] || foundPlan._ulid.slice(0, 8), changes.join(", "));
247
+ success(`Updated plan: ${foundPlan._ulid.slice(0, 8)}`, {
248
+ changes,
249
+ plan: foundPlan,
250
+ });
251
+ }
252
+ catch (err) {
253
+ error(errors.failures.updatePlan, err);
254
+ process.exit(EXIT_CODES.ERROR);
255
+ }
256
+ });
257
+ // kspec plan list
258
+ // AC: @plan-crud ac-7, ac-31
259
+ plan
260
+ .command("list")
261
+ .description("List plans")
262
+ .option("--status <status>", "Filter by status")
263
+ .option("--json", "Output as JSON array")
264
+ .action(async (options) => {
265
+ try {
266
+ const ctx = await initContext();
267
+ let plans = await loadPlans(ctx);
268
+ // AC: @plan-crud ac-7 - status filter
269
+ if (options.status) {
270
+ plans = filterPlansByStatus(plans, options.status);
271
+ }
272
+ // Sort by created date (newest first)
273
+ plans.sort((a, b) => new Date(b.created_at).getTime() - new Date(a.created_at).getTime());
274
+ // AC: @plan-crud ac-31 - JSON output
275
+ output(plans, () => {
276
+ if (plans.length === 0) {
277
+ console.log("No plans found");
278
+ return;
279
+ }
280
+ console.log(`Plans (${plans.length}):\n`);
281
+ for (const p of plans) {
282
+ const ref = p._ulid.slice(0, 8);
283
+ const age = formatRelativeTime(p.created_at);
284
+ const taskCount = p.derived_tasks.length;
285
+ const tasks = taskCount > 0 ? ` [${taskCount} task${taskCount > 1 ? "s" : ""}]` : "";
286
+ console.log(` ${ref} [${p.status}]${tasks} ${p.title}`);
287
+ console.log(` Created ${age}`);
288
+ if (p.approved_at) {
289
+ console.log(` Approved ${formatRelativeTime(p.approved_at)}`);
290
+ }
291
+ console.log("");
292
+ }
293
+ });
294
+ }
295
+ catch (err) {
296
+ error(errors.failures.listPlans, err);
297
+ process.exit(EXIT_CODES.ERROR);
298
+ }
299
+ });
300
+ // kspec plan note <ref> <text>
301
+ // AC: @plan-crud ac-9
302
+ markMutating(plan.command("note <ref> <text>"))
303
+ .description("Add a note to a plan")
304
+ .action(async (ref, text) => {
305
+ try {
306
+ const ctx = await initContext();
307
+ const author = getAuthor(ctx.config?.identity?.author);
308
+ const plans = await loadPlans(ctx);
309
+ const foundPlan = resolvePlanRef(ref, plans);
310
+ // AC: @plan-crud ac-9 - append note with ULID, timestamp, author
311
+ const note = {
312
+ _ulid: ulid(),
313
+ created_at: new Date().toISOString(),
314
+ author,
315
+ content: text,
316
+ };
317
+ foundPlan.notes.push(note);
318
+ await savePlan(ctx, foundPlan);
319
+ await commitIfShadow(ctx.shadow, "plan-note", foundPlan.slugs[0] || foundPlan._ulid.slice(0, 8));
320
+ success(`Added note to plan: ${foundPlan._ulid.slice(0, 8)}`, {
321
+ note,
322
+ });
323
+ }
324
+ catch (err) {
325
+ error(errors.failures.addPlanNote, err);
326
+ process.exit(EXIT_CODES.ERROR);
327
+ }
328
+ });
329
+ // kspec plan derive <ref>
330
+ // AC: @plan-derive ac-5, ac-6
331
+ markMutating(plan.command("derive <ref>"))
332
+ .description("Create a task from a plan")
333
+ .option("--title <title>", "Override task title")
334
+ .option("--priority <n>", "Set task priority (1-5)")
335
+ .addHelpText("after", `
336
+ Examples:
337
+ $ kspec plan derive @plan-ref
338
+ $ kspec plan derive @plan-ref --title "Custom title"
339
+ $ kspec plan derive @plan-ref --priority 1`)
340
+ .action(async (ref, options) => {
341
+ try {
342
+ const ctx = await initContext();
343
+ const plans = await loadPlans(ctx);
344
+ const tasks = await loadAllTasks(ctx);
345
+ const foundPlan = resolvePlanRef(ref, plans);
346
+ // AC: @plan-derive ac-5 - check plan status
347
+ if (foundPlan.status !== "approved" && foundPlan.status !== "active") {
348
+ error(`Plan must be in 'approved' or 'active' status to derive tasks (current: ${foundPlan.status})`);
349
+ process.exit(EXIT_CODES.USAGE_ERROR);
350
+ }
351
+ // Validate priority if provided
352
+ if (options.priority !== undefined) {
353
+ const priorityResult = parseIntOption(options.priority, {
354
+ min: 1,
355
+ max: 5,
356
+ name: "Priority",
357
+ });
358
+ if (!priorityResult.ok) {
359
+ error(priorityResult.error);
360
+ process.exit(EXIT_CODES.USAGE_ERROR);
361
+ }
362
+ // Replace raw string with validated number for downstream use
363
+ options.priority = priorityResult.value;
364
+ }
365
+ // Generate task slug from plan title
366
+ const generateSlug = (title) => {
367
+ return title
368
+ .toLowerCase()
369
+ .replace(/[^a-z0-9]+/g, "-")
370
+ .replace(/^-|-$/g, "")
371
+ .slice(0, 50);
372
+ };
373
+ // Generate task title and slug
374
+ const taskTitle = options.title || `Implement: ${foundPlan.title}`;
375
+ let taskSlug = generateSlug(taskTitle);
376
+ // Ensure slug uniqueness
377
+ let slugSuffix = 1;
378
+ const originalSlug = taskSlug;
379
+ while (tasks.some((t) => t.slugs.includes(taskSlug))) {
380
+ taskSlug = `${originalSlug}-${slugSuffix}`;
381
+ slugSuffix++;
382
+ }
383
+ // AC: @plan-derive ac-5 - create task with plan_ref
384
+ const planRef = foundPlan.slugs[0]
385
+ ? `@${foundPlan.slugs[0]}`
386
+ : `@${foundPlan._ulid.slice(0, 8)}`;
387
+ const taskInput = {
388
+ title: taskTitle,
389
+ type: "task",
390
+ plan_ref: planRef,
391
+ priority: options.priority ?? 3,
392
+ slugs: [taskSlug],
393
+ tags: [],
394
+ depends_on: [],
395
+ notes: [],
396
+ };
397
+ const newTask = createTask(taskInput);
398
+ await saveTask(ctx, newTask);
399
+ // AC: @plan-derive ac-5 - update plan's derived_tasks array
400
+ const taskRef = `@${taskSlug}`;
401
+ if (!foundPlan.derived_tasks.includes(taskRef)) {
402
+ foundPlan.derived_tasks.push(taskRef);
403
+ }
404
+ // AC: @plan-derive ac-5 - transition plan to active if not already
405
+ if (foundPlan.status === "approved") {
406
+ foundPlan.status = "active";
407
+ }
408
+ await savePlan(ctx, foundPlan);
409
+ await commitIfShadow(ctx.shadow, "plan-derive", foundPlan.slugs[0] || foundPlan._ulid.slice(0, 8), taskTitle);
410
+ success(`Created task from plan: ${taskRef}`, {
411
+ task: newTask,
412
+ plan: foundPlan,
413
+ });
414
+ }
415
+ catch (err) {
416
+ error("Failed to derive task from plan", err);
417
+ process.exit(EXIT_CODES.ERROR);
418
+ }
419
+ });
420
+ }
421
+ //# sourceMappingURL=plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/cli/commands/plan.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,6 @@
4
4
  * Runs an ACP-compliant agent in a loop to process tasks autonomously.
5
5
  * Uses session event storage for full audit trail and streaming output.
6
6
  */
7
- import { Command } from 'commander';
7
+ import type { Command } from "commander";
8
8
  export declare function registerRalphCommand(program: Command): void;
9
9
  //# sourceMappingURL=ralph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ralph.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/ralph.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAgQpC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6R3D"}
1
+ {"version":3,"file":"ralph.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/ralph.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAs/BzC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA00B3D"}