@proletariat/cli 0.3.51 → 0.3.53

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 (883) hide show
  1. package/README.md +28 -0
  2. package/bin/run.js +21 -11
  3. package/dist/commands/action/create.js +1 -0
  4. package/dist/commands/action/create.js.map +1 -0
  5. package/dist/commands/action/delete.js +1 -0
  6. package/dist/commands/action/delete.js.map +1 -0
  7. package/dist/commands/action/index.js +1 -0
  8. package/dist/commands/action/index.js.map +1 -0
  9. package/dist/commands/action/list.js +1 -0
  10. package/dist/commands/action/list.js.map +1 -0
  11. package/dist/commands/action/run.js +1 -0
  12. package/dist/commands/action/run.js.map +1 -0
  13. package/dist/commands/action/show.js +1 -0
  14. package/dist/commands/action/show.js.map +1 -0
  15. package/dist/commands/action/update.js +1 -0
  16. package/dist/commands/action/update.js.map +1 -0
  17. package/dist/commands/agent/auth.js +1 -0
  18. package/dist/commands/agent/auth.js.map +1 -0
  19. package/dist/commands/agent/cleanup.js +1 -0
  20. package/dist/commands/agent/cleanup.js.map +1 -0
  21. package/dist/commands/agent/discover.js +1 -0
  22. package/dist/commands/agent/discover.js.map +1 -0
  23. package/dist/commands/agent/index.js +1 -0
  24. package/dist/commands/agent/index.js.map +1 -0
  25. package/dist/commands/agent/list.js +1 -0
  26. package/dist/commands/agent/list.js.map +1 -0
  27. package/dist/commands/agent/login.js +1 -0
  28. package/dist/commands/agent/login.js.map +1 -0
  29. package/dist/commands/agent/rebuild.js +1 -0
  30. package/dist/commands/agent/rebuild.js.map +1 -0
  31. package/dist/commands/agent/remove.js +1 -0
  32. package/dist/commands/agent/remove.js.map +1 -0
  33. package/dist/commands/agent/restart.js +1 -0
  34. package/dist/commands/agent/restart.js.map +1 -0
  35. package/dist/commands/agent/shell.js +5 -1
  36. package/dist/commands/agent/shell.js.map +1 -0
  37. package/dist/commands/agent/staff/add.js +1 -0
  38. package/dist/commands/agent/staff/add.js.map +1 -0
  39. package/dist/commands/agent/staff/index.js +1 -0
  40. package/dist/commands/agent/staff/index.js.map +1 -0
  41. package/dist/commands/agent/staff/list.js +1 -0
  42. package/dist/commands/agent/staff/list.js.map +1 -0
  43. package/dist/commands/agent/staff/remove.js +1 -0
  44. package/dist/commands/agent/staff/remove.js.map +1 -0
  45. package/dist/commands/agent/status.js +2 -0
  46. package/dist/commands/agent/status.js.map +1 -0
  47. package/dist/commands/agent/themes/add-names.js +1 -0
  48. package/dist/commands/agent/themes/add-names.js.map +1 -0
  49. package/dist/commands/agent/themes/create.js +1 -0
  50. package/dist/commands/agent/themes/create.js.map +1 -0
  51. package/dist/commands/agent/themes/index.js +1 -0
  52. package/dist/commands/agent/themes/index.js.map +1 -0
  53. package/dist/commands/agent/themes/list.js +1 -0
  54. package/dist/commands/agent/themes/list.js.map +1 -0
  55. package/dist/commands/agent/themes/set.js +1 -0
  56. package/dist/commands/agent/themes/set.js.map +1 -0
  57. package/dist/commands/agent/visit.js +1 -0
  58. package/dist/commands/agent/visit.js.map +1 -0
  59. package/dist/commands/agents/themes/add-names.js +1 -0
  60. package/dist/commands/agents/themes/add-names.js.map +1 -0
  61. package/dist/commands/agents/themes/create.js +1 -0
  62. package/dist/commands/agents/themes/create.js.map +1 -0
  63. package/dist/commands/agents/themes/list.js +1 -0
  64. package/dist/commands/agents/themes/list.js.map +1 -0
  65. package/dist/commands/asana/connect.d.ts +15 -0
  66. package/dist/commands/asana/connect.js +268 -0
  67. package/dist/commands/asana/connect.js.map +1 -0
  68. package/dist/commands/asana/sync.d.ts +15 -0
  69. package/dist/commands/asana/sync.js +190 -0
  70. package/dist/commands/asana/sync.js.map +1 -0
  71. package/dist/commands/autocomplete/setup.js +1 -0
  72. package/dist/commands/autocomplete/setup.js.map +1 -0
  73. package/dist/commands/board/index.js +1 -0
  74. package/dist/commands/board/index.js.map +1 -0
  75. package/dist/commands/board/view.js +1 -0
  76. package/dist/commands/board/view.js.map +1 -0
  77. package/dist/commands/board/watch.js +1 -0
  78. package/dist/commands/board/watch.js.map +1 -0
  79. package/dist/commands/branch/create.js +1 -0
  80. package/dist/commands/branch/create.js.map +1 -0
  81. package/dist/commands/branch/index.js +1 -0
  82. package/dist/commands/branch/index.js.map +1 -0
  83. package/dist/commands/branch/list.js +1 -0
  84. package/dist/commands/branch/list.js.map +1 -0
  85. package/dist/commands/branch/validate.js +1 -0
  86. package/dist/commands/branch/validate.js.map +1 -0
  87. package/dist/commands/branch/where.js +1 -0
  88. package/dist/commands/branch/where.js.map +1 -0
  89. package/dist/commands/caffeinate/index.js +1 -0
  90. package/dist/commands/caffeinate/index.js.map +1 -0
  91. package/dist/commands/caffeinate/start.js +1 -0
  92. package/dist/commands/caffeinate/start.js.map +1 -0
  93. package/dist/commands/caffeinate/status.js +1 -0
  94. package/dist/commands/caffeinate/status.js.map +1 -0
  95. package/dist/commands/caffeinate/stop.js +1 -0
  96. package/dist/commands/caffeinate/stop.js.map +1 -0
  97. package/dist/commands/category/create.js +1 -0
  98. package/dist/commands/category/create.js.map +1 -0
  99. package/dist/commands/category/delete.js +1 -0
  100. package/dist/commands/category/delete.js.map +1 -0
  101. package/dist/commands/category/index.js +1 -0
  102. package/dist/commands/category/index.js.map +1 -0
  103. package/dist/commands/category/list.js +1 -0
  104. package/dist/commands/category/list.js.map +1 -0
  105. package/dist/commands/category/rename.js +1 -0
  106. package/dist/commands/category/rename.js.map +1 -0
  107. package/dist/commands/claude/index.js +11 -5
  108. package/dist/commands/claude/index.js.map +1 -0
  109. package/dist/commands/claude/open.js +1 -0
  110. package/dist/commands/claude/open.js.map +1 -0
  111. package/dist/commands/commit.js +1 -0
  112. package/dist/commands/commit.js.map +1 -0
  113. package/dist/commands/config/index.js +8 -1
  114. package/dist/commands/config/index.js.map +1 -0
  115. package/dist/commands/diet.js +1 -0
  116. package/dist/commands/diet.js.map +1 -0
  117. package/dist/commands/docker/clean.js +1 -0
  118. package/dist/commands/docker/clean.js.map +1 -0
  119. package/dist/commands/docker/index.js +1 -0
  120. package/dist/commands/docker/index.js.map +1 -0
  121. package/dist/commands/docker/list.js +1 -0
  122. package/dist/commands/docker/list.js.map +1 -0
  123. package/dist/commands/docker/logs.js +4 -1
  124. package/dist/commands/docker/logs.js.map +1 -0
  125. package/dist/commands/docker/prune.js +1 -0
  126. package/dist/commands/docker/prune.js.map +1 -0
  127. package/dist/commands/docker/restart.js +1 -0
  128. package/dist/commands/docker/restart.js.map +1 -0
  129. package/dist/commands/docker/shell.js +4 -1
  130. package/dist/commands/docker/shell.js.map +1 -0
  131. package/dist/commands/docker/start.js +1 -0
  132. package/dist/commands/docker/start.js.map +1 -0
  133. package/dist/commands/docker/status.js +1 -0
  134. package/dist/commands/docker/status.js.map +1 -0
  135. package/dist/commands/docker/stop.js +1 -0
  136. package/dist/commands/docker/stop.js.map +1 -0
  137. package/dist/commands/docker/sync.js +1 -0
  138. package/dist/commands/docker/sync.js.map +1 -0
  139. package/dist/commands/epic/activate.js +1 -0
  140. package/dist/commands/epic/activate.js.map +1 -0
  141. package/dist/commands/epic/archive.js +1 -0
  142. package/dist/commands/epic/archive.js.map +1 -0
  143. package/dist/commands/epic/create.js +1 -0
  144. package/dist/commands/epic/create.js.map +1 -0
  145. package/dist/commands/epic/delete.js +1 -0
  146. package/dist/commands/epic/delete.js.map +1 -0
  147. package/dist/commands/epic/index.js +1 -0
  148. package/dist/commands/epic/index.js.map +1 -0
  149. package/dist/commands/epic/list.js +1 -0
  150. package/dist/commands/epic/list.js.map +1 -0
  151. package/dist/commands/epic/move.js +1 -0
  152. package/dist/commands/epic/move.js.map +1 -0
  153. package/dist/commands/epic/progress.js +1 -0
  154. package/dist/commands/epic/progress.js.map +1 -0
  155. package/dist/commands/epic/project.js +1 -0
  156. package/dist/commands/epic/project.js.map +1 -0
  157. package/dist/commands/epic/reorder.js +1 -0
  158. package/dist/commands/epic/reorder.js.map +1 -0
  159. package/dist/commands/epic/show.js +1 -0
  160. package/dist/commands/epic/show.js.map +1 -0
  161. package/dist/commands/epic/spec.js +1 -0
  162. package/dist/commands/epic/spec.js.map +1 -0
  163. package/dist/commands/epic/ticket.js +1 -0
  164. package/dist/commands/epic/ticket.js.map +1 -0
  165. package/dist/commands/epic/view.js +1 -0
  166. package/dist/commands/epic/view.js.map +1 -0
  167. package/dist/commands/execution/config.js +1 -0
  168. package/dist/commands/execution/config.js.map +1 -0
  169. package/dist/commands/execution/index.js +1 -0
  170. package/dist/commands/execution/index.js.map +1 -0
  171. package/dist/commands/execution/kill.js +1 -0
  172. package/dist/commands/execution/kill.js.map +1 -0
  173. package/dist/commands/execution/list.js +4 -0
  174. package/dist/commands/execution/list.js.map +1 -0
  175. package/dist/commands/execution/logs.js +4 -5
  176. package/dist/commands/execution/logs.js.map +1 -0
  177. package/dist/commands/execution/stop.js +1 -0
  178. package/dist/commands/execution/stop.js.map +1 -0
  179. package/dist/commands/execution/view.js +11 -0
  180. package/dist/commands/execution/view.js.map +1 -0
  181. package/dist/commands/feedback/index.js +1 -0
  182. package/dist/commands/feedback/index.js.map +1 -0
  183. package/dist/commands/feedback/list.js +1 -0
  184. package/dist/commands/feedback/list.js.map +1 -0
  185. package/dist/commands/feedback/submit.js +1 -0
  186. package/dist/commands/feedback/submit.js.map +1 -0
  187. package/dist/commands/feedback/view.js +1 -0
  188. package/dist/commands/feedback/view.js.map +1 -0
  189. package/dist/commands/gh/index.js +1 -0
  190. package/dist/commands/gh/index.js.map +1 -0
  191. package/dist/commands/gh/login.js +4 -1
  192. package/dist/commands/gh/login.js.map +1 -0
  193. package/dist/commands/gh/status.js +1 -0
  194. package/dist/commands/gh/status.js.map +1 -0
  195. package/dist/commands/gh/token.js +1 -0
  196. package/dist/commands/gh/token.js.map +1 -0
  197. package/dist/commands/init.js +1 -0
  198. package/dist/commands/init.js.map +1 -0
  199. package/dist/commands/label/create.js +1 -0
  200. package/dist/commands/label/create.js.map +1 -0
  201. package/dist/commands/label/delete.js +1 -0
  202. package/dist/commands/label/delete.js.map +1 -0
  203. package/dist/commands/label/group/create.js +1 -0
  204. package/dist/commands/label/group/create.js.map +1 -0
  205. package/dist/commands/label/group/list.js +1 -0
  206. package/dist/commands/label/group/list.js.map +1 -0
  207. package/dist/commands/label/index.js +1 -0
  208. package/dist/commands/label/index.js.map +1 -0
  209. package/dist/commands/label/list.js +1 -0
  210. package/dist/commands/label/list.js.map +1 -0
  211. package/dist/commands/linear/auth.d.ts +1 -0
  212. package/dist/commands/linear/auth.js +7 -5
  213. package/dist/commands/linear/auth.js.map +1 -0
  214. package/dist/commands/linear/connect.d.ts +17 -0
  215. package/dist/commands/linear/connect.js +298 -0
  216. package/dist/commands/linear/connect.js.map +1 -0
  217. package/dist/commands/linear/import.js +3 -2
  218. package/dist/commands/linear/import.js.map +1 -0
  219. package/dist/commands/linear/status.js +42 -5
  220. package/dist/commands/linear/status.js.map +1 -0
  221. package/dist/commands/linear/sync.js +3 -2
  222. package/dist/commands/linear/sync.js.map +1 -0
  223. package/dist/commands/link/create.js +1 -0
  224. package/dist/commands/link/create.js.map +1 -0
  225. package/dist/commands/link/index.js +1 -0
  226. package/dist/commands/link/index.js.map +1 -0
  227. package/dist/commands/link/list.js +1 -0
  228. package/dist/commands/link/list.js.map +1 -0
  229. package/dist/commands/link/remove.js +1 -0
  230. package/dist/commands/link/remove.js.map +1 -0
  231. package/dist/commands/mcp-server.js +1 -0
  232. package/dist/commands/mcp-server.js.map +1 -0
  233. package/dist/commands/monday/connect.d.ts +16 -0
  234. package/dist/commands/monday/connect.js +213 -0
  235. package/dist/commands/monday/connect.js.map +1 -0
  236. package/dist/commands/monday/sync.d.ts +14 -0
  237. package/dist/commands/monday/sync.js +179 -0
  238. package/dist/commands/monday/sync.js.map +1 -0
  239. package/dist/commands/orchestrator/attach.js +50 -13
  240. package/dist/commands/orchestrator/attach.js.map +1 -0
  241. package/dist/commands/orchestrator/index.js +1 -0
  242. package/dist/commands/orchestrator/index.js.map +1 -0
  243. package/dist/commands/orchestrator/start.d.ts +15 -0
  244. package/dist/commands/orchestrator/start.js +187 -13
  245. package/dist/commands/orchestrator/start.js.map +1 -0
  246. package/dist/commands/orchestrator/status.js +63 -28
  247. package/dist/commands/orchestrator/status.js.map +1 -0
  248. package/dist/commands/orchestrator/stop.js +65 -17
  249. package/dist/commands/orchestrator/stop.js.map +1 -0
  250. package/dist/commands/phase/create.js +1 -0
  251. package/dist/commands/phase/create.js.map +1 -0
  252. package/dist/commands/phase/delete.js +1 -0
  253. package/dist/commands/phase/delete.js.map +1 -0
  254. package/dist/commands/phase/list.js +1 -0
  255. package/dist/commands/phase/list.js.map +1 -0
  256. package/dist/commands/phase/move.js +1 -0
  257. package/dist/commands/phase/move.js.map +1 -0
  258. package/dist/commands/phase/template/apply.js +1 -0
  259. package/dist/commands/phase/template/apply.js.map +1 -0
  260. package/dist/commands/phase/template/create.js +1 -0
  261. package/dist/commands/phase/template/create.js.map +1 -0
  262. package/dist/commands/phase/template/delete.js +1 -0
  263. package/dist/commands/phase/template/delete.js.map +1 -0
  264. package/dist/commands/phase/template/list.js +1 -0
  265. package/dist/commands/phase/template/list.js.map +1 -0
  266. package/dist/commands/phase/template/update.js +1 -0
  267. package/dist/commands/phase/template/update.js.map +1 -0
  268. package/dist/commands/phase/update.js +1 -0
  269. package/dist/commands/phase/update.js.map +1 -0
  270. package/dist/commands/pmo/init.js +1 -0
  271. package/dist/commands/pmo/init.js.map +1 -0
  272. package/dist/commands/pr/create.js +4 -0
  273. package/dist/commands/pr/create.js.map +1 -0
  274. package/dist/commands/pr/index.js +1 -0
  275. package/dist/commands/pr/index.js.map +1 -0
  276. package/dist/commands/pr/link.js +1 -0
  277. package/dist/commands/pr/link.js.map +1 -0
  278. package/dist/commands/pr/list.js +1 -0
  279. package/dist/commands/pr/list.js.map +1 -0
  280. package/dist/commands/pr/status.js +1 -0
  281. package/dist/commands/pr/status.js.map +1 -0
  282. package/dist/commands/priority/add.js +1 -0
  283. package/dist/commands/priority/add.js.map +1 -0
  284. package/dist/commands/priority/list.js +1 -0
  285. package/dist/commands/priority/list.js.map +1 -0
  286. package/dist/commands/priority/remove.js +1 -0
  287. package/dist/commands/priority/remove.js.map +1 -0
  288. package/dist/commands/priority/set.js +1 -0
  289. package/dist/commands/priority/set.js.map +1 -0
  290. package/dist/commands/project/archive.js +1 -0
  291. package/dist/commands/project/archive.js.map +1 -0
  292. package/dist/commands/project/create.js +1 -0
  293. package/dist/commands/project/create.js.map +1 -0
  294. package/dist/commands/project/delete.js +1 -0
  295. package/dist/commands/project/delete.js.map +1 -0
  296. package/dist/commands/project/index.js +1 -0
  297. package/dist/commands/project/index.js.map +1 -0
  298. package/dist/commands/project/list.js +1 -0
  299. package/dist/commands/project/list.js.map +1 -0
  300. package/dist/commands/project/spec.js +1 -0
  301. package/dist/commands/project/spec.js.map +1 -0
  302. package/dist/commands/project/unarchive.js +1 -0
  303. package/dist/commands/project/unarchive.js.map +1 -0
  304. package/dist/commands/project/update.js +1 -0
  305. package/dist/commands/project/update.js.map +1 -0
  306. package/dist/commands/project/view.js +1 -0
  307. package/dist/commands/project/view.js.map +1 -0
  308. package/dist/commands/pull.js +1 -0
  309. package/dist/commands/pull.js.map +1 -0
  310. package/dist/commands/qa/index.js +11 -5
  311. package/dist/commands/qa/index.js.map +1 -0
  312. package/dist/commands/repo/add.js +1 -0
  313. package/dist/commands/repo/add.js.map +1 -0
  314. package/dist/commands/repo/create.js +1 -0
  315. package/dist/commands/repo/create.js.map +1 -0
  316. package/dist/commands/repo/index.js +1 -0
  317. package/dist/commands/repo/index.js.map +1 -0
  318. package/dist/commands/repo/list.js +1 -0
  319. package/dist/commands/repo/list.js.map +1 -0
  320. package/dist/commands/repo/remove.js +1 -0
  321. package/dist/commands/repo/remove.js.map +1 -0
  322. package/dist/commands/repo/view.js +1 -0
  323. package/dist/commands/repo/view.js.map +1 -0
  324. package/dist/commands/roadmap/add-project.js +1 -0
  325. package/dist/commands/roadmap/add-project.js.map +1 -0
  326. package/dist/commands/roadmap/create.js +1 -0
  327. package/dist/commands/roadmap/create.js.map +1 -0
  328. package/dist/commands/roadmap/delete.js +1 -0
  329. package/dist/commands/roadmap/delete.js.map +1 -0
  330. package/dist/commands/roadmap/generate.js +1 -0
  331. package/dist/commands/roadmap/generate.js.map +1 -0
  332. package/dist/commands/roadmap/index.js +1 -0
  333. package/dist/commands/roadmap/index.js.map +1 -0
  334. package/dist/commands/roadmap/list.js +1 -0
  335. package/dist/commands/roadmap/list.js.map +1 -0
  336. package/dist/commands/roadmap/remove-project.js +1 -0
  337. package/dist/commands/roadmap/remove-project.js.map +1 -0
  338. package/dist/commands/roadmap/reorder.js +1 -0
  339. package/dist/commands/roadmap/reorder.js.map +1 -0
  340. package/dist/commands/roadmap/update.js +1 -0
  341. package/dist/commands/roadmap/update.js.map +1 -0
  342. package/dist/commands/roadmap/view.js +1 -0
  343. package/dist/commands/roadmap/view.js.map +1 -0
  344. package/dist/commands/session/attach.js +1 -0
  345. package/dist/commands/session/attach.js.map +1 -0
  346. package/dist/commands/session/create.js +2 -1
  347. package/dist/commands/session/create.js.map +1 -0
  348. package/dist/commands/session/health.js +5 -7
  349. package/dist/commands/session/health.js.map +1 -0
  350. package/dist/commands/session/index.js +1 -0
  351. package/dist/commands/session/index.js.map +1 -0
  352. package/dist/commands/session/list.js +7 -5
  353. package/dist/commands/session/list.js.map +1 -0
  354. package/dist/commands/session/peek.js +1 -0
  355. package/dist/commands/session/peek.js.map +1 -0
  356. package/dist/commands/session/poke.js +20 -1
  357. package/dist/commands/session/poke.js.map +1 -0
  358. package/dist/commands/spec/create.js +1 -0
  359. package/dist/commands/spec/create.js.map +1 -0
  360. package/dist/commands/spec/delete.js +1 -0
  361. package/dist/commands/spec/delete.js.map +1 -0
  362. package/dist/commands/spec/edit.js +1 -0
  363. package/dist/commands/spec/edit.js.map +1 -0
  364. package/dist/commands/spec/index.js +1 -0
  365. package/dist/commands/spec/index.js.map +1 -0
  366. package/dist/commands/spec/link/depends.js +1 -0
  367. package/dist/commands/spec/link/depends.js.map +1 -0
  368. package/dist/commands/spec/link/index.js +1 -0
  369. package/dist/commands/spec/link/index.js.map +1 -0
  370. package/dist/commands/spec/link/remove.js +1 -0
  371. package/dist/commands/spec/link/remove.js.map +1 -0
  372. package/dist/commands/spec/list.js +1 -0
  373. package/dist/commands/spec/list.js.map +1 -0
  374. package/dist/commands/spec/plan.js +1 -0
  375. package/dist/commands/spec/plan.js.map +1 -0
  376. package/dist/commands/spec/ticket.js +1 -0
  377. package/dist/commands/spec/ticket.js.map +1 -0
  378. package/dist/commands/spec/view.js +1 -0
  379. package/dist/commands/spec/view.js.map +1 -0
  380. package/dist/commands/staff/add.js +1 -0
  381. package/dist/commands/staff/add.js.map +1 -0
  382. package/dist/commands/staff/index.js +1 -0
  383. package/dist/commands/staff/index.js.map +1 -0
  384. package/dist/commands/staff/list.js +1 -0
  385. package/dist/commands/staff/list.js.map +1 -0
  386. package/dist/commands/staff/remove.js +1 -0
  387. package/dist/commands/staff/remove.js.map +1 -0
  388. package/dist/commands/status/category.js +1 -0
  389. package/dist/commands/status/category.js.map +1 -0
  390. package/dist/commands/status/create.js +1 -0
  391. package/dist/commands/status/create.js.map +1 -0
  392. package/dist/commands/status/delete.js +1 -0
  393. package/dist/commands/status/delete.js.map +1 -0
  394. package/dist/commands/status/index.js +1 -0
  395. package/dist/commands/status/index.js.map +1 -0
  396. package/dist/commands/status/list.js +1 -0
  397. package/dist/commands/status/list.js.map +1 -0
  398. package/dist/commands/status/move.js +1 -0
  399. package/dist/commands/status/move.js.map +1 -0
  400. package/dist/commands/status/update.js +1 -0
  401. package/dist/commands/status/update.js.map +1 -0
  402. package/dist/commands/support/book.js +1 -0
  403. package/dist/commands/support/book.js.map +1 -0
  404. package/dist/commands/support/discord.js +1 -0
  405. package/dist/commands/support/discord.js.map +1 -0
  406. package/dist/commands/support/docs.js +1 -0
  407. package/dist/commands/support/docs.js.map +1 -0
  408. package/dist/commands/support/index.js +1 -0
  409. package/dist/commands/support/index.js.map +1 -0
  410. package/dist/commands/support/issues.js +1 -0
  411. package/dist/commands/support/issues.js.map +1 -0
  412. package/dist/commands/support/logs.js +1 -0
  413. package/dist/commands/support/logs.js.map +1 -0
  414. package/dist/commands/telemetry/disable.d.ts +10 -0
  415. package/dist/commands/telemetry/disable.js +27 -0
  416. package/dist/commands/telemetry/disable.js.map +1 -0
  417. package/dist/commands/telemetry/enable.d.ts +10 -0
  418. package/dist/commands/telemetry/enable.js +27 -0
  419. package/dist/commands/telemetry/enable.js.map +1 -0
  420. package/dist/commands/telemetry/index.d.ts +10 -0
  421. package/dist/commands/telemetry/index.js +41 -0
  422. package/dist/commands/telemetry/index.js.map +1 -0
  423. package/dist/commands/telemetry/status.d.ts +10 -0
  424. package/dist/commands/telemetry/status.js +42 -0
  425. package/dist/commands/telemetry/status.js.map +1 -0
  426. package/dist/commands/template/apply.js +1 -0
  427. package/dist/commands/template/apply.js.map +1 -0
  428. package/dist/commands/template/create.js +1 -0
  429. package/dist/commands/template/create.js.map +1 -0
  430. package/dist/commands/template/delete.js +1 -0
  431. package/dist/commands/template/delete.js.map +1 -0
  432. package/dist/commands/template/index.js +1 -0
  433. package/dist/commands/template/index.js.map +1 -0
  434. package/dist/commands/template/list.js +1 -0
  435. package/dist/commands/template/list.js.map +1 -0
  436. package/dist/commands/template/save.js +1 -0
  437. package/dist/commands/template/save.js.map +1 -0
  438. package/dist/commands/template/update.js +1 -0
  439. package/dist/commands/template/update.js.map +1 -0
  440. package/dist/commands/terminal/title.js +1 -0
  441. package/dist/commands/terminal/title.js.map +1 -0
  442. package/dist/commands/theme/add-names.js +1 -0
  443. package/dist/commands/theme/add-names.js.map +1 -0
  444. package/dist/commands/theme/create.js +1 -0
  445. package/dist/commands/theme/create.js.map +1 -0
  446. package/dist/commands/theme/index.js +1 -0
  447. package/dist/commands/theme/index.js.map +1 -0
  448. package/dist/commands/theme/list.js +1 -0
  449. package/dist/commands/theme/list.js.map +1 -0
  450. package/dist/commands/theme/set.js +1 -0
  451. package/dist/commands/theme/set.js.map +1 -0
  452. package/dist/commands/ticket/bulk.js +1 -0
  453. package/dist/commands/ticket/bulk.js.map +1 -0
  454. package/dist/commands/ticket/category.js +1 -0
  455. package/dist/commands/ticket/category.js.map +1 -0
  456. package/dist/commands/ticket/complete.js +1 -0
  457. package/dist/commands/ticket/complete.js.map +1 -0
  458. package/dist/commands/ticket/create.js +1 -0
  459. package/dist/commands/ticket/create.js.map +1 -0
  460. package/dist/commands/ticket/delete.js +1 -0
  461. package/dist/commands/ticket/delete.js.map +1 -0
  462. package/dist/commands/ticket/edit.js +1 -0
  463. package/dist/commands/ticket/edit.js.map +1 -0
  464. package/dist/commands/ticket/epic.js +1 -0
  465. package/dist/commands/ticket/epic.js.map +1 -0
  466. package/dist/commands/ticket/index.js +1 -0
  467. package/dist/commands/ticket/index.js.map +1 -0
  468. package/dist/commands/ticket/link/block.js +1 -0
  469. package/dist/commands/ticket/link/block.js.map +1 -0
  470. package/dist/commands/ticket/link/duplicates.js +1 -0
  471. package/dist/commands/ticket/link/duplicates.js.map +1 -0
  472. package/dist/commands/ticket/link/index.js +1 -0
  473. package/dist/commands/ticket/link/index.js.map +1 -0
  474. package/dist/commands/ticket/link/relates.js +1 -0
  475. package/dist/commands/ticket/link/relates.js.map +1 -0
  476. package/dist/commands/ticket/list.js +1 -0
  477. package/dist/commands/ticket/list.js.map +1 -0
  478. package/dist/commands/ticket/move.js +1 -0
  479. package/dist/commands/ticket/move.js.map +1 -0
  480. package/dist/commands/ticket/project.js +1 -0
  481. package/dist/commands/ticket/project.js.map +1 -0
  482. package/dist/commands/ticket/reassign.js +1 -0
  483. package/dist/commands/ticket/reassign.js.map +1 -0
  484. package/dist/commands/ticket/resolve.js +1 -0
  485. package/dist/commands/ticket/resolve.js.map +1 -0
  486. package/dist/commands/ticket/show.js +1 -0
  487. package/dist/commands/ticket/show.js.map +1 -0
  488. package/dist/commands/ticket/spec.js +1 -0
  489. package/dist/commands/ticket/spec.js.map +1 -0
  490. package/dist/commands/ticket/status.js +1 -0
  491. package/dist/commands/ticket/status.js.map +1 -0
  492. package/dist/commands/ticket/template/apply.js +1 -0
  493. package/dist/commands/ticket/template/apply.js.map +1 -0
  494. package/dist/commands/ticket/template/delete.js +1 -0
  495. package/dist/commands/ticket/template/delete.js.map +1 -0
  496. package/dist/commands/ticket/template/list.js +1 -0
  497. package/dist/commands/ticket/template/list.js.map +1 -0
  498. package/dist/commands/ticket/template/save.js +1 -0
  499. package/dist/commands/ticket/template/save.js.map +1 -0
  500. package/dist/commands/ticket/update.js +1 -0
  501. package/dist/commands/ticket/update.js.map +1 -0
  502. package/dist/commands/ticket/view.js +1 -0
  503. package/dist/commands/ticket/view.js.map +1 -0
  504. package/dist/commands/whoami.js +1 -0
  505. package/dist/commands/whoami.js.map +1 -0
  506. package/dist/commands/work/complete.js +6 -0
  507. package/dist/commands/work/complete.js.map +1 -0
  508. package/dist/commands/work/index.js +8 -0
  509. package/dist/commands/work/index.js.map +1 -0
  510. package/dist/commands/work/jira.d.ts +28 -0
  511. package/dist/commands/work/jira.js +226 -0
  512. package/dist/commands/work/jira.js.map +1 -0
  513. package/dist/commands/work/linear.js +1 -0
  514. package/dist/commands/work/linear.js.map +1 -0
  515. package/dist/commands/work/ready.js +1 -0
  516. package/dist/commands/work/ready.js.map +1 -0
  517. package/dist/commands/work/resolve.js +1 -0
  518. package/dist/commands/work/resolve.js.map +1 -0
  519. package/dist/commands/work/review.js +1 -0
  520. package/dist/commands/work/review.js.map +1 -0
  521. package/dist/commands/work/revise.js +1 -0
  522. package/dist/commands/work/revise.js.map +1 -0
  523. package/dist/commands/work/source/set.d.ts +12 -0
  524. package/dist/commands/work/source/set.js +53 -0
  525. package/dist/commands/work/source/set.js.map +1 -0
  526. package/dist/commands/work/source.d.ts +11 -0
  527. package/dist/commands/work/source.js +54 -0
  528. package/dist/commands/work/source.js.map +1 -0
  529. package/dist/commands/work/spawn-all.js +1 -0
  530. package/dist/commands/work/spawn-all.js.map +1 -0
  531. package/dist/commands/work/spawn.d.ts +6 -0
  532. package/dist/commands/work/spawn.js +344 -34
  533. package/dist/commands/work/spawn.js.map +1 -0
  534. package/dist/commands/work/start.d.ts +9 -0
  535. package/dist/commands/work/start.js +619 -228
  536. package/dist/commands/work/start.js.map +1 -0
  537. package/dist/commands/work/status.js +1 -0
  538. package/dist/commands/work/status.js.map +1 -0
  539. package/dist/commands/work/watch.js +5 -8
  540. package/dist/commands/work/watch.js.map +1 -0
  541. package/dist/commands/workflow/create.js +1 -0
  542. package/dist/commands/workflow/create.js.map +1 -0
  543. package/dist/commands/workflow/delete.js +1 -0
  544. package/dist/commands/workflow/delete.js.map +1 -0
  545. package/dist/commands/workflow/index.js +1 -0
  546. package/dist/commands/workflow/index.js.map +1 -0
  547. package/dist/commands/workflow/list.js +1 -0
  548. package/dist/commands/workflow/list.js.map +1 -0
  549. package/dist/commands/workflow/show.js +1 -0
  550. package/dist/commands/workflow/show.js.map +1 -0
  551. package/dist/commands/workflow/switch.js +1 -0
  552. package/dist/commands/workflow/switch.js.map +1 -0
  553. package/dist/commands/workflow/view.js +1 -0
  554. package/dist/commands/workflow/view.js.map +1 -0
  555. package/dist/commands/workspace/add.js +1 -0
  556. package/dist/commands/workspace/add.js.map +1 -0
  557. package/dist/commands/workspace/list.js +1 -0
  558. package/dist/commands/workspace/list.js.map +1 -0
  559. package/dist/commands/workspace/prune.js +1 -0
  560. package/dist/commands/workspace/prune.js.map +1 -0
  561. package/dist/commands/workspace/remove.js +1 -0
  562. package/dist/commands/workspace/remove.js.map +1 -0
  563. package/dist/commands/workspace/use.js +1 -0
  564. package/dist/commands/workspace/use.js.map +1 -0
  565. package/dist/hooks/init.d.ts +6 -1
  566. package/dist/hooks/init.js +34 -2
  567. package/dist/hooks/init.js.map +1 -0
  568. package/dist/hooks/postrun.d.ts +9 -0
  569. package/dist/hooks/postrun.js +30 -0
  570. package/dist/hooks/postrun.js.map +1 -0
  571. package/dist/index.js +1 -0
  572. package/dist/index.js.map +1 -0
  573. package/dist/lib/agents/commands.js +1 -0
  574. package/dist/lib/agents/commands.js.map +1 -0
  575. package/dist/lib/agents/index.js +1 -0
  576. package/dist/lib/agents/index.js.map +1 -0
  577. package/dist/lib/asana/client.d.ts +15 -0
  578. package/dist/lib/asana/client.js +121 -0
  579. package/dist/lib/asana/client.js.map +1 -0
  580. package/dist/lib/asana/config.d.ts +9 -0
  581. package/dist/lib/asana/config.js +62 -0
  582. package/dist/lib/asana/config.js.map +1 -0
  583. package/dist/lib/asana/index.d.ts +5 -0
  584. package/dist/lib/asana/index.js +5 -0
  585. package/dist/lib/asana/index.js.map +1 -0
  586. package/dist/lib/asana/mapper.d.ts +13 -0
  587. package/dist/lib/asana/mapper.js +71 -0
  588. package/dist/lib/asana/mapper.js.map +1 -0
  589. package/dist/lib/asana/sync.d.ts +13 -0
  590. package/dist/lib/asana/sync.js +37 -0
  591. package/dist/lib/asana/sync.js.map +1 -0
  592. package/dist/lib/asana/types.d.ts +40 -0
  593. package/dist/lib/asana/types.js +2 -0
  594. package/dist/lib/asana/types.js.map +1 -0
  595. package/dist/lib/branch/index.js +1 -0
  596. package/dist/lib/branch/index.js.map +1 -0
  597. package/dist/lib/caffeinate.js +1 -0
  598. package/dist/lib/caffeinate.js.map +1 -0
  599. package/dist/lib/colors.js +1 -0
  600. package/dist/lib/colors.js.map +1 -0
  601. package/dist/lib/commands/docker-command.js +1 -0
  602. package/dist/lib/commands/docker-command.js.map +1 -0
  603. package/dist/lib/database/drizzle-schema.d.ts +393 -0
  604. package/dist/lib/database/drizzle-schema.js +46 -0
  605. package/dist/lib/database/drizzle-schema.js.map +1 -0
  606. package/dist/lib/database/drizzle.js +1 -0
  607. package/dist/lib/database/drizzle.js.map +1 -0
  608. package/dist/lib/database/index.js +1 -0
  609. package/dist/lib/database/index.js.map +1 -0
  610. package/dist/lib/database/native-validation.js +1 -0
  611. package/dist/lib/database/native-validation.js.map +1 -0
  612. package/dist/lib/docker/resolve.js +1 -0
  613. package/dist/lib/docker/resolve.js.map +1 -0
  614. package/dist/lib/execution/codex-adapter.js +1 -0
  615. package/dist/lib/execution/codex-adapter.js.map +1 -0
  616. package/dist/lib/execution/config.d.ts +10 -0
  617. package/dist/lib/execution/config.js +20 -0
  618. package/dist/lib/execution/config.js.map +1 -0
  619. package/dist/lib/execution/context.js +1 -0
  620. package/dist/lib/execution/context.js.map +1 -0
  621. package/dist/lib/execution/devcontainer.js +1 -0
  622. package/dist/lib/execution/devcontainer.js.map +1 -0
  623. package/dist/lib/execution/index.js +1 -0
  624. package/dist/lib/execution/index.js.map +1 -0
  625. package/dist/lib/execution/runners.d.ts +10 -0
  626. package/dist/lib/execution/runners.js +162 -7
  627. package/dist/lib/execution/runners.js.map +1 -0
  628. package/dist/lib/execution/session-utils.js +1 -0
  629. package/dist/lib/execution/session-utils.js.map +1 -0
  630. package/dist/lib/execution/spawner.js +27 -0
  631. package/dist/lib/execution/spawner.js.map +1 -0
  632. package/dist/lib/execution/storage.d.ts +4 -0
  633. package/dist/lib/execution/storage.js +9 -3
  634. package/dist/lib/execution/storage.js.map +1 -0
  635. package/dist/lib/execution/types.d.ts +6 -0
  636. package/dist/lib/execution/types.js +1 -0
  637. package/dist/lib/execution/types.js.map +1 -0
  638. package/dist/lib/external-issues/adapters.d.ts +18 -1
  639. package/dist/lib/external-issues/adapters.js +50 -1
  640. package/dist/lib/external-issues/adapters.js.map +1 -0
  641. package/dist/lib/external-issues/index.d.ts +5 -1
  642. package/dist/lib/external-issues/index.js +8 -0
  643. package/dist/lib/external-issues/index.js.map +1 -0
  644. package/dist/lib/external-issues/jira.d.ts +23 -0
  645. package/dist/lib/external-issues/jira.js +224 -0
  646. package/dist/lib/external-issues/jira.js.map +1 -0
  647. package/dist/lib/external-issues/linear.js +17 -3
  648. package/dist/lib/external-issues/linear.js.map +1 -0
  649. package/dist/lib/external-issues/mapper.d.ts +3 -2
  650. package/dist/lib/external-issues/mapper.js +6 -2
  651. package/dist/lib/external-issues/mapper.js.map +1 -0
  652. package/dist/lib/external-issues/mapping-store.d.ts +12 -0
  653. package/dist/lib/external-issues/mapping-store.js +165 -0
  654. package/dist/lib/external-issues/mapping-store.js.map +1 -0
  655. package/dist/lib/external-issues/redact.d.ts +50 -0
  656. package/dist/lib/external-issues/redact.js +130 -0
  657. package/dist/lib/external-issues/redact.js.map +1 -0
  658. package/dist/lib/external-issues/types.d.ts +35 -1
  659. package/dist/lib/external-issues/types.js +1 -0
  660. package/dist/lib/external-issues/types.js.map +1 -0
  661. package/dist/lib/external-issues/validation.js +12 -0
  662. package/dist/lib/external-issues/validation.js.map +1 -0
  663. package/dist/lib/external-issues/work-start.d.ts +10 -0
  664. package/dist/lib/external-issues/work-start.js +13 -0
  665. package/dist/lib/external-issues/work-start.js.map +1 -0
  666. package/dist/lib/flags/index.js +1 -0
  667. package/dist/lib/flags/index.js.map +1 -0
  668. package/dist/lib/flags/resolver.js +4 -2
  669. package/dist/lib/flags/resolver.js.map +1 -0
  670. package/dist/lib/init/index.js +1 -0
  671. package/dist/lib/init/index.js.map +1 -0
  672. package/dist/lib/jira/config.d.ts +33 -0
  673. package/dist/lib/jira/config.js +97 -0
  674. package/dist/lib/jira/config.js.map +1 -0
  675. package/dist/lib/jira/index.d.ts +7 -0
  676. package/dist/lib/jira/index.js +7 -0
  677. package/dist/lib/jira/index.js.map +1 -0
  678. package/dist/lib/linear/client.js +1 -0
  679. package/dist/lib/linear/client.js.map +1 -0
  680. package/dist/lib/linear/config.js +1 -0
  681. package/dist/lib/linear/config.js.map +1 -0
  682. package/dist/lib/linear/index.js +1 -0
  683. package/dist/lib/linear/index.js.map +1 -0
  684. package/dist/lib/linear/mapper.d.ts +2 -0
  685. package/dist/lib/linear/mapper.js +67 -2
  686. package/dist/lib/linear/mapper.js.map +1 -0
  687. package/dist/lib/linear/sync.js +1 -0
  688. package/dist/lib/linear/sync.js.map +1 -0
  689. package/dist/lib/linear/types.js +1 -0
  690. package/dist/lib/linear/types.js.map +1 -0
  691. package/dist/lib/machine-config.js +1 -0
  692. package/dist/lib/machine-config.js.map +1 -0
  693. package/dist/lib/mcp/helpers.js +1 -0
  694. package/dist/lib/mcp/helpers.js.map +1 -0
  695. package/dist/lib/mcp/index.js +1 -0
  696. package/dist/lib/mcp/index.js.map +1 -0
  697. package/dist/lib/mcp/tools/action.js +1 -0
  698. package/dist/lib/mcp/tools/action.js.map +1 -0
  699. package/dist/lib/mcp/tools/board.js +1 -0
  700. package/dist/lib/mcp/tools/board.js.map +1 -0
  701. package/dist/lib/mcp/tools/category.js +1 -0
  702. package/dist/lib/mcp/tools/category.js.map +1 -0
  703. package/dist/lib/mcp/tools/cli-passthrough.js +1 -0
  704. package/dist/lib/mcp/tools/cli-passthrough.js.map +1 -0
  705. package/dist/lib/mcp/tools/diet.js +1 -0
  706. package/dist/lib/mcp/tools/diet.js.map +1 -0
  707. package/dist/lib/mcp/tools/epic.js +1 -0
  708. package/dist/lib/mcp/tools/epic.js.map +1 -0
  709. package/dist/lib/mcp/tools/index.js +1 -0
  710. package/dist/lib/mcp/tools/index.js.map +1 -0
  711. package/dist/lib/mcp/tools/label.js +1 -0
  712. package/dist/lib/mcp/tools/label.js.map +1 -0
  713. package/dist/lib/mcp/tools/phase.js +1 -0
  714. package/dist/lib/mcp/tools/phase.js.map +1 -0
  715. package/dist/lib/mcp/tools/project.js +1 -0
  716. package/dist/lib/mcp/tools/project.js.map +1 -0
  717. package/dist/lib/mcp/tools/roadmap.js +1 -0
  718. package/dist/lib/mcp/tools/roadmap.js.map +1 -0
  719. package/dist/lib/mcp/tools/spec.js +1 -0
  720. package/dist/lib/mcp/tools/spec.js.map +1 -0
  721. package/dist/lib/mcp/tools/status.js +1 -0
  722. package/dist/lib/mcp/tools/status.js.map +1 -0
  723. package/dist/lib/mcp/tools/template.js +1 -0
  724. package/dist/lib/mcp/tools/template.js.map +1 -0
  725. package/dist/lib/mcp/tools/ticket.js +1 -0
  726. package/dist/lib/mcp/tools/ticket.js.map +1 -0
  727. package/dist/lib/mcp/tools/tmux.js +1 -0
  728. package/dist/lib/mcp/tools/tmux.js.map +1 -0
  729. package/dist/lib/mcp/tools/view.js +1 -0
  730. package/dist/lib/mcp/tools/view.js.map +1 -0
  731. package/dist/lib/mcp/tools/work.js +1 -0
  732. package/dist/lib/mcp/tools/work.js.map +1 -0
  733. package/dist/lib/mcp/tools/workflow.js +1 -0
  734. package/dist/lib/mcp/tools/workflow.js.map +1 -0
  735. package/dist/lib/mcp/types.js +1 -0
  736. package/dist/lib/mcp/types.js.map +1 -0
  737. package/dist/lib/monday/client.d.ts +14 -0
  738. package/dist/lib/monday/client.js +114 -0
  739. package/dist/lib/monday/client.js.map +1 -0
  740. package/dist/lib/monday/config.d.ts +10 -0
  741. package/dist/lib/monday/config.js +65 -0
  742. package/dist/lib/monday/config.js.map +1 -0
  743. package/dist/lib/monday/index.d.ts +5 -0
  744. package/dist/lib/monday/index.js +5 -0
  745. package/dist/lib/monday/index.js.map +1 -0
  746. package/dist/lib/monday/mapper.d.ts +14 -0
  747. package/dist/lib/monday/mapper.js +90 -0
  748. package/dist/lib/monday/mapper.js.map +1 -0
  749. package/dist/lib/monday/sync.d.ts +13 -0
  750. package/dist/lib/monday/sync.js +46 -0
  751. package/dist/lib/monday/sync.js.map +1 -0
  752. package/dist/lib/monday/types.d.ts +38 -0
  753. package/dist/lib/monday/types.js +5 -0
  754. package/dist/lib/monday/types.js.map +1 -0
  755. package/dist/lib/multiline-input.js +1 -0
  756. package/dist/lib/multiline-input.js.map +1 -0
  757. package/dist/lib/pmo/base-command.js +8 -6
  758. package/dist/lib/pmo/base-command.js.map +1 -0
  759. package/dist/lib/pmo/create-spec-folders.js +1 -0
  760. package/dist/lib/pmo/create-spec-folders.js.map +1 -0
  761. package/dist/lib/pmo/diet.js +1 -0
  762. package/dist/lib/pmo/diet.js.map +1 -0
  763. package/dist/lib/pmo/epic-files.js +1 -0
  764. package/dist/lib/pmo/epic-files.js.map +1 -0
  765. package/dist/lib/pmo/find-pmo.js +1 -0
  766. package/dist/lib/pmo/find-pmo.js.map +1 -0
  767. package/dist/lib/pmo/index.js +1 -0
  768. package/dist/lib/pmo/index.js.map +1 -0
  769. package/dist/lib/pmo/markdown.js +1 -0
  770. package/dist/lib/pmo/markdown.js.map +1 -0
  771. package/dist/lib/pmo/pmo-context.js +1 -0
  772. package/dist/lib/pmo/pmo-context.js.map +1 -0
  773. package/dist/lib/pmo/schema.d.ts +10 -1
  774. package/dist/lib/pmo/schema.js +74 -0
  775. package/dist/lib/pmo/schema.js.map +1 -0
  776. package/dist/lib/pmo/spec-parser.js +1 -0
  777. package/dist/lib/pmo/spec-parser.js.map +1 -0
  778. package/dist/lib/pmo/spec-types.js +1 -0
  779. package/dist/lib/pmo/spec-types.js.map +1 -0
  780. package/dist/lib/pmo/storage/actions.js +1 -0
  781. package/dist/lib/pmo/storage/actions.js.map +1 -0
  782. package/dist/lib/pmo/storage/base.js +33 -0
  783. package/dist/lib/pmo/storage/base.js.map +1 -0
  784. package/dist/lib/pmo/storage/categories.js +1 -0
  785. package/dist/lib/pmo/storage/categories.js.map +1 -0
  786. package/dist/lib/pmo/storage/dependencies.js +1 -0
  787. package/dist/lib/pmo/storage/dependencies.js.map +1 -0
  788. package/dist/lib/pmo/storage/epics.js +1 -0
  789. package/dist/lib/pmo/storage/epics.js.map +1 -0
  790. package/dist/lib/pmo/storage/helpers.js +1 -0
  791. package/dist/lib/pmo/storage/helpers.js.map +1 -0
  792. package/dist/lib/pmo/storage/index.js +1 -0
  793. package/dist/lib/pmo/storage/index.js.map +1 -0
  794. package/dist/lib/pmo/storage/labels.js +1 -0
  795. package/dist/lib/pmo/storage/labels.js.map +1 -0
  796. package/dist/lib/pmo/storage/phases.js +1 -0
  797. package/dist/lib/pmo/storage/phases.js.map +1 -0
  798. package/dist/lib/pmo/storage/projects.js +1 -0
  799. package/dist/lib/pmo/storage/projects.js.map +1 -0
  800. package/dist/lib/pmo/storage/roadmaps.js +1 -0
  801. package/dist/lib/pmo/storage/roadmaps.js.map +1 -0
  802. package/dist/lib/pmo/storage/specs.js +1 -0
  803. package/dist/lib/pmo/storage/specs.js.map +1 -0
  804. package/dist/lib/pmo/storage/statuses.js +1 -0
  805. package/dist/lib/pmo/storage/statuses.js.map +1 -0
  806. package/dist/lib/pmo/storage/subtasks.js +1 -0
  807. package/dist/lib/pmo/storage/subtasks.js.map +1 -0
  808. package/dist/lib/pmo/storage/templates.js +1 -0
  809. package/dist/lib/pmo/storage/templates.js.map +1 -0
  810. package/dist/lib/pmo/storage/tickets.js +1 -0
  811. package/dist/lib/pmo/storage/tickets.js.map +1 -0
  812. package/dist/lib/pmo/storage/types.js +1 -0
  813. package/dist/lib/pmo/storage/types.js.map +1 -0
  814. package/dist/lib/pmo/storage/views.js +1 -0
  815. package/dist/lib/pmo/storage/views.js.map +1 -0
  816. package/dist/lib/pmo/storage-sqlite.js +1 -0
  817. package/dist/lib/pmo/storage-sqlite.js.map +1 -0
  818. package/dist/lib/pmo/sync-manager.js +1 -0
  819. package/dist/lib/pmo/sync-manager.js.map +1 -0
  820. package/dist/lib/pmo/templates-builtin.js +1 -0
  821. package/dist/lib/pmo/templates-builtin.js.map +1 -0
  822. package/dist/lib/pmo/types.js +1 -0
  823. package/dist/lib/pmo/types.js.map +1 -0
  824. package/dist/lib/pmo/utils.js +1 -0
  825. package/dist/lib/pmo/utils.js.map +1 -0
  826. package/dist/lib/pmo/watcher.d.ts +1 -1
  827. package/dist/lib/pmo/watcher.js +6 -7
  828. package/dist/lib/pmo/watcher.js.map +1 -0
  829. package/dist/lib/pr/index.js +1 -0
  830. package/dist/lib/pr/index.js.map +1 -0
  831. package/dist/lib/prompt-command.js +4 -2
  832. package/dist/lib/prompt-command.js.map +1 -0
  833. package/dist/lib/prompt-json.d.ts +16 -0
  834. package/dist/lib/prompt-json.js +1 -0
  835. package/dist/lib/prompt-json.js.map +1 -0
  836. package/dist/lib/repos/git.js +1 -0
  837. package/dist/lib/repos/git.js.map +1 -0
  838. package/dist/lib/repos/index.js +1 -0
  839. package/dist/lib/repos/index.js.map +1 -0
  840. package/dist/lib/signal-handler.d.ts +59 -0
  841. package/dist/lib/signal-handler.js +156 -0
  842. package/dist/lib/signal-handler.js.map +1 -0
  843. package/dist/lib/string-utils.js +1 -0
  844. package/dist/lib/string-utils.js.map +1 -0
  845. package/dist/lib/styles.js +1 -0
  846. package/dist/lib/styles.js.map +1 -0
  847. package/dist/lib/telemetry/analytics.d.ts +105 -0
  848. package/dist/lib/telemetry/analytics.js +289 -0
  849. package/dist/lib/telemetry/analytics.js.map +1 -0
  850. package/dist/lib/telemetry/feature-flags.d.ts +53 -0
  851. package/dist/lib/telemetry/feature-flags.js +83 -0
  852. package/dist/lib/telemetry/feature-flags.js.map +1 -0
  853. package/dist/lib/telemetry.d.ts +63 -0
  854. package/dist/lib/telemetry.js +217 -0
  855. package/dist/lib/telemetry.js.map +1 -0
  856. package/dist/lib/terminal.js +1 -0
  857. package/dist/lib/terminal.js.map +1 -0
  858. package/dist/lib/themes.js +1 -0
  859. package/dist/lib/themes.js.map +1 -0
  860. package/dist/lib/ui/BoardUI.js +1 -0
  861. package/dist/lib/ui/BoardUI.js.map +1 -0
  862. package/dist/lib/ui/ClaimTicketUI.js +1 -0
  863. package/dist/lib/ui/ClaimTicketUI.js.map +1 -0
  864. package/dist/lib/ui/CreateTicketUI.js +1 -0
  865. package/dist/lib/ui/CreateTicketUI.js.map +1 -0
  866. package/dist/lib/update-check.d.ts +83 -0
  867. package/dist/lib/update-check.js +275 -0
  868. package/dist/lib/update-check.js.map +1 -0
  869. package/dist/lib/update-prompt.d.ts +47 -0
  870. package/dist/lib/update-prompt.js +163 -0
  871. package/dist/lib/update-prompt.js.map +1 -0
  872. package/dist/lib/work-source/config.d.ts +14 -0
  873. package/dist/lib/work-source/config.js +79 -0
  874. package/dist/lib/work-source/config.js.map +1 -0
  875. package/dist/lib/work-source/index.d.ts +1 -0
  876. package/dist/lib/work-source/index.js +2 -0
  877. package/dist/lib/work-source/index.js.map +1 -0
  878. package/dist/lib/workspace-config.js +1 -0
  879. package/dist/lib/workspace-config.js.map +1 -0
  880. package/dist/lib/workspace.js +1 -0
  881. package/dist/lib/workspace.js.map +1 -0
  882. package/oclif.manifest.json +2164 -1331
  883. package/package.json +9 -9
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Product Analytics (Statsig) & Event Tracking
3
+ *
4
+ * Provides anonymous usage analytics for the CLI using Statsig client SDK.
5
+ * All data is anonymous — identified by a machine UUID only, no PII is ever sent.
6
+ *
7
+ * Telemetry can be disabled via:
8
+ * - `prlt telemetry disable`
9
+ * - `DO_NOT_TRACK=1` environment variable
10
+ * - `PRLT_TELEMETRY_DISABLED=1` environment variable
11
+ *
12
+ * Privacy:
13
+ * - Anonymous machine ID (UUID) stored in ~/.proletariat/telemetry.json
14
+ * - No file paths, usernames, or ticket content ever sent
15
+ * - Events are fired async and never block command execution
16
+ */
17
+ /**
18
+ * Check if telemetry is disabled by environment variables or config.
19
+ */
20
+ export declare function isTelemetryEnabled(): boolean;
21
+ /**
22
+ * Enable telemetry.
23
+ */
24
+ export declare function enableTelemetry(): void;
25
+ /**
26
+ * Disable telemetry.
27
+ */
28
+ export declare function disableTelemetry(): void;
29
+ /**
30
+ * Get current telemetry status for display.
31
+ */
32
+ export declare function getTelemetryStatus(): {
33
+ enabled: boolean;
34
+ machineId: string;
35
+ envOverride: boolean;
36
+ envVar?: string;
37
+ };
38
+ /**
39
+ * Get the anonymous machine ID for this installation.
40
+ */
41
+ export declare function getMachineId(): string;
42
+ /**
43
+ * Initialize the Statsig SDK. Called from the init hook.
44
+ * No-op if telemetry is disabled.
45
+ */
46
+ export declare function initAnalytics(version: string): Promise<void>;
47
+ /**
48
+ * Track an analytics event. Fire-and-forget — never blocks.
49
+ *
50
+ * @param eventName - Event name (e.g., 'command_run')
51
+ * @param value - Optional numeric or string value
52
+ * @param metadata - Event-specific metadata
53
+ */
54
+ export declare function trackEvent(eventName: string, value?: string | number | null, metadata?: Record<string, unknown> | null): void;
55
+ /**
56
+ * Track a command execution.
57
+ */
58
+ export declare function trackCommandRun(options: {
59
+ command: string;
60
+ durationMs: number;
61
+ success: boolean;
62
+ flags?: string[];
63
+ }): void;
64
+ /**
65
+ * Track an agent being spawned.
66
+ */
67
+ export declare function trackAgentSpawned(options: {
68
+ executor: string;
69
+ environment: string;
70
+ action: string;
71
+ ephemeral: boolean;
72
+ }): void;
73
+ /**
74
+ * Track an orchestrator being started.
75
+ */
76
+ export declare function trackOrchestratorStarted(options: {
77
+ executor: string;
78
+ name: string;
79
+ displayMode: string;
80
+ }): void;
81
+ /**
82
+ * Track work being completed.
83
+ */
84
+ export declare function trackWorkCompleted(options: {
85
+ durationMs: number;
86
+ prCreated: boolean;
87
+ }): void;
88
+ /**
89
+ * Track a PR being created.
90
+ */
91
+ export declare function trackPRCreated(options: {
92
+ source: 'prlt' | 'manual';
93
+ }): void;
94
+ /**
95
+ * Track an MCP tool call.
96
+ */
97
+ export declare function trackMCPToolCalled(options: {
98
+ toolName: string;
99
+ success: boolean;
100
+ }): void;
101
+ /**
102
+ * Flush pending events and shut down the Statsig client.
103
+ * Called from the postrun hook. Times out to avoid blocking CLI exit.
104
+ */
105
+ export declare function shutdownAnalytics(): Promise<void>;
@@ -0,0 +1,289 @@
1
+ /**
2
+ * Product Analytics (Statsig) & Event Tracking
3
+ *
4
+ * Provides anonymous usage analytics for the CLI using Statsig client SDK.
5
+ * All data is anonymous — identified by a machine UUID only, no PII is ever sent.
6
+ *
7
+ * Telemetry can be disabled via:
8
+ * - `prlt telemetry disable`
9
+ * - `DO_NOT_TRACK=1` environment variable
10
+ * - `PRLT_TELEMETRY_DISABLED=1` environment variable
11
+ *
12
+ * Privacy:
13
+ * - Anonymous machine ID (UUID) stored in ~/.proletariat/telemetry.json
14
+ * - No file paths, usernames, or ticket content ever sent
15
+ * - Events are fired async and never block command execution
16
+ */
17
+ import * as fs from 'node:fs';
18
+ import * as path from 'node:path';
19
+ import * as crypto from 'node:crypto';
20
+ import { getMachineConfigDir, ensureMachineConfigDir } from '../machine-config.js';
21
+ // Statsig client SDK key (public — safe to embed in open source repos)
22
+ const STATSIG_CLIENT_KEY = 'client-kvxMxRhn9NFSmH8orl7e2W9nYTfWVS7Kjf7yRTdIecc';
23
+ // Flush timeout — don't let analytics delay CLI exit
24
+ const FLUSH_TIMEOUT_MS = 2000;
25
+ // Module-level state
26
+ let statsigClient = null;
27
+ let telemetryConfig = null;
28
+ let cliVersion = null;
29
+ // ─── Telemetry Config ────────────────────────────────────────────────────────
30
+ function getTelemetryConfigPath() {
31
+ return path.join(getMachineConfigDir(), 'telemetry.json');
32
+ }
33
+ function readTelemetryConfig() {
34
+ if (telemetryConfig)
35
+ return telemetryConfig;
36
+ const configPath = getTelemetryConfigPath();
37
+ if (fs.existsSync(configPath)) {
38
+ try {
39
+ const content = fs.readFileSync(configPath, 'utf-8');
40
+ telemetryConfig = JSON.parse(content);
41
+ return telemetryConfig;
42
+ }
43
+ catch {
44
+ // Fall through to create new config
45
+ }
46
+ }
47
+ // Create new config with generated machine ID
48
+ telemetryConfig = {
49
+ enabled: true,
50
+ noticeShown: false,
51
+ machineId: crypto.randomUUID(),
52
+ createdAt: new Date().toISOString(),
53
+ updatedAt: new Date().toISOString(),
54
+ };
55
+ writeTelemetryConfig(telemetryConfig);
56
+ return telemetryConfig;
57
+ }
58
+ function writeTelemetryConfig(config) {
59
+ ensureMachineConfigDir();
60
+ const configPath = getTelemetryConfigPath();
61
+ const tempPath = `${configPath}.tmp.${process.pid}`;
62
+ try {
63
+ fs.writeFileSync(tempPath, JSON.stringify(config, null, 2), 'utf-8');
64
+ fs.renameSync(tempPath, configPath);
65
+ }
66
+ catch {
67
+ try {
68
+ if (fs.existsSync(tempPath))
69
+ fs.unlinkSync(tempPath);
70
+ }
71
+ catch {
72
+ // Ignore cleanup errors
73
+ }
74
+ }
75
+ }
76
+ // ─── Opt-out Detection ───────────────────────────────────────────────────────
77
+ /**
78
+ * Check if telemetry is disabled by environment variables or config.
79
+ */
80
+ export function isTelemetryEnabled() {
81
+ // Environment variable opt-outs (standard + prlt-specific)
82
+ if (process.env.DO_NOT_TRACK === '1' || process.env.DO_NOT_TRACK === 'true')
83
+ return false;
84
+ if (process.env.PRLT_TELEMETRY_DISABLED === '1' || process.env.PRLT_TELEMETRY_DISABLED === 'true')
85
+ return false;
86
+ // Config-based opt-out
87
+ const config = readTelemetryConfig();
88
+ return config.enabled;
89
+ }
90
+ /**
91
+ * Enable telemetry.
92
+ */
93
+ export function enableTelemetry() {
94
+ const config = readTelemetryConfig();
95
+ config.enabled = true;
96
+ config.updatedAt = new Date().toISOString();
97
+ telemetryConfig = config;
98
+ writeTelemetryConfig(config);
99
+ }
100
+ /**
101
+ * Disable telemetry.
102
+ */
103
+ export function disableTelemetry() {
104
+ const config = readTelemetryConfig();
105
+ config.enabled = false;
106
+ config.updatedAt = new Date().toISOString();
107
+ telemetryConfig = config;
108
+ writeTelemetryConfig(config);
109
+ }
110
+ /**
111
+ * Get current telemetry status for display.
112
+ */
113
+ export function getTelemetryStatus() {
114
+ const config = readTelemetryConfig();
115
+ // Check for env var overrides
116
+ if (process.env.DO_NOT_TRACK === '1' || process.env.DO_NOT_TRACK === 'true') {
117
+ return { enabled: false, machineId: config.machineId, envOverride: true, envVar: 'DO_NOT_TRACK' };
118
+ }
119
+ if (process.env.PRLT_TELEMETRY_DISABLED === '1' || process.env.PRLT_TELEMETRY_DISABLED === 'true') {
120
+ return { enabled: false, machineId: config.machineId, envOverride: true, envVar: 'PRLT_TELEMETRY_DISABLED' };
121
+ }
122
+ return { enabled: config.enabled, machineId: config.machineId, envOverride: false };
123
+ }
124
+ // ─── First-Run Notice ────────────────────────────────────────────────────────
125
+ /**
126
+ * Show a one-time notice that telemetry is active.
127
+ * Only shown in interactive TTY sessions.
128
+ */
129
+ function showTelemetryNotice() {
130
+ const config = readTelemetryConfig();
131
+ if (config.noticeShown)
132
+ return;
133
+ if (!process.stdout.isTTY) {
134
+ // Mark as shown so we don't try again, but don't print in non-TTY
135
+ config.noticeShown = true;
136
+ writeTelemetryConfig(config);
137
+ return;
138
+ }
139
+ console.log('');
140
+ console.log('Proletariat collects anonymous usage analytics to improve the CLI.');
141
+ console.log('Only command names and durations are tracked — no values, arguments, or personal data.');
142
+ console.log('You can opt out at any time:');
143
+ console.log('');
144
+ console.log(' prlt telemetry disable');
145
+ console.log('');
146
+ config.noticeShown = true;
147
+ telemetryConfig = config;
148
+ writeTelemetryConfig(config);
149
+ }
150
+ // ─── Machine ID ──────────────────────────────────────────────────────────────
151
+ /**
152
+ * Get the anonymous machine ID for this installation.
153
+ */
154
+ export function getMachineId() {
155
+ return readTelemetryConfig().machineId;
156
+ }
157
+ // ─── Statsig Client ──────────────────────────────────────────────────────────
158
+ /**
159
+ * Initialize the Statsig SDK. Called from the init hook.
160
+ * No-op if telemetry is disabled.
161
+ */
162
+ export async function initAnalytics(version) {
163
+ cliVersion = version;
164
+ if (!isTelemetryEnabled())
165
+ return;
166
+ showTelemetryNotice();
167
+ try {
168
+ const { StatsigClient: StatsigClientClass } = await import('@statsig/js-client');
169
+ const client = new StatsigClientClass(STATSIG_CLIENT_KEY, { userID: getMachineId(), custom: { cli_version: version } });
170
+ await client.initializeAsync();
171
+ statsigClient = client;
172
+ // Share Statsig client with feature-flags for synchronous gate checks
173
+ const { setStatsigClient } = await import('./feature-flags.js');
174
+ setStatsigClient(client);
175
+ }
176
+ catch {
177
+ // If Statsig can't initialize, fail silently — analytics should never break the CLI
178
+ statsigClient = null;
179
+ }
180
+ }
181
+ // ─── Event Tracking ──────────────────────────────────────────────────────────
182
+ /**
183
+ * Track an analytics event. Fire-and-forget — never blocks.
184
+ *
185
+ * @param eventName - Event name (e.g., 'command_run')
186
+ * @param value - Optional numeric or string value
187
+ * @param metadata - Event-specific metadata
188
+ */
189
+ export function trackEvent(eventName, value, metadata) {
190
+ if (!statsigClient || !isTelemetryEnabled())
191
+ return;
192
+ try {
193
+ // Convert metadata values to strings as required by the client SDK
194
+ const stringMetadata = metadata
195
+ ? Object.fromEntries(Object.entries({ ...metadata, cli_version: cliVersion }).map(([k, v]) => [k, String(v)]))
196
+ : cliVersion
197
+ ? { cli_version: cliVersion }
198
+ : null;
199
+ statsigClient.logEvent(eventName, value, stringMetadata);
200
+ }
201
+ catch {
202
+ // Never let analytics errors affect the CLI
203
+ }
204
+ }
205
+ /**
206
+ * Track a command execution.
207
+ */
208
+ export function trackCommandRun(options) {
209
+ trackEvent('command_run', options.durationMs, {
210
+ command: options.command,
211
+ success: options.success,
212
+ flags_used: (options.flags ?? []).join(','),
213
+ });
214
+ }
215
+ /**
216
+ * Track an agent being spawned.
217
+ */
218
+ export function trackAgentSpawned(options) {
219
+ trackEvent('agent_spawned', null, {
220
+ executor: options.executor,
221
+ environment: options.environment,
222
+ action: options.action,
223
+ ephemeral: String(options.ephemeral),
224
+ });
225
+ }
226
+ /**
227
+ * Track an orchestrator being started.
228
+ */
229
+ export function trackOrchestratorStarted(options) {
230
+ trackEvent('orchestrator_started', null, {
231
+ executor: options.executor,
232
+ name: options.name,
233
+ display_mode: options.displayMode,
234
+ });
235
+ }
236
+ /**
237
+ * Track work being completed.
238
+ */
239
+ export function trackWorkCompleted(options) {
240
+ trackEvent('work_completed', options.durationMs, {
241
+ pr_created: String(options.prCreated),
242
+ });
243
+ }
244
+ /**
245
+ * Track a PR being created.
246
+ */
247
+ export function trackPRCreated(options) {
248
+ trackEvent('pr_created', null, {
249
+ source: options.source,
250
+ });
251
+ }
252
+ /**
253
+ * Track an MCP tool call.
254
+ */
255
+ export function trackMCPToolCalled(options) {
256
+ trackEvent('mcp_tool_called', null, {
257
+ tool_name: options.toolName,
258
+ success: String(options.success),
259
+ });
260
+ }
261
+ // ─── Shutdown ────────────────────────────────────────────────────────────────
262
+ /**
263
+ * Flush pending events and shut down the Statsig client.
264
+ * Called from the postrun hook. Times out to avoid blocking CLI exit.
265
+ */
266
+ export async function shutdownAnalytics() {
267
+ if (!statsigClient)
268
+ return;
269
+ try {
270
+ // Give the client a moment to flush, but don't block the CLI
271
+ await new Promise((resolve) => setTimeout(resolve, FLUSH_TIMEOUT_MS));
272
+ statsigClient.shutdown();
273
+ }
274
+ catch {
275
+ // Never let shutdown errors affect the CLI
276
+ }
277
+ finally {
278
+ statsigClient = null;
279
+ // Clear feature-flags module reference
280
+ try {
281
+ const { setStatsigClient } = await import('./feature-flags.js');
282
+ setStatsigClient(null);
283
+ }
284
+ catch {
285
+ // Ignore
286
+ }
287
+ }
288
+ }
289
+ //# sourceMappingURL=analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../src/lib/telemetry/analytics.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAA;AAC7B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AACjC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAElF,uEAAuE;AACvE,MAAM,kBAAkB,GAAG,oDAAoD,CAAA;AAE/E,qDAAqD;AACrD,MAAM,gBAAgB,GAAG,IAAI,CAAA;AAkC7B,qBAAqB;AACrB,IAAI,aAAa,GAAiC,IAAI,CAAA;AACtD,IAAI,eAAe,GAA2B,IAAI,CAAA;AAClD,IAAI,UAAU,GAAkB,IAAI,CAAA;AAEpC,gFAAgF;AAEhF,SAAS,sBAAsB;IAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,gBAAgB,CAAC,CAAA;AAC3D,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,eAAe;QAAE,OAAO,eAAe,CAAA;IAE3C,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAA;IAE3C,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YACpD,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAoB,CAAA;YACxD,OAAO,eAAe,CAAA;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;QACtC,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,eAAe,GAAG;QAChB,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE;QAC9B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAA;IAED,oBAAoB,CAAC,eAAe,CAAC,CAAA;IACrC,OAAO,eAAe,CAAA;AACxB,CAAC;AAED,SAAS,oBAAoB,CAAC,MAAuB;IACnD,sBAAsB,EAAE,CAAA;IACxB,MAAM,UAAU,GAAG,sBAAsB,EAAE,CAAA;IAC3C,MAAM,QAAQ,GAAG,GAAG,UAAU,QAAQ,OAAO,CAAC,GAAG,EAAE,CAAA;IAEnD,IAAI,CAAC;QACH,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QACpE,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;QACtD,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,2DAA2D;IAC3D,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM;QAAE,OAAO,KAAK,CAAA;IACzF,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM;QAAE,OAAO,KAAK,CAAA;IAE/G,uBAAuB;IACvB,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IACpC,OAAO,MAAM,CAAC,OAAO,CAAA;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IACpC,MAAM,CAAC,OAAO,GAAG,IAAI,CAAA;IACrB,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC3C,eAAe,GAAG,MAAM,CAAA;IACxB,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IACpC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAA;IACtB,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC3C,eAAe,GAAG,MAAM,CAAA;IACxB,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAMhC,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IAEpC,8BAA8B;IAC9B,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;QAC5E,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA;IACnG,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,MAAM,EAAE,CAAC;QAClG,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,yBAAyB,EAAE,CAAA;IAC9G,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,CAAA;AACrF,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,mBAAmB;IAC1B,MAAM,MAAM,GAAG,mBAAmB,EAAE,CAAA;IACpC,IAAI,MAAM,CAAC,WAAW;QAAE,OAAM;IAC9B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAC1B,kEAAkE;QAClE,MAAM,CAAC,WAAW,GAAG,IAAI,CAAA;QACzB,oBAAoB,CAAC,MAAM,CAAC,CAAA;QAC5B,OAAM;IACR,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAA;IACjF,OAAO,CAAC,GAAG,CAAC,wFAAwF,CAAC,CAAA;IACrG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;IAC3C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAA;IACvC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEf,MAAM,CAAC,WAAW,GAAG,IAAI,CAAA;IACzB,eAAe,GAAG,MAAM,CAAA;IACxB,oBAAoB,CAAC,MAAM,CAAC,CAAA;AAC9B,CAAC;AAED,gFAAgF;AAEhF;;GAEG;AACH,MAAM,UAAU,YAAY;IAC1B,OAAO,mBAAmB,EAAE,CAAC,SAAS,CAAA;AACxC,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,OAAe;IACjD,UAAU,GAAG,OAAO,CAAA;IAEpB,IAAI,CAAC,kBAAkB,EAAE;QAAE,OAAM;IAEjC,mBAAmB,EAAE,CAAA;IAErB,IAAI,CAAC;QACH,MAAM,EAAE,aAAa,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;QAChF,MAAM,MAAM,GAAG,IAAI,kBAAkB,CACnC,kBAAkB,EAClB,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,EAAE,CAC7D,CAAA;QACD,MAAM,MAAM,CAAC,eAAe,EAAE,CAAA;QAC9B,aAAa,GAAG,MAAM,CAAA;QAEtB,sEAAsE;QACtE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;QAC/D,gBAAgB,CAAC,MAAM,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,oFAAoF;QACpF,aAAa,GAAG,IAAI,CAAA;IACtB,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,UAAU,CAAC,SAAiB,EAAE,KAA8B,EAAE,QAAyC;IACrH,IAAI,CAAC,aAAa,IAAI,CAAC,kBAAkB,EAAE;QAAE,OAAM;IAEnD,IAAI,CAAC;QACH,mEAAmE;QACnE,MAAM,cAAc,GAAkC,QAAQ;YAC5D,CAAC,CAAC,MAAM,CAAC,WAAW,CAChB,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CACzF;YACH,CAAC,CAAC,UAAU;gBACV,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE;gBAC7B,CAAC,CAAC,IAAI,CAAA;QACV,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,cAAc,CAAC,CAAA;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;IAC9C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,OAK/B;IACC,UAAU,CAAC,aAAa,EAAE,OAAO,CAAC,UAAU,EAAE;QAC5C,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,UAAU,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KAC5C,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAKjC;IACC,UAAU,CAAC,eAAe,EAAE,IAAI,EAAE;QAChC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;KACrC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAIxC;IACC,UAAU,CAAC,sBAAsB,EAAE,IAAI,EAAE;QACvC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,YAAY,EAAE,OAAO,CAAC,WAAW;KAClC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAGlC;IACC,UAAU,CAAC,gBAAgB,EAAE,OAAO,CAAC,UAAU,EAAE;QAC/C,UAAU,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;KACtC,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAE9B;IACC,UAAU,CAAC,YAAY,EAAE,IAAI,EAAE;QAC7B,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAA;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAGlC;IACC,UAAU,CAAC,iBAAiB,EAAE,IAAI,EAAE;QAClC,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;KACjC,CAAC,CAAA;AACJ,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,IAAI,CAAC,aAAa;QAAE,OAAM;IAE1B,IAAI,CAAC;QACH,6DAA6D;QAC7D,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC,CAAA;QAC3E,aAAa,CAAC,QAAQ,EAAE,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,2CAA2C;IAC7C,CAAC;YAAS,CAAC;QACT,aAAa,GAAG,IAAI,CAAA;QACpB,uCAAuC;QACvC,IAAI,CAAC;YACH,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;YAC/D,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Feature Flags (Statsig Feature Gates)
3
+ *
4
+ * Wraps Statsig feature gate checks with a simple API for the CLI.
5
+ * Feature flags are evaluated locally after SDK initialization,
6
+ * so checks are near-instant after the initial fetch.
7
+ *
8
+ * Usage:
9
+ * import { isEnabled } from '../lib/telemetry/feature-flags.js'
10
+ * if (isEnabled('new_board_view')) { ... }
11
+ *
12
+ * Feature flags require Statsig to be initialized (via initAnalytics).
13
+ * If Statsig is unavailable or telemetry is disabled, all flags return false.
14
+ */
15
+ interface StatsigClientRef {
16
+ checkGate(gateName: string): boolean;
17
+ getDynamicConfig(configName: string): {
18
+ get(key: string, defaultValue: unknown): unknown;
19
+ };
20
+ }
21
+ /**
22
+ * Set the Statsig client reference (called from analytics.ts after init).
23
+ * @internal
24
+ */
25
+ export declare function setStatsigClient(client: StatsigClientRef | null): void;
26
+ /**
27
+ * Check if a feature gate is enabled for the current machine.
28
+ *
29
+ * Uses Statsig's local evaluation (near-zero latency after init).
30
+ * Returns false if Statsig is not initialized or telemetry is disabled.
31
+ *
32
+ * @param gateName - The feature gate name (e.g., 'new_board_view')
33
+ * @returns Whether the gate is enabled
34
+ */
35
+ export declare function isEnabled(gateName: string): boolean;
36
+ /**
37
+ * Get a dynamic config value from Statsig.
38
+ *
39
+ * Useful for remote configuration (not just boolean flags).
40
+ * Returns the default value if Statsig is unavailable.
41
+ *
42
+ * @param configName - The dynamic config name
43
+ * @param key - The key within the config
44
+ * @param defaultValue - Default value if unavailable
45
+ * @returns The config value, or the default
46
+ */
47
+ export declare function getConfigValue<T>(configName: string, key: string, defaultValue: T): T;
48
+ /**
49
+ * Clear the local flag cache.
50
+ * Useful for testing or when you want to force re-evaluation.
51
+ */
52
+ export declare function clearFlagCache(): void;
53
+ export {};
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Feature Flags (Statsig Feature Gates)
3
+ *
4
+ * Wraps Statsig feature gate checks with a simple API for the CLI.
5
+ * Feature flags are evaluated locally after SDK initialization,
6
+ * so checks are near-instant after the initial fetch.
7
+ *
8
+ * Usage:
9
+ * import { isEnabled } from '../lib/telemetry/feature-flags.js'
10
+ * if (isEnabled('new_board_view')) { ... }
11
+ *
12
+ * Feature flags require Statsig to be initialized (via initAnalytics).
13
+ * If Statsig is unavailable or telemetry is disabled, all flags return false.
14
+ */
15
+ import { isTelemetryEnabled } from './analytics.js';
16
+ // Cache for flag values — populated on check, persists for the process lifetime
17
+ const flagCache = new Map();
18
+ // Statsig client instance reference — set after initialization in initAnalytics
19
+ let statsigClient = null;
20
+ /**
21
+ * Set the Statsig client reference (called from analytics.ts after init).
22
+ * @internal
23
+ */
24
+ export function setStatsigClient(client) {
25
+ statsigClient = client;
26
+ }
27
+ /**
28
+ * Check if a feature gate is enabled for the current machine.
29
+ *
30
+ * Uses Statsig's local evaluation (near-zero latency after init).
31
+ * Returns false if Statsig is not initialized or telemetry is disabled.
32
+ *
33
+ * @param gateName - The feature gate name (e.g., 'new_board_view')
34
+ * @returns Whether the gate is enabled
35
+ */
36
+ export function isEnabled(gateName) {
37
+ if (!isTelemetryEnabled() || !statsigClient)
38
+ return false;
39
+ // Return cached value if available
40
+ if (flagCache.has(gateName)) {
41
+ return flagCache.get(gateName);
42
+ }
43
+ try {
44
+ const result = statsigClient.checkGate(gateName);
45
+ flagCache.set(gateName, result);
46
+ return result;
47
+ }
48
+ catch {
49
+ // Statsig not initialized or gate check failed — default to false
50
+ flagCache.set(gateName, false);
51
+ return false;
52
+ }
53
+ }
54
+ /**
55
+ * Get a dynamic config value from Statsig.
56
+ *
57
+ * Useful for remote configuration (not just boolean flags).
58
+ * Returns the default value if Statsig is unavailable.
59
+ *
60
+ * @param configName - The dynamic config name
61
+ * @param key - The key within the config
62
+ * @param defaultValue - Default value if unavailable
63
+ * @returns The config value, or the default
64
+ */
65
+ export function getConfigValue(configName, key, defaultValue) {
66
+ if (!isTelemetryEnabled() || !statsigClient)
67
+ return defaultValue;
68
+ try {
69
+ const config = statsigClient.getDynamicConfig(configName);
70
+ return config.get(key, defaultValue);
71
+ }
72
+ catch {
73
+ return defaultValue;
74
+ }
75
+ }
76
+ /**
77
+ * Clear the local flag cache.
78
+ * Useful for testing or when you want to force re-evaluation.
79
+ */
80
+ export function clearFlagCache() {
81
+ flagCache.clear();
82
+ }
83
+ //# sourceMappingURL=feature-flags.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feature-flags.js","sourceRoot":"","sources":["../../../src/lib/telemetry/feature-flags.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAEnD,gFAAgF;AAChF,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmB,CAAA;AAE5C,gFAAgF;AAChF,IAAI,aAAa,GAA4B,IAAI,CAAA;AAOjD;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAA+B;IAC9D,aAAa,GAAG,MAAM,CAAA;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,SAAS,CAAC,QAAgB;IACxC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa;QAAE,OAAO,KAAK,CAAA;IAEzD,mCAAmC;IACnC,IAAI,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAA;IACjC,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QAChD,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;QAC/B,OAAO,MAAM,CAAA;IACf,CAAC;IAAC,MAAM,CAAC;QACP,kEAAkE;QAClE,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;QAC9B,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,cAAc,CAAI,UAAkB,EAAE,GAAW,EAAE,YAAe;IAChF,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,aAAa;QAAE,OAAO,YAAY,CAAA;IAEhE,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,aAAa,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAA;QACzD,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,YAAY,CAAM,CAAA;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,YAAY,CAAA;IACrB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAC5B,SAAS,CAAC,KAAK,EAAE,CAAA;AACnB,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Telemetry and error tracking via Sentry.
3
+ *
4
+ * Implements opt-out crash reporting with:
5
+ * - First-run notice shown once
6
+ * - `prlt telemetry disable/enable/status` commands
7
+ * - Respects DO_NOT_TRACK=1 and PRLT_TELEMETRY_DISABLED=1 env vars
8
+ * - Consent stored in ~/.proletariat/config.json
9
+ * - Path scrubbing to remove usernames from stack traces
10
+ */
11
+ interface TelemetryConfig {
12
+ enabled?: boolean;
13
+ noticeShown?: boolean;
14
+ }
15
+ /**
16
+ * Read the telemetry section from machine config.
17
+ */
18
+ export declare function readTelemetryConfig(): TelemetryConfig;
19
+ /**
20
+ * Write telemetry preferences to machine config.
21
+ */
22
+ export declare function writeTelemetryConfig(telemetry: TelemetryConfig): void;
23
+ /**
24
+ * Check if telemetry is enabled.
25
+ *
26
+ * Disabled when any of:
27
+ * - DO_NOT_TRACK=1 (consoledonottrack.com standard)
28
+ * - PRLT_TELEMETRY_DISABLED=1
29
+ * - User ran `prlt telemetry disable` (config.telemetry === false)
30
+ *
31
+ * Enabled by default (opt-out model).
32
+ */
33
+ export declare function isTelemetryEnabled(): boolean;
34
+ /**
35
+ * Check if the first-run telemetry notice has been shown.
36
+ */
37
+ export declare function hasShownTelemetryNotice(): boolean;
38
+ /**
39
+ * Mark the telemetry notice as shown.
40
+ */
41
+ export declare function markTelemetryNoticeShown(): void;
42
+ /**
43
+ * Show the first-run telemetry notice.
44
+ * Returns true if the notice was shown (first time), false if already shown.
45
+ */
46
+ export declare function showTelemetryNotice(): boolean;
47
+ /**
48
+ * Get the Sentry DSN. Exposed for testing.
49
+ */
50
+ export declare function getSentryDSN(): string;
51
+ /**
52
+ * Initialize Sentry error tracking.
53
+ * Should be called as early as possible in the CLI lifecycle.
54
+ *
55
+ * @param cliVersion - The CLI version string from oclif config
56
+ */
57
+ export declare function initSentry(cliVersion: string): Promise<void>;
58
+ /**
59
+ * Flush pending Sentry events with a timeout.
60
+ * Should be called in the postrun hook.
61
+ */
62
+ export declare function flushSentry(): Promise<void>;
63
+ export {};