@kynetic-ai/spec 0.1.2 → 0.4.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 (540) 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 +107 -0
  32. package/dist/cli/batch-exec.d.ts.map +1 -0
  33. package/dist/cli/batch-exec.js +706 -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 +141 -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 +58 -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 +534 -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 +547 -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 +1109 -170
  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 +810 -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 +1267 -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 +56 -0
  156. package/dist/cli/commands/skill-install.d.ts.map +1 -0
  157. package/dist/cli/commands/skill-install.js +509 -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 +584 -350
  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 +225 -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 +483 -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 +237 -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 +402 -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 +457 -0
  309. package/dist/parser/config.d.ts.map +1 -0
  310. package/dist/parser/config.js +373 -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 +197 -0
  345. package/dist/parser/plan-document.d.ts.map +1 -0
  346. package/dist/parser/plan-document.js +341 -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 +301 -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 +94 -0
  401. package/dist/ralph/subagent.d.ts.map +1 -0
  402. package/dist/ralph/subagent.js +193 -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 +97 -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 +8 -2
  413. package/dist/schema/common.d.ts.map +1 -1
  414. package/dist/schema/common.js +42 -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 +241 -1
  448. package/dist/sessions/store.d.ts.map +1 -1
  449. package/dist/sessions/store.js +810 -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 +55 -0
  456. package/dist/strings/errors.d.ts.map +1 -1
  457. package/dist/strings/errors.js +138 -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/triage/actions.d.ts +27 -0
  474. package/dist/triage/actions.d.ts.map +1 -0
  475. package/dist/triage/actions.js +95 -0
  476. package/dist/triage/actions.js.map +1 -0
  477. package/dist/triage/constants.d.ts +6 -0
  478. package/dist/triage/constants.d.ts.map +1 -0
  479. package/dist/triage/constants.js +7 -0
  480. package/dist/triage/constants.js.map +1 -0
  481. package/dist/triage/index.d.ts +3 -0
  482. package/dist/triage/index.d.ts.map +1 -0
  483. package/dist/triage/index.js +3 -0
  484. package/dist/triage/index.js.map +1 -0
  485. package/dist/utils/commit.d.ts +1 -1
  486. package/dist/utils/commit.d.ts.map +1 -1
  487. package/dist/utils/commit.js +28 -26
  488. package/dist/utils/commit.js.map +1 -1
  489. package/dist/utils/git.d.ts +1 -1
  490. package/dist/utils/git.d.ts.map +1 -1
  491. package/dist/utils/git.js +40 -38
  492. package/dist/utils/git.js.map +1 -1
  493. package/dist/utils/grep.js +11 -11
  494. package/dist/utils/grep.js.map +1 -1
  495. package/dist/utils/index.d.ts +7 -7
  496. package/dist/utils/index.d.ts.map +1 -1
  497. package/dist/utils/index.js +4 -4
  498. package/dist/utils/index.js.map +1 -1
  499. package/dist/utils/time.d.ts.map +1 -1
  500. package/dist/utils/time.js +10 -10
  501. package/dist/utils/time.js.map +1 -1
  502. package/package.json +28 -5
  503. package/plugin/.claude-plugin/marketplace.json +17 -0
  504. package/plugin/.claude-plugin/plugin.json +5 -0
  505. package/plugin/plugins/kspec/skills/create-workflow/SKILL.md +235 -0
  506. package/plugin/plugins/kspec/skills/help/SKILL.md +42 -0
  507. package/plugin/plugins/kspec/skills/observations/SKILL.md +143 -0
  508. package/plugin/plugins/kspec/skills/plan/SKILL.md +343 -0
  509. package/plugin/plugins/kspec/skills/reflect/SKILL.md +161 -0
  510. package/plugin/plugins/kspec/skills/review/SKILL.md +193 -0
  511. package/plugin/plugins/kspec/skills/task-work/SKILL.md +303 -0
  512. package/plugin/plugins/kspec/skills/triage/SKILL.md +206 -0
  513. package/plugin/plugins/kspec/skills/triage/docs/automation.md +120 -0
  514. package/plugin/plugins/kspec/skills/triage/docs/inbox.md +144 -0
  515. package/plugin/plugins/kspec/skills/triage/docs/observations.md +85 -0
  516. package/plugin/plugins/kspec/skills/triage-automation/SKILL.md +140 -0
  517. package/plugin/plugins/kspec/skills/triage-inbox/SKILL.md +232 -0
  518. package/plugin/plugins/kspec/skills/writing-specs/SKILL.md +340 -0
  519. package/templates/agents-sections/01-quick-start.md +22 -0
  520. package/templates/agents-sections/02-shadow-branch.md +34 -0
  521. package/templates/agents-sections/03-task-lifecycle.md +48 -0
  522. package/templates/agents-sections/04-pr-workflow.md +17 -0
  523. package/templates/agents-sections/05-commit-convention.md +27 -0
  524. package/templates/agents-sections/06-ralph-loop.md +45 -0
  525. package/templates/hooks/pre-commit +34 -0
  526. package/templates/skills/create-workflow/SKILL.md +228 -0
  527. package/templates/skills/help/SKILL.md +37 -0
  528. package/templates/skills/manifest.yaml +60 -0
  529. package/templates/skills/observations/SKILL.md +137 -0
  530. package/templates/skills/plan/SKILL.md +336 -0
  531. package/templates/skills/reflect/SKILL.md +155 -0
  532. package/templates/skills/review/SKILL.md +186 -0
  533. package/templates/skills/task-work/SKILL.md +296 -0
  534. package/templates/skills/triage/SKILL.md +199 -0
  535. package/templates/skills/triage/docs/automation.md +120 -0
  536. package/templates/skills/triage/docs/inbox.md +144 -0
  537. package/templates/skills/triage/docs/observations.md +85 -0
  538. package/templates/skills/triage-automation/SKILL.md +134 -0
  539. package/templates/skills/triage-inbox/SKILL.md +225 -0
  540. package/templates/skills/writing-specs/SKILL.md +333 -0
@@ -1,87 +1,174 @@
1
- import chalk from 'chalk';
2
- import { initContext, loadAllTasks, loadAllItems, getReadyTasks, ReferenceIndex, saveTask, createNote, assessTask, filterTasksForAssessment, computeSummary, computeAutoModeChanges, } from '../../parser/index.js';
3
- import { commitIfShadow } from '../../parser/shadow.js';
4
- import { output, formatTaskList, formatTaskListWithAutomation, error, info, success, } from '../output.js';
5
- import { grepItem } from '../../utils/grep.js';
6
- import { errors } from '../../strings/index.js';
7
- import { EXIT_CODES } from '../exit-codes.js';
1
+ import chalk from "chalk";
2
+ import { Command } from "commander";
3
+ import { assessTask, computeAutoModeChanges, computeSummary, createNote, filterTasksForAssessment, getReadyTasks, initContext, loadAllItems, loadAllTasks, ReferenceIndex, saveTask, } from "../../parser/index.js";
4
+ import { commitIfShadow } from "../../parser/shadow.js";
5
+ import { errors } from "../../strings/index.js";
6
+ import { grepItem } from "../../utils/grep.js";
7
+ import { EXIT_CODES } from "../exit-codes.js";
8
+ import { error, formatTaskList, formatTaskListWithAutomation, info, output, success, } from "../output.js";
9
+ import { findClosestCommand } from "../suggest.js";
10
+ import { normalizeRefInput, TaskStatusSchema, } from "../../schema/common.js";
11
+ /**
12
+ * Parse multi-value status filter: supports comma-separated and repeated flags.
13
+ * AC: @multi-value-status-filter ac-comma-separated, ac-repeated-flag, ac-trailing-comma
14
+ */
15
+ export function parseMultiStatus(input, validValues, typeName) {
16
+ if (!input)
17
+ return null;
18
+ // Normalize: repeated flags produce string[], single flag produces string
19
+ const raw = Array.isArray(input) ? input : [input];
20
+ // Split on commas, trim whitespace, filter empty strings
21
+ // AC: @multi-value-status-filter ac-trailing-comma
22
+ const values = raw
23
+ .flatMap((v) => v.split(","))
24
+ .map((v) => v.trim())
25
+ .filter((v) => v.length > 0);
26
+ if (values.length === 0)
27
+ return null;
28
+ // Validate each value
29
+ // AC: @multi-value-status-filter ac-invalid-task-status, ac-invalid-item-status
30
+ for (const v of values) {
31
+ if (!validValues.includes(v)) {
32
+ error(`Invalid ${typeName}: ${v}. Must be one of: ${validValues.join(", ")}`);
33
+ process.exit(EXIT_CODES.ERROR);
34
+ }
35
+ }
36
+ return values;
37
+ }
38
+ /**
39
+ * Shared task list logic used by both 'tasks list' and 'task list' subcommands,
40
+ * and as the default action when no subcommand is given.
41
+ * AC: @command-group-default-actions ac-bare-tasks, ac-bare-task, ac-bare-with-options
42
+ */
43
+ export async function listTasksAction(options) {
44
+ try {
45
+ const ctx = await initContext();
46
+ const allTasks = await loadAllTasks(ctx);
47
+ const items = await loadAllItems(ctx);
48
+ // Load meta items if filtering by meta-ref
49
+ const { loadMetaContext } = await import("../../parser/meta.js");
50
+ const metaContext = await loadMetaContext(ctx);
51
+ const allMetaItems = [
52
+ ...metaContext.agents,
53
+ ...metaContext.workflows,
54
+ ...metaContext.conventions,
55
+ ...metaContext.observations,
56
+ ];
57
+ const index = new ReferenceIndex(allTasks, items, allMetaItems);
58
+ let taskList = allTasks;
59
+ // Apply filters
60
+ // AC: @multi-value-status-filter ac-comma-separated, ac-repeated-flag, ac-single-value-unchanged
61
+ if (options.status) {
62
+ const statuses = parseMultiStatus(options.status, TaskStatusSchema.options, "task status");
63
+ if (statuses) {
64
+ taskList = taskList.filter((t) => statuses.includes(t.status));
65
+ }
66
+ }
67
+ if (options.type) {
68
+ taskList = taskList.filter((t) => t.type === options.type);
69
+ }
70
+ if (options.tag) {
71
+ const tag = options.tag;
72
+ taskList = taskList.filter((t) => t.tags.includes(tag));
73
+ }
74
+ if (options.metaRef) {
75
+ // AC-meta-ref-2: Filter tasks by meta_ref
76
+ const metaRefResult = index.resolve(options.metaRef);
77
+ if (!metaRefResult.ok) {
78
+ error(errors.reference.metaRefNotFound(options.metaRef));
79
+ process.exit(EXIT_CODES.NOT_FOUND);
80
+ }
81
+ const targetRef = normalizeRefInput(options.metaRef);
82
+ taskList = taskList.filter((t) => t.meta_ref === targetRef || t.meta_ref === options.metaRef);
83
+ }
84
+ if (options.grep) {
85
+ const pattern = options.grep;
86
+ taskList = taskList.filter((t) => {
87
+ const match = grepItem(t, pattern);
88
+ return match !== null;
89
+ });
90
+ }
91
+ // AC: @trait-filterable-list ac-8
92
+ if (options.count) {
93
+ output({ count: taskList.length }, () => {
94
+ console.log(taskList.length);
95
+ });
96
+ return;
97
+ }
98
+ output(taskList, () => formatTaskList(taskList, options.verbose, index, options.grep, options.full));
99
+ }
100
+ catch (err) {
101
+ error(errors.failures.listTasks, err);
102
+ process.exit(EXIT_CODES.ERROR);
103
+ }
104
+ }
105
+ /** Add list filter options to a command */
106
+ export function addListOptions(cmd) {
107
+ return cmd
108
+ .option("-s, --status <status>", "Filter by status")
109
+ .option("-t, --type <type>", "Filter by type")
110
+ .option("--tag <tag>", "Filter by tag")
111
+ .option("--meta-ref <ref>", "Filter by meta reference")
112
+ .option("-g, --grep <pattern>", "Search content with regex pattern")
113
+ .option("-v, --verbose", "Show more details")
114
+ .option("--full", "Show full details (notes, todos, timestamps)")
115
+ .option("--count", "Show only the count of matching tasks");
116
+ }
8
117
  /**
9
118
  * Register the 'tasks' command group
10
119
  */
11
120
  export function registerTasksCommands(program) {
12
- const tasks = program
13
- .command('tasks')
14
- .description('Query and list tasks');
15
- // kspec tasks list
16
- tasks
17
- .command('list')
18
- .description('List all tasks')
19
- .option('-s, --status <status>', 'Filter by status')
20
- .option('-t, --type <type>', 'Filter by type')
21
- .option('--tag <tag>', 'Filter by tag')
22
- .option('--meta-ref <ref>', 'Filter by meta reference')
23
- .option('-g, --grep <pattern>', 'Search content with regex pattern')
24
- .option('-v, --verbose', 'Show more details')
25
- .option('--full', 'Show full details (notes, todos, timestamps)')
26
- .action(async (options) => {
121
+ const tasks = program.command("tasks").description("Query and list tasks")
122
+ .allowUnknownOption()
123
+ .allowExcessArguments();
124
+ // AC: @command-group-default-actions ac-bare-tasks, ac-bare-with-options, ac-unknown-subcommand
125
+ // Default action when no subcommand is given (e.g. `kspec tasks` or `kspec tasks --status pending`)
126
+ tasks.action(async (_options, cmd) => {
127
+ // Re-parse remaining args to extract list options.
128
+ // Commander passes all unrecognized tokens (options + excess args) via cmd.args.
129
+ const listCmd = addListOptions(new Command("_list"));
130
+ listCmd.exitOverride();
27
131
  try {
28
- const ctx = await initContext();
29
- const tasks = await loadAllTasks(ctx);
30
- const items = await loadAllItems(ctx);
31
- // Load meta items if filtering by meta-ref
32
- const { loadMetaContext } = await import('../../parser/meta.js');
33
- const metaContext = await loadMetaContext(ctx);
34
- const allMetaItems = [
35
- ...metaContext.agents,
36
- ...metaContext.workflows,
37
- ...metaContext.conventions,
38
- ...metaContext.observations,
39
- ];
40
- const index = new ReferenceIndex(tasks, items, allMetaItems);
41
- let taskList = tasks;
42
- // Apply filters
43
- if (options.status) {
44
- taskList = taskList.filter(t => t.status === options.status);
45
- }
46
- if (options.type) {
47
- taskList = taskList.filter(t => t.type === options.type);
48
- }
49
- if (options.tag) {
50
- taskList = taskList.filter(t => t.tags.includes(options.tag));
51
- }
52
- if (options.metaRef) {
53
- // AC-meta-ref-2: Filter tasks by meta_ref
54
- const metaRefResult = index.resolve(options.metaRef);
55
- if (!metaRefResult.ok) {
56
- error(errors.reference.metaRefNotFound(options.metaRef));
57
- process.exit(EXIT_CODES.NOT_FOUND);
58
- }
59
- const targetRef = options.metaRef.startsWith('@') ? options.metaRef : `@${options.metaRef}`;
60
- taskList = taskList.filter(t => t.meta_ref === targetRef || t.meta_ref === options.metaRef);
132
+ listCmd.parse(cmd.args, { from: "user" });
133
+ }
134
+ catch {
135
+ // Parse error likely unknown option. Show help.
136
+ console.error(chalk.gray(`Run 'kspec tasks --help' to see available subcommands`));
137
+ process.exit(EXIT_CODES.ERROR);
138
+ }
139
+ // AC: @command-group-default-actions ac-unknown-subcommand
140
+ // After parsing known options, any remaining positional args are unknown subcommands.
141
+ if (listCmd.args.length > 0) {
142
+ const unknownCmd = listCmd.args[0];
143
+ const subcommandNames = cmd.commands.map((c) => c.name());
144
+ const suggestion = findClosestCommand(unknownCmd, subcommandNames);
145
+ console.error(chalk.red(`error: unknown command 'tasks ${unknownCmd}'`));
146
+ if (suggestion) {
147
+ console.error(chalk.yellow(`Did you mean: kspec tasks ${suggestion}?`));
61
148
  }
62
- if (options.grep) {
63
- taskList = taskList.filter(t => {
64
- const match = grepItem(t, options.grep);
65
- return match !== null;
66
- });
149
+ else {
150
+ console.error(chalk.gray(`Run 'kspec tasks --help' to see available subcommands`));
67
151
  }
68
- output(taskList, () => formatTaskList(taskList, options.verbose, index, options.grep, options.full));
69
- }
70
- catch (err) {
71
- error(errors.failures.listTasks, err);
72
152
  process.exit(EXIT_CODES.ERROR);
73
153
  }
154
+ // AC: @command-group-default-actions ac-bare-with-options
155
+ await listTasksAction(listCmd.opts());
156
+ });
157
+ // kspec tasks list
158
+ addListOptions(tasks.command("list").description("List all tasks"))
159
+ .action(async (options) => {
160
+ await listTasksAction(options);
74
161
  });
75
162
  // kspec tasks ready
76
163
  // AC: @task-automation-eligibility ac-14, ac-19, ac-20, ac-24
77
164
  tasks
78
- .command('ready')
79
- .description('List tasks that are ready to work on')
80
- .option('-v, --verbose', 'Show more details')
81
- .option('--full', 'Show full details (notes, todos, timestamps)')
82
- .option('--eligible', 'Show only tasks with automation: eligible')
83
- .option('--unassessed', 'Show only tasks without automation status')
84
- .option('--needs-review', 'Show only tasks with automation: needs_review')
165
+ .command("ready")
166
+ .description("List tasks that are ready to work on")
167
+ .option("-v, --verbose", "Show more details")
168
+ .option("--full", "Show full details (notes, todos, timestamps)")
169
+ .option("--eligible", "Show only tasks with automation: eligible")
170
+ .option("--unassessed", "Show only tasks without automation status")
171
+ .option("--needs-review", "Show only tasks with automation: needs_review")
85
172
  .action(async (options) => {
86
173
  try {
87
174
  const ctx = await initContext();
@@ -91,29 +178,29 @@ export function registerTasksCommands(program) {
91
178
  let readyTasks = getReadyTasks(allTasks);
92
179
  // AC: @task-automation-eligibility ac-19 - filter by --eligible
93
180
  if (options.eligible) {
94
- readyTasks = readyTasks.filter(t => t.automation === 'eligible');
181
+ readyTasks = readyTasks.filter((t) => t.automation === "eligible");
95
182
  }
96
183
  // AC: @task-automation-eligibility ac-20 - filter by --unassessed
97
184
  if (options.unassessed) {
98
- readyTasks = readyTasks.filter(t => !t.automation);
185
+ readyTasks = readyTasks.filter((t) => !t.automation);
99
186
  }
100
187
  // AC: @task-automation-eligibility ac-24 - filter by --needs-review
101
188
  if (options.needsReview) {
102
- readyTasks = readyTasks.filter(t => t.automation === 'needs_review');
189
+ readyTasks = readyTasks.filter((t) => t.automation === "needs_review");
103
190
  }
104
191
  output(readyTasks, () => {
105
192
  if (readyTasks.length === 0) {
106
193
  if (options.eligible) {
107
- info('No eligible tasks ready - no tasks with automation: eligible');
194
+ info("No eligible tasks ready - no tasks with automation: eligible");
108
195
  }
109
196
  else if (options.unassessed) {
110
- info('No unassessed tasks ready');
197
+ info("No unassessed tasks ready");
111
198
  }
112
199
  else if (options.needsReview) {
113
- info('No tasks need review');
200
+ info("No tasks need review");
114
201
  }
115
202
  else {
116
- info('No tasks ready - all pending tasks are blocked or have unmet dependencies');
203
+ info("No tasks ready - all pending tasks are blocked or have unmet dependencies");
117
204
  }
118
205
  }
119
206
  else {
@@ -129,8 +216,8 @@ export function registerTasksCommands(program) {
129
216
  });
130
217
  // kspec tasks next
131
218
  tasks
132
- .command('next')
133
- .description('Show the highest-priority ready task')
219
+ .command("next")
220
+ .description("Show the highest-priority ready task")
134
221
  .action(async () => {
135
222
  try {
136
223
  const ctx = await initContext();
@@ -139,7 +226,7 @@ export function registerTasksCommands(program) {
139
226
  const index = new ReferenceIndex(allTasks, items);
140
227
  const readyTasks = getReadyTasks(allTasks);
141
228
  if (readyTasks.length === 0) {
142
- output(null, () => info('No tasks ready'));
229
+ output(null, () => info("No tasks ready"));
143
230
  }
144
231
  else {
145
232
  const next = readyTasks[0];
@@ -155,17 +242,17 @@ export function registerTasksCommands(program) {
155
242
  });
156
243
  // kspec tasks blocked
157
244
  tasks
158
- .command('blocked')
159
- .description('Show blocked tasks')
160
- .option('-v, --verbose', 'Show more details')
161
- .option('--full', 'Show full details (notes, todos, timestamps)')
245
+ .command("blocked")
246
+ .description("Show blocked tasks")
247
+ .option("-v, --verbose", "Show more details")
248
+ .option("--full", "Show full details (notes, todos, timestamps)")
162
249
  .action(async (options) => {
163
250
  try {
164
251
  const ctx = await initContext();
165
252
  const allTasks = await loadAllTasks(ctx);
166
253
  const items = await loadAllItems(ctx);
167
254
  const index = new ReferenceIndex(allTasks, items);
168
- const blockedTasks = allTasks.filter(t => t.status === 'blocked');
255
+ const blockedTasks = allTasks.filter((t) => t.status === "blocked");
169
256
  output(blockedTasks, () => formatTaskList(blockedTasks, options.verbose, index, undefined, options.full));
170
257
  }
171
258
  catch (err) {
@@ -175,18 +262,18 @@ export function registerTasksCommands(program) {
175
262
  });
176
263
  // kspec tasks in-progress
177
264
  tasks
178
- .command('in-progress')
179
- .alias('active')
180
- .description('Show tasks in progress')
181
- .option('-v, --verbose', 'Show more details')
182
- .option('--full', 'Show full details (notes, todos, timestamps)')
265
+ .command("in-progress")
266
+ .alias("active")
267
+ .description("Show tasks in progress")
268
+ .option("-v, --verbose", "Show more details")
269
+ .option("--full", "Show full details (notes, todos, timestamps)")
183
270
  .action(async (options) => {
184
271
  try {
185
272
  const ctx = await initContext();
186
273
  const allTasks = await loadAllTasks(ctx);
187
274
  const items = await loadAllItems(ctx);
188
275
  const index = new ReferenceIndex(allTasks, items);
189
- const activeTasks = allTasks.filter(t => t.status === 'in_progress');
276
+ const activeTasks = allTasks.filter((t) => t.status === "in_progress" || t.status === "needs_work");
190
277
  output(activeTasks, () => formatTaskList(activeTasks, options.verbose, index, undefined, options.full));
191
278
  }
192
279
  catch (err) {
@@ -197,16 +284,16 @@ export function registerTasksCommands(program) {
197
284
  // kspec tasks assess - assess command group
198
285
  // AC: @tasks-assess-automation
199
286
  const assess = tasks
200
- .command('assess')
201
- .description('Assess tasks for various criteria');
287
+ .command("assess")
288
+ .description("Assess tasks for various criteria");
202
289
  // kspec tasks assess automation [taskRef]
203
290
  // AC: @tasks-assess-automation ac-1 through ac-28
204
291
  assess
205
- .command('automation [taskRef]')
206
- .description('Assess task automation eligibility based on criteria')
207
- .option('--all', 'Include already-assessed tasks')
208
- .option('--auto', 'Auto-mark obvious cases (spikes -> manual_only, missing criteria -> needs_review)')
209
- .option('--dry-run', 'Show what would change without modifying tasks')
292
+ .command("automation [taskRef]")
293
+ .description("Assess task automation eligibility based on criteria")
294
+ .option("--all", "Include already-assessed tasks")
295
+ .option("--auto", "Auto-mark obvious cases (spikes -> manual_only, missing criteria -> needs_review)")
296
+ .option("--dry-run", "Show what would change without modifying tasks")
210
297
  .action(async (taskRef, options) => {
211
298
  try {
212
299
  const ctx = await initContext();
@@ -225,37 +312,45 @@ export function registerTasksCommands(program) {
225
312
  const tasksToAssess = filterTasksForAssessment(allTasks, { all: options.all, taskRef }, index);
226
313
  // AC: @tasks-assess-automation ac-26 - No unassessed tasks
227
314
  if (tasksToAssess.length === 0) {
228
- output({ tasks: [], summary: { review_for_eligible: 0, needs_review: 0, manual_only: 0, total: 0 } }, () => {
315
+ output({
316
+ tasks: [],
317
+ summary: {
318
+ review_for_eligible: 0,
319
+ needs_review: 0,
320
+ manual_only: 0,
321
+ total: 0,
322
+ },
323
+ }, () => {
229
324
  if (taskRef) {
230
325
  info(`Task ${taskRef} is not pending or already assessed (use --all to include)`);
231
326
  }
232
327
  else {
233
- info('No unassessed pending tasks');
328
+ info("No unassessed pending tasks");
234
329
  }
235
330
  });
236
331
  return;
237
332
  }
238
333
  // Assess each task
239
334
  // AC: @tasks-assess-automation ac-3, ac-4, ac-8-16
240
- const assessments = tasksToAssess.map(task => assessTask(task, index, items));
335
+ const assessments = tasksToAssess.map((task) => assessTask(task, index, items));
241
336
  // AC: @tasks-assess-automation ac-5, ac-25 - Compute summary
242
337
  const summary = computeSummary(assessments);
243
338
  // Handle auto mode
244
339
  // AC: @tasks-assess-automation ac-17-21
245
340
  if (options.auto) {
246
341
  const changes = computeAutoModeChanges(assessments);
247
- const actualChanges = changes.filter(c => c.action !== 'no_change');
342
+ const actualChanges = changes.filter((c) => c.action !== "no_change");
248
343
  // AC: @tasks-assess-automation ac-22, ac-23 - Dry run
249
344
  if (options.dryRun) {
250
345
  output({ assessments, summary, changes, dryRun: true }, () => {
251
346
  formatAssessmentOutput(assessments, summary, index);
252
- console.log('');
253
- console.log(chalk.yellow('Dry run - would make these changes:'));
347
+ console.log("");
348
+ console.log(chalk.yellow("Dry run - would make these changes:"));
254
349
  for (const change of actualChanges) {
255
350
  console.log(` ${change.taskRef}: set automation=${change.newStatus} (${change.reason})`);
256
351
  }
257
352
  if (actualChanges.length === 0) {
258
- console.log(' (no changes - all tasks need agent/human review)');
353
+ console.log(" (no changes - all tasks need agent/human review)");
259
354
  }
260
355
  });
261
356
  return;
@@ -264,29 +359,29 @@ export function registerTasksCommands(program) {
264
359
  // AC: @tasks-assess-automation ac-17, ac-19, ac-20
265
360
  let changeCount = 0;
266
361
  for (const change of actualChanges) {
267
- const task = allTasks.find(t => t._ulid === change.taskUlid);
362
+ const task = allTasks.find((t) => t._ulid === change.taskUlid);
268
363
  if (!task)
269
364
  continue;
270
365
  // Set automation status
271
366
  task.automation = change.newStatus;
272
367
  // AC: @tasks-assess-automation ac-19, ac-20 - Add note explaining assessment
273
368
  const noteContent = `Automation assessment: set to ${change.newStatus}. ${change.reason}`;
274
- const note = createNote(noteContent, '@automation-assess');
369
+ const note = createNote(noteContent, "@automation-assess");
275
370
  task.notes = [...task.notes, note];
276
371
  await saveTask(ctx, task);
277
372
  changeCount++;
278
373
  }
279
374
  if (changeCount > 0) {
280
- await commitIfShadow(ctx.shadow, 'tasks-assess', 'automation', `${changeCount} task(s)`);
375
+ await commitIfShadow(ctx.shadow, "tasks-assess", "automation", `${changeCount} task(s)`);
281
376
  }
282
377
  output({ assessments, summary, changes, applied: true }, () => {
283
378
  formatAssessmentOutput(assessments, summary, index);
284
- console.log('');
379
+ console.log("");
285
380
  if (changeCount > 0) {
286
381
  success(`Applied ${changeCount} change(s)`);
287
382
  }
288
383
  else {
289
- info('No changes applied - all tasks need agent/human review to mark eligible');
384
+ info("No changes applied - all tasks need agent/human review to mark eligible");
290
385
  }
291
386
  });
292
387
  return;
@@ -298,7 +393,7 @@ export function registerTasksCommands(program) {
298
393
  });
299
394
  }
300
395
  catch (err) {
301
- error('Failed to assess tasks', err);
396
+ error("Failed to assess tasks", err);
302
397
  process.exit(EXIT_CODES.ERROR);
303
398
  }
304
399
  });
@@ -307,38 +402,46 @@ export function registerTasksCommands(program) {
307
402
  * Format assessment output for human-readable display
308
403
  * AC: @tasks-assess-automation ac-3, ac-4, ac-5
309
404
  */
310
- function formatAssessmentOutput(assessments, summary, index) {
405
+ function formatAssessmentOutput(assessments, summary, _index) {
311
406
  for (const assessment of assessments) {
312
407
  // Task header
313
408
  console.log(`${assessment.taskRef} "${assessment.taskTitle}"`);
314
409
  // Criteria results
315
410
  // AC: @tasks-assess-automation ac-3
316
411
  const specRefResult = assessment.criteria.has_spec_ref;
317
- const specRefIcon = specRefResult.pass ? chalk.green('') : chalk.red('');
412
+ const specRefIcon = specRefResult.pass ? chalk.green("") : chalk.red("");
318
413
  const specRefDetail = specRefResult.pass
319
414
  ? specRefResult.spec_ref
320
- : specRefResult.detail || 'missing';
415
+ : specRefResult.detail || "missing";
321
416
  console.log(` spec_ref: ${specRefIcon} ${specRefDetail}`);
322
417
  const acsResult = assessment.criteria.spec_has_acs;
323
- const acsIcon = acsResult.skipped ? chalk.gray('-') : (acsResult.pass ? chalk.green('✓') : chalk.red('✗'));
418
+ const acsIcon = acsResult.skipped
419
+ ? chalk.gray("-")
420
+ : acsResult.pass
421
+ ? chalk.green("✓")
422
+ : chalk.red("✗");
324
423
  const acsDetail = acsResult.skipped
325
424
  ? `(${acsResult.detail})`
326
- : (acsResult.pass ? `${acsResult.ac_count} acceptance criteria` : acsResult.detail || 'no ACs');
425
+ : acsResult.pass
426
+ ? `${acsResult.ac_count} acceptance criteria`
427
+ : acsResult.detail || "no ACs";
327
428
  console.log(` has_acs: ${acsIcon} ${acsDetail}`);
328
429
  const spikeResult = assessment.criteria.not_spike;
329
- const spikeIcon = spikeResult.pass ? chalk.green('') : chalk.red('');
430
+ const spikeIcon = spikeResult.pass ? chalk.green("") : chalk.red("");
330
431
  console.log(` not_spike: ${spikeIcon} ${spikeResult.detail}`);
331
432
  // Recommendation
332
433
  // AC: @tasks-assess-automation ac-4
333
- const recColor = assessment.recommendation === 'review_for_eligible'
434
+ const recColor = assessment.recommendation === "review_for_eligible"
334
435
  ? chalk.cyan
335
- : (assessment.recommendation === 'needs_review' ? chalk.yellow : chalk.red);
436
+ : assessment.recommendation === "needs_review"
437
+ ? chalk.yellow
438
+ : chalk.red;
336
439
  console.log(` → ${recColor(assessment.recommendation)} (${assessment.reason})`);
337
- console.log('');
440
+ console.log("");
338
441
  }
339
442
  // Summary
340
443
  // AC: @tasks-assess-automation ac-5
341
- console.log(chalk.bold('Summary:'));
444
+ console.log(chalk.bold("Summary:"));
342
445
  console.log(` review_for_eligible: ${summary.review_for_eligible}`);
343
446
  console.log(` needs_review: ${summary.needs_review}`);
344
447
  console.log(` manual_only: ${summary.manual_only}`);
@@ -1 +1 @@
1
- {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/cli/commands/tasks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasks.js","sourceRoot":"","sources":["../../../src/cli/commands/tasks.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Command } from 'commander';
1
+ import type { Command } from "commander";
2
2
  /**
3
3
  * Register trait commands
4
4
  */
@@ -1 +1 @@
1
- {"version":3,"file":"trait.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/trait.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA0M5D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI,CAoIpE"}
1
+ {"version":3,"file":"trait.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/trait.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmN5D;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,OAAO,GAAG,IAAI,CA8MpE"}