@kynetic-ai/spec 0.1.1 → 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 +1100 -168
  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 +135 -18
  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
package/README.md CHANGED
@@ -37,19 +37,26 @@ kspec tasks ready
37
37
  ## Basic Usage
38
38
 
39
39
  ```bash
40
+ # Initialize a new project
41
+ kspec init
42
+
40
43
  # See what tasks are ready to work on
41
44
  kspec tasks ready
42
45
 
43
- # Get task details
44
- kspec task get @task-slug
45
-
46
46
  # Task lifecycle
47
47
  kspec task start @task-slug
48
48
  kspec task note @task-slug "What you're doing..."
49
+ kspec task submit @task-slug # Code done, PR created
49
50
  kspec task complete @task-slug --reason "Summary"
50
51
 
51
- # Create a new task
52
- kspec task add --title "My task" --priority 2 --slug my-task
52
+ # Capture ideas
53
+ kspec inbox add "idea or random thought"
54
+
55
+ # Validate spec files
56
+ kspec validate
57
+
58
+ # Search across everything
59
+ kspec search "pattern"
53
60
  ```
54
61
 
55
62
  ## Agent Integration
@@ -111,24 +118,43 @@ export KSPEC_AUTHOR="@agent-name"
111
118
 
112
119
  Convention: Use `@` prefix for agent authors (e.g., `@claude`, `@copilot`) to distinguish from human authors.
113
120
 
121
+ ## References
122
+
123
+ All items (tasks, spec items, inbox, plans) can be referenced by:
124
+ - **Full ULID**: `01KEYQSD2QJCNGRKSR38V0E3BM`
125
+ - **Short ULID**: `01KEYQSD` (unique prefix)
126
+ - **Slug**: `@my-task-slug`
127
+
114
128
  ## Task Management
115
129
 
116
130
  ### Task States
117
131
 
118
132
  ```
119
- pending → in_progress → completed
120
-
121
- blocked → (unblock) → in_progress
122
-
123
- cancelled
133
+ pending → in_progress → pending_review → completed
134
+
135
+ blocked ←──────────┘
136
+
137
+ cancelled
124
138
  ```
125
139
 
140
+ **State transitions:**
141
+ - `kspec task start` → `in_progress`
142
+ - `kspec task submit` → `pending_review` (code done, awaiting merge)
143
+ - `kspec task complete` → `completed` (from `pending_review`)
144
+ - `kspec task complete --skip-review --reason "..."` → `completed` (bypass review requirement)
145
+ - `kspec task complete --force` → `completed` (even if blocked)
146
+ - `kspec task block` → `blocked`
147
+ - `kspec task unblock` → `pending`
148
+ - `kspec task cancel` → `cancelled`
149
+
126
150
  ### Commands
127
151
 
128
152
  ```bash
129
153
  # List tasks
130
154
  kspec tasks list # All tasks
131
155
  kspec tasks list --status pending # Filter by status
156
+ kspec tasks list --tag mvp # Filter by tag
157
+ kspec tasks list --count # Count only
132
158
  kspec tasks ready # Tasks ready to work on
133
159
  kspec tasks next # Highest priority ready task
134
160
  kspec tasks blocked # Blocked tasks
@@ -137,22 +163,228 @@ kspec tasks in-progress # Active tasks
137
163
  # Task operations
138
164
  kspec task get <ref> # View details
139
165
  kspec task start <ref> # Begin work
166
+ kspec task submit <ref> # Submit for review
140
167
  kspec task complete <ref> # Mark done
168
+ kspec task complete --force <ref> # Force complete from any state
141
169
  kspec task block <ref> --reason "..." # Block with reason
142
170
  kspec task unblock <ref> # Remove block
143
171
  kspec task cancel <ref> # Cancel task
172
+ kspec task reset <ref> # Reset to pending
173
+ kspec task delete <ref> # Delete permanently
144
174
 
145
- # Notes (work log)
175
+ # Notes and todos
146
176
  kspec task note <ref> "message" # Add note
147
177
  kspec task notes <ref> # View notes
178
+ kspec task todo add <ref> "text" # Add a todo item
179
+ kspec task todos <ref> # View todos
180
+
181
+ # Create tasks
182
+ kspec task add --title "My task" --priority 2 --slug my-task
183
+ kspec task add --title "Bug fix" --type bug --spec-ref @feature --tag urgent
184
+
185
+ # Update tasks
186
+ kspec task set <ref> --priority 1 --tag critical
187
+ kspec task set <ref> --depends-on @other-task
148
188
  ```
149
189
 
150
- ### References
190
+ ## Spec Item Management
151
191
 
152
- Tasks can be referenced by:
153
- - **Full ULID**: `01KEYQSD2QJCNGRKSR38V0E3BM`
154
- - **Short ULID**: `01KEYQSD` (unique prefix)
155
- - **Slug**: `@my-task-slug`
192
+ Spec items define WHAT to build — features, requirements, constraints.
193
+
194
+ ```bash
195
+ # List and browse
196
+ kspec item list # All items
197
+ kspec item list --type feature # Filter by type
198
+ kspec item list --tree # Hierarchical view
199
+ kspec item list --count # Count only
200
+ kspec item types # Item types and counts
201
+ kspec item tags # Tags and counts
202
+
203
+ # View details
204
+ kspec item get <ref> # Item details
205
+ kspec item status <ref> # Implementation status + linked tasks
206
+
207
+ # Create items (--under is required)
208
+ kspec item add --under @parent --title "My Feature" --type feature --slug my-feature
209
+ kspec item add --under @parent --title "Sub-feature" --type requirement
210
+ kspec item add --under @parent --title "Auditable" --type constraint --trait @trait-ref
211
+
212
+ # Trait lifecycle
213
+ kspec trait list # Discover available traits
214
+ kspec trait get <ref> # Trait details and ACs
215
+ kspec trait add "Trait Name" --description "..." --slug my-trait
216
+
217
+ # Update items
218
+ kspec item set <ref> --title "New Title" --priority 1
219
+ kspec item set <ref> --relates-to @other-item # Add relationship
220
+ kspec item set <ref> --implements @parent-item # Add implements link
221
+ kspec item set <ref> --depends-on @dependency # Add dependency
222
+ kspec item set <ref> --clear-relates-to # Clear relationships
223
+
224
+ # Notes
225
+ kspec item note <ref> "Design rationale..."
226
+ kspec item notes <ref>
227
+
228
+ # Acceptance criteria
229
+ kspec item ac list <ref>
230
+ kspec item ac add <ref> --given "user is logged in" --when "they click logout" --then "session ends"
231
+ kspec item ac set <ref> ac-1 --then "updated expectation"
232
+ kspec item ac remove <ref> ac-1
233
+
234
+ # Traits
235
+ kspec item trait add <ref> @trait-a @trait-b
236
+ kspec item trait remove <ref> @trait-a
237
+
238
+ # Derive implementation task from spec
239
+ kspec derive <ref> # Create task from spec item
240
+ kspec derive --all --dry-run # Preview tasks for all unlinked specs
241
+ ```
242
+
243
+ ## Inbox
244
+
245
+ Low-friction capture for ideas that aren't yet tasks.
246
+
247
+ ```bash
248
+ kspec inbox add "idea or random thought" # Capture
249
+ kspec inbox add "tagged idea" --tag dx --tag cli # With tags
250
+ kspec inbox list # Show items (oldest first)
251
+ kspec inbox list --newest --limit 5 # Recent items
252
+ kspec inbox list --tag dx # Filter by tag
253
+ kspec inbox list --count # Count only
254
+ kspec inbox get <ref> # View details
255
+
256
+ # Edit items
257
+ kspec inbox set <ref> --content "updated text" # Update content
258
+ kspec inbox set <ref> --tag new-tag # Add tags
259
+ kspec inbox set <ref> --clear-tags # Remove all tags
260
+ kspec inbox note <ref> "additional context" # Append a note
261
+
262
+ # Convert to task
263
+ kspec inbox promote <ref> --title "Task title"
264
+ kspec inbox promote <ref> --title "Task" --priority 2 --note "Context from triage"
265
+
266
+ # Remove
267
+ kspec inbox delete <ref>
268
+ ```
269
+
270
+ ## Plans
271
+
272
+ Plans capture implementation context and rationale. They can auto-generate specs and tasks from structured markdown.
273
+
274
+ ```bash
275
+ # Create plans
276
+ kspec plan add --title "Feature Name" --content "Description..."
277
+ kspec plan add --title "Feature Name" --content-file ./plan.md
278
+
279
+ # Import structured plan (auto-creates specs and tasks)
280
+ kspec plan import ./plan.md --module @target-module --dry-run # Preview
281
+ kspec plan import ./plan.md --module @target-module # Execute
282
+ kspec plan import ./plan.md --module @target-module --update # Re-import
283
+
284
+ # Manage plans
285
+ kspec plan list # List all plans
286
+ kspec plan get <ref> # View details
287
+ kspec plan set <ref> --status active # Update status
288
+ kspec plan note <ref> "Progress..." # Add note
289
+ kspec plan derive <ref> # Create task from plan
290
+ ```
291
+
292
+ ## Validation
293
+
294
+ Validate spec files for schema conformance, reference integrity, and alignment.
295
+
296
+ ```bash
297
+ kspec validate # Full validation
298
+ kspec validate --schema # Schema conformance only
299
+ kspec validate --refs # Reference resolution only
300
+ kspec validate --alignment # Spec-task alignment
301
+ kspec validate --completeness # Spec completeness
302
+ kspec validate --orphans # Orphaned items
303
+ kspec validate --strict # Treat warnings as errors
304
+ kspec validate --fix # Auto-fix (invalid ULIDs, missing timestamps)
305
+ kspec validate -v # Verbose output
306
+ ```
307
+
308
+ **Exit codes:** `0` = success, `4` = validation errors, `6` = warnings only.
309
+
310
+ ## Session Log
311
+
312
+ View and search historical session data.
313
+
314
+ ```bash
315
+ kspec session log list # List sessions with stats
316
+ kspec session log list --since 7d # Recent sessions
317
+ kspec session log list --agent ralph # Filter by agent type
318
+ kspec session log show <session-id> # Detailed session view
319
+ kspec session log show <id> --events # Include events
320
+ kspec session log stats # Aggregate analytics
321
+ kspec session log stats --by-day # Daily breakdown
322
+ kspec session log stats --tool-usage # Tool usage stats
323
+ kspec session log search "pattern" # Search across events
324
+ ```
325
+
326
+ ## Search and Export
327
+
328
+ ```bash
329
+ # Search across items, tasks, inbox, and meta
330
+ kspec search "pattern"
331
+ kspec search "auth" --tasks-only
332
+ kspec search "feature" --items-only --limit 10
333
+
334
+ # Git history by spec/task
335
+ kspec log @task-ref # Commits related to a ref
336
+ kspec log --spec @spec-ref # Search by spec trailer
337
+ kspec log --since "2 weeks ago" # Filter by date
338
+
339
+ # Export
340
+ kspec export # JSON export
341
+ kspec export --format html -o out.html
342
+ ```
343
+
344
+ ## Batch Execution
345
+
346
+ Execute multiple commands atomically or with per-command commits.
347
+
348
+ ```bash
349
+ # Atomic (default) — single commit, rollback on failure
350
+ echo '[{"command":"task note","args":{"ref":"@task","message":"update"}}]' | kspec batch
351
+ kspec batch --file commands.json
352
+
353
+ # Immediate mode — per-command commits
354
+ kspec batch --no-atomic --file commands.json
355
+
356
+ # Continue on error, dry run
357
+ kspec batch --continue --file commands.json
358
+ kspec batch --dry-run --file commands.json
359
+
360
+ # Discover available batch commands
361
+ kspec batch commands
362
+ ```
363
+
364
+ Each command: `{"command": "cli path", "args": {...}, "id": "optional"}`. Only mutating commands allowed. Typos in command names produce did-you-mean suggestions.
365
+
366
+ ## Shadow Branch
367
+
368
+ kspec stores spec/task state on a separate orphan branch (`kspec-meta`) via a git worktree at `.kspec/`. This keeps spec changes out of your main branch history.
369
+
370
+ ```bash
371
+ kspec init # Initialize project (creates shadow branch)
372
+ kspec shadow status # Check shadow branch health
373
+ kspec shadow sync # Sync with remote
374
+ kspec shadow repair # Fix broken worktree
375
+ kspec shadow log # Recent shadow commits
376
+ ```
377
+
378
+ ## Utility Commands
379
+
380
+ ```bash
381
+ kspec util ulid # Generate a valid ULID
382
+ kspec util ulid --count 5 # Generate multiple ULIDs
383
+ kspec help # Extended help
384
+ kspec help --all # Full command reference
385
+ kspec help --exit-codes # Exit code documentation
386
+ kspec help <cmd> --json-schema # JSON Schema for a command
387
+ ```
156
388
 
157
389
  ## Task File Format
158
390
 
@@ -163,8 +395,9 @@ Tasks are stored in YAML files (`*.tasks.yaml`):
163
395
  slugs: [my-task]
164
396
  title: My task title
165
397
  type: task # task, epic, bug, spike, infra
166
- status: pending
398
+ status: pending # pending, in_progress, pending_review, completed, blocked, cancelled
167
399
  priority: 2 # 1 (highest) to 5 (lowest)
400
+ spec_ref: "@feature-slug"
168
401
  depends_on: ["@other-task"]
169
402
  tags: [mvp]
170
403
  notes:
@@ -9,15 +9,15 @@
9
9
  * - Handle streaming updates
10
10
  * - Cancel operations (optional)
11
11
  */
12
- import { EventEmitter } from 'node:events';
13
- import type { JsonRpcFramingOptions } from './framing.js';
14
- import type { AgentCapabilities, ClientCapabilities, NewSessionRequest, PromptRequest, PromptResponse, RequestPermissionResponse, SessionUpdate } from './types.js';
12
+ import { EventEmitter } from "node:events";
13
+ import type { JsonRpcFramingOptions } from "./framing.js";
14
+ import type { AgentCapabilities, ClientCapabilities, NewSessionRequest, PromptRequest, PromptResponse, ReadTextFileResponse, RequestPermissionResponse, SessionUpdate, WriteTextFileResponse } from "./types.js";
15
15
  /**
16
16
  * Session state tracked by the client
17
17
  */
18
18
  export interface SessionState {
19
19
  id: string;
20
- status: 'idle' | 'prompting' | 'cancelled';
20
+ status: "idle" | "prompting" | "cancelled";
21
21
  }
22
22
  /**
23
23
  * Options for ACPClient
@@ -137,6 +137,20 @@ export declare class ACPClient extends EventEmitter {
137
137
  * @param response - The permission response
138
138
  */
139
139
  respondPermission(id: string | number, response: RequestPermissionResponse): void;
140
+ /**
141
+ * Send a typed response to a file read request
142
+ *
143
+ * @param id - The request ID to respond to
144
+ * @param response - The file read response
145
+ */
146
+ respondReadTextFile(id: string | number, response: ReadTextFileResponse): void;
147
+ /**
148
+ * Send a typed response to a file write request
149
+ *
150
+ * @param id - The request ID to respond to
151
+ * @param response - The file write response
152
+ */
153
+ respondWriteTextFile(id: string | number, response: WriteTextFileResponse): void;
140
154
  /**
141
155
  * Send an error response to an agent request
142
156
  *
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/acp/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAG1D,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAKlB,iBAAiB,EAEjB,aAAa,EACb,cAAc,EACd,yBAAyB,EAEzB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,GAAG,WAAW,GAAG,WAAW,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAiB,SAAQ,qBAAqB;IAC7D,uCAAuC;IACvC,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,kBAAkB;IAClB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAGD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3D,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACxE,KAAK,EAAE,MAAM,IAAI,CAAC;IAClB,KAAK,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;CAC/B;AAED;;;;;;;;;;GAUG;AACH,qBAAa,SAAU,SAAQ,YAAY;IACzC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,iBAAiB,CAAyB;IAClD,OAAO,CAAC,kBAAkB,CAAqB;IAC/C,OAAO,CAAC,UAAU,CAAC,CAAqC;IACxD,OAAO,CAAC,WAAW,CAAS;gBAEhB,OAAO,GAAE,gBAAqB;IAyB1C;;;;;OAKG;IACG,UAAU,IAAI,OAAO,CAAC,iBAAiB,CAAC;IA2B9C;;;;;;OAMG;IACG,UAAU,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB5D;;;;;;OAMG;IACG,MAAM,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAsC5D;;;;;;;;;OASG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B9C;;;;;OAKG;IACH,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIvD;;;;OAIG;IACH,cAAc,IAAI,YAAY,EAAE;IAIhC;;;;OAIG;IACH,eAAe,IAAI,iBAAiB;IAIpC;;;;OAIG;IACH,aAAa,IAAI,OAAO;IAIxB;;;;OAIG;IACH,QAAQ,IAAI,OAAO;IAInB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAInD;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,yBAAyB,GAAG,IAAI;IAIjF;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAItE;;;;OAIG;IACH,KAAK,IAAI,IAAI;IAIb;;OAEG;IACH,OAAO,CAAC,kBAAkB;CAU3B"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/acp/client.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,8 @@
9
9
  * - Handle streaming updates
10
10
  * - Cancel operations (optional)
11
11
  */
12
- import { EventEmitter } from 'node:events';
13
- import { JsonRpcFraming } from './framing.js';
12
+ import { EventEmitter } from "node:events";
13
+ import { JsonRpcFraming } from "./framing.js";
14
14
  /**
15
15
  * ACP Client
16
16
  *
@@ -37,16 +37,16 @@ export class ACPClient extends EventEmitter {
37
37
  // Create framing layer
38
38
  this.framing = new JsonRpcFraming(options);
39
39
  // Wire up notification handler for session updates
40
- this.framing.on('notification', (notification) => {
40
+ this.framing.on("notification", (notification) => {
41
41
  this.handleNotification(notification);
42
42
  });
43
43
  // Forward request events for tool calls
44
- this.framing.on('request', (request) => {
45
- this.emit('request', request.id, request.method, request.params);
44
+ this.framing.on("request", (request) => {
45
+ this.emit("request", request.id, request.method, request.params);
46
46
  });
47
47
  // Forward framing events
48
- this.framing.on('close', () => this.emit('close'));
49
- this.framing.on('error', (err) => this.emit('error', err));
48
+ this.framing.on("close", () => this.emit("close"));
49
+ this.framing.on("error", (err) => this.emit("error", err));
50
50
  }
51
51
  /**
52
52
  * Initialize the agent connection
@@ -56,7 +56,7 @@ export class ACPClient extends EventEmitter {
56
56
  */
57
57
  async initialize() {
58
58
  if (this.initialized) {
59
- throw new Error('Client already initialized');
59
+ throw new Error("Client already initialized");
60
60
  }
61
61
  const params = {
62
62
  protocolVersion: 1,
@@ -64,11 +64,11 @@ export class ACPClient extends EventEmitter {
64
64
  ...(this.clientInfo && {
65
65
  clientInfo: {
66
66
  name: this.clientInfo.name,
67
- version: this.clientInfo.version ?? '0.0.0',
67
+ version: this.clientInfo.version ?? "0.0.0",
68
68
  },
69
69
  }),
70
70
  };
71
- const result = (await this.framing.sendRequest('initialize', params));
71
+ const result = (await this.framing.sendRequest("initialize", params));
72
72
  this.agentCapabilities = result.agentCapabilities ?? {};
73
73
  this.initialized = true;
74
74
  return this.agentCapabilities;
@@ -82,13 +82,13 @@ export class ACPClient extends EventEmitter {
82
82
  */
83
83
  async newSession(params) {
84
84
  if (!this.initialized) {
85
- throw new Error('Client not initialized');
85
+ throw new Error("Client not initialized");
86
86
  }
87
- const result = (await this.framing.sendRequest('session/new', params));
87
+ const result = (await this.framing.sendRequest("session/new", params));
88
88
  // Track session state
89
89
  this.sessions.set(result.sessionId, {
90
90
  id: result.sessionId,
91
- status: 'idle',
91
+ status: "idle",
92
92
  });
93
93
  return result.sessionId;
94
94
  }
@@ -101,31 +101,31 @@ export class ACPClient extends EventEmitter {
101
101
  */
102
102
  async prompt(params) {
103
103
  if (!this.initialized) {
104
- throw new Error('Client not initialized');
104
+ throw new Error("Client not initialized");
105
105
  }
106
106
  const session = this.sessions.get(params.sessionId);
107
107
  if (!session) {
108
108
  throw new Error(`Session not found: ${params.sessionId}`);
109
109
  }
110
- if (session.status === 'prompting') {
110
+ if (session.status === "prompting") {
111
111
  throw new Error(`Session already prompting: ${params.sessionId}`);
112
112
  }
113
113
  // Update session state
114
- session.status = 'prompting';
114
+ session.status = "prompting";
115
115
  try {
116
- const result = (await this.framing.sendRequest('session/prompt', params));
116
+ const result = (await this.framing.sendRequest("session/prompt", params));
117
117
  // Update session state based on stop reason
118
- if (result.stopReason === 'cancelled') {
119
- session.status = 'cancelled';
118
+ if (result.stopReason === "cancelled") {
119
+ session.status = "cancelled";
120
120
  }
121
121
  else {
122
- session.status = 'idle';
122
+ session.status = "idle";
123
123
  }
124
124
  return result;
125
125
  }
126
126
  catch (err) {
127
127
  // Reset to idle on error
128
- session.status = 'idle';
128
+ session.status = "idle";
129
129
  throw err;
130
130
  }
131
131
  }
@@ -141,7 +141,7 @@ export class ACPClient extends EventEmitter {
141
141
  */
142
142
  async cancel(sessionId) {
143
143
  if (!this.initialized) {
144
- throw new Error('Client not initialized');
144
+ throw new Error("Client not initialized");
145
145
  }
146
146
  const session = this.sessions.get(sessionId);
147
147
  if (!session) {
@@ -149,9 +149,9 @@ export class ACPClient extends EventEmitter {
149
149
  }
150
150
  try {
151
151
  // Use silentMethodNotFound since not all agents implement session/cancel
152
- await this.framing.sendRequest('session/cancel', { sessionId }, { silentMethodNotFound: true });
152
+ await this.framing.sendRequest("session/cancel", { sessionId }, { silentMethodNotFound: true });
153
153
  // Update session state
154
- session.status = 'cancelled';
154
+ session.status = "cancelled";
155
155
  }
156
156
  catch (err) {
157
157
  // Ignore "Method not found" errors - agent doesn't support cancel
@@ -224,6 +224,24 @@ export class ACPClient extends EventEmitter {
224
224
  respondPermission(id, response) {
225
225
  this.framing.sendResponse(id, response);
226
226
  }
227
+ /**
228
+ * Send a typed response to a file read request
229
+ *
230
+ * @param id - The request ID to respond to
231
+ * @param response - The file read response
232
+ */
233
+ respondReadTextFile(id, response) {
234
+ this.framing.sendResponse(id, response);
235
+ }
236
+ /**
237
+ * Send a typed response to a file write request
238
+ *
239
+ * @param id - The request ID to respond to
240
+ * @param response - The file write response
241
+ */
242
+ respondWriteTextFile(id, response) {
243
+ this.framing.sendResponse(id, response);
244
+ }
227
245
  /**
228
246
  * Send an error response to an agent request
229
247
  *
@@ -246,9 +264,9 @@ export class ACPClient extends EventEmitter {
246
264
  * Handle incoming notifications from the agent
247
265
  */
248
266
  handleNotification(notification) {
249
- if (notification.method === 'session/update') {
267
+ if (notification.method === "session/update") {
250
268
  const sessionNotification = notification.params;
251
- this.emit('update', sessionNotification.sessionId, sessionNotification.update);
269
+ this.emit("update", sessionNotification.sessionId, sessionNotification.update);
252
270
  }
253
271
  }
254
272
  }
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/acp/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/acp/client.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,8 @@
4
4
  * Handles bidirectional stdio communication with auto-incrementing IDs,
5
5
  * request/response correlation, and timeout handling.
6
6
  */
7
- import { EventEmitter } from 'node:events';
8
- import type { JsonRpcErrorObject } from './types.js';
7
+ import { EventEmitter } from "node:events";
8
+ import type { JsonRpcErrorObject } from "./types.js";
9
9
  /**
10
10
  * Options for JsonRpcFraming
11
11
  */
@@ -1 +1 @@
1
- {"version":3,"file":"framing.d.ts","sourceRoot":"","sources":["../../src/acp/framing.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAEV,kBAAkB,EAKnB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AA2BD;;;;;;;;;;GAUG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,OAAO,CAA8C;IAC7D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,GAAE,qBAA0B;IAsB/C;;OAEG;IACG,WAAW,CACf,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC;IAmCnB;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAcxD;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAcxD;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI;IActE;;OAEG;IACH,KAAK,IAAI,IAAI;IAcb;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,IAAI;IASZ;;OAEG;IACH,OAAO,CAAC,UAAU;IAgBlB;;OAEG;IACH,OAAO,CAAC,WAAW;IAcnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuC3B;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;OAEG;IACH,OAAO,CAAC,WAAW;CAKpB"}
1
+ {"version":3,"file":"framing.d.ts","sourceRoot":"","sources":["../../src/acp/framing.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAEV,kBAAkB,EAKnB,MAAM,YAAY,CAAC;AAGpB;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,4CAA4C;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,8CAA8C;IAC9C,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AA2BD;;;;;;;;;;GAUG;AACH,qBAAa,cAAe,SAAQ,YAAY;IAC9C,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,OAAO,CAA8C;IAC7D,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,cAAc,CAAyB;IAC/C,OAAO,CAAC,KAAK,CAAwB;IACrC,OAAO,CAAC,MAAM,CAAwB;IACtC,OAAO,CAAC,MAAM,CAAM;IACpB,OAAO,CAAC,MAAM,CAAS;gBAEX,OAAO,GAAE,qBAA0B;IAsB/C;;OAEG;IACG,WAAW,CACf,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC,OAAO,CAAC;IA2CnB;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,GAAG,IAAI;IAcxD;;OAEG;IACH,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI;IAcxD;;OAEG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,kBAAkB,GAAG,IAAI;IActE;;OAEG;IACH,KAAK,IAAI,IAAI;IAcb;;OAEG;IACH,QAAQ,IAAI,OAAO;IAInB;;;;;;;OAOG;IACH,OAAO,CAAC,kBAAkB;IAiB1B;;OAEG;IACH,OAAO,CAAC,IAAI;IASZ;;OAEG;IACH,OAAO,CAAC,UAAU;IAgBlB;;OAEG;IACH,OAAO,CAAC,WAAW;IAcnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IActB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAuC3B;;OAEG;IACH,OAAO,CAAC,SAAS;IAIjB;;OAEG;IACH,OAAO,CAAC,WAAW;CAKpB"}