@proletariat/cli 0.2.0 → 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 (526) hide show
  1. package/README.md +512 -253
  2. package/bin/dev.cmd +3 -0
  3. package/bin/dev.js +5 -0
  4. package/bin/run.cmd +3 -0
  5. package/bin/run.js +23 -0
  6. package/dist/commands/action/create.d.ts +21 -0
  7. package/dist/commands/action/create.js +126 -0
  8. package/dist/commands/action/delete.d.ts +17 -0
  9. package/dist/commands/action/delete.js +78 -0
  10. package/dist/commands/action/index.d.ts +15 -0
  11. package/dist/commands/action/index.js +107 -0
  12. package/dist/commands/action/list.d.ts +14 -0
  13. package/dist/commands/action/list.js +89 -0
  14. package/dist/commands/action/run.d.ts +19 -0
  15. package/dist/commands/action/run.js +179 -0
  16. package/dist/commands/action/show.d.ts +15 -0
  17. package/dist/commands/action/show.js +47 -0
  18. package/dist/commands/action/update.d.ts +22 -0
  19. package/dist/commands/action/update.js +168 -0
  20. package/dist/commands/agent/index.d.ts +13 -0
  21. package/dist/commands/agent/index.js +131 -0
  22. package/dist/commands/agent/list.d.ts +7 -0
  23. package/dist/commands/agent/list.js +126 -0
  24. package/dist/commands/agent/login.d.ts +16 -0
  25. package/dist/commands/agent/login.js +146 -0
  26. package/dist/commands/agent/rebuild.d.ts +18 -0
  27. package/dist/commands/agent/rebuild.js +133 -0
  28. package/dist/commands/agent/restart.d.ts +17 -0
  29. package/dist/commands/agent/restart.js +116 -0
  30. package/dist/commands/agent/shell.d.ts +23 -0
  31. package/dist/commands/agent/shell.js +378 -0
  32. package/dist/commands/agent/staff/add.d.ts +15 -0
  33. package/dist/commands/agent/staff/add.js +281 -0
  34. package/dist/commands/agent/staff/index.d.ts +14 -0
  35. package/dist/commands/agent/staff/index.js +90 -0
  36. package/dist/commands/agent/staff/list.d.ts +7 -0
  37. package/dist/commands/agent/staff/list.js +90 -0
  38. package/dist/commands/agent/staff/remove.d.ts +16 -0
  39. package/dist/commands/agent/staff/remove.js +137 -0
  40. package/dist/commands/agent/status.d.ts +17 -0
  41. package/dist/commands/agent/status.js +139 -0
  42. package/dist/commands/agent/temp/cleanup.d.ts +23 -0
  43. package/dist/commands/agent/temp/cleanup.js +388 -0
  44. package/dist/commands/agent/temp/index.d.ts +14 -0
  45. package/dist/commands/agent/temp/index.js +82 -0
  46. package/dist/commands/agent/temp/list.d.ts +7 -0
  47. package/dist/commands/agent/temp/list.js +108 -0
  48. package/dist/commands/agent/themes/add-names.d.ts +10 -0
  49. package/dist/commands/agent/themes/add-names.js +67 -0
  50. package/dist/commands/agent/themes/create.d.ts +13 -0
  51. package/dist/commands/agent/themes/create.js +66 -0
  52. package/dist/commands/agent/themes/index.d.ts +9 -0
  53. package/dist/commands/agent/themes/index.js +194 -0
  54. package/dist/commands/agent/themes/list.d.ts +6 -0
  55. package/dist/commands/agent/themes/list.js +41 -0
  56. package/dist/commands/agent/themes/set.d.ts +12 -0
  57. package/dist/commands/agent/themes/set.js +77 -0
  58. package/dist/commands/agent/visit.d.ts +16 -0
  59. package/dist/commands/agent/visit.js +88 -0
  60. package/dist/commands/autocomplete/setup.d.ts +14 -0
  61. package/dist/commands/autocomplete/setup.js +154 -0
  62. package/dist/commands/board/index.d.ts +17 -0
  63. package/dist/commands/board/index.js +255 -0
  64. package/dist/commands/board/watch.d.ts +13 -0
  65. package/dist/commands/board/watch.js +52 -0
  66. package/dist/commands/branch/create.d.ts +50 -0
  67. package/dist/commands/branch/create.js +624 -0
  68. package/dist/commands/branch/index.d.ts +13 -0
  69. package/dist/commands/branch/index.js +50 -0
  70. package/dist/commands/branch/list.d.ts +17 -0
  71. package/dist/commands/branch/list.js +120 -0
  72. package/dist/commands/branch/validate.d.ts +15 -0
  73. package/dist/commands/branch/validate.js +73 -0
  74. package/dist/commands/commit.d.ts +71 -0
  75. package/dist/commands/commit.js +499 -0
  76. package/dist/commands/docker/clean.d.ts +13 -0
  77. package/dist/commands/docker/clean.js +224 -0
  78. package/dist/commands/docker/index.d.ts +19 -0
  79. package/dist/commands/docker/index.js +274 -0
  80. package/dist/commands/docker/list.d.ts +16 -0
  81. package/dist/commands/docker/list.js +200 -0
  82. package/dist/commands/docker/logs.d.ts +14 -0
  83. package/dist/commands/docker/logs.js +118 -0
  84. package/dist/commands/docker/prune.d.ts +14 -0
  85. package/dist/commands/docker/prune.js +211 -0
  86. package/dist/commands/docker/restart.d.ts +14 -0
  87. package/dist/commands/docker/restart.js +129 -0
  88. package/dist/commands/docker/shell.d.ts +14 -0
  89. package/dist/commands/docker/shell.js +103 -0
  90. package/dist/commands/docker/start.d.ts +12 -0
  91. package/dist/commands/docker/start.js +92 -0
  92. package/dist/commands/docker/status.d.ts +7 -0
  93. package/dist/commands/docker/status.js +40 -0
  94. package/dist/commands/docker/stop.d.ts +14 -0
  95. package/dist/commands/docker/stop.js +134 -0
  96. package/dist/commands/docker/sync.d.ts +15 -0
  97. package/dist/commands/docker/sync.js +112 -0
  98. package/dist/commands/epic/activate.d.ts +13 -0
  99. package/dist/commands/epic/activate.js +118 -0
  100. package/dist/commands/epic/archive.d.ts +14 -0
  101. package/dist/commands/epic/archive.js +132 -0
  102. package/dist/commands/epic/create.d.ts +15 -0
  103. package/dist/commands/epic/create.js +137 -0
  104. package/dist/commands/epic/index.d.ts +13 -0
  105. package/dist/commands/epic/index.js +88 -0
  106. package/dist/commands/epic/link/block.d.ts +14 -0
  107. package/dist/commands/epic/link/block.js +79 -0
  108. package/dist/commands/epic/link/duplicates.d.ts +14 -0
  109. package/dist/commands/epic/link/duplicates.js +66 -0
  110. package/dist/commands/epic/link/index.d.ts +19 -0
  111. package/dist/commands/epic/link/index.js +242 -0
  112. package/dist/commands/epic/link/relates.d.ts +14 -0
  113. package/dist/commands/epic/link/relates.js +66 -0
  114. package/dist/commands/epic/link/remove.d.ts +16 -0
  115. package/dist/commands/epic/link/remove.js +89 -0
  116. package/dist/commands/epic/list.d.ts +11 -0
  117. package/dist/commands/epic/list.js +87 -0
  118. package/dist/commands/epic/move.d.ts +15 -0
  119. package/dist/commands/epic/move.js +184 -0
  120. package/dist/commands/epic/progress.d.ts +16 -0
  121. package/dist/commands/epic/progress.js +166 -0
  122. package/dist/commands/epic/project.d.ts +15 -0
  123. package/dist/commands/epic/project.js +219 -0
  124. package/dist/commands/epic/reorder.d.ts +21 -0
  125. package/dist/commands/epic/reorder.js +160 -0
  126. package/dist/commands/epic/spec.d.ts +15 -0
  127. package/dist/commands/epic/spec.js +191 -0
  128. package/dist/commands/epic/ticket.d.ts +18 -0
  129. package/dist/commands/epic/ticket.js +291 -0
  130. package/dist/commands/epic/view.d.ts +13 -0
  131. package/dist/commands/epic/view.js +117 -0
  132. package/dist/commands/execution/index.d.ts +13 -0
  133. package/dist/commands/execution/index.js +70 -0
  134. package/dist/commands/execution/list.d.ts +15 -0
  135. package/dist/commands/execution/list.js +144 -0
  136. package/dist/commands/execution/logs.d.ts +18 -0
  137. package/dist/commands/execution/logs.js +161 -0
  138. package/dist/commands/execution/stop.d.ts +22 -0
  139. package/dist/commands/execution/stop.js +248 -0
  140. package/dist/commands/gh/index.d.ts +9 -0
  141. package/dist/commands/gh/index.js +53 -0
  142. package/dist/commands/gh/login.d.ts +6 -0
  143. package/dist/commands/gh/login.js +57 -0
  144. package/dist/commands/gh/status.d.ts +6 -0
  145. package/dist/commands/gh/status.js +48 -0
  146. package/dist/commands/gh/token.d.ts +6 -0
  147. package/dist/commands/gh/token.js +59 -0
  148. package/dist/commands/init.d.ts +26 -0
  149. package/dist/commands/init.js +200 -0
  150. package/dist/commands/phase/create.d.ts +22 -0
  151. package/dist/commands/phase/create.js +123 -0
  152. package/dist/commands/phase/delete.d.ts +17 -0
  153. package/dist/commands/phase/delete.js +73 -0
  154. package/dist/commands/phase/list.d.ts +12 -0
  155. package/dist/commands/phase/list.js +76 -0
  156. package/dist/commands/phase/move.d.ts +17 -0
  157. package/dist/commands/phase/move.js +115 -0
  158. package/dist/commands/phase/template/apply.d.ts +17 -0
  159. package/dist/commands/phase/template/apply.js +106 -0
  160. package/dist/commands/phase/template/create.d.ts +16 -0
  161. package/dist/commands/phase/template/create.js +58 -0
  162. package/dist/commands/phase/template/delete.d.ts +17 -0
  163. package/dist/commands/phase/template/delete.js +98 -0
  164. package/dist/commands/phase/template/index.d.ts +15 -0
  165. package/dist/commands/phase/template/index.js +128 -0
  166. package/dist/commands/phase/template/list.d.ts +16 -0
  167. package/dist/commands/phase/template/list.js +95 -0
  168. package/dist/commands/phase/template/update.d.ts +17 -0
  169. package/dist/commands/phase/template/update.js +89 -0
  170. package/dist/commands/phase/update.d.ts +23 -0
  171. package/dist/commands/phase/update.js +174 -0
  172. package/dist/commands/pmo/init.d.ts +25 -0
  173. package/dist/commands/pmo/init.js +341 -0
  174. package/dist/commands/pr/create.d.ts +17 -0
  175. package/dist/commands/pr/create.js +242 -0
  176. package/dist/commands/pr/index.d.ts +9 -0
  177. package/dist/commands/pr/index.js +68 -0
  178. package/dist/commands/pr/link.d.ts +14 -0
  179. package/dist/commands/pr/link.js +212 -0
  180. package/dist/commands/pr/status.d.ts +12 -0
  181. package/dist/commands/pr/status.js +161 -0
  182. package/dist/commands/project/archive.d.ts +17 -0
  183. package/dist/commands/project/archive.js +83 -0
  184. package/dist/commands/project/create.d.ts +22 -0
  185. package/dist/commands/project/create.js +143 -0
  186. package/dist/commands/project/delete.d.ts +17 -0
  187. package/dist/commands/project/delete.js +128 -0
  188. package/dist/commands/project/index.d.ts +13 -0
  189. package/dist/commands/project/index.js +64 -0
  190. package/dist/commands/project/list.d.ts +14 -0
  191. package/dist/commands/project/list.js +96 -0
  192. package/dist/commands/project/spec.d.ts +18 -0
  193. package/dist/commands/project/spec.js +216 -0
  194. package/dist/commands/project/unarchive.d.ts +15 -0
  195. package/dist/commands/project/unarchive.js +35 -0
  196. package/dist/commands/project/view.d.ts +16 -0
  197. package/dist/commands/project/view.js +94 -0
  198. package/dist/commands/repo/add.d.ts +21 -0
  199. package/dist/commands/repo/add.js +118 -0
  200. package/dist/commands/repo/index.d.ts +13 -0
  201. package/dist/commands/repo/index.js +114 -0
  202. package/dist/commands/repo/list.d.ts +13 -0
  203. package/dist/commands/repo/list.js +96 -0
  204. package/dist/commands/repo/remove.d.ts +23 -0
  205. package/dist/commands/repo/remove.js +217 -0
  206. package/dist/commands/repo/view.d.ts +15 -0
  207. package/dist/commands/repo/view.js +99 -0
  208. package/dist/commands/session/attach.d.ts +40 -0
  209. package/dist/commands/session/attach.js +307 -0
  210. package/dist/commands/session/index.d.ts +13 -0
  211. package/dist/commands/session/index.js +64 -0
  212. package/dist/commands/session/list.d.ts +21 -0
  213. package/dist/commands/session/list.js +181 -0
  214. package/dist/commands/spec/create.d.ts +19 -0
  215. package/dist/commands/spec/create.js +130 -0
  216. package/dist/commands/spec/index.d.ts +13 -0
  217. package/dist/commands/spec/index.js +68 -0
  218. package/dist/commands/spec/link/depends.d.ts +14 -0
  219. package/dist/commands/spec/link/depends.js +64 -0
  220. package/dist/commands/spec/link/duplicates.d.ts +14 -0
  221. package/dist/commands/spec/link/duplicates.js +63 -0
  222. package/dist/commands/spec/link/index.d.ts +19 -0
  223. package/dist/commands/spec/link/index.js +200 -0
  224. package/dist/commands/spec/link/relates.d.ts +14 -0
  225. package/dist/commands/spec/link/relates.js +63 -0
  226. package/dist/commands/spec/link/remove.d.ts +16 -0
  227. package/dist/commands/spec/link/remove.js +94 -0
  228. package/dist/commands/spec/list.d.ts +12 -0
  229. package/dist/commands/spec/list.js +75 -0
  230. package/dist/commands/spec/plan.d.ts +15 -0
  231. package/dist/commands/spec/plan.js +108 -0
  232. package/dist/commands/spec/ticket.d.ts +18 -0
  233. package/dist/commands/spec/ticket.js +160 -0
  234. package/dist/commands/spec/view.d.ts +15 -0
  235. package/dist/commands/spec/view.js +163 -0
  236. package/dist/commands/status/create.d.ts +21 -0
  237. package/dist/commands/status/create.js +140 -0
  238. package/dist/commands/status/delete.d.ts +13 -0
  239. package/dist/commands/status/delete.js +77 -0
  240. package/dist/commands/status/index.d.ts +14 -0
  241. package/dist/commands/status/index.js +91 -0
  242. package/dist/commands/status/list.d.ts +12 -0
  243. package/dist/commands/status/list.js +93 -0
  244. package/dist/commands/status/move.d.ts +14 -0
  245. package/dist/commands/status/move.js +120 -0
  246. package/dist/commands/status/update.d.ts +20 -0
  247. package/dist/commands/status/update.js +180 -0
  248. package/dist/commands/template/delete.d.ts +15 -0
  249. package/dist/commands/template/delete.js +142 -0
  250. package/dist/commands/template/index.d.ts +10 -0
  251. package/dist/commands/template/index.js +64 -0
  252. package/dist/commands/template/list.d.ts +18 -0
  253. package/dist/commands/template/list.js +157 -0
  254. package/dist/commands/template/phase/apply.d.ts +14 -0
  255. package/dist/commands/template/phase/apply.js +41 -0
  256. package/dist/commands/template/phase/create.d.ts +12 -0
  257. package/dist/commands/template/phase/create.js +29 -0
  258. package/dist/commands/template/phase/delete.d.ts +13 -0
  259. package/dist/commands/template/phase/delete.js +34 -0
  260. package/dist/commands/template/phase/index.d.ts +10 -0
  261. package/dist/commands/template/phase/index.js +62 -0
  262. package/dist/commands/template/phase/list.d.ts +11 -0
  263. package/dist/commands/template/phase/list.js +34 -0
  264. package/dist/commands/template/phase/update.d.ts +13 -0
  265. package/dist/commands/template/phase/update.js +35 -0
  266. package/dist/commands/template/ticket/apply.d.ts +17 -0
  267. package/dist/commands/template/ticket/apply.js +58 -0
  268. package/dist/commands/template/ticket/delete.d.ts +13 -0
  269. package/dist/commands/template/ticket/delete.js +34 -0
  270. package/dist/commands/template/ticket/index.d.ts +10 -0
  271. package/dist/commands/template/ticket/index.js +62 -0
  272. package/dist/commands/template/ticket/list.d.ts +11 -0
  273. package/dist/commands/template/ticket/list.js +34 -0
  274. package/dist/commands/template/ticket/save.d.ts +13 -0
  275. package/dist/commands/template/ticket/save.js +35 -0
  276. package/dist/commands/ticket/bulk.d.ts +13 -0
  277. package/dist/commands/ticket/bulk.js +145 -0
  278. package/dist/commands/ticket/complete.d.ts +16 -0
  279. package/dist/commands/ticket/complete.js +170 -0
  280. package/dist/commands/ticket/create.d.ts +22 -0
  281. package/dist/commands/ticket/create.js +390 -0
  282. package/dist/commands/ticket/delete.d.ts +16 -0
  283. package/dist/commands/ticket/delete.js +178 -0
  284. package/dist/commands/ticket/edit.d.ts +27 -0
  285. package/dist/commands/ticket/edit.js +322 -0
  286. package/dist/commands/ticket/epic.d.ts +20 -0
  287. package/dist/commands/ticket/epic.js +333 -0
  288. package/dist/commands/ticket/index.d.ts +13 -0
  289. package/dist/commands/ticket/index.js +103 -0
  290. package/dist/commands/ticket/link/block.d.ts +14 -0
  291. package/dist/commands/ticket/link/block.js +94 -0
  292. package/dist/commands/ticket/link/duplicates.d.ts +14 -0
  293. package/dist/commands/ticket/link/duplicates.js +93 -0
  294. package/dist/commands/ticket/link/index.d.ts +19 -0
  295. package/dist/commands/ticket/link/index.js +239 -0
  296. package/dist/commands/ticket/link/relates.d.ts +14 -0
  297. package/dist/commands/ticket/link/relates.js +93 -0
  298. package/dist/commands/ticket/link/remove.d.ts +16 -0
  299. package/dist/commands/ticket/link/remove.js +128 -0
  300. package/dist/commands/ticket/list.d.ts +24 -0
  301. package/dist/commands/ticket/list.js +431 -0
  302. package/dist/commands/ticket/move.d.ts +18 -0
  303. package/dist/commands/ticket/move.js +212 -0
  304. package/dist/commands/ticket/project.d.ts +18 -0
  305. package/dist/commands/ticket/project.js +254 -0
  306. package/dist/commands/ticket/reassign.d.ts +19 -0
  307. package/dist/commands/ticket/reassign.js +279 -0
  308. package/dist/commands/ticket/spec.d.ts +18 -0
  309. package/dist/commands/ticket/spec.js +259 -0
  310. package/dist/commands/ticket/status.d.ts +13 -0
  311. package/dist/commands/ticket/status.js +87 -0
  312. package/dist/commands/ticket/template/apply.d.ts +25 -0
  313. package/dist/commands/ticket/template/apply.js +249 -0
  314. package/dist/commands/ticket/template/create.d.ts +19 -0
  315. package/dist/commands/ticket/template/create.js +210 -0
  316. package/dist/commands/ticket/template/delete.d.ts +17 -0
  317. package/dist/commands/ticket/template/delete.js +92 -0
  318. package/dist/commands/ticket/template/index.d.ts +15 -0
  319. package/dist/commands/ticket/template/index.js +118 -0
  320. package/dist/commands/ticket/template/list.d.ts +16 -0
  321. package/dist/commands/ticket/template/list.js +110 -0
  322. package/dist/commands/ticket/template/save.d.ts +14 -0
  323. package/dist/commands/ticket/template/save.js +110 -0
  324. package/dist/commands/ticket/update.d.ts +18 -0
  325. package/dist/commands/ticket/update.js +325 -0
  326. package/dist/commands/ticket/view.d.ts +13 -0
  327. package/dist/commands/ticket/view.js +80 -0
  328. package/dist/commands/whoami.d.ts +9 -0
  329. package/dist/commands/whoami.js +103 -0
  330. package/dist/commands/work/complete.d.ts +13 -0
  331. package/dist/commands/work/complete.js +121 -0
  332. package/dist/commands/work/index.d.ts +13 -0
  333. package/dist/commands/work/index.js +70 -0
  334. package/dist/commands/work/ready.d.ts +24 -0
  335. package/dist/commands/work/ready.js +290 -0
  336. package/dist/commands/work/revise.d.ts +19 -0
  337. package/dist/commands/work/revise.js +377 -0
  338. package/dist/commands/work/spawn-all.d.ts +17 -0
  339. package/dist/commands/work/spawn-all.js +58 -0
  340. package/dist/commands/work/spawn.d.ts +29 -0
  341. package/dist/commands/work/spawn.js +728 -0
  342. package/dist/commands/work/start.d.ts +39 -0
  343. package/dist/commands/work/start.js +1393 -0
  344. package/dist/commands/work/watch.d.ts +31 -0
  345. package/dist/commands/work/watch.js +359 -0
  346. package/dist/commands/workflow/create.d.ts +18 -0
  347. package/dist/commands/workflow/create.js +119 -0
  348. package/dist/commands/workflow/delete.d.ts +17 -0
  349. package/dist/commands/workflow/delete.js +119 -0
  350. package/dist/commands/workflow/index.d.ts +15 -0
  351. package/dist/commands/workflow/index.js +75 -0
  352. package/dist/commands/workflow/list.d.ts +15 -0
  353. package/dist/commands/workflow/list.js +75 -0
  354. package/dist/commands/workflow/switch.d.ts +13 -0
  355. package/dist/commands/workflow/switch.js +117 -0
  356. package/dist/commands/workflow/view.d.ts +16 -0
  357. package/dist/commands/workflow/view.js +114 -0
  358. package/dist/commands/workspace/add.d.ts +12 -0
  359. package/dist/commands/workspace/add.js +74 -0
  360. package/dist/commands/workspace/list.d.ts +9 -0
  361. package/dist/commands/workspace/list.js +153 -0
  362. package/dist/commands/workspace/remove.d.ts +13 -0
  363. package/dist/commands/workspace/remove.js +98 -0
  364. package/dist/commands/workspace/use.d.ts +12 -0
  365. package/dist/commands/workspace/use.js +111 -0
  366. package/dist/hooks/init.d.ts +11 -0
  367. package/dist/hooks/init.js +57 -0
  368. package/dist/index.d.ts +1 -0
  369. package/dist/index.js +1 -0
  370. package/dist/lib/agents/commands.d.ts +189 -0
  371. package/dist/lib/agents/commands.js +893 -0
  372. package/dist/lib/agents/index.d.ts +54 -0
  373. package/dist/lib/agents/index.js +382 -0
  374. package/dist/lib/branch/index.d.ts +120 -0
  375. package/dist/lib/branch/index.js +334 -0
  376. package/dist/lib/colors.d.ts +94 -0
  377. package/dist/lib/colors.js +68 -0
  378. package/dist/lib/commands/docker-command.d.ts +21 -0
  379. package/dist/lib/commands/docker-command.js +27 -0
  380. package/dist/lib/database/index.d.ts +176 -0
  381. package/dist/lib/database/index.js +581 -0
  382. package/dist/lib/docker/resolve.d.ts +38 -0
  383. package/dist/lib/docker/resolve.js +175 -0
  384. package/dist/lib/execution/config.d.ts +150 -0
  385. package/dist/lib/execution/config.js +541 -0
  386. package/dist/lib/execution/devcontainer.d.ts +85 -0
  387. package/dist/lib/execution/devcontainer.js +594 -0
  388. package/dist/lib/execution/index.d.ts +10 -0
  389. package/dist/lib/execution/index.js +10 -0
  390. package/dist/lib/execution/runners.d.ts +53 -0
  391. package/dist/lib/execution/runners.js +1182 -0
  392. package/dist/lib/execution/spawner.d.ts +85 -0
  393. package/dist/lib/execution/spawner.js +548 -0
  394. package/dist/lib/execution/storage.d.ts +159 -0
  395. package/dist/lib/execution/storage.js +425 -0
  396. package/dist/lib/execution/types.d.ts +145 -0
  397. package/dist/lib/execution/types.js +157 -0
  398. package/dist/lib/init/index.d.ts +75 -0
  399. package/dist/lib/init/index.js +355 -0
  400. package/dist/lib/machine-config.d.ts +170 -0
  401. package/dist/lib/machine-config.js +386 -0
  402. package/dist/lib/pmo/base-command.d.ts +195 -0
  403. package/dist/lib/pmo/base-command.js +319 -0
  404. package/dist/lib/pmo/create-spec-folders.d.ts +43 -0
  405. package/dist/lib/pmo/create-spec-folders.js +64 -0
  406. package/dist/lib/pmo/epic-files.d.ts +56 -0
  407. package/dist/lib/pmo/epic-files.js +195 -0
  408. package/dist/lib/pmo/find-pmo.d.ts +14 -0
  409. package/dist/lib/pmo/find-pmo.js +172 -0
  410. package/dist/lib/pmo/index.d.ts +109 -0
  411. package/dist/lib/pmo/index.js +501 -0
  412. package/dist/lib/pmo/markdown.d.ts +31 -0
  413. package/dist/lib/pmo/markdown.js +245 -0
  414. package/dist/lib/pmo/pmo-context.d.ts +27 -0
  415. package/dist/lib/pmo/pmo-context.js +44 -0
  416. package/dist/lib/pmo/schema.d.ts +82 -0
  417. package/dist/lib/pmo/schema.js +531 -0
  418. package/dist/lib/pmo/spec-parser.d.ts +25 -0
  419. package/dist/lib/pmo/spec-parser.js +205 -0
  420. package/dist/lib/pmo/spec-types.d.ts +43 -0
  421. package/dist/lib/pmo/spec-types.js +7 -0
  422. package/dist/lib/pmo/storage/actions.d.ts +34 -0
  423. package/dist/lib/pmo/storage/actions.js +177 -0
  424. package/dist/lib/pmo/storage/base.d.ts +47 -0
  425. package/dist/lib/pmo/storage/base.js +858 -0
  426. package/dist/lib/pmo/storage/dependencies.d.ts +61 -0
  427. package/dist/lib/pmo/storage/dependencies.js +267 -0
  428. package/dist/lib/pmo/storage/epics.d.ts +46 -0
  429. package/dist/lib/pmo/storage/epics.js +243 -0
  430. package/dist/lib/pmo/storage/helpers.d.ts +33 -0
  431. package/dist/lib/pmo/storage/helpers.js +148 -0
  432. package/dist/lib/pmo/storage/index.d.ts +186 -0
  433. package/dist/lib/pmo/storage/index.js +689 -0
  434. package/dist/lib/pmo/storage/phases.d.ts +65 -0
  435. package/dist/lib/pmo/storage/phases.js +392 -0
  436. package/dist/lib/pmo/storage/projects.d.ts +79 -0
  437. package/dist/lib/pmo/storage/projects.js +303 -0
  438. package/dist/lib/pmo/storage/specs.d.ts +77 -0
  439. package/dist/lib/pmo/storage/specs.js +389 -0
  440. package/dist/lib/pmo/storage/statuses.d.ts +63 -0
  441. package/dist/lib/pmo/storage/statuses.js +404 -0
  442. package/dist/lib/pmo/storage/subtasks.d.ts +37 -0
  443. package/dist/lib/pmo/storage/subtasks.js +184 -0
  444. package/dist/lib/pmo/storage/templates.d.ts +40 -0
  445. package/dist/lib/pmo/storage/templates.js +210 -0
  446. package/dist/lib/pmo/storage/tickets.d.ts +57 -0
  447. package/dist/lib/pmo/storage/tickets.js +453 -0
  448. package/dist/lib/pmo/storage/types.d.ts +200 -0
  449. package/dist/lib/pmo/storage/types.js +5 -0
  450. package/dist/lib/pmo/storage/views.d.ts +44 -0
  451. package/dist/lib/pmo/storage/views.js +355 -0
  452. package/dist/lib/pmo/storage-sqlite.d.ts +7 -0
  453. package/dist/lib/pmo/storage-sqlite.js +7 -0
  454. package/dist/lib/pmo/sync-manager.d.ts +92 -0
  455. package/dist/lib/pmo/sync-manager.js +229 -0
  456. package/dist/lib/pmo/types.d.ts +710 -0
  457. package/dist/lib/pmo/types.js +108 -0
  458. package/dist/lib/pmo/utils.d.ts +122 -0
  459. package/dist/lib/pmo/utils.js +174 -0
  460. package/dist/lib/pmo/watcher.d.ts +43 -0
  461. package/dist/lib/pmo/watcher.js +208 -0
  462. package/dist/lib/pr/index.d.ts +150 -0
  463. package/dist/lib/pr/index.js +483 -0
  464. package/dist/lib/prompt-json.d.ts +231 -0
  465. package/dist/lib/prompt-json.js +213 -0
  466. package/dist/lib/repos/index.d.ts +81 -0
  467. package/dist/lib/repos/index.js +679 -0
  468. package/dist/lib/styles.d.ts +98 -0
  469. package/dist/lib/styles.js +195 -0
  470. package/dist/lib/themes.d.ts +128 -0
  471. package/dist/lib/themes.js +301 -0
  472. package/dist/lib/ui/BoardUI.d.ts +21 -0
  473. package/dist/lib/ui/BoardUI.js +85 -0
  474. package/dist/lib/ui/ClaimTicketUI.d.ts +17 -0
  475. package/dist/lib/ui/ClaimTicketUI.js +64 -0
  476. package/dist/lib/ui/CreateTicketUI.d.ts +13 -0
  477. package/dist/lib/ui/CreateTicketUI.js +101 -0
  478. package/dist/lib/workspace.d.ts +66 -0
  479. package/dist/lib/workspace.js +204 -0
  480. package/oclif.manifest.json +10593 -0
  481. package/package.json +103 -56
  482. package/LICENSE +0 -21
  483. package/dist/bin/prlt.d.ts +0 -11
  484. package/dist/bin/prlt.d.ts.map +0 -1
  485. package/dist/bin/prlt.js +0 -144
  486. package/dist/bin/prlt.js.map +0 -1
  487. package/dist/lib/config/index.d.ts +0 -14
  488. package/dist/lib/config/index.d.ts.map +0 -1
  489. package/dist/lib/config/index.js +0 -142
  490. package/dist/lib/config/index.js.map +0 -1
  491. package/dist/lib/config/upgrade.d.ts +0 -2
  492. package/dist/lib/config/upgrade.d.ts.map +0 -1
  493. package/dist/lib/config/upgrade.js +0 -248
  494. package/dist/lib/config/upgrade.js.map +0 -1
  495. package/dist/lib/themes/index.d.ts +0 -8
  496. package/dist/lib/themes/index.d.ts.map +0 -1
  497. package/dist/lib/themes/index.js +0 -80
  498. package/dist/lib/themes/index.js.map +0 -1
  499. package/dist/lib/utils/helpers.d.ts +0 -4
  500. package/dist/lib/utils/helpers.d.ts.map +0 -1
  501. package/dist/lib/utils/helpers.js +0 -39
  502. package/dist/lib/utils/helpers.js.map +0 -1
  503. package/dist/lib/utils/logger.d.ts +0 -4
  504. package/dist/lib/utils/logger.d.ts.map +0 -1
  505. package/dist/lib/utils/logger.js +0 -28
  506. package/dist/lib/utils/logger.js.map +0 -1
  507. package/dist/lib/workspace/index.d.ts +0 -13
  508. package/dist/lib/workspace/index.d.ts.map +0 -1
  509. package/dist/lib/workspace/index.js +0 -116
  510. package/dist/lib/workspace/index.js.map +0 -1
  511. package/dist/lib/worktree/index.d.ts +0 -7
  512. package/dist/lib/worktree/index.d.ts.map +0 -1
  513. package/dist/lib/worktree/index.js +0 -362
  514. package/dist/lib/worktree/index.js.map +0 -1
  515. package/dist/lib/worktree/migrate.d.ts +0 -2
  516. package/dist/lib/worktree/migrate.d.ts.map +0 -1
  517. package/dist/lib/worktree/migrate.js +0 -214
  518. package/dist/lib/worktree/migrate.js.map +0 -1
  519. package/dist/lib/worktree/repair.d.ts +0 -3
  520. package/dist/lib/worktree/repair.d.ts.map +0 -1
  521. package/dist/lib/worktree/repair.js +0 -320
  522. package/dist/lib/worktree/repair.js.map +0 -1
  523. package/dist/types/index.d.ts +0 -57
  524. package/dist/types/index.d.ts.map +0 -1
  525. package/dist/types/index.js +0 -3
  526. package/dist/types/index.js.map +0 -1
@@ -0,0 +1,231 @@
1
+ /**
2
+ * Machine-readable output helper for interactive prompts
3
+ *
4
+ * Provides utilities for outputting prompt configurations as JSON
5
+ * instead of rendering interactive UI, enabling AI agents and scripts
6
+ * to interact with the CLI programmatically.
7
+ *
8
+ * Design notes:
9
+ * - Stateless functions for easy unit testing
10
+ * - Designed for future extraction as standalone npm package
11
+ * - Supports both explicit --json flag and automatic non-TTY detection
12
+ *
13
+ * Exit code conventions:
14
+ * - EXIT_SUCCESS (0): Command completed successfully
15
+ * - EXIT_ERROR (1): Command failed with an error
16
+ * - EXIT_NEEDS_INPUT (2): Command needs additional input (prompt required)
17
+ */
18
+ /**
19
+ * Exit code for successful command completion
20
+ */
21
+ export declare const EXIT_SUCCESS = 0;
22
+ /**
23
+ * Exit code for command failure/error
24
+ */
25
+ export declare const EXIT_ERROR = 1;
26
+ /**
27
+ * Exit code when command needs additional input (prompt required)
28
+ * Use this exit code when outputting a prompt in JSON mode to signal
29
+ * to scripts/agents that the command didn't fail, but needs more input.
30
+ */
31
+ export declare const EXIT_NEEDS_INPUT = 2;
32
+ /**
33
+ * Choice item for list/checkbox prompts
34
+ */
35
+ export interface PromptChoice {
36
+ /** Display text shown to user */
37
+ name: string;
38
+ /** Actual value returned when selected */
39
+ value: string;
40
+ /** Optional: indicates if choice is disabled */
41
+ disabled?: boolean;
42
+ /** Optional: full CLI command to run for this choice (for AI agents) */
43
+ command?: string;
44
+ }
45
+ /**
46
+ * Form field configuration for multi-field prompts
47
+ */
48
+ export interface FormField {
49
+ /** Type of field: input, list, checkbox, confirm, editor */
50
+ type: 'input' | 'list' | 'checkbox' | 'confirm' | 'editor';
51
+ /** Field name */
52
+ name: string;
53
+ /** User-facing message */
54
+ message: string;
55
+ /** Available choices (for list/checkbox types) */
56
+ choices?: PromptChoice[];
57
+ /** Default value if applicable */
58
+ default?: string | boolean | string[];
59
+ }
60
+ /**
61
+ * Prompt configuration for JSON output
62
+ */
63
+ export interface PromptConfig {
64
+ /** Type of prompt: list (single select), checkbox (multi select), confirm, input, editor, or form (multi-field) */
65
+ type: 'list' | 'checkbox' | 'confirm' | 'input' | 'editor' | 'form';
66
+ /** Field name for the prompt answer (not used for form type) */
67
+ name?: string;
68
+ /** User-facing prompt message (not used for form type) */
69
+ message?: string;
70
+ /** Available choices (for list/checkbox types) */
71
+ choices?: PromptChoice[];
72
+ /** Default value if applicable */
73
+ default?: string | boolean | string[];
74
+ /** Fields for form type prompts */
75
+ fields?: FormField[];
76
+ /** Optional context data for complex prompts */
77
+ context?: Record<string, unknown>;
78
+ }
79
+ /**
80
+ * Metadata included with all JSON outputs
81
+ */
82
+ export interface OutputMetadata {
83
+ /** Command that was invoked (e.g., "work spawn") */
84
+ command: string;
85
+ /** Flags that were passed to the command */
86
+ flags: Record<string, unknown>;
87
+ /** Timestamp of the output */
88
+ timestamp?: string;
89
+ }
90
+ /**
91
+ * JSON output when a prompt would be shown
92
+ */
93
+ export interface PromptJsonOutput {
94
+ /** Prompt configuration, or null if no prompt needed */
95
+ prompt: PromptConfig | null;
96
+ /** Command metadata */
97
+ metadata: OutputMetadata;
98
+ }
99
+ /**
100
+ * JSON output for successful command execution (no prompt needed)
101
+ */
102
+ export interface SuccessJsonOutput {
103
+ /** Always null when success output */
104
+ prompt: null;
105
+ /** Indicates successful execution */
106
+ success: true;
107
+ /** Command-specific result data */
108
+ result: Record<string, unknown>;
109
+ /** Command metadata */
110
+ metadata: OutputMetadata;
111
+ }
112
+ /**
113
+ * JSON output for error conditions
114
+ */
115
+ export interface ErrorJsonOutput {
116
+ /** Error details */
117
+ error: {
118
+ /** Machine-readable error code (e.g., "NO_TICKETS_AVAILABLE") */
119
+ code: string;
120
+ /** Human-readable error message */
121
+ message: string;
122
+ };
123
+ /** Command metadata */
124
+ metadata: OutputMetadata;
125
+ }
126
+ /**
127
+ * Union type for all JSON output types
128
+ */
129
+ export type JsonOutput = PromptJsonOutput | SuccessJsonOutput | ErrorJsonOutput;
130
+ /**
131
+ * Flags interface for shouldOutputJson
132
+ */
133
+ export interface JsonFlags {
134
+ json?: boolean;
135
+ }
136
+ /**
137
+ * Check if the current environment is non-TTY (piped output)
138
+ *
139
+ * @returns true if stdout is not a TTY (e.g., piped to another process)
140
+ */
141
+ export declare function isNonTTY(): boolean;
142
+ /**
143
+ * Determine if JSON output should be used
144
+ *
145
+ * Returns true if:
146
+ * - The --json flag is explicitly set
147
+ * - The environment is non-TTY (piped output)
148
+ *
149
+ * @param flags - Command flags object
150
+ * @returns true if JSON output should be used
151
+ */
152
+ export declare function shouldOutputJson(flags: JsonFlags): boolean;
153
+ /**
154
+ * Create metadata object for JSON output
155
+ *
156
+ * @param command - Command name (e.g., "work spawn")
157
+ * @param flags - Flags passed to the command
158
+ * @returns Metadata object
159
+ */
160
+ export declare function createMetadata(command: string, flags: Record<string, unknown>): OutputMetadata;
161
+ /**
162
+ * Output a prompt configuration as JSON and exit
163
+ *
164
+ * Use this when a command would normally show an interactive prompt.
165
+ * Outputs the prompt config so agents can understand what input is needed,
166
+ * then exits with EXIT_NEEDS_INPUT (2) to signal the command needs more input.
167
+ *
168
+ * @param config - Prompt configuration
169
+ * @param metadata - Command metadata
170
+ */
171
+ export declare function outputPromptAsJson(config: PromptConfig, metadata: OutputMetadata): never;
172
+ /**
173
+ * Output success result as JSON
174
+ *
175
+ * Use this when all required data was provided via flags
176
+ * and no prompt is needed.
177
+ *
178
+ * @param result - Command-specific result data
179
+ * @param metadata - Command metadata
180
+ */
181
+ export declare function outputSuccessAsJson(result: Record<string, unknown>, metadata: OutputMetadata): void;
182
+ /**
183
+ * Output error as JSON and exit
184
+ *
185
+ * Use this when an error occurs and --json flag is active.
186
+ * Provides structured error output for programmatic handling,
187
+ * then exits with EXIT_ERROR (1).
188
+ *
189
+ * @param code - Machine-readable error code (e.g., "NO_TICKETS_AVAILABLE")
190
+ * @param message - Human-readable error message
191
+ * @param metadata - Command metadata
192
+ */
193
+ export declare function outputErrorAsJson(code: string, message: string, metadata: OutputMetadata): never;
194
+ /**
195
+ * Convert inquirer choices to PromptChoice format
196
+ *
197
+ * Handles both simple string choices and object choices,
198
+ * filtering out Separator instances.
199
+ *
200
+ * @param choices - Inquirer choices array
201
+ * @returns Array of PromptChoice objects
202
+ */
203
+ export declare function normalizeChoices(choices: Array<string | {
204
+ name: string;
205
+ value: string;
206
+ disabled?: boolean | string;
207
+ command?: string;
208
+ } | unknown>): PromptChoice[];
209
+ /**
210
+ * Build a prompt config object from inquirer prompt options
211
+ *
212
+ * @param type - Prompt type
213
+ * @param name - Field name
214
+ * @param message - User-facing message
215
+ * @param choices - Optional choices array
216
+ * @param defaultValue - Optional default value
217
+ * @returns PromptConfig object
218
+ */
219
+ export declare function buildPromptConfig(type: 'list' | 'checkbox' | 'confirm' | 'input' | 'editor', name: string, message: string, choices?: Array<string | {
220
+ name: string;
221
+ value: string;
222
+ disabled?: boolean | string;
223
+ command?: string;
224
+ } | unknown>, defaultValue?: string | boolean | string[]): PromptConfig;
225
+ /**
226
+ * Build a form prompt config with multiple fields
227
+ *
228
+ * @param fields - Array of form field configurations
229
+ * @returns PromptConfig object with type 'form'
230
+ */
231
+ export declare function buildFormPromptConfig(fields: FormField[]): PromptConfig;
@@ -0,0 +1,213 @@
1
+ /**
2
+ * Machine-readable output helper for interactive prompts
3
+ *
4
+ * Provides utilities for outputting prompt configurations as JSON
5
+ * instead of rendering interactive UI, enabling AI agents and scripts
6
+ * to interact with the CLI programmatically.
7
+ *
8
+ * Design notes:
9
+ * - Stateless functions for easy unit testing
10
+ * - Designed for future extraction as standalone npm package
11
+ * - Supports both explicit --json flag and automatic non-TTY detection
12
+ *
13
+ * Exit code conventions:
14
+ * - EXIT_SUCCESS (0): Command completed successfully
15
+ * - EXIT_ERROR (1): Command failed with an error
16
+ * - EXIT_NEEDS_INPUT (2): Command needs additional input (prompt required)
17
+ */
18
+ /**
19
+ * Exit code for successful command completion
20
+ */
21
+ export const EXIT_SUCCESS = 0;
22
+ /**
23
+ * Exit code for command failure/error
24
+ */
25
+ export const EXIT_ERROR = 1;
26
+ /**
27
+ * Exit code when command needs additional input (prompt required)
28
+ * Use this exit code when outputting a prompt in JSON mode to signal
29
+ * to scripts/agents that the command didn't fail, but needs more input.
30
+ */
31
+ export const EXIT_NEEDS_INPUT = 2;
32
+ /**
33
+ * Check if the current environment is non-TTY (piped output)
34
+ *
35
+ * @returns true if stdout is not a TTY (e.g., piped to another process)
36
+ */
37
+ export function isNonTTY() {
38
+ return !process.stdout.isTTY;
39
+ }
40
+ /**
41
+ * Determine if JSON output should be used
42
+ *
43
+ * Returns true if:
44
+ * - The --json flag is explicitly set
45
+ * - The environment is non-TTY (piped output)
46
+ *
47
+ * @param flags - Command flags object
48
+ * @returns true if JSON output should be used
49
+ */
50
+ export function shouldOutputJson(flags) {
51
+ // Explicit flag takes precedence
52
+ if (flags.json === true) {
53
+ return true;
54
+ }
55
+ // Automatic detection for non-TTY environments
56
+ return isNonTTY();
57
+ }
58
+ /**
59
+ * Create metadata object for JSON output
60
+ *
61
+ * @param command - Command name (e.g., "work spawn")
62
+ * @param flags - Flags passed to the command
63
+ * @returns Metadata object
64
+ */
65
+ export function createMetadata(command, flags) {
66
+ // Filter out internal/sensitive flags
67
+ const filteredFlags = {};
68
+ for (const [key, value] of Object.entries(flags)) {
69
+ // Skip undefined values and internal flags
70
+ if (value !== undefined && !key.startsWith('_')) {
71
+ filteredFlags[key] = value;
72
+ }
73
+ }
74
+ return {
75
+ command,
76
+ flags: filteredFlags,
77
+ timestamp: new Date().toISOString(),
78
+ };
79
+ }
80
+ /**
81
+ * Output a prompt configuration as JSON and exit
82
+ *
83
+ * Use this when a command would normally show an interactive prompt.
84
+ * Outputs the prompt config so agents can understand what input is needed,
85
+ * then exits with EXIT_NEEDS_INPUT (2) to signal the command needs more input.
86
+ *
87
+ * @param config - Prompt configuration
88
+ * @param metadata - Command metadata
89
+ */
90
+ export function outputPromptAsJson(config, metadata) {
91
+ const output = {
92
+ prompt: config,
93
+ metadata,
94
+ };
95
+ console.log(JSON.stringify(output, null, 2));
96
+ process.exit(EXIT_NEEDS_INPUT);
97
+ }
98
+ /**
99
+ * Output success result as JSON
100
+ *
101
+ * Use this when all required data was provided via flags
102
+ * and no prompt is needed.
103
+ *
104
+ * @param result - Command-specific result data
105
+ * @param metadata - Command metadata
106
+ */
107
+ export function outputSuccessAsJson(result, metadata) {
108
+ const output = {
109
+ prompt: null,
110
+ success: true,
111
+ result,
112
+ metadata,
113
+ };
114
+ console.log(JSON.stringify(output, null, 2));
115
+ }
116
+ /**
117
+ * Output error as JSON and exit
118
+ *
119
+ * Use this when an error occurs and --json flag is active.
120
+ * Provides structured error output for programmatic handling,
121
+ * then exits with EXIT_ERROR (1).
122
+ *
123
+ * @param code - Machine-readable error code (e.g., "NO_TICKETS_AVAILABLE")
124
+ * @param message - Human-readable error message
125
+ * @param metadata - Command metadata
126
+ */
127
+ export function outputErrorAsJson(code, message, metadata) {
128
+ const output = {
129
+ error: {
130
+ code,
131
+ message,
132
+ },
133
+ metadata,
134
+ };
135
+ console.log(JSON.stringify(output, null, 2));
136
+ process.exit(EXIT_ERROR);
137
+ }
138
+ /**
139
+ * Convert inquirer choices to PromptChoice format
140
+ *
141
+ * Handles both simple string choices and object choices,
142
+ * filtering out Separator instances.
143
+ *
144
+ * @param choices - Inquirer choices array
145
+ * @returns Array of PromptChoice objects
146
+ */
147
+ export function normalizeChoices(choices) {
148
+ const normalized = [];
149
+ for (const choice of choices) {
150
+ // Skip Separator instances (they have a 'type' property set to 'separator')
151
+ if (typeof choice === 'object' &&
152
+ choice !== null &&
153
+ 'type' in choice &&
154
+ choice.type === 'separator') {
155
+ continue;
156
+ }
157
+ // Handle string choices
158
+ if (typeof choice === 'string') {
159
+ normalized.push({ name: choice, value: choice });
160
+ continue;
161
+ }
162
+ // Handle object choices
163
+ if (typeof choice === 'object' &&
164
+ choice !== null &&
165
+ 'name' in choice &&
166
+ 'value' in choice) {
167
+ const obj = choice;
168
+ normalized.push({
169
+ name: obj.name,
170
+ value: String(obj.value),
171
+ ...(obj.disabled !== undefined && { disabled: Boolean(obj.disabled) }),
172
+ ...(obj.command !== undefined && { command: obj.command }),
173
+ });
174
+ }
175
+ }
176
+ return normalized;
177
+ }
178
+ /**
179
+ * Build a prompt config object from inquirer prompt options
180
+ *
181
+ * @param type - Prompt type
182
+ * @param name - Field name
183
+ * @param message - User-facing message
184
+ * @param choices - Optional choices array
185
+ * @param defaultValue - Optional default value
186
+ * @returns PromptConfig object
187
+ */
188
+ export function buildPromptConfig(type, name, message, choices, defaultValue) {
189
+ const config = {
190
+ type,
191
+ name,
192
+ message,
193
+ };
194
+ if (choices) {
195
+ config.choices = normalizeChoices(choices);
196
+ }
197
+ if (defaultValue !== undefined) {
198
+ config.default = defaultValue;
199
+ }
200
+ return config;
201
+ }
202
+ /**
203
+ * Build a form prompt config with multiple fields
204
+ *
205
+ * @param fields - Array of form field configurations
206
+ * @returns PromptConfig object with type 'form'
207
+ */
208
+ export function buildFormPromptConfig(fields) {
209
+ return {
210
+ type: 'form',
211
+ fields,
212
+ };
213
+ }
@@ -0,0 +1,81 @@
1
+ import { Repository } from '../database/index.js';
2
+ export interface RepoToAdd {
3
+ path: string;
4
+ action: 'move' | 'clone';
5
+ }
6
+ export interface RepoInfo {
7
+ name: string;
8
+ path: string;
9
+ fullPath: string;
10
+ sourceUrl?: string;
11
+ branch?: string;
12
+ status: 'clean' | 'dirty' | 'missing';
13
+ commitsAhead: number;
14
+ commitsBehind: number;
15
+ addedAt?: string;
16
+ }
17
+ /**
18
+ * Check if we're currently in a git repository
19
+ */
20
+ export declare function isInGitRepo(dir?: string): boolean;
21
+ /**
22
+ * Get the current repository name
23
+ */
24
+ export declare function getCurrentRepoName(dir?: string): string | null;
25
+ /**
26
+ * Prompt user to add repositories interactively
27
+ */
28
+ export declare function promptForRepositories(currentDir?: string, existingRepos?: string[]): Promise<RepoToAdd[]>;
29
+ /**
30
+ * Add repositories to HQ
31
+ */
32
+ export declare function addRepositoriesToHQ(hqPath: string, repos: RepoToAdd[]): Promise<string[]>;
33
+ /**
34
+ * Update HQ config with new repositories
35
+ */
36
+ export declare function updateHQRepos(hqPath: string, newRepos: string[]): void;
37
+ export interface WorkspaceRepoInfo {
38
+ hqPath: string;
39
+ reposPath: string;
40
+ repositories: RepoInfo[];
41
+ }
42
+ /**
43
+ * Find HQ root by traversing upward
44
+ * @deprecated Use findHQRoot from '../workspace.js' instead for PRLT_HQ_PATH support
45
+ */
46
+ export { findHQRoot } from '../workspace.js';
47
+ /**
48
+ * Get workspace repository information
49
+ */
50
+ export declare function getWorkspaceRepoInfo(): WorkspaceRepoInfo;
51
+ /**
52
+ * Get detailed status for a repository
53
+ */
54
+ export declare function getRepoStatus(name: string, fullPath: string, dbRepo?: Repository): RepoInfo;
55
+ /**
56
+ * Add a single repository to the HQ (file system + database + agent worktrees)
57
+ */
58
+ export declare function addRepository(hqPath: string, repoPath: string, action: 'clone' | 'move'): Promise<{
59
+ success: boolean;
60
+ name: string;
61
+ error?: string;
62
+ }>;
63
+ /**
64
+ * Remove a repository from the HQ
65
+ */
66
+ export declare function removeRepository(hqPath: string, repoName: string, keepFiles?: boolean): Promise<{
67
+ success: boolean;
68
+ error?: string;
69
+ }>;
70
+ /**
71
+ * Prompt to add a single repository
72
+ */
73
+ export declare function promptAddSingleRepo(): Promise<RepoToAdd | null>;
74
+ /**
75
+ * Prompt to select a repository from the workspace
76
+ */
77
+ export declare function promptSelectRepo(message?: string, allowCancel?: boolean): Promise<string | null>;
78
+ /**
79
+ * Prompt to select multiple repositories
80
+ */
81
+ export declare function promptSelectMultipleRepos(message?: string): Promise<string[]>;