@proletariat/cli 0.1.4 β†’ 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 +510 -255
  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 +104 -52
  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 -139
  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 -173
  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 -212
  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 -140
  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
package/README.md CHANGED
@@ -1,368 +1,623 @@
1
- # βš’οΈ PROLETARIAT CLI
1
+ ```
2
+ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—
3
+ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β•β•β•β•šβ•β•β–ˆβ–ˆβ•”β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β•šβ•β•β–ˆβ–ˆβ•”β•β•β•
4
+ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
5
+ β–ˆβ–ˆβ•”β•β•β•β• β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β• β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
6
+ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘ β–ˆβ–ˆβ•‘
7
+ β•šβ•β• β•šβ•β• β•šβ•β• β•šβ•β•β•β•β•β• β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β•β• β•šβ•β• β•šβ•β• β•šβ•β•β•šβ•β• β•šβ•β•β•šβ•β•β•šβ•β• β•šβ•β• β•šβ•β•
8
+ ```
2
9
 
3
- > **Workspace Manager for Parallel AI Development**
4
- > *Run multiple Cursor sessions, Claude Code instances, or CLI agents simultaneously on one machine - each working on different features without conflicts*
10
+ ### Seize the means of production - Ship 100x.
5
11
 
6
- **Scale your solo development: Multiple AI sessions, parallel workspaces, all on your local machine!**
12
+ > **Turn tickets into output with AI labor**
7
13
 
8
- ---
14
+ > πŸ’‘ *Paying for Claude Max but not maxing it out? You're leaving money on the table.*
9
15
 
10
- ## What Is This?
16
+ > ⚠️ **Beta Software** β€” Commands, flags, and APIs may change between versions. Not yet recommended for production automation scripts.
11
17
 
12
- **PROLETARIAT CLI** implements the design pattern for running multiple AI coding sessions in parallel on a single machine. Each "agent" is a persistent workspace (git worktree) where AI tools or developers can work continuously - not just for single features:
18
+ ---
13
19
 
14
- - πŸ€– **Persistent AI workspaces** - Let Claude Code live in the "bezos" workspace for weeks, handling all auth tasks
15
- - πŸ”€ **No constant branching** - Each workspace can handle multiple related features over time
16
- - 🎯 **Domain-focused development** - One workspace for frontend, another for API, another for testing
20
+ # TLDR
17
21
 
18
- Using memorable themes, you manage your agent workforce:
19
- - πŸ’° **Billionaires** become your coding workforce (Bezos, Musk, Gates)
20
- - πŸš— **Toyotas** drive your development forward (Prius, Tacoma, Tundra)
21
- - 🏒 **Companies** form your development portfolio (Apple, Google, Microsoft)
22
+ **prlt** coordinates AI coding agents from one CLI. Isolated workspaces, secure containers, persistent state.
22
23
 
23
- Each workspace is a dedicated git worktree on your local machine. Run 3 Cursor instances editing different features, or quickly switch between workspaces without losing context!
24
+ ```bash
25
+ npm install -g @proletariat/cli
26
+ prlt init
27
+ prlt ticket create --title "Add OAuth" --category feature
28
+ prlt work spawn # Interactive: select tickets, environment, action
29
+ ```
24
30
 
25
- ---
31
+ Agent spawns in its own branch, writes code, opens PR. You review and merge.
26
32
 
27
- ## πŸ’‘ The Design Pattern
33
+ **Why prlt?**
34
+ - **Isolated** - Each agent gets its own git branch. No conflicts.
35
+ - **Secure** - Docker containers, sandboxed from your host.
36
+ - **Durable** - Tmux sessions persist. Close window, agent keeps working.
37
+ - **Trackable** - One database, one CLI, all your agents.
38
+ - **Ephemeral** - Spawn agents on demand. They work, they PR, they're done.
39
+ - **Structured** - Tickets provide structured context, not freeform chat.
40
+ - **Persistent** - Tickets accumulate context over time. Hand off between agents.
41
+ - **Agent-native** - `--json` mode lets AI agents drive the CLI programmatically.
28
42
 
29
- **Problem:** AI coding tools work in a single directory. Want to work on multiple features? You're stuck with stashing, branching, and context switching.
43
+ ---
30
44
 
31
- **Solution:** PROLETARIAT creates isolated agent directories on your machine where you can run multiple AI sessions:
45
+ # Quick Start
32
46
 
33
- ```
34
- your-company-workspace/ (recommended layout)
35
- β”œβ”€β”€ your-repo/ # Your original repo
36
- β”œβ”€β”€ your-repo-staff/
37
- β”‚ β”œβ”€β”€ bezos/ β†’ Claude Code 1: Building authentication
38
- β”‚ β”œβ”€β”€ musk/ β†’ Claude Code 2: Implementing AI features
39
- β”‚ β”œβ”€β”€ gates/ β†’ Cursor: Refactoring database
40
- β”‚ β”œβ”€β”€ jobs/ β†’ Codex CLI 1: Writing test suite
41
- β”‚ └── cook/ β†’ Codex CLI 2: Fixing security issues
47
+ ```bash
48
+ npm install -g @proletariat/cli # Install
49
+ prlt init # Create HQ, add repos, choose theme
50
+ prlt ticket create --title "Add OAuth" --category feature
51
+ prlt work spawn # Interactive: select tickets, environment, action
52
+ # Agent creates PR β†’ You review β†’ Merge β†’ Done
42
53
  ```
43
54
 
44
- **Result:** One developer, 5 agent directories, 0 conflicts. Work on multiple features simultaneously or let AI agents handle different tasks!
55
+ ```mermaid
56
+ sequenceDiagram
57
+ participant You
58
+ participant prlt
59
+ participant Agent
60
+ participant GitHub
61
+
62
+ You->>prlt: prlt ticket create
63
+ You->>prlt: prlt work spawn
64
+ prlt->>prlt: Create branch
65
+ prlt->>prlt: Create workspace
66
+ prlt->>Agent: Spawn agent
67
+ Agent->>Agent: Read ticket
68
+ Agent->>Agent: Write code
69
+ Agent->>GitHub: Commit
70
+ Agent->>GitHub: Open PR
71
+ Agent->>prlt: Update status
72
+ prlt->>You: PR ready
73
+ You->>GitHub: Review & approve
74
+ ```
45
75
 
46
- ![Multi-Agent Development in Action](https://github.com/chrismcdermut/proletariat-cli/raw/main/assets/multi-agent-workspace.png)
47
- *Three Claude Code instances working in parallel: `andreesen` on Feature A, `jobs` on Feature B, and `zuck` fixing a reported bug (no musk, he was fired)*
76
+ Spawn agents to implement, groom, or reviewβ€”not just write code.
48
77
 
49
- ---
78
+ ### Interactive Menus
50
79
 
51
- ## 🎯 Core Features
80
+ `prlt work` guides you through project and ticket selection:
52
81
 
53
- ### ⚑ **Zero Configuration**
54
- Just `prlt init` and you're ready to go. Zero configuration required.
82
+ <p align="center">
83
+ <img src="../../docs/images/work/work-project-select.png" alt="Project Selection" width="600">
84
+ </p>
55
85
 
56
- ### 🎨 **Three Fun Themes** *(Custom themes coming soon!)*
57
- - **πŸ’° Billionaires**: Hire/fire billionaire workers in `../project-staff/`
58
- - **πŸš— Cars**: Drive/park cars in your `../project-garage/`
59
- - **🏒 Companies**: Buy/sell companies in your `../project-portfolio/`
86
+ Choose your operationβ€”start a single agent, batch spawn, or watch a column:
60
87
 
61
- ### πŸ”€ **Multiple Agent Directories in Your Workspace**
62
- Each agent gets their own clean git worktree on your local filesystem. Run multiple Cursor windows, Claude Code instances, or just keep different features open - each agent in their own directory, no context switching needed.
88
+ <p align="center">
89
+ <img src="../../docs/images/work/work-operations-menu.png" alt="Work Operations Menu" width="600">
90
+ </p>
63
91
 
64
- ---
92
+ Select tickets to spawn, grouped by priority:
65
93
 
66
- ## πŸš€ Quick Start
94
+ <p align="center">
95
+ <img src="../../docs/images/work/work-ticket-select.png" alt="Ticket Selection" width="800">
96
+ </p>
67
97
 
68
- ```bash
69
- # Install
70
- npm install -g @proletariat/cli
98
+ ---
71
99
 
72
- # Initialize with interactive theme selection
73
- cd your-project
74
- prlt init # Prompts you to choose: billionaires, toyotas, or companies
100
+ # Deep Dive
75
101
 
76
- # Create worktrees with themed commands
77
- prlt hire bezos musk # Billionaires theme
78
- prlt drive 4runner prius # Cars theme
79
- prlt buy apple microsoft # Companies theme
102
+ | Problem | Solution |
103
+ | --- | --- |
104
+ | Agents conflict with each other's changes | **Isolated** - Each agent gets its own git branch and worktree |
105
+ | Agents run unsandboxed on your machine | **Secure** - Docker containers, sandboxed from your host (looking into host sandbox options) |
106
+ | You lose track of who's doing what | **Trackable** - All state in one SQLite database, one CLI |
107
+ | Sessions die when you close a window | **Durable** - Tmux sessions persist, detach/reattach anytime |
108
+ | Context scattered across chat windows | **Structured** - Tickets with requirements, acceptance criteria |
109
+ | Starting agents is heavyweight | **Ephemeral** - Spawn on demand, they work, they PR, they're done |
110
+ | Context lost between agent runs | **Persistent** - Tickets accumulate context, hand off between agents |
80
111
 
81
- # Check status
82
- prlt staff # Billionaires theme
83
- prlt garage # Cars theme
84
- prlt portfolio # Companies theme
112
+ ### Data Model
85
113
 
86
- # Remove worktrees
87
- prlt fire gates # Billionaires theme
88
- prlt park honda # Cars theme
89
- prlt sell nvidia # Companies theme
114
+ ```
115
+ Workspace (HQ)
116
+ β”œβ”€β”€ Projects
117
+ β”‚ β”œβ”€β”€ Epics β†’ Tickets
118
+ β”‚ └── (references a Workflow)
119
+ β”œβ”€β”€ Workflows β†’ Phases β†’ Statuses (can be shared across projects)
120
+ β”œβ”€β”€ Specs (can span projects)
121
+ β”œβ”€β”€ Actions (reusable templates)
122
+ β”œβ”€β”€ Agents
123
+ β”‚ β”œβ”€β”€ Staff (persistent, named)
124
+ β”‚ └── Temp (ephemeral, per-ticket)
125
+ └── Executions (running sessions)
126
+ β”œβ”€β”€ Docker
127
+ β”‚ β”œβ”€β”€ Tmux session
128
+ β”‚ β”œβ”€β”€ Terminal or Background display
129
+ β”‚ └── Safe or YOLO permissions
130
+ └── Host
131
+ β”œβ”€β”€ Tmux session
132
+ β”œβ”€β”€ Terminal or Background display
133
+ └── Safe or YOLO permissions
90
134
  ```
91
135
 
92
- ### πŸ—οΈ Flexible Agent Workspace Layouts
93
-
94
- **Workspace Layout (Recommended)** - Group repositories and agents under one parent directory:
95
- ```bash
96
- # IMPORTANT: Run prlt init inside EACH repository you want to manage
97
- cd frontend-repo && prlt init --workspace acme-corp
98
- cd ../backend-repo && prlt init --workspace acme-corp
136
+ | Entity | Description |
137
+ | --- | --- |
138
+ | **Project** | Groups tickets and epics, references a workflow |
139
+ | **Epic** | Work container with lifecycle (draft β†’ active β†’ complete) |
140
+ | **Ticket** | Individual work item with requirements and acceptance criteria |
141
+ | **Spec** | Static documentation (can span projects, linked to epics) |
142
+ | **Workflow** | Status flow configuration (can be shared across projects) |
143
+ | **Phase** | Stage in a workflow |
144
+ | **Status** | Ticket state within a phase |
145
+ | **Action** | Reusable prompt/action templates |
146
+ | **Agent (Staff)** | Persistent named agent with dedicated workspace |
147
+ | **Agent (Temp)** | Ephemeral agent spawned for a single ticket |
148
+ | **Execution** | Running agent session on a ticket |
149
+ | **Display** | Terminal (new tab) or Background (detached) |
150
+
151
+ ### Example Workflow
152
+
153
+ A workflow defines how tickets move through your process. Projects reference a workflow, and multiple projects can share the same one.
99
154
 
100
- # Each repo needs its own initialization since worktrees are per-repository
155
+ ```
156
+ Kanban Workflow
157
+ β”œβ”€β”€ Backlog # New tickets land here
158
+ β”œβ”€β”€ In Progress # Agent working (prlt work spawn)
159
+ β”œβ”€β”€ Review # PR ready (prlt work ready)
160
+ └── Done # Merged (prlt work complete)
101
161
  ```
102
162
 
103
- Creates this organized structure to hold multi-repo projects:
104
163
  ```
105
- acme-corp-workspace/ # Workspace containing all repos and agents
106
- β”œβ”€β”€ frontend-repo/ (main frontend repository)
107
- β”œβ”€β”€ frontend-repo-staff/ (frontend billionaire agents)
108
- β”‚ β”œβ”€β”€ bezos/ (e.g., Claude Code instance 1)
109
- β”‚ β”œβ”€β”€ musk/ (e.g., Claude Code instance 2)
110
- β”‚ └── gates/ (e.g., Cursor)
111
- β”œβ”€β”€ backend-repo/ (main backend repository)
112
- └── backend-repo-staff/ (backend billionaire agents)
113
- β”œβ”€β”€ cook/ (e.g., Codex CLI 1)
114
- β”œβ”€β”€ jobs/ (e.g., Codex CLI 2)
115
- └── buffett/ (e.g., Claude Code instance 2)
164
+ Scrum Workflow
165
+ β”œβ”€β”€ Backlog
166
+ β”œβ”€β”€ Sprint
167
+ β”‚ β”œβ”€β”€ To Do
168
+ β”‚ β”œβ”€β”€ In Progress
169
+ β”‚ └── In Review
170
+ └── Done
116
171
  ```
117
172
 
118
- Each repository maintains its own `.proletariat/config.json` since worktrees are per-repository.
173
+ Tickets flow through statuses as work progresses. Agents automatically move tickets when they start work, open PRs, or complete tasks.
174
+
175
+ ### Workspace Structure
176
+
177
+ Each agent gets a copy of all repos (repo scoping coming soon). Work happens on isolated branches.
119
178
 
120
- **Default Layout** - Agents as siblings to your repository:
121
179
  ```
122
- parent-dir/
123
- β”œβ”€β”€ your-repo/ (main repository)
124
- └── your-repo-staff/ (billionaire agents)
125
- β”œβ”€β”€ bezos/ (e.g., Claude Code instance 1)
126
- β”œβ”€β”€ musk/ (e.g., Claude Code instance 2)
127
- └── gates/ (e.g., Cursor)
128
- OR
129
- └── your-repo-garage/ (toyota agents)
130
- β”œβ”€β”€ camry/ (e.g., Codex CLI 1)
131
- β”œβ”€β”€ prius/ (e.g., Codex CLI 2)
132
- └── tacoma/ (e.g., Cursor)
133
- OR
134
- └── your-repo-portfolio/ (company agents)
135
- β”œβ”€β”€ apple/ (e.g., Claude Code)
136
- β”œβ”€β”€ google/ (e.g., Cursor instance 1)
137
- └── microsoft/ (e.g., Cursor instance 2)
180
+ my-project/
181
+ β”œβ”€β”€ .proletariat/
182
+ β”‚ └── workspace.db # Tickets, executions, state
183
+ β”œβ”€β”€ repos/
184
+ β”‚ β”œβ”€β”€ frontend/ # Your repos
185
+ β”‚ β”œβ”€β”€ backend/
186
+ β”‚ └── infra/
187
+ └── agents/
188
+ β”œβ”€β”€ staff/
189
+ β”‚ └── alice/ # Named agent with persistent workspace
190
+ β”‚ β”œβ”€β”€ frontend/
191
+ β”‚ β”œβ”€β”€ backend/
192
+ β”‚ └── infra/
193
+ └── temp/
194
+ β”œβ”€β”€ agent-abc123/ # Ephemeral: Working on TKT-042 (OAuth)
195
+ β”‚ β”œβ”€β”€ frontend/ # All repos on branch: feat/TKT-042-oauth
196
+ β”‚ β”œβ”€β”€ backend/
197
+ β”‚ └── infra/
198
+ └── agent-def456/ # Ephemeral: Working on TKT-043 (API)
199
+ β”œβ”€β”€ frontend/ # All repos on branch: feat/TKT-043-api
200
+ β”œβ”€β”€ backend/
201
+ └── infra/
138
202
  ```
139
203
 
140
- **Custom Location** - Point agents anywhere you want:
141
- ```bash
142
- prlt init --workspace-root ~/code/agents
143
- # Creates agents in your specified directory
144
- ```
204
+ ### Three Ways to Use Commands
145
205
 
146
- ---
206
+ #### 1. Interactive (Humans)
147
207
 
148
- ## πŸ’Ό The Billionaire Experience
208
+ Run without flagsβ€”get guided prompts:
149
209
 
150
210
  ```bash
151
- $ prlt init
152
- βš’οΈ PROLETARIAT βš’οΈ
153
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
154
- πŸ’° Billionaire Staff πŸ’°
155
- βš’οΈ Making billionaires work as your git worktrees!
156
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
157
-
158
- $ prlt hire bezos musk
159
- πŸ’° Hiring billionaire workers
160
- πŸ’° BEZOS: Ready to work at ../your-project-staff/bezos
161
- πŸ’° MUSK: Ready to work at ../your-project-staff/musk
162
-
163
- $ prlt staff
164
- πŸ’° Current billionaire staff
165
- πŸ’° BEZOS: βœ… ACTIVE - ../your-project-staff/bezos
166
- πŸ“ Branch: agent/bezos/work
167
- πŸ’° MUSK: βœ… ACTIVE - ../your-project-staff/musk
168
- πŸ“ Branch: agent/musk/work
169
-
170
- Workers of the codebase, unite! ✊
171
- ```
211
+ $ prlt ticket create
172
212
 
173
- ---
213
+ ? Title: Add password reset
214
+ ? Description: Email-based password reset flow
215
+ ? Priority: P1
216
+ ? Category: feature
174
217
 
175
- ## 🎨 Choose Your Theme
218
+ βœ“ Created TKT-043
219
+ ```
176
220
 
177
- ### πŸ’° Billionaires (Default)
178
- Make the ultra-wealthy work for YOU!
221
+ View ticket details with `prlt ticket`:
179
222
 
180
- ```bash
181
- prlt init --theme=billionaires
182
- prlt hire bezos musk gates buffett
183
- prlt fire zuckerberg # You're fired!
184
- prlt staff # Check your workers
185
- ```
223
+ <p align="center">
224
+ <img src="../../docs/images/ticket/ticket-view.png" alt="Ticket View" width="600">
225
+ </p>
186
226
 
187
- **Agents**: altman, daramodei, danamodei, andreesen, arnault, benioff, bezos, blakely, bloomberg, branson, brin, buffett, carmack, chesky, cook, dean, dorsey, ellison, gates, horowitz, huang, jobs, kalanick, karpathy, lecun, ma, murati, munger, musk, nadella, ng, oprah, page, perkins, sandberg, sutskever, swift, whitney, wojcicki, zuck
188
- **Directory**: `../[project]-staff/`
227
+ #### 2. JSON Mode (AI Agents)
189
228
 
190
- ### πŸš— Toyotas
191
- Manufacturing's finest keeping your fleet humming.
229
+ Add `--json` for machine-readable output:
192
230
 
193
231
  ```bash
194
- prlt init --theme=toyotas
195
- prlt drive prius tacoma
196
- prlt park 4runner # Back to the bay
197
- prlt garage # Check your fleet
232
+ $ prlt work start --json
233
+ ```
234
+
235
+ ```json
236
+ {
237
+ "prompt": {
238
+ "type": "list",
239
+ "message": "Select ticket to work on:",
240
+ "choices": [
241
+ {
242
+ "name": "[P1] TKT-042 - Add user authentication",
243
+ "value": "TKT-042",
244
+ "command": "prlt work start TKT-042 --json"
245
+ }
246
+ ]
247
+ }
248
+ }
198
249
  ```
199
250
 
200
- **Agents**: 1stgen4runner, 2ndgen4runner, 3rdgen4runner, alltrac, camry, fj40, fj60, fj80, fzj80, hdj80, hdj81, highlander, hilux, ironpig, landcruiser, prius, rav4, sierra, tacoma, tercel, troopy, tundra
201
- **Directory**: `../[project]-garage/`
251
+ AI agents parse this, make selections, call the next command.
252
+
253
+ #### 3. Flags (Scripts/CI)
202
254
 
203
- ### 🏒 Companies
204
- Let the Fortune 500 take orders from you.
255
+ Pass everything directly:
205
256
 
206
257
  ```bash
207
- prlt init --theme=companies
208
- prlt buy adobe amazon apple
209
- prlt sell netflix # Trim the overperformer
210
- prlt portfolio # Check your holdings
258
+ prlt ticket create \
259
+ --title "Add OAuth" \
260
+ --description "Google and GitHub OAuth" \
261
+ --priority P1 \
262
+ --category feature
211
263
  ```
212
264
 
213
- **Agents**: adobe, amazon, apple, atlassian, cisco, google, ibm, meta, microsoft, netflix, nvidia, oracle, shopify, snowflake, tesla, zoom
214
- **Directory**: `../[project]-portfolio/`
265
+ ### Execution Modes
215
266
 
216
- ---
267
+ **Environment** - where the agent runs:
217
268
 
218
- ## πŸ“š Command Reference
219
-
220
- | Theme | Create | Remove | Status | Directory |
221
- |-------|--------|--------|--------|-----------|
222
- | **πŸ’° Billionaires** | `hire` | `fire` | `staff` | `../project-staff/` |
223
- | **πŸš— Cars** | `drive` | `park` | `garage` | `../project-garage/` |
224
- | **🏒 Companies** | `buy` | `sell` | `portfolio` | `../project-portfolio/` |
225
-
226
- ### Universal Commands
227
- - `prlt init [--theme=cars]` - Initialize with theme
228
- - `prlt init --workspace <name>` - Optional workspace layout
229
- - `prlt init --workspace-root <path>` - Use a custom agent directory
230
- - `prlt list [--theme=cars]` - List available agents
231
- - `prlt themes` - Show all themes
232
- - `prlt repair` - Fix broken worktree references after repo moves
233
- - `prlt migrate <workspace-name>` - Move your repo into a workspace folder
234
- - `prlt upgrade` - Upgrade config to latest format (backwards compatible)
235
- - `prlt health` - Check worktree health status
269
+ | Environment | Flag | Best For |
270
+ | --- | --- | --- |
271
+ | 🐳 Docker | (default if devcontainer exists) | Safetyβ€”fully isolated container |
272
+ | πŸƒ Host | `--run-on-host` | Speedβ€”no container overhead |
236
273
 
237
- ---
274
+ **Display** - how you see it:
238
275
 
239
- ## πŸ› οΈ How It Works
276
+ | Display | Flag | Best For |
277
+ | --- | --- | --- |
278
+ | πŸ“Ί Terminal | `--display terminal` | Watch in new terminal tab |
279
+ | πŸ”‡ Background | `--display background` | Detached, reattach later |
240
280
 
241
- 1. **Initialize**: `prlt init` - Choose your theme and workspace layout
242
- 2. **Create agents**: `prlt hire bezos` / `prlt drive camry` / `prlt buy apple` - Creates isolated git worktrees
243
- 3. **Work**: Each worktree is a persistent workspace where agents can work independently - switch AI tools or branches but the workspace persists
244
- 4. **Check status**: `prlt staff` / `prlt garage` / `prlt portfolio` - See your active agents
245
- 5. **Clean up**: `prlt fire bezos` / `prlt park camry` / `prlt sell apple` - Removes worktrees cleanly
281
+ **Permissions** - agent access level:
246
282
 
247
- **That's it!** Simple themed commands wrapping git worktrees.
283
+ | Mode | Flag | Description |
284
+ | --- | --- | --- |
285
+ | πŸ”’ Safe | (default) | Agent prompts for permissions |
286
+ | πŸ•Ί YOLO | `--skip-permissions` | No prompts, full access. Use with Docker for safe autonomy. |
248
287
 
249
- Configuration is stored in `.proletariat/repo.json` (or `.proletariat/config.json` for backwards compatibility).
288
+ All sessions run in tmux under the hoodβ€”close the window, agent keeps working.
250
289
 
251
- ---
290
+ ```bash
291
+ # Default: Docker + terminal (if devcontainer exists)
292
+ prlt work start TKT-042
252
293
 
253
- ## 🎯 Parallel AI Development in Action
294
+ # Docker + background
295
+ prlt work start TKT-042 --display background
254
296
 
255
- ```bash
256
- # Set up persistent workspaces
257
- prlt hire bezos musk gates
297
+ # Host + background (fast, no container)
298
+ prlt work start TKT-042 --run-on-host --display background
299
+
300
+ # Docker + YOLO (full autonomy, safely sandboxed)
301
+ prlt work start TKT-042 --skip-permissions
258
302
  ```
259
303
 
260
- Now open separate terminal panes/tabs or AI IDE windows (Cursor, Windsurf, etc.):
304
+ ### Parallel Agents
261
305
 
262
- **Terminal Pane/Tab or AI IDE Window 1: Agent workspace (e.g., bezos)**
306
+ Work on multiple tickets simultaneously.
307
+
308
+ **Interactive (humans):**
263
309
  ```bash
264
- cd ../your-project-staff/bezos
265
- claude-code . # Claude Code owns this workspace for weeks
266
- # Monday: Implement login
267
- # Tuesday: Add OAuth
268
- # Wednesday: Fix auth bugs
269
- # Thursday: Add 2FA
270
- # All in the same workspace, different branches as needed
310
+ $ prlt work spawn
311
+
312
+ ? Spawn mode: Select specific tickets
313
+ ? Select tickets:
314
+ β—‰ [P1] TKT-042 - Add user authentication
315
+ β—‰ [P1] TKT-043 - Add API rate limiting
316
+ β—― [P2] TKT-044 - Add email notifications
317
+ ? Action: implement
318
+ ? Environment: docker
319
+
320
+ Spawning 2 tickets...
271
321
  ```
272
322
 
273
- **Terminal Pane/Tab or AI IDE Window 2: Agent workspace (e.g., musk)**
323
+ **JSON mode (AI agents):** *(multi-select WIP)*
274
324
  ```bash
275
- cd ../your-project-staff/musk
276
- cursor . # Cursor lives here, building feature after feature
277
- # Week 1: User endpoints
278
- # Week 2: Payment endpoints
279
- # Week 3: Analytics endpoints
325
+ $ prlt work spawn --json --many
326
+ ```
327
+ ```json
328
+ {
329
+ "prompt": {
330
+ "type": "checkbox",
331
+ "message": "Select tickets to spawn:",
332
+ "choices": [
333
+ { "name": "[P1] TKT-042 - Add user authentication", "value": "TKT-042" },
334
+ { "name": "[P1] TKT-043 - Add API rate limiting", "value": "TKT-043" }
335
+ ]
336
+ }
337
+ }
280
338
  ```
281
339
 
282
- **Terminal Pane/Tab or AI IDE Window 3: Agent workspace (e.g., gates)**
340
+ **Flags (scripts/CI):**
283
341
  ```bash
284
- cd ../your-project-staff/gates
285
- # Your manual testing, experiments, debugging
286
- # No AI needed - just your playground
342
+ prlt work spawn TKT-042 TKT-043 --action implement --mode docker
343
+ ```
344
+
345
+ Each agent works in its own branch. No conflicts.
346
+
347
+ > **Scaling:** The main limit is your machine. 50+ concurrent agents is achievableβ€”depends on CPU, RAM, and whether you're running Docker or host mode.
348
+
349
+ Monitor running agents with `prlt execution`:
350
+
351
+ <p align="center">
352
+ <img src="../../docs/images/execution/execution-list.png" alt="Execution List" width="800">
353
+ </p>
354
+
355
+ ```mermaid
356
+ flowchart LR
357
+ subgraph You
358
+ spawn[prlt work spawn]
359
+ end
360
+
361
+ subgraph Agents
362
+ A1[Agent 1<br/>TKT-042 OAuth]
363
+ A2[Agent 2<br/>TKT-043 Rate Limit]
364
+ A3[Agent 3<br/>TKT-044 Notifications]
365
+ end
366
+
367
+ subgraph GitHub
368
+ PR1[PR #101<br/>feat/TKT-042-oauth]
369
+ PR2[PR #102<br/>feat/TKT-043-rate-limit]
370
+ PR3[PR #103<br/>feat/TKT-044-notifications]
371
+ end
372
+
373
+ spawn --> A1
374
+ spawn --> A2
375
+ spawn --> A3
376
+
377
+ A1 --> PR1
378
+ A2 --> PR2
379
+ A3 --> PR3
287
380
  ```
288
381
 
289
- Merge completed work from any workspace:
382
+ Agent-created PRs ready for review:
383
+
384
+ <p align="center">
385
+ <img src="../../docs/images/execution/github-prs.png" alt="GitHub Pull Requests" width="800">
386
+ </p>
387
+
388
+ ### Command Reference
389
+
390
+ <details>
391
+ <summary><b>Full Command Reference</b> (click to expand)</summary>
392
+
393
+ <table>
394
+ <tr><th>Namespace</th><th>Command</th><th>Description</th></tr>
395
+ <!-- ticket -->
396
+ <tr><td rowspan="11"><b>ticket</b></td><td><code>prlt ticket create</code></td><td>Create new ticket</td></tr>
397
+ <tr><td><code>prlt ticket list</code></td><td>List all tickets</td></tr>
398
+ <tr><td><code>prlt ticket view &lt;id&gt;</code></td><td>View ticket details</td></tr>
399
+ <tr><td><code>prlt ticket edit &lt;id&gt;</code></td><td>Edit ticket</td></tr>
400
+ <tr><td><code>prlt ticket move &lt;id&gt; &lt;status&gt;</code></td><td>Change status</td></tr>
401
+ <tr><td><code>prlt ticket delete &lt;id&gt;</code></td><td>Delete ticket</td></tr>
402
+ <tr><td><code>prlt ticket complete &lt;id&gt;</code></td><td>Mark ticket complete</td></tr>
403
+ <tr><td><code>prlt ticket bulk</code></td><td>Bulk ticket operations</td></tr>
404
+ <tr><td><code>prlt ticket link block &lt;id&gt;</code></td><td>Link blocking ticket</td></tr>
405
+ <tr><td><code>prlt ticket link relates &lt;id&gt;</code></td><td>Link related ticket</td></tr>
406
+ <tr><td><code>prlt ticket template save</code></td><td>Save ticket as template</td></tr>
407
+ <!-- work -->
408
+ <tr><td rowspan="7"><b>work</b></td><td><code>prlt work start &lt;id&gt;</code></td><td>Spawn agent on ticket</td></tr>
409
+ <tr><td><code>prlt work spawn</code></td><td>Batch spawn tickets</td></tr>
410
+ <tr><td><code>prlt work spawn-all</code></td><td>Spawn all planned tickets</td></tr>
411
+ <tr><td><code>prlt work complete &lt;id&gt;</code></td><td>Mark work done</td></tr>
412
+ <tr><td><code>prlt work ready &lt;id&gt;</code></td><td>Mark ready for review</td></tr>
413
+ <tr><td><code>prlt work revise &lt;id&gt;</code></td><td>Request revision</td></tr>
414
+ <tr><td><code>prlt work watch</code></td><td>Watch work progress</td></tr>
415
+ <!-- execution -->
416
+ <tr><td rowspan="3"><b>execution</b></td><td><code>prlt execution list</code></td><td>List running agents</td></tr>
417
+ <tr><td><code>prlt execution logs &lt;id&gt;</code></td><td>View agent output</td></tr>
418
+ <tr><td><code>prlt execution stop &lt;id&gt;</code></td><td>Stop an agent</td></tr>
419
+ <!-- agent -->
420
+ <tr><td rowspan="11"><b>agent</b></td><td><code>prlt agent list</code></td><td>List all agents</td></tr>
421
+ <tr><td><code>prlt agent status &lt;name&gt;</code></td><td>Check agent status</td></tr>
422
+ <tr><td><code>prlt agent shell &lt;name&gt;</code></td><td>Shell into agent workspace</td></tr>
423
+ <tr><td><code>prlt agent visit &lt;name&gt;</code></td><td>Navigate to workspace</td></tr>
424
+ <tr><td><code>prlt agent login &lt;name&gt;</code></td><td>Auth Claude in container</td></tr>
425
+ <tr><td><code>prlt agent rebuild &lt;name&gt;</code></td><td>Rebuild agent workspace</td></tr>
426
+ <tr><td><code>prlt agent restart &lt;name&gt;</code></td><td>Restart agent</td></tr>
427
+ <tr><td><code>prlt agent staff add &lt;names&gt;</code></td><td>Add named agents</td></tr>
428
+ <tr><td><code>prlt agent staff list</code></td><td>List staff agents</td></tr>
429
+ <tr><td><code>prlt agent temp list</code></td><td>List ephemeral agents</td></tr>
430
+ <tr><td><code>prlt agent temp cleanup</code></td><td>Remove ephemeral agents</td></tr>
431
+ <!-- agent themes -->
432
+ <tr><td rowspan="4"><b>agent themes</b></td><td><code>prlt agent themes list</code></td><td>List available themes</td></tr>
433
+ <tr><td><code>prlt agent themes set &lt;name&gt;</code></td><td>Set active theme</td></tr>
434
+ <tr><td><code>prlt agent themes create &lt;name&gt;</code></td><td>Create custom theme</td></tr>
435
+ <tr><td><code>prlt agent themes add-names</code></td><td>Add names to theme</td></tr>
436
+ <!-- board -->
437
+ <tr><td rowspan="2"><b>board</b></td><td><code>prlt board</code></td><td>View kanban board</td></tr>
438
+ <tr><td><code>prlt board watch</code></td><td>Real-time updates</td></tr>
439
+ <!-- project -->
440
+ <tr><td rowspan="6"><b>project</b></td><td><code>prlt project create</code></td><td>Create project</td></tr>
441
+ <tr><td><code>prlt project list</code></td><td>List projects</td></tr>
442
+ <tr><td><code>prlt project view &lt;id&gt;</code></td><td>View project details</td></tr>
443
+ <tr><td><code>prlt project archive &lt;id&gt;</code></td><td>Archive project</td></tr>
444
+ <tr><td><code>prlt project unarchive &lt;id&gt;</code></td><td>Unarchive project</td></tr>
445
+ <tr><td><code>prlt project delete &lt;id&gt;</code></td><td>Delete project</td></tr>
446
+ <!-- epic -->
447
+ <tr><td rowspan="10"><b>epic</b></td><td><code>prlt epic create</code></td><td>Create epic</td></tr>
448
+ <tr><td><code>prlt epic list</code></td><td>List epics</td></tr>
449
+ <tr><td><code>prlt epic view &lt;id&gt;</code></td><td>View epic details</td></tr>
450
+ <tr><td><code>prlt epic ticket &lt;id&gt;</code></td><td>Add tickets to epic</td></tr>
451
+ <tr><td><code>prlt epic progress &lt;id&gt;</code></td><td>View epic progress</td></tr>
452
+ <tr><td><code>prlt epic move &lt;id&gt; &lt;status&gt;</code></td><td>Move epic status</td></tr>
453
+ <tr><td><code>prlt epic archive &lt;id&gt;</code></td><td>Archive epic</td></tr>
454
+ <tr><td><code>prlt epic activate &lt;id&gt;</code></td><td>Activate epic</td></tr>
455
+ <tr><td><code>prlt epic reorder</code></td><td>Reorder epics</td></tr>
456
+ <tr><td><code>prlt epic link block &lt;id&gt;</code></td><td>Link blocking epic</td></tr>
457
+ <!-- spec -->
458
+ <tr><td rowspan="6"><b>spec</b></td><td><code>prlt spec create</code></td><td>Create specification</td></tr>
459
+ <tr><td><code>prlt spec list</code></td><td>List specifications</td></tr>
460
+ <tr><td><code>prlt spec view &lt;id&gt;</code></td><td>View specification</td></tr>
461
+ <tr><td><code>prlt spec plan &lt;id&gt;</code></td><td>Generate plan from spec</td></tr>
462
+ <tr><td><code>prlt spec ticket &lt;id&gt;</code></td><td>Create ticket from spec</td></tr>
463
+ <tr><td><code>prlt spec link relates &lt;id&gt;</code></td><td>Link related spec</td></tr>
464
+ <!-- action -->
465
+ <tr><td rowspan="6"><b>action</b></td><td><code>prlt action create</code></td><td>Create action template</td></tr>
466
+ <tr><td><code>prlt action list</code></td><td>List actions</td></tr>
467
+ <tr><td><code>prlt action show &lt;id&gt;</code></td><td>Show action details</td></tr>
468
+ <tr><td><code>prlt action run &lt;id&gt;</code></td><td>Run action</td></tr>
469
+ <tr><td><code>prlt action update &lt;id&gt;</code></td><td>Update action</td></tr>
470
+ <tr><td><code>prlt action delete &lt;id&gt;</code></td><td>Delete action</td></tr>
471
+ <!-- branch -->
472
+ <tr><td rowspan="3"><b>branch</b></td><td><code>prlt branch create</code></td><td>Create branch</td></tr>
473
+ <tr><td><code>prlt branch list</code></td><td>List branches</td></tr>
474
+ <tr><td><code>prlt branch validate</code></td><td>Validate branch name</td></tr>
475
+ <!-- status -->
476
+ <tr><td rowspan="5"><b>status</b></td><td><code>prlt status list</code></td><td>List workflow statuses</td></tr>
477
+ <tr><td><code>prlt status create</code></td><td>Create custom status</td></tr>
478
+ <tr><td><code>prlt status update &lt;id&gt;</code></td><td>Update status</td></tr>
479
+ <tr><td><code>prlt status move &lt;id&gt;</code></td><td>Reorder status</td></tr>
480
+ <tr><td><code>prlt status delete &lt;id&gt;</code></td><td>Delete status</td></tr>
481
+ <!-- workflow -->
482
+ <tr><td rowspan="5"><b>workflow</b></td><td><code>prlt workflow list</code></td><td>List workflows</td></tr>
483
+ <tr><td><code>prlt workflow create</code></td><td>Create workflow</td></tr>
484
+ <tr><td><code>prlt workflow view &lt;id&gt;</code></td><td>View workflow</td></tr>
485
+ <tr><td><code>prlt workflow switch &lt;id&gt;</code></td><td>Switch active workflow</td></tr>
486
+ <tr><td><code>prlt workflow delete &lt;id&gt;</code></td><td>Delete workflow</td></tr>
487
+ <!-- phase -->
488
+ <tr><td rowspan="5"><b>phase</b></td><td><code>prlt phase list</code></td><td>List phases</td></tr>
489
+ <tr><td><code>prlt phase create</code></td><td>Create phase</td></tr>
490
+ <tr><td><code>prlt phase update &lt;id&gt;</code></td><td>Update phase</td></tr>
491
+ <tr><td><code>prlt phase move &lt;id&gt;</code></td><td>Reorder phase</td></tr>
492
+ <tr><td><code>prlt phase delete &lt;id&gt;</code></td><td>Delete phase</td></tr>
493
+ <!-- template -->
494
+ <tr><td rowspan="5"><b>template</b></td><td><code>prlt template list</code></td><td>List templates</td></tr>
495
+ <tr><td><code>prlt template delete &lt;id&gt;</code></td><td>Delete template</td></tr>
496
+ <tr><td><code>prlt template ticket list</code></td><td>List ticket templates</td></tr>
497
+ <tr><td><code>prlt template ticket apply</code></td><td>Apply ticket template</td></tr>
498
+ <tr><td><code>prlt template phase list</code></td><td>List phase templates</td></tr>
499
+ <!-- pr -->
500
+ <tr><td rowspan="3"><b>pr</b></td><td><code>prlt pr create</code></td><td>Create pull request</td></tr>
501
+ <tr><td><code>prlt pr status &lt;id&gt;</code></td><td>Check PR status</td></tr>
502
+ <tr><td><code>prlt pr link &lt;id&gt; &lt;url&gt;</code></td><td>Link PR to ticket</td></tr>
503
+ <!-- gh -->
504
+ <tr><td rowspan="3"><b>gh</b></td><td><code>prlt gh login</code></td><td>Login to GitHub</td></tr>
505
+ <tr><td><code>prlt gh status</code></td><td>Check auth status</td></tr>
506
+ <tr><td><code>prlt gh token</code></td><td>Get GitHub token</td></tr>
507
+ <!-- repo -->
508
+ <tr><td rowspan="4"><b>repo</b></td><td><code>prlt repo add &lt;url&gt;</code></td><td>Add repository</td></tr>
509
+ <tr><td><code>prlt repo list</code></td><td>List repositories</td></tr>
510
+ <tr><td><code>prlt repo view &lt;name&gt;</code></td><td>View repository details</td></tr>
511
+ <tr><td><code>prlt repo remove &lt;name&gt;</code></td><td>Remove repository</td></tr>
512
+ <!-- docker -->
513
+ <tr><td rowspan="10"><b>docker</b></td><td><code>prlt docker list</code></td><td>List containers</td></tr>
514
+ <tr><td><code>prlt docker status</code></td><td>Check Docker status</td></tr>
515
+ <tr><td><code>prlt docker start &lt;name&gt;</code></td><td>Start container</td></tr>
516
+ <tr><td><code>prlt docker stop &lt;name&gt;</code></td><td>Stop container</td></tr>
517
+ <tr><td><code>prlt docker restart &lt;name&gt;</code></td><td>Restart container</td></tr>
518
+ <tr><td><code>prlt docker logs &lt;name&gt;</code></td><td>View container logs</td></tr>
519
+ <tr><td><code>prlt docker shell &lt;name&gt;</code></td><td>Shell into container</td></tr>
520
+ <tr><td><code>prlt docker sync &lt;name&gt;</code></td><td>Sync container files</td></tr>
521
+ <tr><td><code>prlt docker clean</code></td><td>Remove stopped containers</td></tr>
522
+ <tr><td><code>prlt docker prune</code></td><td>Remove unused resources</td></tr>
523
+ <!-- session -->
524
+ <tr><td rowspan="2"><b>session</b></td><td><code>prlt session list</code></td><td>List active tmux sessions</td></tr>
525
+ <tr><td><code>prlt session attach &lt;name&gt;</code></td><td>Attach to tmux session</td></tr>
526
+ <!-- workspace -->
527
+ <tr><td rowspan="4"><b>workspace</b></td><td><code>prlt init</code></td><td>Initialize workspace</td></tr>
528
+ <tr><td><code>prlt workspace list</code></td><td>List workspaces</td></tr>
529
+ <tr><td><code>prlt workspace add</code></td><td>Add workspace</td></tr>
530
+ <tr><td><code>prlt workspace use &lt;name&gt;</code></td><td>Switch workspace</td></tr>
531
+ <!-- utility -->
532
+ <tr><td rowspan="3"><b>utility</b></td><td><code>prlt whoami</code></td><td>Show current context</td></tr>
533
+ <tr><td><code>prlt commit</code></td><td>Conventional commit</td></tr>
534
+ <tr><td><code>prlt autocomplete setup</code></td><td>Setup shell autocomplete</td></tr>
535
+ </table>
536
+
537
+ </details>
538
+
539
+ Run `prlt <command> --help` for flags and options.
540
+
541
+ ### Use Cases
542
+
543
+ #### Parallel Feature Development
544
+
290
545
  ```bash
291
- # Option 1: GitHub PR (recommended)
292
- cd ../your-project-staff/bezos
293
- gh pr create --title "Add login feature" --body "Authentication implementation"
294
-
295
- # Option 2: Local merge
296
- cd ../your-project
297
- git merge bezos/feature-login
298
- git merge musk/api-v2
299
- # Each workspace keeps working independently!
546
+ # Create tickets for each feature
547
+ prlt ticket create --title "Add OAuth" --category feature
548
+ prlt ticket create --title "Add API rate limiting" --category feature
549
+ prlt ticket create --title "Add email notifications" --category feature
550
+
551
+ # Spawn all three in parallel (Docker for isolation)
552
+ prlt work spawn TKT-001 TKT-002 TKT-003 --mode docker
553
+
554
+ # Watch the board as they work
555
+ prlt board watch
300
556
  ```
301
557
 
302
- ---
558
+ Three agents, three branches, three PRs. You review and merge.
303
559
 
304
- ## 🌟 Why This Design Pattern?
560
+ #### Bug Bash
305
561
 
306
- ### ❌ **Traditional Single Workspace**
307
562
  ```bash
308
- # One directory, constant context switching
309
- git checkout -b feature-1
310
- # Work on feature 1...
311
- git stash # Have to stash to switch
312
- git checkout -b feature-2
313
- # Lost context, files changed, AI confused...
563
+ # Spawn all bugs at once
564
+ prlt work spawn --all --column Backlog --category bug
565
+
566
+ # Or pick specific ones
567
+ prlt work spawn TKT-010 TKT-011 TKT-012
314
568
  ```
315
569
 
316
- ### βœ… **Multiple Workspaces, One Machine**
317
- ```bash
318
- # Set up workspaces on your local machine
319
- prlt hire bezos musk gates
570
+ #### Grooming Session
320
571
 
321
- # Each workspace ready for AI or manual work
322
- prlt staff
323
- # πŸ’° BEZOS: βœ… Cursor session 1 β†’ ../project-staff/bezos
324
- # πŸ’° MUSK: βœ… Claude Code session β†’ ../project-staff/musk
325
- # πŸ’° GATES: βœ… Your manual edits β†’ ../project-staff/gates
572
+ Have an agent refine ticket requirements:
326
573
 
327
- # Three workspaces, three features, all on your machine!
574
+ ```bash
575
+ prlt work start TKT-042 --action groom
328
576
  ```
329
577
 
330
- **Scale your solo development: Multiple workspaces, parallel progress, zero stashing!** πŸŽ‰
578
+ Agent adds acceptance criteria, subtasks, estimates.
331
579
 
332
580
  ---
333
581
 
582
+ ## Environment Variables
334
583
 
335
- ## πŸ† Perfect For
584
+ | Variable | Purpose |
585
+ | ------------------- | ----------------------------- |
586
+ | `GITHUB_TOKEN` | GitHub operations (PRs, etc.) |
336
587
 
337
- - **Running Multiple Cursor Sessions** - Open 3+ Cursor windows, each editing a different workspace/feature
338
- - **Parallel Claude Code Instances** - Launch multiple Claude Code sessions working on separate tasks
339
- - **Concurrent CLI Agents** - Run Codex, Aider, or other CLI agents simultaneously in different workspaces
340
- - **Mixed AI Tools** - Cursor in one workspace, Claude Code in another, Copilot in a third
341
- - **Scaling Solo Development** - One developer running multiple AI sessions on their machine
342
- - **Rapid Prototyping** - Each workspace explores different approaches without affecting others
588
+ Claude Code handles its own authentication via `claude login`.
343
589
 
344
590
  ---
345
591
 
346
- ## πŸš€ Contributing & Releases
592
+ ## Requirements
593
+
594
+ - **Node.js 18+**
595
+ - **Git**
596
+ - **Claude Code** (`claude login` to authenticate)
597
+ - **SQLite**
598
+ - **Tmux** (session persistence)
599
+ - **Docker** (optionalβ€”for isolated execution)
347
600
 
348
- See [RELEASE.md](./RELEASE.md) for the release process.
601
+ ---
349
602
 
350
- ## πŸ“œ License
603
+ ## Support
351
604
 
352
- MIT License - Because the revolutions is open source.
605
+ - **Discord**: [discord.gg/tmZyjNNSvw](https://discord.gg/tmZyjNNSvw)
606
+ - **GitHub Issues**: [Report bugs or request features](https://github.com/chrismcdermut/proletariat-cli/issues)
607
+ - **LinkedIn**: [Christopher McDermut](https://www.linkedin.com/in/christopher-mcdermut/)
353
608
 
354
609
  ---
355
610
 
356
- <div align="center">
611
+ ## License
357
612
 
358
- **✊ WORKERS OF THE CODEBASE, UNITE! ✊**
613
+ Apache 2.0
359
614
 
360
- *The simplest, most fun git worktree manager in existence!*
615
+ ---
361
616
 
362
617
  [![npm version](https://img.shields.io/npm/v/@proletariat/cli.svg)](https://www.npmjs.com/package/@proletariat/cli)
363
- [![Downloads](https://img.shields.io/npm/dm/@proletariat/cli.svg)](https://npmjs.org/package/@proletariat/cli)
364
- [![git-worktree](https://img.shields.io/badge/git--worktree-themed-red.svg)](https://github.com/chrismcdermut/proletariat-cli)
618
+ [![Downloads](https://img.shields.io/npm/dm/@proletariat/cli.svg)](https://www.npmjs.com/package/@proletariat/cli)
619
+ [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](LICENSE)
365
620
 
366
- **[⭐ Star on GitHub](https://github.com/chrismcdermut/proletariat-cli) β€’ [πŸ“¦ Install from NPM](https://www.npmjs.com/package/@proletariat/cli) β€’ [πŸ› Report Issues](https://github.com/chrismcdermut/proletariat-cli/issues)**
621
+ [Star on GitHub](https://github.com/chrismcdermut/proletariat) | [Install from NPM](https://www.npmjs.com/package/@proletariat/cli) | [Report Issues](https://github.com/chrismcdermut/proletariat/issues)
367
622
 
368
- </div>
623
+ Made with βš’οΈ by the proletariat.