@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
@@ -1,12 +1,20 @@
1
- import { initContext, loadAllTasks, loadAllItems, saveTask, createTask, createNote, getAuthor, ReferenceIndex, AlignmentIndex, } from '../../parser/index.js';
2
- import { commitIfShadow } from '../../parser/shadow.js';
3
- import { output, error, info, isJsonMode } from '../output.js';
4
- import { errors } from '../../strings/index.js';
5
- import { EXIT_CODES } from '../exit-codes.js';
1
+ import { markMutating } from "../command-annotations.js";
2
+ import { AlignmentIndex, createNote, createTask, getAuthor, initContext, loadAllItems, loadAllTasks, ReferenceIndex, saveTask, } from "../../parser/index.js";
3
+ import { commitIfShadow } from "../../parser/shadow.js";
4
+ import { errors } from "../../strings/index.js";
5
+ import { EXIT_CODES } from "../exit-codes.js";
6
+ import { error, info, isJsonMode, output, warn } from "../output.js";
7
+ import { parseIntOption } from "../validators.js";
6
8
  /**
7
9
  * Fields that contain nested spec items (mirrors yaml.ts)
8
10
  */
9
- const NESTED_ITEM_FIELDS = ['modules', 'features', 'requirements', 'constraints', 'decisions'];
11
+ const _NESTED_ITEM_FIELDS = [
12
+ "modules",
13
+ "features",
14
+ "requirements",
15
+ "constraints",
16
+ "decisions",
17
+ ];
10
18
  /**
11
19
  * Get the parent path from a child's _path.
12
20
  * e.g., "features[0].requirements[1]" -> "features[0]"
@@ -14,10 +22,10 @@ const NESTED_ITEM_FIELDS = ['modules', 'features', 'requirements', 'constraints'
14
22
  */
15
23
  function getParentPath(childPath) {
16
24
  if (!childPath)
17
- return '';
18
- const lastDotIndex = childPath.lastIndexOf('.');
25
+ return "";
26
+ const lastDotIndex = childPath.lastIndexOf(".");
19
27
  if (lastDotIndex === -1)
20
- return '';
28
+ return "";
21
29
  return childPath.slice(0, lastDotIndex);
22
30
  }
23
31
  /**
@@ -25,23 +33,23 @@ function getParentPath(childPath) {
25
33
  * Direct children have a path that extends the parent's path by exactly one field[index].
26
34
  */
27
35
  function isDirectChildOf(child, parent) {
28
- const childPath = child._path || '';
29
- const parentPath = parent._path || '';
36
+ const childPath = child._path || "";
37
+ const parentPath = parent._path || "";
30
38
  // If paths are equal, not a child
31
39
  if (childPath === parentPath)
32
40
  return false;
33
41
  // Child path must start with parent path
34
- if (parentPath && !childPath.startsWith(parentPath + '.'))
42
+ if (parentPath && !childPath.startsWith(`${parentPath}.`))
35
43
  return false;
36
44
  // For root parent (empty path), child must be a top-level path like "features[0]"
37
45
  if (!parentPath) {
38
46
  // Direct child of root has no '.' in its path
39
- return !childPath.includes('.');
47
+ return !childPath.includes(".");
40
48
  }
41
49
  // Get the remaining path after parent
42
50
  const remaining = childPath.slice(parentPath.length + 1);
43
51
  // Direct child has no additional '.' (e.g., "requirements[0]" not "requirements[0].something")
44
- return !remaining.includes('.');
52
+ return !remaining.includes(".");
45
53
  }
46
54
  /**
47
55
  * Find the parent spec item of a given item.
@@ -55,14 +63,14 @@ function findParentItem(item, allItems) {
55
63
  if (!parentPath)
56
64
  return undefined;
57
65
  // Find item with matching path in the same source file
58
- return allItems.find(i => i._path === parentPath && i._sourceFile === item._sourceFile);
66
+ return allItems.find((i) => i._path === parentPath && i._sourceFile === item._sourceFile);
59
67
  }
60
68
  /**
61
69
  * Get direct children of a spec item.
62
70
  * Only returns immediate children, not grandchildren.
63
71
  */
64
72
  function getDirectChildren(parent, allItems) {
65
- return allItems.filter(item => item._sourceFile === parent._sourceFile && isDirectChildOf(item, parent));
73
+ return allItems.filter((item) => item._sourceFile === parent._sourceFile && isDirectChildOf(item, parent));
66
74
  }
67
75
  /**
68
76
  * Collect an item and all its descendants in topological order (parent first).
@@ -85,18 +93,18 @@ function resolveSpecRef(ref, items, tasks, index) {
85
93
  const result = index.resolve(ref);
86
94
  if (!result.ok) {
87
95
  switch (result.error) {
88
- case 'not_found':
96
+ case "not_found":
89
97
  error(errors.reference.specNotFound(ref));
90
98
  break;
91
- case 'ambiguous':
99
+ case "ambiguous":
92
100
  error(errors.reference.ambiguous(ref));
93
101
  for (const candidate of result.candidates) {
94
- const item = items.find(i => i._ulid === candidate);
95
- const slug = item?.slugs[0] || '';
96
- console.error(` - ${index.shortUlid(candidate)} ${slug ? `(${slug})` : ''}`);
102
+ const item = items.find((i) => i._ulid === candidate);
103
+ const slug = item?.slugs[0] || "";
104
+ console.error(` - ${index.shortUlid(candidate)} ${slug ? `(${slug})` : ""}`);
97
105
  }
98
106
  break;
99
- case 'duplicate_slug':
107
+ case "duplicate_slug":
100
108
  error(errors.reference.slugMapsToMultiple(ref));
101
109
  for (const candidate of result.candidates) {
102
110
  console.error(` - ${index.shortUlid(candidate)}`);
@@ -106,10 +114,10 @@ function resolveSpecRef(ref, items, tasks, index) {
106
114
  process.exit(EXIT_CODES.NOT_FOUND);
107
115
  }
108
116
  // Check if it's actually a spec item (not a task)
109
- const item = items.find(i => i._ulid === result.ulid);
117
+ const item = items.find((i) => i._ulid === result.ulid);
110
118
  if (!item) {
111
119
  // Check if it's a task
112
- const task = tasks.find(t => t._ulid === result.ulid);
120
+ const task = tasks.find((t) => t._ulid === result.ulid);
113
121
  if (task) {
114
122
  error(errors.reference.notSpecItem(ref));
115
123
  }
@@ -125,11 +133,11 @@ function resolveSpecRef(ref, items, tasks, index) {
125
133
  * Converts "My Feature Title" -> "task-my-feature-title"
126
134
  */
127
135
  function generateSlugFromTitle(title) {
128
- return ('task-' +
136
+ return ("task-" +
129
137
  title
130
138
  .toLowerCase()
131
- .replace(/[^a-z0-9]+/g, '-')
132
- .replace(/^-|-$/g, '')
139
+ .replace(/[^a-z0-9]+/g, "-")
140
+ .replace(/^-|-$/g, "")
133
141
  .slice(0, 50));
134
142
  }
135
143
  /**
@@ -139,14 +147,14 @@ function generateSlugFromTitle(title) {
139
147
  function normalizePriority(priority) {
140
148
  if (priority === undefined)
141
149
  return 3;
142
- if (typeof priority === 'number')
150
+ if (typeof priority === "number")
143
151
  return priority;
144
152
  switch (priority) {
145
- case 'high':
153
+ case "high":
146
154
  return 1;
147
- case 'medium':
155
+ case "medium":
148
156
  return 3;
149
- case 'low':
157
+ case "low":
150
158
  return 5;
151
159
  default:
152
160
  return 3;
@@ -164,15 +172,15 @@ function generateImplementationNotes(specItem) {
164
172
  }
165
173
  // Add acceptance criteria summary if present
166
174
  if (specItem.acceptance_criteria && specItem.acceptance_criteria.length > 0) {
167
- const acSection = ['', 'Acceptance Criteria:'];
175
+ const acSection = ["", "Acceptance Criteria:"];
168
176
  for (const ac of specItem.acceptance_criteria) {
169
- const summary = `${ac.given ? 'Given ' + ac.given + ', ' : ''}when ${ac.when}, then ${ac.then}`;
177
+ const summary = `${ac.given ? `Given ${ac.given}, ` : ""}when ${ac.when}, then ${ac.then}`;
170
178
  acSection.push(`- ${ac.id}: ${summary}`);
171
179
  }
172
- parts.push(acSection.join('\n'));
180
+ parts.push(acSection.join("\n"));
173
181
  }
174
182
  // Return combined content, or undefined if nothing to add
175
- return parts.length > 0 ? parts.join('\n\n') : undefined;
183
+ return parts.length > 0 ? parts.join("\n\n") : undefined;
176
184
  }
177
185
  /**
178
186
  * Derive a task from a spec item.
@@ -181,18 +189,23 @@ function generateImplementationNotes(specItem) {
181
189
  * @param dependsOn - Task references to add as dependencies (for hierarchy-based deps)
182
190
  * @param priority - Priority override (1-5), if not provided uses spec's priority
183
191
  */
184
- async function deriveTaskFromSpec(ctx, specItem, existingTasks, items, index, alignmentIndex, options) {
192
+ async function deriveTaskFromSpec(ctx, specItem, existingTasks, _items, index, alignmentIndex, options) {
193
+ // Count acceptance criteria for display
194
+ const acCount = specItem.acceptance_criteria?.length ?? 0;
185
195
  // Check if a task already exists for this spec
196
+ // AC: @cmd-derive ac-15 - skip cancelled tasks
186
197
  const linkedTasks = alignmentIndex.getTasksForSpec(specItem._ulid);
187
- if (linkedTasks.length > 0 && !options.force) {
188
- const taskRef = linkedTasks[0].slugs[0]
189
- ? `@${linkedTasks[0].slugs[0]}`
190
- : `@${index.shortUlid(linkedTasks[0]._ulid)}`;
198
+ const activeTasks = linkedTasks.filter((task) => task.status !== "cancelled");
199
+ if (activeTasks.length > 0 && !options.force) {
200
+ const taskRef = activeTasks[0].slugs[0]
201
+ ? `@${activeTasks[0].slugs[0]}`
202
+ : `@${index.shortUlid(activeTasks[0]._ulid)}`;
191
203
  return {
192
204
  specItem,
193
- action: 'skipped',
194
- task: linkedTasks[0],
205
+ action: "skipped",
206
+ task: activeTasks[0],
195
207
  reason: `task exists: ${taskRef}`,
208
+ acCount,
196
209
  };
197
210
  }
198
211
  // Check if slug would collide with existing task
@@ -200,7 +213,7 @@ async function deriveTaskFromSpec(ctx, specItem, existingTasks, items, index, al
200
213
  let slug = baseSlug;
201
214
  let slugSuffix = 1;
202
215
  // Find unique slug if needed
203
- while (existingTasks.some(t => t.slugs.includes(slug))) {
216
+ while (existingTasks.some((t) => t.slugs.includes(slug))) {
204
217
  slug = `${baseSlug}-${slugSuffix}`;
205
218
  slugSuffix++;
206
219
  }
@@ -208,18 +221,21 @@ async function deriveTaskFromSpec(ctx, specItem, existingTasks, items, index, al
208
221
  // AC: @cmd-derive ac-author
209
222
  const noteContent = generateImplementationNotes(specItem);
210
223
  const initialNotes = noteContent
211
- ? [createNote(`Implementation notes (auto-generated from spec):\n\n${noteContent}`, getAuthor())]
224
+ ? [
225
+ createNote(`Implementation notes (auto-generated from spec):\n\n${noteContent}`, getAuthor(ctx.config?.identity?.author)),
226
+ ]
212
227
  : [];
213
228
  // Build task input with depends_on and initial notes
229
+ // AC: @derive-title-override ac-1 - use provided title if specified
214
230
  const taskInput = {
215
- title: `Implement: ${specItem.title}`,
216
- type: 'task',
231
+ title: options.title ?? `Implement: ${specItem.title}`,
232
+ type: "task",
217
233
  spec_ref: `@${specItem.slugs[0] || specItem._ulid}`,
218
- derivation: 'auto',
234
+ derivation: "auto",
219
235
  priority: options.priority ?? normalizePriority(specItem.priority),
220
236
  slugs: [slug],
221
237
  tags: [...(specItem.tags || [])],
222
- depends_on: options.dependsOn || [],
238
+ depends_on: (options.dependsOn || []).map((ref) => ref.startsWith("@") ? ref : `@${ref}`),
223
239
  notes: initialNotes,
224
240
  };
225
241
  // Dry run - don't actually create
@@ -227,23 +243,25 @@ async function deriveTaskFromSpec(ctx, specItem, existingTasks, items, index, al
227
243
  const previewTask = createTask(taskInput);
228
244
  return {
229
245
  specItem,
230
- action: 'would_create',
246
+ action: "would_create",
231
247
  task: previewTask,
232
248
  dependsOn: options.dependsOn,
249
+ acCount,
233
250
  };
234
251
  }
235
252
  // Create and save the task
236
253
  const newTask = createTask(taskInput);
237
254
  await saveTask(ctx, newTask);
238
255
  const specSlug = specItem.slugs[0] || specItem._ulid.slice(0, 8);
239
- await commitIfShadow(ctx.shadow, 'derive', specSlug);
256
+ await commitIfShadow(ctx.shadow, "derive", specSlug);
240
257
  // Add to existing tasks list for slug collision checks
241
258
  existingTasks.push(newTask);
242
259
  return {
243
260
  specItem,
244
- action: 'created',
261
+ action: "created",
245
262
  task: newTask,
246
263
  dependsOn: options.dependsOn,
264
+ acCount,
247
265
  };
248
266
  }
249
267
  /**
@@ -251,24 +269,30 @@ async function deriveTaskFromSpec(ctx, specItem, existingTasks, items, index, al
251
269
  * Prefers slug over ULID for readability.
252
270
  */
253
271
  function getTaskRef(task, index) {
254
- return task.slugs[0] ? `@${task.slugs[0]}` : `@${index.shortUlid(task._ulid)}`;
272
+ return task.slugs[0]
273
+ ? `@${task.slugs[0]}`
274
+ : `@${index.shortUlid(task._ulid)}`;
255
275
  }
256
276
  /**
257
277
  * Find or get the task for a parent spec item.
258
278
  * Looks in:
259
279
  * 1. Tasks created in this derive session (specToTaskMap)
260
280
  * 2. Existing tasks linked to the parent spec (alignmentIndex)
281
+ *
282
+ * Only returns tasks that are NOT in 'cancelled' state (AC-15).
261
283
  */
262
284
  function getParentTaskRef(parentSpec, specToTaskMap, alignmentIndex, index) {
263
285
  // Check if we created a task for this parent in this session
264
286
  const sessionTask = specToTaskMap.get(parentSpec._ulid);
265
- if (sessionTask) {
287
+ if (sessionTask && sessionTask.status !== "cancelled") {
266
288
  return getTaskRef(sessionTask, index);
267
289
  }
268
290
  // Check if an existing task is linked to this parent spec
291
+ // AC: @cmd-derive ac-15 - skip cancelled tasks
269
292
  const linkedTasks = alignmentIndex.getTasksForSpec(parentSpec._ulid);
270
- if (linkedTasks.length > 0) {
271
- return getTaskRef(linkedTasks[0], index);
293
+ const activeTask = linkedTasks.find((task) => task.status !== "cancelled");
294
+ if (activeTask) {
295
+ return getTaskRef(activeTask, index);
272
296
  }
273
297
  return undefined;
274
298
  }
@@ -276,23 +300,23 @@ function getParentTaskRef(parentSpec, specToTaskMap, alignmentIndex, index) {
276
300
  * Register the 'derive' command
277
301
  */
278
302
  export function registerDeriveCommand(program) {
279
- program
280
- .command('derive [ref]')
281
- .description('Create task(s) from spec item(s)')
282
- .option('--all', 'Derive tasks for all spec items without linked tasks')
283
- .option('--flat', 'Only derive for the specified item, not children (default: recursive)')
284
- .option('--force', 'Create task even if one already exists for the spec')
285
- .option('--dry-run', 'Show what would be created without making changes')
286
- .option('--priority <n>', 'Set priority for created task(s) (1-5)', parseInt)
303
+ markMutating(program.command("derive [ref]"))
304
+ .description("Create task(s) from spec item(s)")
305
+ .option("--all", "Derive tasks for all spec items without linked tasks")
306
+ .option("--flat", "Only derive for the specified item, not children (default: recursive)")
307
+ .option("--force", "Create task even if one already exists for the spec")
308
+ .option("--dry-run", "Show what would be created without making changes")
309
+ .option("--priority <n>", "Set priority for created task(s) (1-5)")
310
+ .option("--title <title>", "Override task title (default: 'Implement: {spec title}')")
287
311
  .action(async (ref, options) => {
288
312
  try {
289
313
  // Validate arguments
290
314
  if (!ref && !options.all) {
291
315
  error(errors.usage.deriveNoRef);
292
- console.error('Usage:');
293
- console.error(' kspec derive @spec-ref');
294
- console.error(' kspec derive @spec-ref --flat');
295
- console.error(' kspec derive --all');
316
+ console.error("Usage:");
317
+ console.error(" kspec derive @spec-ref");
318
+ console.error(" kspec derive @spec-ref --flat");
319
+ console.error(" kspec derive --all");
296
320
  process.exit(EXIT_CODES.USAGE_ERROR);
297
321
  }
298
322
  if (ref && options.all) {
@@ -301,10 +325,17 @@ export function registerDeriveCommand(program) {
301
325
  }
302
326
  // Validate priority if provided
303
327
  if (options.priority !== undefined) {
304
- if (isNaN(options.priority) || options.priority < 1 || options.priority > 5) {
305
- error('Priority must be a number between 1 and 5');
328
+ const priorityResult = parseIntOption(options.priority, {
329
+ min: 1,
330
+ max: 5,
331
+ name: "Priority",
332
+ });
333
+ if (!priorityResult.ok) {
334
+ error(priorityResult.error);
306
335
  process.exit(EXIT_CODES.USAGE_ERROR);
307
336
  }
337
+ // Replace raw string with validated number for downstream use
338
+ options.priority = priorityResult.value;
308
339
  }
309
340
  const ctx = await initContext();
310
341
  const tasks = await loadAllTasks(ctx);
@@ -317,7 +348,7 @@ export function registerDeriveCommand(program) {
317
348
  let specsToDerive;
318
349
  if (options.all) {
319
350
  // Get all spec items without linked tasks
320
- specsToDerive = items.filter(item => {
351
+ specsToDerive = items.filter((item) => {
321
352
  const linkedTasks = alignmentIndex.getTasksForSpec(item._ulid);
322
353
  return linkedTasks.length === 0 || options.force;
323
354
  });
@@ -326,7 +357,7 @@ export function registerDeriveCommand(program) {
326
357
  console.log(JSON.stringify([]));
327
358
  }
328
359
  else {
329
- info('Nothing to derive (all items have tasks)');
360
+ info("Nothing to derive (all items have tasks)");
330
361
  }
331
362
  return;
332
363
  }
@@ -364,13 +395,15 @@ export function registerDeriveCommand(program) {
364
395
  dryRun: options.dryRun || false,
365
396
  dependsOn,
366
397
  priority: options.priority,
398
+ title: options.title,
367
399
  });
368
400
  // Track created/would_create tasks for dependency resolution
369
- if (result.task && (result.action === 'created' || result.action === 'would_create')) {
401
+ if (result.task &&
402
+ (result.action === "created" || result.action === "would_create")) {
370
403
  specToTaskMap.set(specItem._ulid, result.task);
371
404
  }
372
405
  // Also track skipped tasks (existing) for dependency resolution
373
- if (result.action === 'skipped' && result.task) {
406
+ if (result.action === "skipped" && result.task) {
374
407
  specToTaskMap.set(specItem._ulid, result.task);
375
408
  }
376
409
  results.push(result);
@@ -378,12 +411,13 @@ export function registerDeriveCommand(program) {
378
411
  // Output results
379
412
  if (isJsonMode()) {
380
413
  // JSON output format - simplified per AC
381
- const jsonOutput = results.map(r => ({
414
+ const jsonOutput = results.map((r) => ({
382
415
  ulid: r.task?._ulid || null,
383
416
  slug: r.task?.slugs[0] || null,
384
417
  spec_ref: `@${r.specItem.slugs[0] || r.specItem._ulid}`,
385
418
  depends_on: r.task?.depends_on || [],
386
419
  action: r.action,
420
+ ac_count: r.acCount,
387
421
  }));
388
422
  console.log(JSON.stringify(jsonOutput, null, 2));
389
423
  return; // Don't call output() which would output full results in global JSON mode
@@ -391,21 +425,30 @@ export function registerDeriveCommand(program) {
391
425
  else {
392
426
  // Human-readable output
393
427
  output(results, () => {
394
- const created = results.filter(r => r.action === 'created');
395
- const skipped = results.filter(r => r.action === 'skipped');
396
- const wouldCreate = results.filter(r => r.action === 'would_create');
428
+ const created = results.filter((r) => r.action === "created");
429
+ const skipped = results.filter((r) => r.action === "skipped");
430
+ const wouldCreate = results.filter((r) => r.action === "would_create");
397
431
  if (options.dryRun) {
398
- console.log('Would create:');
432
+ console.log("Would create:");
399
433
  for (const r of wouldCreate) {
400
- const taskSlug = r.task?.slugs[0] || '';
401
- const deps = r.dependsOn?.length ? ` (depends: ${r.dependsOn.join(', ')})` : '';
402
- console.log(` + ${r.specItem.title}`);
434
+ const taskSlug = r.task?.slugs[0] || "";
435
+ const deps = r.dependsOn?.length
436
+ ? ` (depends: ${r.dependsOn.join(", ")})`
437
+ : "";
438
+ const acInfo = r.acCount > 0 ? ` (${r.acCount} ACs)` : "";
439
+ console.log(` + ${r.specItem.title}${acInfo}`);
403
440
  console.log(` -> ${taskSlug}${deps}`);
441
+ // Complexity warning for specs with many ACs
442
+ if (r.acCount > 5) {
443
+ warn(`This spec has ${r.acCount} ACs — consider splitting before implementing.`);
444
+ }
404
445
  }
405
446
  if (skipped.length > 0) {
406
- console.log('\nSkipped:');
447
+ console.log("\nSkipped:");
407
448
  for (const r of skipped) {
408
- const specRef = r.specItem.slugs[0] ? `@${r.specItem.slugs[0]}` : `@${index.shortUlid(r.specItem._ulid)}`;
449
+ const specRef = r.specItem.slugs[0]
450
+ ? `@${r.specItem.slugs[0]}`
451
+ : `@${index.shortUlid(r.specItem._ulid)}`;
409
452
  console.log(` - ${specRef} (${r.reason})`);
410
453
  }
411
454
  }
@@ -417,21 +460,30 @@ export function registerDeriveCommand(program) {
417
460
  }
418
461
  if (created.length > 0) {
419
462
  for (const r of created) {
420
- const taskSlug = r.task?.slugs[0] || '';
421
- const deps = r.dependsOn?.length ? ` (depends: ${r.dependsOn.join(', ')})` : '';
422
- console.log(`OK Created task: ${taskSlug}${deps}`);
463
+ const taskSlug = r.task?.slugs[0] || "";
464
+ const deps = r.dependsOn?.length
465
+ ? ` (depends: ${r.dependsOn.join(", ")})`
466
+ : "";
467
+ const acInfo = r.acCount > 0 ? ` (${r.acCount} ACs)` : "";
468
+ console.log(`OK Created task: ${taskSlug}${acInfo}${deps}`);
469
+ // Complexity warning for specs with many ACs
470
+ if (r.acCount > 5) {
471
+ warn(`This spec has ${r.acCount} ACs — consider splitting before implementing.`);
472
+ }
423
473
  }
424
474
  }
425
475
  if (skipped.length > 0 && !options.all) {
426
476
  // Show skipped for explicit derive (not --all)
427
477
  for (const r of skipped) {
428
- const specRef = r.specItem.slugs[0] ? `@${r.specItem.slugs[0]}` : `@${index.shortUlid(r.specItem._ulid)}`;
478
+ const specRef = r.specItem.slugs[0]
479
+ ? `@${r.specItem.slugs[0]}`
480
+ : `@${index.shortUlid(r.specItem._ulid)}`;
429
481
  console.log(`Skipped ${specRef} (${r.reason})`);
430
482
  }
431
483
  }
432
484
  // Summary
433
485
  if (created.length > 0 || skipped.length > 0) {
434
- console.log('');
486
+ console.log("");
435
487
  if (created.length > 0) {
436
488
  console.log(`Created ${created.length} task(s)`);
437
489
  }
@@ -1 +1 @@
1
- {"version":3,"file":"derive.js","sourceRoot":"","sources":["../../../src/cli/commands/derive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"derive.js","sourceRoot":"","sources":["../../../src/cli/commands/derive.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * kspec doctor command - unified health check
3
+ *
4
+ * AC: @doctor-command
5
+ */
6
+ import type { Command } from "commander";
7
+ /**
8
+ * Register the doctor command
9
+ */
10
+ export declare function registerDoctorCommand(program: Command): void;
11
+ //# sourceMappingURL=doctor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWzC;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAoC5D"}