@doist/todoist-cli 1.31.0 → 1.32.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 (529) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/commands/auth/helpers.d.ts +4 -0
  3. package/dist/commands/auth/helpers.d.ts.map +1 -0
  4. package/dist/commands/auth/helpers.js +31 -0
  5. package/dist/commands/auth/helpers.js.map +1 -0
  6. package/dist/commands/{auth.d.ts → auth/index.d.ts} +1 -1
  7. package/dist/commands/auth/index.d.ts.map +1 -0
  8. package/dist/commands/auth/index.js +17 -0
  9. package/dist/commands/auth/index.js.map +1 -0
  10. package/dist/commands/auth/login.d.ts +2 -0
  11. package/dist/commands/auth/login.d.ts.map +1 -0
  12. package/dist/commands/auth/login.js +30 -0
  13. package/dist/commands/auth/login.js.map +1 -0
  14. package/dist/commands/auth/logout.d.ts +2 -0
  15. package/dist/commands/auth/logout.d.ts.map +1 -0
  16. package/dist/commands/auth/logout.js +9 -0
  17. package/dist/commands/auth/logout.js.map +1 -0
  18. package/dist/commands/auth/status.d.ts +4 -0
  19. package/dist/commands/auth/status.d.ts.map +1 -0
  20. package/dist/commands/auth/status.js +39 -0
  21. package/dist/commands/auth/status.js.map +1 -0
  22. package/dist/commands/auth/token.d.ts +2 -0
  23. package/dist/commands/auth/token.d.ts.map +1 -0
  24. package/dist/commands/auth/token.js +17 -0
  25. package/dist/commands/auth/token.js.map +1 -0
  26. package/dist/commands/changelog.js +1 -1
  27. package/dist/commands/changelog.js.map +1 -1
  28. package/dist/commands/comment/add.d.ts +11 -0
  29. package/dist/commands/comment/add.d.ts.map +1 -0
  30. package/dist/commands/comment/add.js +71 -0
  31. package/dist/commands/comment/add.js.map +1 -0
  32. package/dist/commands/comment/browse.d.ts +2 -0
  33. package/dist/commands/comment/browse.d.ts.map +1 -0
  34. package/dist/commands/comment/browse.js +19 -0
  35. package/dist/commands/comment/browse.js.map +1 -0
  36. package/dist/commands/comment/delete.d.ts +5 -0
  37. package/dist/commands/comment/delete.d.ts.map +1 -0
  38. package/dist/commands/comment/delete.js +21 -0
  39. package/dist/commands/comment/delete.js.map +1 -0
  40. package/dist/commands/comment/helpers.d.ts +2 -0
  41. package/dist/commands/comment/helpers.d.ts.map +1 -0
  42. package/dist/commands/comment/helpers.js +7 -0
  43. package/dist/commands/comment/helpers.js.map +1 -0
  44. package/dist/commands/{comment.d.ts → comment/index.d.ts} +1 -1
  45. package/dist/commands/comment/index.d.ts.map +1 -0
  46. package/dist/commands/comment/index.js +91 -0
  47. package/dist/commands/comment/index.js.map +1 -0
  48. package/dist/commands/comment/list.d.ts +8 -0
  49. package/dist/commands/comment/list.d.ts.map +1 -0
  50. package/dist/commands/comment/list.js +63 -0
  51. package/dist/commands/comment/list.js.map +1 -0
  52. package/dist/commands/comment/update.d.ts +6 -0
  53. package/dist/commands/comment/update.d.ts.map +1 -0
  54. package/dist/commands/comment/update.js +22 -0
  55. package/dist/commands/comment/update.js.map +1 -0
  56. package/dist/commands/comment/view.d.ts +3 -0
  57. package/dist/commands/comment/view.d.ts.map +1 -0
  58. package/dist/commands/comment/view.js +40 -0
  59. package/dist/commands/comment/view.js.map +1 -0
  60. package/dist/commands/completion/helpers.d.ts +13 -0
  61. package/dist/commands/completion/helpers.d.ts.map +1 -0
  62. package/dist/commands/completion/helpers.js +26 -0
  63. package/dist/commands/completion/helpers.js.map +1 -0
  64. package/dist/commands/{completion.d.ts → completion/index.d.ts} +1 -1
  65. package/dist/commands/completion/index.d.ts.map +1 -0
  66. package/dist/commands/completion/index.js +28 -0
  67. package/dist/commands/completion/index.js.map +1 -0
  68. package/dist/commands/completion/install.d.ts +2 -0
  69. package/dist/commands/completion/install.d.ts.map +1 -0
  70. package/dist/commands/completion/install.js +16 -0
  71. package/dist/commands/completion/install.js.map +1 -0
  72. package/dist/commands/completion/server.d.ts +3 -0
  73. package/dist/commands/completion/server.d.ts.map +1 -0
  74. package/dist/commands/completion/server.js +35 -0
  75. package/dist/commands/completion/server.js.map +1 -0
  76. package/dist/commands/completion/uninstall.d.ts +2 -0
  77. package/dist/commands/completion/uninstall.d.ts.map +1 -0
  78. package/dist/commands/completion/uninstall.js +19 -0
  79. package/dist/commands/completion/uninstall.js.map +1 -0
  80. package/dist/commands/filter/browse.d.ts +2 -0
  81. package/dist/commands/filter/browse.d.ts.map +1 -0
  82. package/dist/commands/filter/browse.js +8 -0
  83. package/dist/commands/filter/browse.js.map +1 -0
  84. package/dist/commands/filter/create.d.ts +11 -0
  85. package/dist/commands/filter/create.d.ts.map +1 -0
  86. package/dist/commands/filter/create.js +28 -0
  87. package/dist/commands/filter/create.js.map +1 -0
  88. package/dist/commands/filter/delete.d.ts +5 -0
  89. package/dist/commands/filter/delete.d.ts.map +1 -0
  90. package/dist/commands/filter/delete.js +20 -0
  91. package/dist/commands/filter/delete.js.map +1 -0
  92. package/dist/commands/filter/helpers.d.ts +3 -0
  93. package/dist/commands/filter/helpers.d.ts.map +1 -0
  94. package/dist/commands/filter/helpers.js +33 -0
  95. package/dist/commands/filter/helpers.js.map +1 -0
  96. package/dist/commands/filter/index.d.ts +4 -0
  97. package/dist/commands/filter/index.d.ts.map +1 -0
  98. package/dist/commands/filter/index.js +91 -0
  99. package/dist/commands/filter/index.js.map +1 -0
  100. package/dist/commands/filter/list.d.ts +3 -0
  101. package/dist/commands/filter/list.d.ts.map +1 -0
  102. package/dist/commands/filter/list.js +31 -0
  103. package/dist/commands/filter/list.js.map +1 -0
  104. package/dist/commands/filter/update.d.ts +10 -0
  105. package/dist/commands/filter/update.d.ts.map +1 -0
  106. package/dist/commands/filter/update.js +31 -0
  107. package/dist/commands/filter/update.js.map +1 -0
  108. package/dist/commands/filter/view.d.ts +3 -0
  109. package/dist/commands/filter/view.d.ts.map +1 -0
  110. package/dist/commands/filter/view.js +77 -0
  111. package/dist/commands/filter/view.js.map +1 -0
  112. package/dist/commands/label/browse.d.ts +2 -0
  113. package/dist/commands/label/browse.d.ts.map +1 -0
  114. package/dist/commands/label/browse.js +8 -0
  115. package/dist/commands/label/browse.js.map +1 -0
  116. package/dist/commands/label/create.d.ts +10 -0
  117. package/dist/commands/label/create.d.ts.map +1 -0
  118. package/dist/commands/label/create.js +26 -0
  119. package/dist/commands/label/create.js.map +1 -0
  120. package/dist/commands/label/delete.d.ts +5 -0
  121. package/dist/commands/label/delete.d.ts.map +1 -0
  122. package/dist/commands/label/delete.js +19 -0
  123. package/dist/commands/label/delete.js.map +1 -0
  124. package/dist/commands/label/helpers.d.ts +8 -0
  125. package/dist/commands/label/helpers.d.ts.map +1 -0
  126. package/dist/commands/label/helpers.js +62 -0
  127. package/dist/commands/label/helpers.js.map +1 -0
  128. package/dist/commands/label/index.d.ts +4 -0
  129. package/dist/commands/label/index.d.ts.map +1 -0
  130. package/dist/commands/label/index.js +90 -0
  131. package/dist/commands/label/index.js.map +1 -0
  132. package/dist/commands/label/list.d.ts +3 -0
  133. package/dist/commands/label/list.d.ts.map +1 -0
  134. package/dist/commands/label/list.js +52 -0
  135. package/dist/commands/label/list.js.map +1 -0
  136. package/dist/commands/label/update.d.ts +10 -0
  137. package/dist/commands/label/update.d.ts.map +1 -0
  138. package/dist/commands/label/update.js +35 -0
  139. package/dist/commands/label/update.js.map +1 -0
  140. package/dist/commands/label/view.d.ts +3 -0
  141. package/dist/commands/label/view.d.ts.map +1 -0
  142. package/dist/commands/label/view.js +70 -0
  143. package/dist/commands/label/view.js.map +1 -0
  144. package/dist/commands/notification/accept.d.ts +2 -0
  145. package/dist/commands/notification/accept.d.ts.map +1 -0
  146. package/dist/commands/notification/accept.js +16 -0
  147. package/dist/commands/notification/accept.js.map +1 -0
  148. package/dist/commands/notification/helpers.d.ts +6 -0
  149. package/dist/commands/notification/helpers.d.ts.map +1 -0
  150. package/dist/commands/notification/helpers.js +78 -0
  151. package/dist/commands/notification/helpers.js.map +1 -0
  152. package/dist/commands/{notification.d.ts → notification/index.d.ts} +1 -1
  153. package/dist/commands/notification/index.d.ts.map +1 -0
  154. package/dist/commands/notification/index.js +69 -0
  155. package/dist/commands/notification/index.js.map +1 -0
  156. package/dist/commands/notification/list.d.ts +10 -0
  157. package/dist/commands/notification/list.d.ts.map +1 -0
  158. package/dist/commands/notification/list.js +61 -0
  159. package/dist/commands/notification/list.js.map +1 -0
  160. package/dist/commands/notification/read.d.ts +7 -0
  161. package/dist/commands/notification/read.d.ts.map +1 -0
  162. package/dist/commands/notification/read.js +23 -0
  163. package/dist/commands/notification/read.js.map +1 -0
  164. package/dist/commands/notification/reject.d.ts +2 -0
  165. package/dist/commands/notification/reject.d.ts.map +1 -0
  166. package/dist/commands/notification/reject.js +16 -0
  167. package/dist/commands/notification/reject.js.map +1 -0
  168. package/dist/commands/notification/unread.d.ts +2 -0
  169. package/dist/commands/notification/unread.d.ts.map +1 -0
  170. package/dist/commands/notification/unread.js +8 -0
  171. package/dist/commands/notification/unread.js.map +1 -0
  172. package/dist/commands/notification/view.d.ts +3 -0
  173. package/dist/commands/notification/view.d.ts.map +1 -0
  174. package/dist/commands/notification/view.js +31 -0
  175. package/dist/commands/notification/view.js.map +1 -0
  176. package/dist/commands/project/activity-stats.d.ts +6 -0
  177. package/dist/commands/project/activity-stats.d.ts.map +1 -0
  178. package/dist/commands/project/activity-stats.js +41 -0
  179. package/dist/commands/project/activity-stats.js.map +1 -0
  180. package/dist/commands/project/analyze-health.d.ts +5 -0
  181. package/dist/commands/project/analyze-health.d.ts.map +1 -0
  182. package/dist/commands/project/analyze-health.js +20 -0
  183. package/dist/commands/project/analyze-health.js.map +1 -0
  184. package/dist/commands/project/archive.d.ts +4 -0
  185. package/dist/commands/project/archive.d.ts.map +1 -0
  186. package/dist/commands/project/archive.js +14 -0
  187. package/dist/commands/project/archive.js.map +1 -0
  188. package/dist/commands/project/archived-count.d.ts +6 -0
  189. package/dist/commands/project/archived-count.d.ts.map +1 -0
  190. package/dist/commands/project/archived-count.js +26 -0
  191. package/dist/commands/project/archived-count.js.map +1 -0
  192. package/dist/commands/project/browse.d.ts +2 -0
  193. package/dist/commands/project/browse.d.ts.map +1 -0
  194. package/dist/commands/project/browse.js +10 -0
  195. package/dist/commands/project/browse.js.map +1 -0
  196. package/dist/commands/project/collaborators.d.ts +2 -0
  197. package/dist/commands/project/collaborators.d.ts.map +1 -0
  198. package/dist/commands/project/collaborators.js +48 -0
  199. package/dist/commands/project/collaborators.js.map +1 -0
  200. package/dist/commands/project/create.d.ts +12 -0
  201. package/dist/commands/project/create.d.ts.map +1 -0
  202. package/dist/commands/project/create.js +39 -0
  203. package/dist/commands/project/create.js.map +1 -0
  204. package/dist/commands/project/delete.d.ts +5 -0
  205. package/dist/commands/project/delete.d.ts.map +1 -0
  206. package/dist/commands/project/delete.js +23 -0
  207. package/dist/commands/project/delete.js.map +1 -0
  208. package/dist/commands/project/health-context.d.ts +4 -0
  209. package/dist/commands/project/health-context.d.ts.map +1 -0
  210. package/dist/commands/project/health-context.js +44 -0
  211. package/dist/commands/project/health-context.js.map +1 -0
  212. package/dist/commands/project/health.d.ts +4 -0
  213. package/dist/commands/project/health.d.ts.map +1 -0
  214. package/dist/commands/project/health.js +39 -0
  215. package/dist/commands/project/health.js.map +1 -0
  216. package/dist/commands/project/helpers.d.ts +3 -0
  217. package/dist/commands/project/helpers.d.ts.map +1 -0
  218. package/dist/commands/project/helpers.js +2 -0
  219. package/dist/commands/project/helpers.js.map +1 -0
  220. package/dist/commands/project/index.d.ts +4 -0
  221. package/dist/commands/project/index.d.ts.map +1 -0
  222. package/dist/commands/project/index.js +239 -0
  223. package/dist/commands/project/index.js.map +1 -0
  224. package/dist/commands/project/join.d.ts +5 -0
  225. package/dist/commands/project/join.d.ts.map +1 -0
  226. package/dist/commands/project/join.js +20 -0
  227. package/dist/commands/project/join.js.map +1 -0
  228. package/dist/commands/project/list.d.ts +7 -0
  229. package/dist/commands/project/list.d.ts.map +1 -0
  230. package/dist/commands/project/list.js +109 -0
  231. package/dist/commands/project/list.js.map +1 -0
  232. package/dist/commands/project/move.d.ts +10 -0
  233. package/dist/commands/project/move.d.ts.map +1 -0
  234. package/dist/commands/project/move.js +79 -0
  235. package/dist/commands/project/move.js.map +1 -0
  236. package/dist/commands/project/permissions.d.ts +4 -0
  237. package/dist/commands/project/permissions.d.ts.map +1 -0
  238. package/dist/commands/project/permissions.js +34 -0
  239. package/dist/commands/project/permissions.js.map +1 -0
  240. package/dist/commands/project/progress.d.ts +4 -0
  241. package/dist/commands/project/progress.d.ts.map +1 -0
  242. package/dist/commands/project/progress.js +20 -0
  243. package/dist/commands/project/progress.js.map +1 -0
  244. package/dist/commands/project/unarchive.d.ts +4 -0
  245. package/dist/commands/project/unarchive.d.ts.map +1 -0
  246. package/dist/commands/project/unarchive.js +14 -0
  247. package/dist/commands/project/unarchive.js.map +1 -0
  248. package/dist/commands/project/update.d.ts +11 -0
  249. package/dist/commands/project/update.d.ts.map +1 -0
  250. package/dist/commands/project/update.js +38 -0
  251. package/dist/commands/project/update.js.map +1 -0
  252. package/dist/commands/project/view.d.ts +5 -0
  253. package/dist/commands/project/view.d.ts.map +1 -0
  254. package/dist/commands/project/view.js +151 -0
  255. package/dist/commands/project/view.js.map +1 -0
  256. package/dist/commands/reminder/add.d.ts +9 -0
  257. package/dist/commands/reminder/add.d.ts.map +1 -0
  258. package/dist/commands/reminder/add.js +87 -0
  259. package/dist/commands/reminder/add.js.map +1 -0
  260. package/dist/commands/reminder/delete.d.ts +7 -0
  261. package/dist/commands/reminder/delete.d.ts.map +1 -0
  262. package/dist/commands/reminder/delete.js +27 -0
  263. package/dist/commands/reminder/delete.js.map +1 -0
  264. package/dist/commands/reminder/helpers.d.ts +4 -0
  265. package/dist/commands/reminder/helpers.d.ts.map +1 -0
  266. package/dist/commands/reminder/helpers.js +35 -0
  267. package/dist/commands/reminder/helpers.js.map +1 -0
  268. package/dist/commands/{reminder.d.ts → reminder/index.d.ts} +1 -1
  269. package/dist/commands/reminder/index.d.ts.map +1 -0
  270. package/dist/commands/reminder/index.js +70 -0
  271. package/dist/commands/reminder/index.js.map +1 -0
  272. package/dist/commands/reminder/list.d.ts +3 -0
  273. package/dist/commands/reminder/list.d.ts.map +1 -0
  274. package/dist/commands/reminder/list.js +29 -0
  275. package/dist/commands/reminder/list.js.map +1 -0
  276. package/dist/commands/reminder/update.d.ts +8 -0
  277. package/dist/commands/reminder/update.d.ts.map +1 -0
  278. package/dist/commands/reminder/update.js +50 -0
  279. package/dist/commands/reminder/update.js.map +1 -0
  280. package/dist/commands/section/archive.d.ts +4 -0
  281. package/dist/commands/section/archive.d.ts.map +1 -0
  282. package/dist/commands/section/archive.js +15 -0
  283. package/dist/commands/section/archive.js.map +1 -0
  284. package/dist/commands/section/browse.d.ts +2 -0
  285. package/dist/commands/section/browse.d.ts.map +1 -0
  286. package/dist/commands/section/browse.js +8 -0
  287. package/dist/commands/section/browse.js.map +1 -0
  288. package/dist/commands/section/create.d.ts +9 -0
  289. package/dist/commands/section/create.d.ts.map +1 -0
  290. package/dist/commands/section/create.js +26 -0
  291. package/dist/commands/section/create.js.map +1 -0
  292. package/dist/commands/section/delete.d.ts +5 -0
  293. package/dist/commands/section/delete.d.ts.map +1 -0
  294. package/dist/commands/section/delete.js +24 -0
  295. package/dist/commands/section/delete.js.map +1 -0
  296. package/dist/commands/{section.d.ts → section/index.d.ts} +1 -1
  297. package/dist/commands/section/index.d.ts.map +1 -0
  298. package/dist/commands/section/index.js +103 -0
  299. package/dist/commands/section/index.js.map +1 -0
  300. package/dist/commands/section/list.d.ts +3 -0
  301. package/dist/commands/section/list.d.ts.map +1 -0
  302. package/dist/commands/section/list.js +37 -0
  303. package/dist/commands/section/list.js.map +1 -0
  304. package/dist/commands/section/unarchive.d.ts +4 -0
  305. package/dist/commands/section/unarchive.d.ts.map +1 -0
  306. package/dist/commands/section/unarchive.js +15 -0
  307. package/dist/commands/section/unarchive.js.map +1 -0
  308. package/dist/commands/section/update.d.ts +6 -0
  309. package/dist/commands/section/update.d.ts.map +1 -0
  310. package/dist/commands/section/update.js +20 -0
  311. package/dist/commands/section/update.js.map +1 -0
  312. package/dist/commands/settings/helpers.d.ts +29 -0
  313. package/dist/commands/settings/helpers.d.ts.map +1 -0
  314. package/dist/commands/settings/helpers.js +183 -0
  315. package/dist/commands/settings/helpers.js.map +1 -0
  316. package/dist/commands/settings/index.d.ts +4 -0
  317. package/dist/commands/settings/index.d.ts.map +1 -0
  318. package/dist/commands/settings/index.js +46 -0
  319. package/dist/commands/settings/index.js.map +1 -0
  320. package/dist/commands/settings/update.d.ts +18 -0
  321. package/dist/commands/settings/update.d.ts.map +1 -0
  322. package/dist/commands/settings/update.js +52 -0
  323. package/dist/commands/settings/update.js.map +1 -0
  324. package/dist/commands/settings/view.d.ts +3 -0
  325. package/dist/commands/settings/view.d.ts.map +1 -0
  326. package/dist/commands/settings/view.js +44 -0
  327. package/dist/commands/settings/view.js.map +1 -0
  328. package/dist/commands/{skill.d.ts → skill/index.d.ts} +1 -1
  329. package/dist/commands/skill/index.d.ts.map +1 -0
  330. package/dist/commands/skill/index.js +46 -0
  331. package/dist/commands/skill/index.js.map +1 -0
  332. package/dist/commands/skill/install.d.ts +6 -0
  333. package/dist/commands/skill/install.d.ts.map +1 -0
  334. package/dist/commands/skill/install.js +19 -0
  335. package/dist/commands/skill/install.js.map +1 -0
  336. package/dist/commands/skill/list.d.ts +2 -0
  337. package/dist/commands/skill/list.d.ts.map +1 -0
  338. package/dist/commands/skill/list.js +23 -0
  339. package/dist/commands/skill/list.js.map +1 -0
  340. package/dist/commands/skill/uninstall.d.ts +5 -0
  341. package/dist/commands/skill/uninstall.d.ts.map +1 -0
  342. package/dist/commands/skill/uninstall.js +16 -0
  343. package/dist/commands/skill/uninstall.js.map +1 -0
  344. package/dist/commands/skill/update.d.ts +6 -0
  345. package/dist/commands/skill/update.d.ts.map +1 -0
  346. package/dist/commands/skill/update.js +39 -0
  347. package/dist/commands/skill/update.js.map +1 -0
  348. package/dist/commands/stats/goals.d.ts +8 -0
  349. package/dist/commands/stats/goals.d.ts.map +1 -0
  350. package/dist/commands/stats/goals.js +26 -0
  351. package/dist/commands/stats/goals.js.map +1 -0
  352. package/dist/commands/stats/helpers.d.ts +9 -0
  353. package/dist/commands/stats/helpers.d.ts.map +1 -0
  354. package/dist/commands/{stats.js → stats/helpers.js} +8 -72
  355. package/dist/commands/stats/helpers.js.map +1 -0
  356. package/dist/commands/{stats.d.ts → stats/index.d.ts} +1 -1
  357. package/dist/commands/stats/index.d.ts.map +1 -0
  358. package/dist/commands/stats/index.js +24 -0
  359. package/dist/commands/stats/index.js.map +1 -0
  360. package/dist/commands/stats/vacation.d.ts +8 -0
  361. package/dist/commands/stats/vacation.d.ts.map +1 -0
  362. package/dist/commands/stats/vacation.js +13 -0
  363. package/dist/commands/stats/vacation.js.map +1 -0
  364. package/dist/commands/stats/view.d.ts +3 -0
  365. package/dist/commands/stats/view.d.ts.map +1 -0
  366. package/dist/commands/stats/view.js +11 -0
  367. package/dist/commands/stats/view.js.map +1 -0
  368. package/dist/commands/task/add.d.ts +20 -0
  369. package/dist/commands/task/add.d.ts.map +1 -0
  370. package/dist/commands/task/add.js +112 -0
  371. package/dist/commands/task/add.js.map +1 -0
  372. package/dist/commands/task/browse.d.ts +2 -0
  373. package/dist/commands/task/browse.d.ts.map +1 -0
  374. package/dist/commands/task/browse.js +10 -0
  375. package/dist/commands/task/browse.js.map +1 -0
  376. package/dist/commands/task/complete.d.ts +5 -0
  377. package/dist/commands/task/complete.d.ts.map +1 -0
  378. package/dist/commands/task/complete.js +34 -0
  379. package/dist/commands/task/complete.js.map +1 -0
  380. package/dist/commands/task/delete.d.ts +5 -0
  381. package/dist/commands/task/delete.d.ts.map +1 -0
  382. package/dist/commands/task/delete.js +19 -0
  383. package/dist/commands/task/delete.js.map +1 -0
  384. package/dist/commands/task/helpers.d.ts +6 -0
  385. package/dist/commands/task/helpers.d.ts.map +1 -0
  386. package/dist/commands/task/helpers.js +13 -0
  387. package/dist/commands/task/helpers.js.map +1 -0
  388. package/dist/commands/task/index.d.ts +4 -0
  389. package/dist/commands/task/index.d.ts.map +1 -0
  390. package/dist/commands/task/index.js +197 -0
  391. package/dist/commands/task/index.js.map +1 -0
  392. package/dist/commands/task/list.d.ts +6 -0
  393. package/dist/commands/task/list.d.ts.map +1 -0
  394. package/dist/commands/task/list.js +19 -0
  395. package/dist/commands/task/list.js.map +1 -0
  396. package/dist/commands/task/move.d.ts +8 -0
  397. package/dist/commands/task/move.d.ts.map +1 -0
  398. package/dist/commands/task/move.js +51 -0
  399. package/dist/commands/task/move.js.map +1 -0
  400. package/dist/commands/task/reschedule.d.ts +5 -0
  401. package/dist/commands/task/reschedule.d.ts.map +1 -0
  402. package/dist/commands/task/reschedule.js +36 -0
  403. package/dist/commands/task/reschedule.js.map +1 -0
  404. package/dist/commands/task/uncomplete.d.ts +4 -0
  405. package/dist/commands/task/uncomplete.d.ts.map +1 -0
  406. package/dist/commands/task/uncomplete.js +14 -0
  407. package/dist/commands/task/uncomplete.js.map +1 -0
  408. package/dist/commands/task/update.d.ts +19 -0
  409. package/dist/commands/task/update.d.ts.map +1 -0
  410. package/dist/commands/task/update.js +82 -0
  411. package/dist/commands/task/update.js.map +1 -0
  412. package/dist/commands/task/view.d.ts +3 -0
  413. package/dist/commands/task/view.d.ts.map +1 -0
  414. package/dist/commands/task/view.js +28 -0
  415. package/dist/commands/task/view.js.map +1 -0
  416. package/dist/commands/template/create.d.ts +10 -0
  417. package/dist/commands/template/create.d.ts.map +1 -0
  418. package/dist/commands/template/create.js +59 -0
  419. package/dist/commands/template/create.js.map +1 -0
  420. package/dist/commands/template/export-file.d.ts +8 -0
  421. package/dist/commands/template/export-file.d.ts.map +1 -0
  422. package/dist/commands/template/export-file.js +26 -0
  423. package/dist/commands/template/export-file.js.map +1 -0
  424. package/dist/commands/template/export-url.d.ts +7 -0
  425. package/dist/commands/template/export-url.d.ts.map +1 -0
  426. package/dist/commands/template/export-url.js +19 -0
  427. package/dist/commands/template/export-url.js.map +1 -0
  428. package/dist/commands/template/helpers.d.ts +3 -0
  429. package/dist/commands/template/helpers.d.ts.map +1 -0
  430. package/dist/commands/template/helpers.js +17 -0
  431. package/dist/commands/template/helpers.js.map +1 -0
  432. package/dist/commands/template/import-file.d.ts +9 -0
  433. package/dist/commands/template/import-file.d.ts.map +1 -0
  434. package/dist/commands/template/import-file.js +47 -0
  435. package/dist/commands/template/import-file.js.map +1 -0
  436. package/dist/commands/template/import-id.d.ts +9 -0
  437. package/dist/commands/template/import-id.d.ts.map +1 -0
  438. package/dist/commands/template/import-id.js +30 -0
  439. package/dist/commands/template/import-id.js.map +1 -0
  440. package/dist/commands/template/index.d.ts +3 -0
  441. package/dist/commands/template/index.d.ts.map +1 -0
  442. package/dist/commands/template/index.js +96 -0
  443. package/dist/commands/template/index.js.map +1 -0
  444. package/dist/commands/view.js +4 -4
  445. package/dist/commands/view.js.map +1 -1
  446. package/dist/commands/workspace/helpers.d.ts +2 -0
  447. package/dist/commands/workspace/helpers.d.ts.map +1 -0
  448. package/dist/commands/workspace/helpers.js +2 -0
  449. package/dist/commands/workspace/helpers.js.map +1 -0
  450. package/dist/commands/{workspace.d.ts → workspace/index.d.ts} +1 -1
  451. package/dist/commands/workspace/index.d.ts.map +1 -0
  452. package/dist/commands/workspace/index.js +89 -0
  453. package/dist/commands/workspace/index.js.map +1 -0
  454. package/dist/commands/workspace/insights.d.ts +5 -0
  455. package/dist/commands/workspace/insights.d.ts.map +1 -0
  456. package/dist/commands/workspace/insights.js +54 -0
  457. package/dist/commands/workspace/insights.js.map +1 -0
  458. package/dist/commands/workspace/list.d.ts +3 -0
  459. package/dist/commands/workspace/list.d.ts.map +1 -0
  460. package/dist/commands/workspace/list.js +47 -0
  461. package/dist/commands/workspace/list.js.map +1 -0
  462. package/dist/commands/workspace/projects.d.ts +3 -0
  463. package/dist/commands/workspace/projects.d.ts.map +1 -0
  464. package/dist/commands/workspace/projects.js +97 -0
  465. package/dist/commands/workspace/projects.js.map +1 -0
  466. package/dist/commands/workspace/users.d.ts +5 -0
  467. package/dist/commands/workspace/users.d.ts.map +1 -0
  468. package/dist/commands/workspace/users.js +93 -0
  469. package/dist/commands/workspace/users.js.map +1 -0
  470. package/dist/commands/workspace/view.d.ts +2 -0
  471. package/dist/commands/workspace/view.d.ts.map +1 -0
  472. package/dist/commands/workspace/view.js +17 -0
  473. package/dist/commands/workspace/view.js.map +1 -0
  474. package/dist/index.js +21 -14
  475. package/dist/index.js.map +1 -1
  476. package/dist/lib/api/core.d.ts.map +1 -1
  477. package/dist/lib/api/core.js +5 -0
  478. package/dist/lib/api/core.js.map +1 -1
  479. package/dist/lib/skills/content.d.ts +1 -1
  480. package/dist/lib/skills/content.d.ts.map +1 -1
  481. package/dist/lib/skills/content.js +21 -0
  482. package/dist/lib/skills/content.js.map +1 -1
  483. package/package.json +4 -4
  484. package/dist/commands/auth.d.ts.map +0 -1
  485. package/dist/commands/auth.js +0 -124
  486. package/dist/commands/auth.js.map +0 -1
  487. package/dist/commands/comment.d.ts.map +0 -1
  488. package/dist/commands/comment.js +0 -301
  489. package/dist/commands/comment.js.map +0 -1
  490. package/dist/commands/completion.d.ts.map +0 -1
  491. package/dist/commands/completion.js +0 -107
  492. package/dist/commands/completion.js.map +0 -1
  493. package/dist/commands/filter.d.ts +0 -5
  494. package/dist/commands/filter.d.ts.map +0 -1
  495. package/dist/commands/filter.js +0 -287
  496. package/dist/commands/filter.js.map +0 -1
  497. package/dist/commands/label.d.ts +0 -5
  498. package/dist/commands/label.d.ts.map +0 -1
  499. package/dist/commands/label.js +0 -328
  500. package/dist/commands/label.js.map +0 -1
  501. package/dist/commands/notification.d.ts.map +0 -1
  502. package/dist/commands/notification.js +0 -274
  503. package/dist/commands/notification.js.map +0 -1
  504. package/dist/commands/project.d.ts +0 -7
  505. package/dist/commands/project.d.ts.map +0 -1
  506. package/dist/commands/project.js +0 -912
  507. package/dist/commands/project.js.map +0 -1
  508. package/dist/commands/reminder.d.ts.map +0 -1
  509. package/dist/commands/reminder.js +0 -271
  510. package/dist/commands/reminder.js.map +0 -1
  511. package/dist/commands/section.d.ts.map +0 -1
  512. package/dist/commands/section.js +0 -216
  513. package/dist/commands/section.js.map +0 -1
  514. package/dist/commands/settings.d.ts +0 -12
  515. package/dist/commands/settings.d.ts.map +0 -1
  516. package/dist/commands/settings.js +0 -312
  517. package/dist/commands/settings.js.map +0 -1
  518. package/dist/commands/skill.d.ts.map +0 -1
  519. package/dist/commands/skill.js +0 -127
  520. package/dist/commands/skill.js.map +0 -1
  521. package/dist/commands/stats.d.ts.map +0 -1
  522. package/dist/commands/stats.js.map +0 -1
  523. package/dist/commands/task.d.ts +0 -5
  524. package/dist/commands/task.d.ts.map +0 -1
  525. package/dist/commands/task.js +0 -559
  526. package/dist/commands/task.js.map +0 -1
  527. package/dist/commands/workspace.d.ts.map +0 -1
  528. package/dist/commands/workspace.js +0 -375
  529. package/dist/commands/workspace.js.map +0 -1
@@ -0,0 +1,183 @@
1
+ import chalk from 'chalk';
2
+ import { Option } from 'commander';
3
+ import { withUnvalidatedChoices } from '../../lib/completion.js';
4
+ export const THEMES = [
5
+ { id: 0, name: 'todoist', label: 'Todoist', isPro: false },
6
+ { id: 11, name: 'dark', label: 'Dark', isPro: false },
7
+ { id: 2, name: 'moonstone', label: 'Moonstone', isPro: false },
8
+ { id: 3, name: 'tangerine', label: 'Tangerine', isPro: false },
9
+ { id: 5, name: 'kale', label: 'Kale', isPro: true },
10
+ { id: 6, name: 'blueberry', label: 'Blueberry', isPro: true },
11
+ { id: 8, name: 'lavender', label: 'Lavender', isPro: true },
12
+ { id: 12, name: 'raspberry', label: 'Raspberry', isPro: true },
13
+ ];
14
+ /** CLI value → TimeFormat string */
15
+ const TIME_FORMAT_MAP = {
16
+ '12': '12h',
17
+ '12h': '12h',
18
+ '24': '24h',
19
+ '24h': '24h',
20
+ };
21
+ /** CLI value → DateFormat string */
22
+ const DATE_FORMAT_MAP = {
23
+ us: 'MM/DD/YYYY',
24
+ 'mm-dd-yyyy': 'MM/DD/YYYY',
25
+ mdy: 'MM/DD/YYYY',
26
+ intl: 'DD/MM/YYYY',
27
+ 'dd-mm-yyyy': 'DD/MM/YYYY',
28
+ dmy: 'DD/MM/YYYY',
29
+ };
30
+ /** CLI value → DayOfWeek string */
31
+ const DAY_MAP = {
32
+ monday: 'Monday',
33
+ mon: 'Monday',
34
+ tuesday: 'Tuesday',
35
+ tue: 'Tuesday',
36
+ wednesday: 'Wednesday',
37
+ wed: 'Wednesday',
38
+ thursday: 'Thursday',
39
+ thu: 'Thursday',
40
+ friday: 'Friday',
41
+ fri: 'Friday',
42
+ saturday: 'Saturday',
43
+ sat: 'Saturday',
44
+ sunday: 'Sunday',
45
+ sun: 'Sunday',
46
+ };
47
+ export const TIME_FORMAT_CHOICES = Object.keys(TIME_FORMAT_MAP);
48
+ export const DATE_FORMAT_CHOICES = Object.keys(DATE_FORMAT_MAP);
49
+ export const DAY_CHOICES = Object.keys(DAY_MAP);
50
+ export const THEME_CHOICES = THEMES.map((t) => t.name);
51
+ export function parseTheme(value) {
52
+ const theme = THEMES.find((t) => t.name === value);
53
+ if (theme)
54
+ return theme.id;
55
+ throw new Error(`Invalid theme: "${value}"`);
56
+ }
57
+ export function parseTimeFormat(value) {
58
+ const result = TIME_FORMAT_MAP[value];
59
+ if (result !== undefined)
60
+ return result;
61
+ throw new Error(`Invalid time format: "${value}"`);
62
+ }
63
+ export function parseDateFormat(value) {
64
+ const result = DATE_FORMAT_MAP[value.toLowerCase()];
65
+ if (result !== undefined)
66
+ return result;
67
+ throw new Error(`Invalid date format: "${value}"`);
68
+ }
69
+ export function parseDay(value) {
70
+ const result = DAY_MAP[value.toLowerCase()];
71
+ if (result !== undefined)
72
+ return result;
73
+ throw new Error(`Invalid day: "${value}"`);
74
+ }
75
+ export function formatTheme(themeId) {
76
+ const theme = THEMES.find((t) => t.id === themeId);
77
+ if (!theme)
78
+ return String(themeId);
79
+ return theme.isPro ? `${theme.label} (Pro)` : theme.label;
80
+ }
81
+ export function formatThemeList() {
82
+ const lines = ['Available themes:'];
83
+ for (const theme of THEMES) {
84
+ const pro = theme.isPro ? ' (Pro)' : '';
85
+ lines.push(` ${theme.name.padEnd(12)} ${theme.label}${pro}`);
86
+ }
87
+ return lines.join('\n');
88
+ }
89
+ export function getThemeName(themeId) {
90
+ const theme = THEMES.find((t) => t.id === themeId);
91
+ return theme?.name ?? 'unknown';
92
+ }
93
+ function formatDay(day) {
94
+ return day;
95
+ }
96
+ function formatTimeFormat(format) {
97
+ return format;
98
+ }
99
+ function formatDateFormat(format) {
100
+ return format;
101
+ }
102
+ function formatAutoReminder(minutes) {
103
+ if (minutes === 0)
104
+ return 'none';
105
+ if (minutes < 60)
106
+ return `${minutes} min`;
107
+ const hours = Math.floor(minutes / 60);
108
+ const mins = minutes % 60;
109
+ if (mins === 0)
110
+ return `${hours} hr`;
111
+ return `${hours} hr ${mins} min`;
112
+ }
113
+ function formatBool(value) {
114
+ return value ? chalk.green('on') : chalk.dim('off');
115
+ }
116
+ export function formatSettingsView(settings, startPageName) {
117
+ const lines = [];
118
+ lines.push(chalk.bold('General'));
119
+ lines.push(` Timezone: ${settings.timezone}`);
120
+ lines.push(` Time format: ${formatTimeFormat(settings.timeFormat)}`);
121
+ lines.push(` Date format: ${formatDateFormat(settings.dateFormat)}`);
122
+ lines.push(` Week starts: ${formatDay(settings.startDay)}`);
123
+ lines.push(` Theme: ${formatTheme(settings.theme)}`);
124
+ lines.push(` Auto reminder: ${formatAutoReminder(settings.autoReminder)}`);
125
+ lines.push(` Next week: ${formatDay(settings.nextWeek)}`);
126
+ const startPageDisplay = startPageName
127
+ ? `${settings.startPage} (${startPageName})`
128
+ : settings.startPage;
129
+ lines.push(` Start page: ${startPageDisplay}`);
130
+ lines.push('');
131
+ lines.push(chalk.bold('Notifications'));
132
+ lines.push(` Push reminders: ${formatBool(settings.reminderPush)}`);
133
+ lines.push(` Desktop reminders: ${formatBool(settings.reminderDesktop)}`);
134
+ lines.push(` Email reminders: ${formatBool(settings.reminderEmail)}`);
135
+ lines.push(` Desktop sound: ${formatBool(settings.completedSoundDesktop)}`);
136
+ lines.push(` Mobile sound: ${formatBool(settings.completedSoundMobile)}`);
137
+ return lines.join('\n');
138
+ }
139
+ export function formatSettingsForJson(settings, startPageName) {
140
+ return {
141
+ timezone: settings.timezone,
142
+ timeFormat: settings.timeFormat,
143
+ dateFormat: settings.dateFormat === 'DD/MM/YYYY' ? 'intl' : 'us',
144
+ startDay: settings.startDay.toLowerCase(),
145
+ theme: getThemeName(settings.theme),
146
+ autoReminder: settings.autoReminder,
147
+ nextWeek: settings.nextWeek.toLowerCase(),
148
+ startPage: settings.startPage,
149
+ startPageName,
150
+ reminderPush: settings.reminderPush,
151
+ reminderDesktop: settings.reminderDesktop,
152
+ reminderEmail: settings.reminderEmail,
153
+ completedSoundDesktop: settings.completedSoundDesktop,
154
+ completedSoundMobile: settings.completedSoundMobile,
155
+ };
156
+ }
157
+ export function parseBoolean(value) {
158
+ const v = value.toLowerCase();
159
+ if (v === 'true' || v === 'on' || v === '1' || v === 'yes')
160
+ return true;
161
+ if (v === 'false' || v === 'off' || v === '0' || v === 'no')
162
+ return false;
163
+ throw new Error(`Invalid boolean value: ${value}`);
164
+ }
165
+ export function parseStartPageRef(startPage) {
166
+ const match = startPage.match(/^(project|filter|label)\?id=(.+)$/);
167
+ if (!match)
168
+ return null;
169
+ return { type: match[1], id: match[2] };
170
+ }
171
+ export function boolOption(flags, description) {
172
+ return withUnvalidatedChoices(new Option(flags, description), [
173
+ 'on',
174
+ 'off',
175
+ 'true',
176
+ 'false',
177
+ 'yes',
178
+ 'no',
179
+ '1',
180
+ '0',
181
+ ]);
182
+ }
183
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/commands/settings/helpers.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Command } from 'commander';
2
+ export { DATE_FORMAT_CHOICES, DAY_CHOICES, parseDateFormat, parseDay, parseTheme, parseTimeFormat, THEME_CHOICES, TIME_FORMAT_CHOICES, } from './helpers.js';
3
+ export declare function registerSettingsCommand(program: Command): void;
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/settings/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAA;AAc3C,OAAO,EACH,mBAAmB,EACnB,WAAW,EACX,eAAe,EACf,QAAQ,EACR,UAAU,EACV,eAAe,EACf,aAAa,EACb,mBAAmB,GACtB,MAAM,cAAc,CAAA;AAErB,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmE9D"}
@@ -0,0 +1,46 @@
1
+ import { Option } from 'commander';
2
+ import { withCaseInsensitiveChoices } from '../../lib/completion.js';
3
+ import { boolOption, DATE_FORMAT_CHOICES, DAY_CHOICES, formatThemeList, THEME_CHOICES, TIME_FORMAT_CHOICES, } from './helpers.js';
4
+ import { updateSettings } from './update.js';
5
+ import { viewSettings } from './view.js';
6
+ // Re-export public symbols consumed by tests
7
+ export { DATE_FORMAT_CHOICES, DAY_CHOICES, parseDateFormat, parseDay, parseTheme, parseTimeFormat, THEME_CHOICES, TIME_FORMAT_CHOICES, } from './helpers.js';
8
+ export function registerSettingsCommand(program) {
9
+ const settings = program.command('settings').description('Manage user settings');
10
+ settings
11
+ .command('view')
12
+ .description('View current settings')
13
+ .option('--json', 'Output as JSON')
14
+ .action(viewSettings);
15
+ settings
16
+ .command('update')
17
+ .description('Update settings')
18
+ .option('--timezone <tz>', 'Timezone (e.g., UTC, Europe/London)')
19
+ .addOption(withCaseInsensitiveChoices(new Option('--time-format <format>', 'Time format: 12 or 24'), TIME_FORMAT_CHOICES))
20
+ .addOption(withCaseInsensitiveChoices(new Option('--date-format <format>', 'Date format: us (MM-DD) or intl (DD-MM)'), DATE_FORMAT_CHOICES))
21
+ .addOption(withCaseInsensitiveChoices(new Option('--start-day <day>', 'Week start: monday, tuesday, etc.'), DAY_CHOICES))
22
+ .addOption(withCaseInsensitiveChoices(new Option('--theme <name>', 'Theme: todoist, dark, moonstone, tangerine, etc.'), THEME_CHOICES))
23
+ .option('--auto-reminder <min>', 'Default reminder minutes (0 to disable)')
24
+ .addOption(withCaseInsensitiveChoices(new Option('--next-week <day>', '"Next week" day: monday, tuesday, etc.'), DAY_CHOICES))
25
+ .option('--start-page <page>', 'Default view: inbox, today, or project URL')
26
+ .addOption(boolOption('--reminder-push <bool>', 'Push reminders: on/off'))
27
+ .addOption(boolOption('--reminder-desktop <bool>', 'Desktop reminders: on/off'))
28
+ .addOption(boolOption('--reminder-email <bool>', 'Email reminders: on/off'))
29
+ .addOption(boolOption('--completed-sound-desktop <bool>', 'Desktop completion sound: on/off'))
30
+ .addOption(boolOption('--completed-sound-mobile <bool>', 'Mobile completion sound: on/off'))
31
+ .action(async (options, command) => {
32
+ const hasOptions = Object.values(options).some((v) => v !== undefined);
33
+ if (!hasOptions) {
34
+ command.help();
35
+ return;
36
+ }
37
+ await updateSettings(options);
38
+ });
39
+ settings
40
+ .command('themes')
41
+ .description('List available themes')
42
+ .action(() => {
43
+ console.log(formatThemeList());
44
+ });
45
+ }
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/settings/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ interface UpdateOptions {
2
+ timezone?: string;
3
+ timeFormat?: string;
4
+ dateFormat?: string;
5
+ startDay?: string;
6
+ theme?: string;
7
+ autoReminder?: string;
8
+ nextWeek?: string;
9
+ startPage?: string;
10
+ reminderPush?: string;
11
+ reminderDesktop?: string;
12
+ reminderEmail?: string;
13
+ completedSoundDesktop?: string;
14
+ completedSoundMobile?: string;
15
+ }
16
+ export declare function updateSettings(options: UpdateOptions): Promise<void>;
17
+ export {};
18
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/settings/update.ts"],"names":[],"mappings":"AAIA,UAAU,aAAa;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAA;CAChC;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAmD1E"}
@@ -0,0 +1,52 @@
1
+ import { updateUserSettings } from '../../lib/api/user-settings.js';
2
+ import { formatError } from '../../lib/output.js';
3
+ import { parseBoolean, parseDateFormat, parseDay, parseTheme, parseTimeFormat } from './helpers.js';
4
+ export async function updateSettings(options) {
5
+ const args = {};
6
+ if (options.timezone !== undefined) {
7
+ args.timezone = options.timezone;
8
+ }
9
+ if (options.timeFormat !== undefined) {
10
+ args.timeFormat = parseTimeFormat(options.timeFormat);
11
+ }
12
+ if (options.dateFormat !== undefined) {
13
+ args.dateFormat = parseDateFormat(options.dateFormat);
14
+ }
15
+ if (options.startDay !== undefined) {
16
+ args.startDay = parseDay(options.startDay);
17
+ }
18
+ if (options.theme !== undefined) {
19
+ args.theme = parseTheme(options.theme);
20
+ }
21
+ if (options.autoReminder !== undefined) {
22
+ const minutes = parseInt(options.autoReminder, 10);
23
+ if (Number.isNaN(minutes) || minutes < 0) {
24
+ throw new Error(formatError('INVALID_AUTO_REMINDER', 'Auto reminder must be >= 0 minutes.'));
25
+ }
26
+ args.autoReminder = minutes;
27
+ }
28
+ if (options.nextWeek !== undefined) {
29
+ args.nextWeek = parseDay(options.nextWeek);
30
+ }
31
+ if (options.startPage !== undefined) {
32
+ args.startPage = options.startPage;
33
+ }
34
+ if (options.reminderPush !== undefined) {
35
+ args.reminderPush = parseBoolean(options.reminderPush);
36
+ }
37
+ if (options.reminderDesktop !== undefined) {
38
+ args.reminderDesktop = parseBoolean(options.reminderDesktop);
39
+ }
40
+ if (options.reminderEmail !== undefined) {
41
+ args.reminderEmail = parseBoolean(options.reminderEmail);
42
+ }
43
+ if (options.completedSoundDesktop !== undefined) {
44
+ args.completedSoundDesktop = parseBoolean(options.completedSoundDesktop);
45
+ }
46
+ if (options.completedSoundMobile !== undefined) {
47
+ args.completedSoundMobile = parseBoolean(options.completedSoundMobile);
48
+ }
49
+ await updateUserSettings(args);
50
+ console.log('Settings updated.');
51
+ }
52
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/settings/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAkBnG,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAsB;IACvD,MAAM,IAAI,GAA6C,EAAE,CAAA;IAEzD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAA;IACpC,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAA;IACzD,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAA;QAClD,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YACvC,MAAM,IAAI,KAAK,CACX,WAAW,CAAC,uBAAuB,EAAE,qCAAqC,CAAC,CAC9E,CAAA;QACL,CAAC;QACD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAA;IAC/B,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IACD,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAClC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAA;IACtC,CAAC;IACD,IAAI,OAAO,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,YAAY,CAAC,OAAO,CAAC,eAAe,CAAC,CAAA;IAChE,CAAC;IACD,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;IAC5D,CAAC;IACD,IAAI,OAAO,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;QAC9C,IAAI,CAAC,qBAAqB,GAAG,YAAY,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAA;IAC5E,CAAC;IACD,IAAI,OAAO,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;QAC7C,IAAI,CAAC,oBAAoB,GAAG,YAAY,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAC1E,CAAC;IAED,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAA;IAC9B,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;AACpC,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { ViewOptions } from '../../lib/options.js';
2
+ export declare function viewSettings(options: ViewOptions): Promise<void>;
3
+ //# sourceMappingURL=view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view.d.ts","sourceRoot":"","sources":["../../../src/commands/settings/view.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AA8BvD,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBtE"}
@@ -0,0 +1,44 @@
1
+ import { getApi } from '../../lib/api/core.js';
2
+ import { fetchFilters } from '../../lib/api/filters.js';
3
+ import { fetchUserSettings } from '../../lib/api/user-settings.js';
4
+ import { withSpinner } from '../../lib/spinner.js';
5
+ import { formatSettingsForJson, formatSettingsView, parseStartPageRef } from './helpers.js';
6
+ async function resolveStartPageName(startPage) {
7
+ const ref = parseStartPageRef(startPage);
8
+ if (!ref)
9
+ return null;
10
+ try {
11
+ const api = await getApi();
12
+ switch (ref.type) {
13
+ case 'project': {
14
+ const project = await api.getProject(ref.id);
15
+ return project.name;
16
+ }
17
+ case 'label': {
18
+ const label = await api.getLabel(ref.id);
19
+ return label.name;
20
+ }
21
+ case 'filter': {
22
+ const filters = await fetchFilters();
23
+ const filter = filters.find((f) => f.id === ref.id);
24
+ return filter?.name ?? null;
25
+ }
26
+ }
27
+ }
28
+ catch {
29
+ return null;
30
+ }
31
+ }
32
+ export async function viewSettings(options) {
33
+ const { settings, startPageName } = await withSpinner({ text: 'Loading settings...', color: 'blue' }, async () => {
34
+ const settings = await fetchUserSettings();
35
+ const startPageName = await resolveStartPageName(settings.startPage);
36
+ return { settings, startPageName };
37
+ });
38
+ if (options.json) {
39
+ console.log(JSON.stringify(formatSettingsForJson(settings, startPageName), null, 2));
40
+ return;
41
+ }
42
+ console.log(formatSettingsView(settings, startPageName));
43
+ }
44
+ //# sourceMappingURL=view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view.js","sourceRoot":"","sources":["../../../src/commands/settings/view.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAE3F,KAAK,UAAU,oBAAoB,CAAC,SAAiB;IACjD,MAAM,GAAG,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAA;IACxC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IAErB,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,MAAM,EAAE,CAAA;QAC1B,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;YACf,KAAK,SAAS,CAAC,CAAC,CAAC;gBACb,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC5C,OAAO,OAAO,CAAC,IAAI,CAAA;YACvB,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACX,MAAM,KAAK,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;gBACxC,OAAO,KAAK,CAAC,IAAI,CAAA;YACrB,CAAC;YACD,KAAK,QAAQ,CAAC,CAAC,CAAC;gBACZ,MAAM,OAAO,GAAG,MAAM,YAAY,EAAE,CAAA;gBACpC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAA;gBACnD,OAAO,MAAM,EAAE,IAAI,IAAI,IAAI,CAAA;YAC/B,CAAC;QACL,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,IAAI,CAAA;IACf,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAoB;IACnD,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,WAAW,CACjD,EAAE,IAAI,EAAE,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,EAC9C,KAAK,IAAI,EAAE;QACP,MAAM,QAAQ,GAAG,MAAM,iBAAiB,EAAE,CAAA;QAC1C,MAAM,aAAa,GAAG,MAAM,oBAAoB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QACpE,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;IACtC,CAAC,CACJ,CAAA;IAED,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QACpF,OAAM;IACV,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAA;AAC5D,CAAC"}
@@ -1,3 +1,3 @@
1
1
  import { Command } from 'commander';
2
2
  export declare function registerSkillCommand(program: Command): void;
3
- //# sourceMappingURL=skill.d.ts.map
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA4C3D"}
@@ -0,0 +1,46 @@
1
+ import { installSkill } from './install.js';
2
+ import { listSkills } from './list.js';
3
+ import { uninstallSkill } from './uninstall.js';
4
+ import { updateAllSkills, updateSkill } from './update.js';
5
+ export function registerSkillCommand(program) {
6
+ const skill = program.command('skill').description('Manage coding agent skills/integrations');
7
+ const installCmd = skill
8
+ .command('install [agent]')
9
+ .description('Install skill for a coding agent')
10
+ .option('--local', 'Install in current project instead of global')
11
+ .option('--force', 'Overwrite existing skill file')
12
+ .action((agent, options) => {
13
+ if (!agent) {
14
+ installCmd.help();
15
+ return;
16
+ }
17
+ return installSkill(agent, options);
18
+ });
19
+ const updateCmd = skill
20
+ .command('update [agent]')
21
+ .description('Update installed skill to latest version')
22
+ .option('--local', 'Update in current project instead of global')
23
+ .action((agent, options) => {
24
+ if (!agent) {
25
+ updateCmd.help();
26
+ return;
27
+ }
28
+ if (agent === 'all') {
29
+ return updateAllSkills(options);
30
+ }
31
+ return updateSkill(agent, options);
32
+ });
33
+ const uninstallCmd = skill
34
+ .command('uninstall [agent]')
35
+ .description('Uninstall skill for a coding agent')
36
+ .option('--local', 'Remove from current project instead of global')
37
+ .action((agent, options) => {
38
+ if (!agent) {
39
+ uninstallCmd.help();
40
+ return;
41
+ }
42
+ return uninstallSkill(agent, options);
43
+ });
44
+ skill.command('list').description('List supported agents and install status').action(listSkills);
45
+ }
46
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/skill/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAE1D,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,yCAAyC,CAAC,CAAA;IAE7F,MAAM,UAAU,GAAG,KAAK;SACnB,OAAO,CAAC,iBAAiB,CAAC;SAC1B,WAAW,CAAC,kCAAkC,CAAC;SAC/C,MAAM,CAAC,SAAS,EAAE,8CAA8C,CAAC;SACjE,MAAM,CAAC,SAAS,EAAE,+BAA+B,CAAC;SAClD,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,UAAU,CAAC,IAAI,EAAE,CAAA;YACjB,OAAM;QACV,CAAC;QACD,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IAEN,MAAM,SAAS,GAAG,KAAK;SAClB,OAAO,CAAC,gBAAgB,CAAC;SACzB,WAAW,CAAC,0CAA0C,CAAC;SACvD,MAAM,CAAC,SAAS,EAAE,6CAA6C,CAAC;SAChE,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,SAAS,CAAC,IAAI,EAAE,CAAA;YAChB,OAAM;QACV,CAAC;QACD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;YAClB,OAAO,eAAe,CAAC,OAAO,CAAC,CAAA;QACnC,CAAC;QACD,OAAO,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;IAEN,MAAM,YAAY,GAAG,KAAK;SACrB,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,oCAAoC,CAAC;SACjD,MAAM,CAAC,SAAS,EAAE,+CAA+C,CAAC;SAClE,MAAM,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACvB,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,YAAY,CAAC,IAAI,EAAE,CAAA;YACnB,OAAM;QACV,CAAC;QACD,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEN,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,0CAA0C,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;AACpG,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface InstallOptions {
2
+ local?: boolean;
3
+ force?: boolean;
4
+ }
5
+ export declare function installSkill(agent: string, options: InstallOptions): Promise<void>;
6
+ //# sourceMappingURL=install.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,cAAc;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAsB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAmBxF"}
@@ -0,0 +1,19 @@
1
+ import chalk from 'chalk';
2
+ import { formatError } from '../../lib/output.js';
3
+ import { getInstaller, listAgents } from '../../lib/skills/index.js';
4
+ export async function installSkill(agent, options) {
5
+ const installer = getInstaller(agent);
6
+ if (!installer) {
7
+ const available = listAgents().join(', ');
8
+ throw new Error(formatError('UNKNOWN_AGENT', `Unknown agent: ${agent}`, [
9
+ `Available agents: ${available}`,
10
+ ]));
11
+ }
12
+ const local = options.local ?? false;
13
+ const force = options.force ?? false;
14
+ await installer.install(local, force);
15
+ const filepath = installer.getInstallPath(local);
16
+ console.log(chalk.green('✓'), `Installed ${installer.name} skill`);
17
+ console.log(chalk.dim(filepath));
18
+ }
19
+ //# sourceMappingURL=install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install.js","sourceRoot":"","sources":["../../../src/commands/skill/install.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAOpE,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,KAAa,EAAE,OAAuB;IACrE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACrC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,IAAI,KAAK,CACX,WAAW,CAAC,eAAe,EAAE,kBAAkB,KAAK,EAAE,EAAE;YACpD,qBAAqB,SAAS,EAAE;SACnC,CAAC,CACL,CAAA;IACL,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAA;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAA;IAEpC,MAAM,SAAS,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAErC,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,aAAa,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAA;IAClE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;AACpC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function listSkills(): Promise<void>;
2
+ //# sourceMappingURL=list.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/list.ts"],"names":[],"mappings":"AAGA,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBhD"}
@@ -0,0 +1,23 @@
1
+ import chalk from 'chalk';
2
+ import { listAgents, skillInstallers } from '../../lib/skills/index.js';
3
+ export async function listSkills() {
4
+ const agents = listAgents();
5
+ console.log(chalk.bold('Available agents:'));
6
+ console.log('');
7
+ for (const agentName of agents) {
8
+ const installer = skillInstallers[agentName];
9
+ const globalInstalled = await installer.isInstalled(false);
10
+ const localInstalled = await installer.isInstalled(true);
11
+ const status = [];
12
+ if (globalInstalled)
13
+ status.push('global');
14
+ if (localInstalled)
15
+ status.push('local');
16
+ const statusStr = status.length > 0 ? chalk.green(`[${status.join(', ')}]`) : chalk.dim('[not installed]');
17
+ console.log(` ${agentName}`);
18
+ console.log(` ${chalk.dim(installer.description)}`);
19
+ console.log(` ${statusStr}`);
20
+ console.log('');
21
+ }
22
+ }
23
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../src/commands/skill/list.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAA;AAEvE,MAAM,CAAC,KAAK,UAAU,UAAU;IAC5B,MAAM,MAAM,GAAG,UAAU,EAAE,CAAA;IAE3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAA;IAC5C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAEf,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,CAAC,CAAA;QAC5C,MAAM,eAAe,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;QAC1D,MAAM,cAAc,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;QAExD,MAAM,MAAM,GAAa,EAAE,CAAA;QAC3B,IAAI,eAAe;YAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,cAAc;YAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAExC,MAAM,SAAS,GACX,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;QAE5F,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC,CAAA;QAC7B,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;QACtD,OAAO,CAAC,GAAG,CAAC,OAAO,SAAS,EAAE,CAAC,CAAA;QAC/B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC;AACL,CAAC"}
@@ -0,0 +1,5 @@
1
+ export interface UninstallOptions {
2
+ local?: boolean;
3
+ }
4
+ export declare function uninstallSkill(agent: string, options: UninstallOptions): Promise<void>;
5
+ //# sourceMappingURL=uninstall.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,gBAAgB;IAC7B,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB5F"}
@@ -0,0 +1,16 @@
1
+ import chalk from 'chalk';
2
+ import { formatError } from '../../lib/output.js';
3
+ import { getInstaller, listAgents } from '../../lib/skills/index.js';
4
+ export async function uninstallSkill(agent, options) {
5
+ const installer = getInstaller(agent);
6
+ if (!installer) {
7
+ const available = listAgents().join(', ');
8
+ throw new Error(formatError('UNKNOWN_AGENT', `Unknown agent: ${agent}`, [
9
+ `Available agents: ${available}`,
10
+ ]));
11
+ }
12
+ const local = options.local ?? false;
13
+ await installer.uninstall(local);
14
+ console.log(chalk.green('✓'), `Uninstalled ${installer.name} skill`);
15
+ }
16
+ //# sourceMappingURL=uninstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uninstall.js","sourceRoot":"","sources":["../../../src/commands/skill/uninstall.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAMpE,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,KAAa,EAAE,OAAyB;IACzE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACrC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,IAAI,KAAK,CACX,WAAW,CAAC,eAAe,EAAE,kBAAkB,KAAK,EAAE,EAAE;YACpD,qBAAqB,SAAS,EAAE;SACnC,CAAC,CACL,CAAA;IACL,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAA;IAEpC,MAAM,SAAS,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;IAEhC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,eAAe,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAA;AACxE,CAAC"}
@@ -0,0 +1,6 @@
1
+ export interface UpdateOptions {
2
+ local?: boolean;
3
+ }
4
+ export declare function updateAllSkills(options: UpdateOptions): Promise<void>;
5
+ export declare function updateSkill(agent: string, options: UpdateOptions): Promise<void>;
6
+ //# sourceMappingURL=update.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.d.ts","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,aAAa;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAmB3E;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBtF"}
@@ -0,0 +1,39 @@
1
+ import chalk from 'chalk';
2
+ import { formatError } from '../../lib/output.js';
3
+ import { getInstaller, listAgents } from '../../lib/skills/index.js';
4
+ import { updateAllInstalledSkills } from '../../lib/skills/update-installed.js';
5
+ export async function updateAllSkills(options) {
6
+ const local = options.local ?? false;
7
+ const result = await updateAllInstalledSkills(local);
8
+ for (const name of result.updated) {
9
+ console.log(chalk.green('✓'), `Updated ${name} skill`);
10
+ }
11
+ for (const name of result.skipped) {
12
+ console.log(chalk.dim(` Skipped ${name} (not installed)`));
13
+ }
14
+ for (const name of result.errors) {
15
+ console.log(chalk.red('✗'), `Failed to update ${name}`);
16
+ }
17
+ if (result.updated.length === 0 && result.errors.length === 0) {
18
+ console.log(chalk.dim('No installed skills found to update.'));
19
+ }
20
+ }
21
+ export async function updateSkill(agent, options) {
22
+ const installer = getInstaller(agent);
23
+ if (!installer) {
24
+ const available = listAgents().join(', ');
25
+ throw new Error(formatError('UNKNOWN_AGENT', `Unknown agent: ${agent}`, [
26
+ `Available agents: ${available}`,
27
+ ]));
28
+ }
29
+ const local = options.local ?? false;
30
+ const installed = await installer.isInstalled(local);
31
+ if (!installed) {
32
+ throw new Error(`Skill is not installed for ${agent}. Use \`td skill install ${agent}${local ? ' --local' : ''}\` first.`);
33
+ }
34
+ await installer.update(local);
35
+ const filepath = installer.getInstallPath(local);
36
+ console.log(chalk.green('✓'), `Updated ${installer.name} skill`);
37
+ console.log(chalk.dim(filepath));
38
+ }
39
+ //# sourceMappingURL=update.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/commands/skill/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAA;AACjD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAM/E,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,OAAsB;IACxD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAA;IACpC,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,KAAK,CAAC,CAAA;IAEpD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,IAAI,QAAQ,CAAC,CAAA;IAC1D,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,IAAI,kBAAkB,CAAC,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,oBAAoB,IAAI,EAAE,CAAC,CAAA;IAC3D,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,CAAA;IAClE,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAa,EAAE,OAAsB;IACnE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACrC,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,SAAS,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACzC,MAAM,IAAI,KAAK,CACX,WAAW,CAAC,eAAe,EAAE,kBAAkB,KAAK,EAAE,EAAE;YACpD,qBAAqB,SAAS,EAAE;SACnC,CAAC,CACL,CAAA;IACL,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,KAAK,CAAA;IACpC,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAA;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACX,8BAA8B,KAAK,4BAA4B,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,WAAW,CAC5G,CAAA;IACL,CAAC;IAED,MAAM,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAE7B,MAAM,QAAQ,GAAG,SAAS,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAChD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,WAAW,SAAS,CAAC,IAAI,QAAQ,CAAC,CAAA;IAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAA;AACpC,CAAC"}