monday-cli 0.2.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 (596) hide show
  1. package/CHANGELOG.md +439 -0
  2. package/LICENSE +21 -0
  3. package/README.md +431 -0
  4. package/dist/api/board-child-finder.d.ts +95 -0
  5. package/dist/api/board-child-finder.d.ts.map +1 -0
  6. package/dist/api/board-child-finder.js +89 -0
  7. package/dist/api/board-child-finder.js.map +1 -0
  8. package/dist/api/board-metadata.d.ts +162 -0
  9. package/dist/api/board-metadata.d.ts.map +1 -0
  10. package/dist/api/board-metadata.js +238 -0
  11. package/dist/api/board-metadata.js.map +1 -0
  12. package/dist/api/board-mutation-invalidation.d.ts +153 -0
  13. package/dist/api/board-mutation-invalidation.d.ts.map +1 -0
  14. package/dist/api/board-mutation-invalidation.js +136 -0
  15. package/dist/api/board-mutation-invalidation.js.map +1 -0
  16. package/dist/api/board-mutation-result.d.ts +97 -0
  17. package/dist/api/board-mutation-result.d.ts.map +1 -0
  18. package/dist/api/board-mutation-result.js +99 -0
  19. package/dist/api/board-mutation-result.js.map +1 -0
  20. package/dist/api/board-projection.d.ts +68 -0
  21. package/dist/api/board-projection.d.ts.map +1 -0
  22. package/dist/api/board-projection.js +79 -0
  23. package/dist/api/board-projection.js.map +1 -0
  24. package/dist/api/cache.d.ts +150 -0
  25. package/dist/api/cache.d.ts.map +1 -0
  26. package/dist/api/cache.js +418 -0
  27. package/dist/api/cache.js.map +1 -0
  28. package/dist/api/client.d.ts +162 -0
  29. package/dist/api/client.d.ts.map +1 -0
  30. package/dist/api/client.js +205 -0
  31. package/dist/api/client.js.map +1 -0
  32. package/dist/api/column-mapping.d.ts +68 -0
  33. package/dist/api/column-mapping.d.ts.map +1 -0
  34. package/dist/api/column-mapping.js +117 -0
  35. package/dist/api/column-mapping.js.map +1 -0
  36. package/dist/api/column-mutation-result.d.ts +136 -0
  37. package/dist/api/column-mutation-result.d.ts.map +1 -0
  38. package/dist/api/column-mutation-result.js +130 -0
  39. package/dist/api/column-mutation-result.js.map +1 -0
  40. package/dist/api/column-types.d.ts +215 -0
  41. package/dist/api/column-types.d.ts.map +1 -0
  42. package/dist/api/column-types.js +195 -0
  43. package/dist/api/column-types.js.map +1 -0
  44. package/dist/api/column-values.d.ts +446 -0
  45. package/dist/api/column-values.d.ts.map +1 -0
  46. package/dist/api/column-values.js +795 -0
  47. package/dist/api/column-values.js.map +1 -0
  48. package/dist/api/columns.d.ts +205 -0
  49. package/dist/api/columns.d.ts.map +1 -0
  50. package/dist/api/columns.js +343 -0
  51. package/dist/api/columns.js.map +1 -0
  52. package/dist/api/complexity.d.ts +90 -0
  53. package/dist/api/complexity.d.ts.map +1 -0
  54. package/dist/api/complexity.js +194 -0
  55. package/dist/api/complexity.js.map +1 -0
  56. package/dist/api/dates.d.ts +150 -0
  57. package/dist/api/dates.d.ts.map +1 -0
  58. package/dist/api/dates.js +490 -0
  59. package/dist/api/dates.js.map +1 -0
  60. package/dist/api/destructive-gate.d.ts +107 -0
  61. package/dist/api/destructive-gate.d.ts.map +1 -0
  62. package/dist/api/destructive-gate.js +19 -0
  63. package/dist/api/destructive-gate.js.map +1 -0
  64. package/dist/api/dry-run.d.ts +338 -0
  65. package/dist/api/dry-run.d.ts.map +1 -0
  66. package/dist/api/dry-run.js +607 -0
  67. package/dist/api/dry-run.js.map +1 -0
  68. package/dist/api/emails.d.ts +60 -0
  69. package/dist/api/emails.d.ts.map +1 -0
  70. package/dist/api/emails.js +113 -0
  71. package/dist/api/emails.js.map +1 -0
  72. package/dist/api/errors.d.ts +82 -0
  73. package/dist/api/errors.d.ts.map +1 -0
  74. package/dist/api/errors.js +434 -0
  75. package/dist/api/errors.js.map +1 -0
  76. package/dist/api/filters.d.ts +198 -0
  77. package/dist/api/filters.d.ts.map +1 -0
  78. package/dist/api/filters.js +328 -0
  79. package/dist/api/filters.js.map +1 -0
  80. package/dist/api/group-color.d.ts +33 -0
  81. package/dist/api/group-color.d.ts.map +1 -0
  82. package/dist/api/group-color.js +80 -0
  83. package/dist/api/group-color.js.map +1 -0
  84. package/dist/api/group-mutation-result.d.ts +150 -0
  85. package/dist/api/group-mutation-result.d.ts.map +1 -0
  86. package/dist/api/group-mutation-result.js +141 -0
  87. package/dist/api/group-mutation-result.js.map +1 -0
  88. package/dist/api/iso-country-codes.d.ts +45 -0
  89. package/dist/api/iso-country-codes.d.ts.map +1 -0
  90. package/dist/api/iso-country-codes.js +71 -0
  91. package/dist/api/iso-country-codes.js.map +1 -0
  92. package/dist/api/item-board-lookup.d.ts +86 -0
  93. package/dist/api/item-board-lookup.d.ts.map +1 -0
  94. package/dist/api/item-board-lookup.js +140 -0
  95. package/dist/api/item-board-lookup.js.map +1 -0
  96. package/dist/api/item-helpers.d.ts +133 -0
  97. package/dist/api/item-helpers.d.ts.map +1 -0
  98. package/dist/api/item-helpers.js +139 -0
  99. package/dist/api/item-helpers.js.map +1 -0
  100. package/dist/api/item-mutation-result.d.ts +60 -0
  101. package/dist/api/item-mutation-result.d.ts.map +1 -0
  102. package/dist/api/item-mutation-result.js +63 -0
  103. package/dist/api/item-mutation-result.js.map +1 -0
  104. package/dist/api/item-projection.d.ts +165 -0
  105. package/dist/api/item-projection.d.ts.map +1 -0
  106. package/dist/api/item-projection.js +235 -0
  107. package/dist/api/item-projection.js.map +1 -0
  108. package/dist/api/item-source-read.d.ts +45 -0
  109. package/dist/api/item-source-read.d.ts.map +1 -0
  110. package/dist/api/item-source-read.js +57 -0
  111. package/dist/api/item-source-read.js.map +1 -0
  112. package/dist/api/items-page-walker.d.ts +126 -0
  113. package/dist/api/items-page-walker.d.ts.map +1 -0
  114. package/dist/api/items-page-walker.js +256 -0
  115. package/dist/api/items-page-walker.js.map +1 -0
  116. package/dist/api/links.d.ts +70 -0
  117. package/dist/api/links.d.ts.map +1 -0
  118. package/dist/api/links.js +128 -0
  119. package/dist/api/links.js.map +1 -0
  120. package/dist/api/me-token.d.ts +52 -0
  121. package/dist/api/me-token.d.ts.map +1 -0
  122. package/dist/api/me-token.js +55 -0
  123. package/dist/api/me-token.js.map +1 -0
  124. package/dist/api/pagination.d.ts +201 -0
  125. package/dist/api/pagination.d.ts.map +1 -0
  126. package/dist/api/pagination.js +223 -0
  127. package/dist/api/pagination.js.map +1 -0
  128. package/dist/api/partial-success-mutation.d.ts +28 -0
  129. package/dist/api/partial-success-mutation.d.ts.map +1 -0
  130. package/dist/api/partial-success-mutation.js +68 -0
  131. package/dist/api/partial-success-mutation.js.map +1 -0
  132. package/dist/api/people.d.ts +182 -0
  133. package/dist/api/people.d.ts.map +1 -0
  134. package/dist/api/people.js +260 -0
  135. package/dist/api/people.js.map +1 -0
  136. package/dist/api/phones.d.ts +74 -0
  137. package/dist/api/phones.d.ts.map +1 -0
  138. package/dist/api/phones.js +167 -0
  139. package/dist/api/phones.js.map +1 -0
  140. package/dist/api/raw-document.d.ts +53 -0
  141. package/dist/api/raw-document.d.ts.map +1 -0
  142. package/dist/api/raw-document.js +177 -0
  143. package/dist/api/raw-document.js.map +1 -0
  144. package/dist/api/raw-write.d.ts +127 -0
  145. package/dist/api/raw-write.d.ts.map +1 -0
  146. package/dist/api/raw-write.js +233 -0
  147. package/dist/api/raw-write.js.map +1 -0
  148. package/dist/api/resolution-context.d.ts +32 -0
  149. package/dist/api/resolution-context.d.ts.map +1 -0
  150. package/dist/api/resolution-context.js +42 -0
  151. package/dist/api/resolution-context.js.map +1 -0
  152. package/dist/api/resolution-pass.d.ts +163 -0
  153. package/dist/api/resolution-pass.d.ts.map +1 -0
  154. package/dist/api/resolution-pass.js +254 -0
  155. package/dist/api/resolution-pass.js.map +1 -0
  156. package/dist/api/resolve-client.d.ts +69 -0
  157. package/dist/api/resolve-client.d.ts.map +1 -0
  158. package/dist/api/resolve-client.js +70 -0
  159. package/dist/api/resolve-client.js.map +1 -0
  160. package/dist/api/resolver-error-fold.d.ts +176 -0
  161. package/dist/api/resolver-error-fold.d.ts.map +1 -0
  162. package/dist/api/resolver-error-fold.js +230 -0
  163. package/dist/api/resolver-error-fold.js.map +1 -0
  164. package/dist/api/resolvers.d.ts +131 -0
  165. package/dist/api/resolvers.d.ts.map +1 -0
  166. package/dist/api/resolvers.js +262 -0
  167. package/dist/api/resolvers.js.map +1 -0
  168. package/dist/api/response-root.d.ts +65 -0
  169. package/dist/api/response-root.d.ts.map +1 -0
  170. package/dist/api/response-root.js +61 -0
  171. package/dist/api/response-root.js.map +1 -0
  172. package/dist/api/retry.d.ts +112 -0
  173. package/dist/api/retry.d.ts.map +1 -0
  174. package/dist/api/retry.js +181 -0
  175. package/dist/api/retry.js.map +1 -0
  176. package/dist/api/set-expression.d.ts +23 -0
  177. package/dist/api/set-expression.d.ts.map +1 -0
  178. package/dist/api/set-expression.js +31 -0
  179. package/dist/api/set-expression.js.map +1 -0
  180. package/dist/api/sort.d.ts +59 -0
  181. package/dist/api/sort.d.ts.map +1 -0
  182. package/dist/api/sort.js +73 -0
  183. package/dist/api/sort.js.map +1 -0
  184. package/dist/api/source-aggregator.d.ts +94 -0
  185. package/dist/api/source-aggregator.d.ts.map +1 -0
  186. package/dist/api/source-aggregator.js +111 -0
  187. package/dist/api/source-aggregator.js.map +1 -0
  188. package/dist/api/transport.d.ts +58 -0
  189. package/dist/api/transport.d.ts.map +1 -0
  190. package/dist/api/transport.js +190 -0
  191. package/dist/api/transport.js.map +1 -0
  192. package/dist/api/update-mutation-result.d.ts +133 -0
  193. package/dist/api/update-mutation-result.d.ts.map +1 -0
  194. package/dist/api/update-mutation-result.js +145 -0
  195. package/dist/api/update-mutation-result.js.map +1 -0
  196. package/dist/api/users-fan-out-mutation.d.ts +124 -0
  197. package/dist/api/users-fan-out-mutation.d.ts.map +1 -0
  198. package/dist/api/users-fan-out-mutation.js +331 -0
  199. package/dist/api/users-fan-out-mutation.js.map +1 -0
  200. package/dist/api/walk-pages.d.ts +91 -0
  201. package/dist/api/walk-pages.d.ts.map +1 -0
  202. package/dist/api/walk-pages.js +84 -0
  203. package/dist/api/walk-pages.js.map +1 -0
  204. package/dist/api/workspace-projection.d.ts +64 -0
  205. package/dist/api/workspace-projection.d.ts.map +1 -0
  206. package/dist/api/workspace-projection.js +83 -0
  207. package/dist/api/workspace-projection.js.map +1 -0
  208. package/dist/cli/envelope-out.d.ts +128 -0
  209. package/dist/cli/envelope-out.d.ts.map +1 -0
  210. package/dist/cli/envelope-out.js +146 -0
  211. package/dist/cli/envelope-out.js.map +1 -0
  212. package/dist/cli/index.d.ts +3 -0
  213. package/dist/cli/index.d.ts.map +1 -0
  214. package/dist/cli/index.js +27 -0
  215. package/dist/cli/index.js.map +1 -0
  216. package/dist/cli/program.d.ts +29 -0
  217. package/dist/cli/program.d.ts.map +1 -0
  218. package/dist/cli/program.js +109 -0
  219. package/dist/cli/program.js.map +1 -0
  220. package/dist/cli/run.d.ts +108 -0
  221. package/dist/cli/run.d.ts.map +1 -0
  222. package/dist/cli/run.js +105 -0
  223. package/dist/cli/run.js.map +1 -0
  224. package/dist/commands/account/client-helper.d.ts +37 -0
  225. package/dist/commands/account/client-helper.d.ts.map +1 -0
  226. package/dist/commands/account/client-helper.js +55 -0
  227. package/dist/commands/account/client-helper.js.map +1 -0
  228. package/dist/commands/account/complexity.d.ts +29 -0
  229. package/dist/commands/account/complexity.d.ts.map +1 -0
  230. package/dist/commands/account/complexity.js +70 -0
  231. package/dist/commands/account/complexity.js.map +1 -0
  232. package/dist/commands/account/info.d.ts +36 -0
  233. package/dist/commands/account/info.d.ts.map +1 -0
  234. package/dist/commands/account/info.js +74 -0
  235. package/dist/commands/account/info.js.map +1 -0
  236. package/dist/commands/account/version.d.ts +44 -0
  237. package/dist/commands/account/version.d.ts.map +1 -0
  238. package/dist/commands/account/version.js +98 -0
  239. package/dist/commands/account/version.js.map +1 -0
  240. package/dist/commands/account/whoami.d.ts +34 -0
  241. package/dist/commands/account/whoami.d.ts.map +1 -0
  242. package/dist/commands/account/whoami.js +77 -0
  243. package/dist/commands/account/whoami.js.map +1 -0
  244. package/dist/commands/board/add-users.d.ts +60 -0
  245. package/dist/commands/board/add-users.d.ts.map +1 -0
  246. package/dist/commands/board/add-users.js +133 -0
  247. package/dist/commands/board/add-users.js.map +1 -0
  248. package/dist/commands/board/archive.d.ts +64 -0
  249. package/dist/commands/board/archive.d.ts.map +1 -0
  250. package/dist/commands/board/archive.js +226 -0
  251. package/dist/commands/board/archive.js.map +1 -0
  252. package/dist/commands/board/column-create.d.ts +146 -0
  253. package/dist/commands/board/column-create.d.ts.map +1 -0
  254. package/dist/commands/board/column-create.js +564 -0
  255. package/dist/commands/board/column-create.js.map +1 -0
  256. package/dist/commands/board/column-delete.d.ts +76 -0
  257. package/dist/commands/board/column-delete.d.ts.map +1 -0
  258. package/dist/commands/board/column-delete.js +224 -0
  259. package/dist/commands/board/column-delete.js.map +1 -0
  260. package/dist/commands/board/column-update.d.ts +92 -0
  261. package/dist/commands/board/column-update.d.ts.map +1 -0
  262. package/dist/commands/board/column-update.js +364 -0
  263. package/dist/commands/board/column-update.js.map +1 -0
  264. package/dist/commands/board/columns.d.ts +30 -0
  265. package/dist/commands/board/columns.d.ts.map +1 -0
  266. package/dist/commands/board/columns.js +102 -0
  267. package/dist/commands/board/columns.js.map +1 -0
  268. package/dist/commands/board/create.d.ts +67 -0
  269. package/dist/commands/board/create.d.ts.map +1 -0
  270. package/dist/commands/board/create.js +226 -0
  271. package/dist/commands/board/create.js.map +1 -0
  272. package/dist/commands/board/delete.d.ts +60 -0
  273. package/dist/commands/board/delete.d.ts.map +1 -0
  274. package/dist/commands/board/delete.js +192 -0
  275. package/dist/commands/board/delete.js.map +1 -0
  276. package/dist/commands/board/describe.d.ts +68 -0
  277. package/dist/commands/board/describe.d.ts.map +1 -0
  278. package/dist/commands/board/describe.js +241 -0
  279. package/dist/commands/board/describe.js.map +1 -0
  280. package/dist/commands/board/doctor.d.ts +108 -0
  281. package/dist/commands/board/doctor.d.ts.map +1 -0
  282. package/dist/commands/board/doctor.js +417 -0
  283. package/dist/commands/board/doctor.js.map +1 -0
  284. package/dist/commands/board/duplicate.d.ts +85 -0
  285. package/dist/commands/board/duplicate.d.ts.map +1 -0
  286. package/dist/commands/board/duplicate.js +281 -0
  287. package/dist/commands/board/duplicate.js.map +1 -0
  288. package/dist/commands/board/find.d.ts +47 -0
  289. package/dist/commands/board/find.d.ts.map +1 -0
  290. package/dist/commands/board/find.js +153 -0
  291. package/dist/commands/board/find.js.map +1 -0
  292. package/dist/commands/board/get.d.ts +41 -0
  293. package/dist/commands/board/get.d.ts.map +1 -0
  294. package/dist/commands/board/get.js +66 -0
  295. package/dist/commands/board/get.js.map +1 -0
  296. package/dist/commands/board/group-archive.d.ts +83 -0
  297. package/dist/commands/board/group-archive.d.ts.map +1 -0
  298. package/dist/commands/board/group-archive.js +264 -0
  299. package/dist/commands/board/group-archive.js.map +1 -0
  300. package/dist/commands/board/group-create.d.ts +118 -0
  301. package/dist/commands/board/group-create.d.ts.map +1 -0
  302. package/dist/commands/board/group-create.js +239 -0
  303. package/dist/commands/board/group-create.js.map +1 -0
  304. package/dist/commands/board/group-delete.d.ts +79 -0
  305. package/dist/commands/board/group-delete.d.ts.map +1 -0
  306. package/dist/commands/board/group-delete.js +222 -0
  307. package/dist/commands/board/group-delete.js.map +1 -0
  308. package/dist/commands/board/group-duplicate.d.ts +70 -0
  309. package/dist/commands/board/group-duplicate.d.ts.map +1 -0
  310. package/dist/commands/board/group-duplicate.js +219 -0
  311. package/dist/commands/board/group-duplicate.js.map +1 -0
  312. package/dist/commands/board/group-update.d.ts +145 -0
  313. package/dist/commands/board/group-update.d.ts.map +1 -0
  314. package/dist/commands/board/group-update.js +341 -0
  315. package/dist/commands/board/group-update.js.map +1 -0
  316. package/dist/commands/board/groups.d.ts +28 -0
  317. package/dist/commands/board/groups.d.ts.map +1 -0
  318. package/dist/commands/board/groups.js +85 -0
  319. package/dist/commands/board/groups.js.map +1 -0
  320. package/dist/commands/board/list.d.ts +39 -0
  321. package/dist/commands/board/list.d.ts.map +1 -0
  322. package/dist/commands/board/list.js +135 -0
  323. package/dist/commands/board/list.js.map +1 -0
  324. package/dist/commands/board/subscribers.d.ts +24 -0
  325. package/dist/commands/board/subscribers.d.ts.map +1 -0
  326. package/dist/commands/board/subscribers.js +89 -0
  327. package/dist/commands/board/subscribers.js.map +1 -0
  328. package/dist/commands/board/update.d.ts +82 -0
  329. package/dist/commands/board/update.d.ts.map +1 -0
  330. package/dist/commands/board/update.js +328 -0
  331. package/dist/commands/board/update.js.map +1 -0
  332. package/dist/commands/cache/clear.d.ts +34 -0
  333. package/dist/commands/cache/clear.d.ts.map +1 -0
  334. package/dist/commands/cache/clear.js +113 -0
  335. package/dist/commands/cache/clear.js.map +1 -0
  336. package/dist/commands/cache/list.d.ts +50 -0
  337. package/dist/commands/cache/list.d.ts.map +1 -0
  338. package/dist/commands/cache/list.js +77 -0
  339. package/dist/commands/cache/list.js.map +1 -0
  340. package/dist/commands/cache/stats.d.ts +22 -0
  341. package/dist/commands/cache/stats.d.ts.map +1 -0
  342. package/dist/commands/cache/stats.js +56 -0
  343. package/dist/commands/cache/stats.js.map +1 -0
  344. package/dist/commands/config/path.d.ts +22 -0
  345. package/dist/commands/config/path.d.ts.map +1 -0
  346. package/dist/commands/config/path.js +74 -0
  347. package/dist/commands/config/path.js.map +1 -0
  348. package/dist/commands/config/show.d.ts +61 -0
  349. package/dist/commands/config/show.d.ts.map +1 -0
  350. package/dist/commands/config/show.js +137 -0
  351. package/dist/commands/config/show.js.map +1 -0
  352. package/dist/commands/emit.d.ts +156 -0
  353. package/dist/commands/emit.d.ts.map +1 -0
  354. package/dist/commands/emit.js +212 -0
  355. package/dist/commands/emit.js.map +1 -0
  356. package/dist/commands/index.d.ts +5 -0
  357. package/dist/commands/index.d.ts.map +1 -0
  358. package/dist/commands/index.js +195 -0
  359. package/dist/commands/index.js.map +1 -0
  360. package/dist/commands/item/archive.d.ts +81 -0
  361. package/dist/commands/item/archive.d.ts.map +1 -0
  362. package/dist/commands/item/archive.js +187 -0
  363. package/dist/commands/item/archive.js.map +1 -0
  364. package/dist/commands/item/clear.d.ts +140 -0
  365. package/dist/commands/item/clear.d.ts.map +1 -0
  366. package/dist/commands/item/clear.js +748 -0
  367. package/dist/commands/item/clear.js.map +1 -0
  368. package/dist/commands/item/create.d.ts +77 -0
  369. package/dist/commands/item/create.d.ts.map +1 -0
  370. package/dist/commands/item/create.js +802 -0
  371. package/dist/commands/item/create.js.map +1 -0
  372. package/dist/commands/item/delete.d.ts +82 -0
  373. package/dist/commands/item/delete.d.ts.map +1 -0
  374. package/dist/commands/item/delete.js +179 -0
  375. package/dist/commands/item/delete.js.map +1 -0
  376. package/dist/commands/item/duplicate.d.ts +117 -0
  377. package/dist/commands/item/duplicate.d.ts.map +1 -0
  378. package/dist/commands/item/duplicate.js +238 -0
  379. package/dist/commands/item/duplicate.js.map +1 -0
  380. package/dist/commands/item/find.d.ts +55 -0
  381. package/dist/commands/item/find.d.ts.map +1 -0
  382. package/dist/commands/item/find.js +231 -0
  383. package/dist/commands/item/find.js.map +1 -0
  384. package/dist/commands/item/get.d.ts +47 -0
  385. package/dist/commands/item/get.d.ts.map +1 -0
  386. package/dist/commands/item/get.js +66 -0
  387. package/dist/commands/item/get.js.map +1 -0
  388. package/dist/commands/item/list.d.ts +73 -0
  389. package/dist/commands/item/list.d.ts.map +1 -0
  390. package/dist/commands/item/list.js +284 -0
  391. package/dist/commands/item/list.js.map +1 -0
  392. package/dist/commands/item/move.d.ts +181 -0
  393. package/dist/commands/item/move.d.ts.map +1 -0
  394. package/dist/commands/item/move.js +560 -0
  395. package/dist/commands/item/move.js.map +1 -0
  396. package/dist/commands/item/search.d.ts +67 -0
  397. package/dist/commands/item/search.d.ts.map +1 -0
  398. package/dist/commands/item/search.js +322 -0
  399. package/dist/commands/item/search.js.map +1 -0
  400. package/dist/commands/item/set.d.ts +88 -0
  401. package/dist/commands/item/set.d.ts.map +1 -0
  402. package/dist/commands/item/set.js +387 -0
  403. package/dist/commands/item/set.js.map +1 -0
  404. package/dist/commands/item/subitems.d.ts +50 -0
  405. package/dist/commands/item/subitems.d.ts.map +1 -0
  406. package/dist/commands/item/subitems.js +86 -0
  407. package/dist/commands/item/subitems.js.map +1 -0
  408. package/dist/commands/item/update.d.ts +99 -0
  409. package/dist/commands/item/update.d.ts.map +1 -0
  410. package/dist/commands/item/update.js +884 -0
  411. package/dist/commands/item/update.js.map +1 -0
  412. package/dist/commands/item/upsert.d.ts +105 -0
  413. package/dist/commands/item/upsert.d.ts.map +1 -0
  414. package/dist/commands/item/upsert.js +998 -0
  415. package/dist/commands/item/upsert.js.map +1 -0
  416. package/dist/commands/parse-argv.d.ts +20 -0
  417. package/dist/commands/parse-argv.d.ts.map +1 -0
  418. package/dist/commands/parse-argv.js +40 -0
  419. package/dist/commands/parse-argv.js.map +1 -0
  420. package/dist/commands/raw/index.d.ts +23 -0
  421. package/dist/commands/raw/index.d.ts.map +1 -0
  422. package/dist/commands/raw/index.js +416 -0
  423. package/dist/commands/raw/index.js.map +1 -0
  424. package/dist/commands/run-by-id-lookup.d.ts +72 -0
  425. package/dist/commands/run-by-id-lookup.d.ts.map +1 -0
  426. package/dist/commands/run-by-id-lookup.js +58 -0
  427. package/dist/commands/run-by-id-lookup.js.map +1 -0
  428. package/dist/commands/schema/index.d.ts +104 -0
  429. package/dist/commands/schema/index.d.ts.map +1 -0
  430. package/dist/commands/schema/index.js +183 -0
  431. package/dist/commands/schema/index.js.map +1 -0
  432. package/dist/commands/types.d.ts +66 -0
  433. package/dist/commands/types.d.ts.map +1 -0
  434. package/dist/commands/types.js +15 -0
  435. package/dist/commands/types.js.map +1 -0
  436. package/dist/commands/update/body-source.d.ts +38 -0
  437. package/dist/commands/update/body-source.d.ts.map +1 -0
  438. package/dist/commands/update/body-source.js +80 -0
  439. package/dist/commands/update/body-source.js.map +1 -0
  440. package/dist/commands/update/clear-all.d.ts +67 -0
  441. package/dist/commands/update/clear-all.d.ts.map +1 -0
  442. package/dist/commands/update/clear-all.js +281 -0
  443. package/dist/commands/update/clear-all.js.map +1 -0
  444. package/dist/commands/update/create.d.ts +51 -0
  445. package/dist/commands/update/create.d.ts.map +1 -0
  446. package/dist/commands/update/create.js +167 -0
  447. package/dist/commands/update/create.js.map +1 -0
  448. package/dist/commands/update/delete.d.ts +53 -0
  449. package/dist/commands/update/delete.d.ts.map +1 -0
  450. package/dist/commands/update/delete.js +148 -0
  451. package/dist/commands/update/delete.js.map +1 -0
  452. package/dist/commands/update/edit.d.ts +37 -0
  453. package/dist/commands/update/edit.d.ts.map +1 -0
  454. package/dist/commands/update/edit.js +129 -0
  455. package/dist/commands/update/edit.js.map +1 -0
  456. package/dist/commands/update/get.d.ts +37 -0
  457. package/dist/commands/update/get.d.ts.map +1 -0
  458. package/dist/commands/update/get.js +92 -0
  459. package/dist/commands/update/get.js.map +1 -0
  460. package/dist/commands/update/like.d.ts +17 -0
  461. package/dist/commands/update/like.d.ts.map +1 -0
  462. package/dist/commands/update/like.js +23 -0
  463. package/dist/commands/update/like.js.map +1 -0
  464. package/dist/commands/update/list.d.ts +58 -0
  465. package/dist/commands/update/list.d.ts.map +1 -0
  466. package/dist/commands/update/list.js +322 -0
  467. package/dist/commands/update/list.js.map +1 -0
  468. package/dist/commands/update/pin.d.ts +17 -0
  469. package/dist/commands/update/pin.d.ts.map +1 -0
  470. package/dist/commands/update/pin.js +23 -0
  471. package/dist/commands/update/pin.js.map +1 -0
  472. package/dist/commands/update/reply.d.ts +47 -0
  473. package/dist/commands/update/reply.d.ts.map +1 -0
  474. package/dist/commands/update/reply.js +149 -0
  475. package/dist/commands/update/reply.js.map +1 -0
  476. package/dist/commands/update/toggle.d.ts +70 -0
  477. package/dist/commands/update/toggle.d.ts.map +1 -0
  478. package/dist/commands/update/toggle.js +118 -0
  479. package/dist/commands/update/toggle.js.map +1 -0
  480. package/dist/commands/update/unlike.d.ts +17 -0
  481. package/dist/commands/update/unlike.d.ts.map +1 -0
  482. package/dist/commands/update/unlike.js +22 -0
  483. package/dist/commands/update/unlike.js.map +1 -0
  484. package/dist/commands/update/unpin.d.ts +17 -0
  485. package/dist/commands/update/unpin.d.ts.map +1 -0
  486. package/dist/commands/update/unpin.js +21 -0
  487. package/dist/commands/update/unpin.js.map +1 -0
  488. package/dist/commands/user/get.d.ts +31 -0
  489. package/dist/commands/user/get.d.ts.map +1 -0
  490. package/dist/commands/user/get.js +81 -0
  491. package/dist/commands/user/get.js.map +1 -0
  492. package/dist/commands/user/list.d.ts +61 -0
  493. package/dist/commands/user/list.d.ts.map +1 -0
  494. package/dist/commands/user/list.js +148 -0
  495. package/dist/commands/user/list.js.map +1 -0
  496. package/dist/commands/user/me.d.ts +17 -0
  497. package/dist/commands/user/me.d.ts.map +1 -0
  498. package/dist/commands/user/me.js +49 -0
  499. package/dist/commands/user/me.js.map +1 -0
  500. package/dist/commands/workspace/add-users.d.ts +76 -0
  501. package/dist/commands/workspace/add-users.d.ts.map +1 -0
  502. package/dist/commands/workspace/add-users.js +154 -0
  503. package/dist/commands/workspace/add-users.js.map +1 -0
  504. package/dist/commands/workspace/create.d.ts +59 -0
  505. package/dist/commands/workspace/create.d.ts.map +1 -0
  506. package/dist/commands/workspace/create.js +163 -0
  507. package/dist/commands/workspace/create.js.map +1 -0
  508. package/dist/commands/workspace/delete.d.ts +67 -0
  509. package/dist/commands/workspace/delete.d.ts.map +1 -0
  510. package/dist/commands/workspace/delete.js +182 -0
  511. package/dist/commands/workspace/delete.js.map +1 -0
  512. package/dist/commands/workspace/folders.d.ts +40 -0
  513. package/dist/commands/workspace/folders.d.ts.map +1 -0
  514. package/dist/commands/workspace/folders.js +124 -0
  515. package/dist/commands/workspace/folders.js.map +1 -0
  516. package/dist/commands/workspace/get.d.ts +35 -0
  517. package/dist/commands/workspace/get.d.ts.map +1 -0
  518. package/dist/commands/workspace/get.js +62 -0
  519. package/dist/commands/workspace/get.js.map +1 -0
  520. package/dist/commands/workspace/list.d.ts +57 -0
  521. package/dist/commands/workspace/list.d.ts.map +1 -0
  522. package/dist/commands/workspace/list.js +125 -0
  523. package/dist/commands/workspace/list.js.map +1 -0
  524. package/dist/commands/workspace/remove-users.d.ts +47 -0
  525. package/dist/commands/workspace/remove-users.d.ts.map +1 -0
  526. package/dist/commands/workspace/remove-users.js +122 -0
  527. package/dist/commands/workspace/remove-users.js.map +1 -0
  528. package/dist/commands/workspace/update.d.ts +68 -0
  529. package/dist/commands/workspace/update.d.ts.map +1 -0
  530. package/dist/commands/workspace/update.js +237 -0
  531. package/dist/commands/workspace/update.js.map +1 -0
  532. package/dist/config/load.d.ts +33 -0
  533. package/dist/config/load.d.ts.map +1 -0
  534. package/dist/config/load.js +81 -0
  535. package/dist/config/load.js.map +1 -0
  536. package/dist/index.d.ts +3 -0
  537. package/dist/index.d.ts.map +1 -0
  538. package/dist/index.js +4 -0
  539. package/dist/index.js.map +1 -0
  540. package/dist/types/global-flags.d.ts +69 -0
  541. package/dist/types/global-flags.d.ts.map +1 -0
  542. package/dist/types/global-flags.js +170 -0
  543. package/dist/types/global-flags.js.map +1 -0
  544. package/dist/types/ids.d.ts +38 -0
  545. package/dist/types/ids.d.ts.map +1 -0
  546. package/dist/types/ids.js +51 -0
  547. package/dist/types/ids.js.map +1 -0
  548. package/dist/types/json.d.ts +60 -0
  549. package/dist/types/json.d.ts.map +1 -0
  550. package/dist/types/json.js +33 -0
  551. package/dist/types/json.js.map +1 -0
  552. package/dist/utils/errors.d.ts +121 -0
  553. package/dist/utils/errors.d.ts.map +1 -0
  554. package/dist/utils/errors.js +264 -0
  555. package/dist/utils/errors.js.map +1 -0
  556. package/dist/utils/logger.d.ts +39 -0
  557. package/dist/utils/logger.d.ts.map +1 -0
  558. package/dist/utils/logger.js +49 -0
  559. package/dist/utils/logger.js.map +1 -0
  560. package/dist/utils/output/envelope.d.ts +140 -0
  561. package/dist/utils/output/envelope.d.ts.map +1 -0
  562. package/dist/utils/output/envelope.js +120 -0
  563. package/dist/utils/output/envelope.js.map +1 -0
  564. package/dist/utils/output/json.d.ts +10 -0
  565. package/dist/utils/output/json.d.ts.map +1 -0
  566. package/dist/utils/output/json.js +12 -0
  567. package/dist/utils/output/json.js.map +1 -0
  568. package/dist/utils/output/ndjson.d.ts +92 -0
  569. package/dist/utils/output/ndjson.d.ts.map +1 -0
  570. package/dist/utils/output/ndjson.js +33 -0
  571. package/dist/utils/output/ndjson.js.map +1 -0
  572. package/dist/utils/output/select.d.ts +22 -0
  573. package/dist/utils/output/select.d.ts.map +1 -0
  574. package/dist/utils/output/select.js +47 -0
  575. package/dist/utils/output/select.js.map +1 -0
  576. package/dist/utils/output/table.d.ts +32 -0
  577. package/dist/utils/output/table.d.ts.map +1 -0
  578. package/dist/utils/output/table.js +133 -0
  579. package/dist/utils/output/table.js.map +1 -0
  580. package/dist/utils/output/text.d.ts +5 -0
  581. package/dist/utils/output/text.d.ts.map +1 -0
  582. package/dist/utils/output/text.js +32 -0
  583. package/dist/utils/output/text.js.map +1 -0
  584. package/dist/utils/parse-boundary.d.ts +53 -0
  585. package/dist/utils/parse-boundary.d.ts.map +1 -0
  586. package/dist/utils/parse-boundary.js +62 -0
  587. package/dist/utils/parse-boundary.js.map +1 -0
  588. package/dist/utils/redact.d.ts +54 -0
  589. package/dist/utils/redact.d.ts.map +1 -0
  590. package/dist/utils/redact.js +154 -0
  591. package/dist/utils/redact.js.map +1 -0
  592. package/dist/utils/request-id.d.ts +17 -0
  593. package/dist/utils/request-id.d.ts.map +1 -0
  594. package/dist/utils/request-id.js +26 -0
  595. package/dist/utils/request-id.js.map +1 -0
  596. package/package.json +87 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,439 @@
1
+ # Changelog
2
+
3
+ All notable changes to `monday-cli` are recorded here. Format follows
4
+ [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); versioning
5
+ follows [SemVer](https://semver.org/spec/v2.0.0.html). The CLI's
6
+ output envelope (`{ ok, data, meta, ... }`) and 27 stable error
7
+ codes are part of the public contract — the SemVer rules in
8
+ [`docs/cli-design.md`](./docs/cli-design.md) §6 govern bumps.
9
+
10
+ ## [0.2.0] - 2026-05-08 — Mutating core: agents can drive a backlog
11
+
12
+ The "agents can drive a backlog" milestone — v0.1's read-only core
13
+ + safe-mutations gain the full mutation surface (item lifecycle,
14
+ update mutations, workspace lifecycle, board lifecycle, board
15
+ columns + groups). One breaking change vs v0.1 (see below);
16
+ everything else is purely additive. Built incrementally across
17
+ M8–M18.
18
+
19
+ ### Breaking changes vs `0.1.0`
20
+
21
+ **`monday update list` no longer populates `replies: []` by
22
+ default.** Pass `--with-replies` to restore the v0.1 behaviour.
23
+
24
+ - **Why**: Monday charges complexity for the nested
25
+ `updates(...) { replies { ... } }` selection, and most agent
26
+ flows don't need the thread expansion. v0.1 silently paid the
27
+ charge on every call; v0.2 makes the nested selection opt-in.
28
+ - **Migration**: agents that consume `update.replies` should pass
29
+ `--with-replies` explicitly. The output shape stays
30
+ byte-identical when the flag is set; only the default changed.
31
+ - **Detection**: a v0.1 caller looking for `replies[*].body` will
32
+ see an empty array post-upgrade. There's no error envelope —
33
+ the field is present and shaped correctly, just empty unless
34
+ `--with-replies` is set.
35
+
36
+ This is the only breaking change. All other v0.2 work is
37
+ additive.
38
+
39
+ ### Surface
40
+
41
+ **Five reader nouns + ~75 commands shipped (was 35 in v0.1).** No
42
+ new nouns; ~30 new verbs spread across the existing 5 mutation-
43
+ receiving nouns plus workspace / board / update / item lifecycles.
44
+
45
+ **Item lifecycle** (M9–M12) — `item create` (top-level + classic-
46
+ only subitem; single round-trip; optional `--position
47
+ before|after --relative-to <iid>`); `item archive` / `delete` /
48
+ `duplicate` (`duplicate` two-leg live with `--with-updates` +
49
+ `duplicated_from_id` echo); `item move` (same-board via
50
+ `--to-group <gid>`, cross-board via `--to-group <gid> --to-board
51
+ <bid>` + `--columns-mapping`); `item upsert` (idempotency via
52
+ `--match-by <col>[,<col>...]` routing 0/1/2+ matches to
53
+ `create_item` / `update_item` / `ambiguous_match`); bulk `item
54
+ clear --where`.
55
+
56
+ **Update mutations** (M13) — `update reply` / `edit` / `delete` /
57
+ `like` / `unlike` / `pin` / `unpin` / `clear-all`. The
58
+ `clear-all` verb introduced the **partial-success envelope**:
59
+ `ok: true` whenever dispatch ran; per-target outcomes in
60
+ `data.results: [{ update_id, ok, error? }]`.
61
+
62
+ **Workspace lifecycle** (M14) — `workspace create` / `update` /
63
+ `delete` / `add-users` / `remove-users`. `add-users` /
64
+ `remove-users` reuse the M13 partial-success envelope with
65
+ resolver-fronted dispatch (mixed numeric IDs + emails).
66
+
67
+ **Board lifecycle** (M15) — `board create` / `update` /
68
+ `archive` / `delete` / `duplicate` / `add-users`. `board
69
+ duplicate` introduced the **wrapped envelope**: `data: { board:
70
+ <projection>, is_async }` because Monday's `BoardDuplication`
71
+ carries an `is_async` slot the projection schema doesn't model.
72
+ `board update` is per-attribute fan-out across Monday's
73
+ `update_board(board_attribute, new_value)` surface with a
74
+ force-live final read leg.
75
+
76
+ **Board columns** (M16) — `board column-create` / `column-update`
77
+ / `column-delete`. `column-create` adds the
78
+ `noncanonical_column_type` warning for non-allowlisted column
79
+ types with per-category `suggested_write_path`. M16 also shipped
80
+ the **§8 eager-invalidation contract**: every board-structure
81
+ mutation calls `invalidateBoard(boardId)` post-success so a
82
+ same-process `board describe` sees fresh state without TTL
83
+ eviction. Six call sites adopted (M16's three column verbs +
84
+ M15's three retrofitted board update / archive / delete).
85
+
86
+ **Board groups** (M17) — `board group-create` / `group-update` /
87
+ `group-archive` / `group-duplicate` / `group-delete`.
88
+ `group-update` is per-attribute fan-out (no force-live final
89
+ read — Monday's `update_group` returns the full Group projection
90
+ post-mutation, distinguishing it from board-update). Group-
91
+ create + group-update validate `--color` against the pinned
92
+ Monday-supported palette in `src/api/group-color.ts`.
93
+
94
+ **Writer expansion** (M8) — `--set-raw <col>=<json>` escape
95
+ hatch for non-allowlisted column types (gated against
96
+ read-only-forever and files-shaped types) plus three new firm
97
+ friendly translators: `link` (pipe-form `link=<url>|<text>`),
98
+ `email` (pipe-form `email=<email>|<text>`), and `phone`
99
+ (pipe-form `phone=<phone>|<country>` with ISO 3166-1 alpha-2
100
+ country code).
101
+
102
+ **NDJSON streaming** (M7 → M18) — `--output ndjson` for `item
103
+ list` (M7), `item search` (M18), and `update list` (M18). Trailer
104
+ shape pinned to `{"_meta":{...}}` per cli-design §6.3 (no
105
+ `warnings` slot — agents read warnings from JSON envelopes, not
106
+ NDJSON streams).
107
+
108
+ ### Output contract additions
109
+
110
+ **27th error code: `ambiguous_match`** (M12). Reserved on the
111
+ v0.1 registry, now active on `item upsert` when `--match-by`
112
+ resolves to 2+ items. Agents key off `error.code` to retry with
113
+ a tighter match; the message names the matched IDs.
114
+
115
+ **Three envelope shape variants joined the contract:**
116
+
117
+ 1. **Partial-success envelope** (M13) — `ok: true` with
118
+ `data.results: [...]` per-target outcomes. Used by `update
119
+ clear-all`, `workspace add-users` / `remove-users`, `board
120
+ add-users`. Top-level `ok: false` only on whole-call failure.
121
+ 2. **Wrapped envelope** (M15) — `data: { board: <projection>,
122
+ is_async }` for `board duplicate` (Monday-side async-rebuild
123
+ slot the projection doesn't model).
124
+ 3. **Bulk mutation envelope** (M12) — `data: { summary, items
125
+ }` for bulk `item update --where` / `item clear --where` with
126
+ `summary.matched_count` + `summary.applied_count`.
127
+
128
+ **`resolved_ids`** echo (cli-design §6.4) on every column-
129
+ mutation envelope (`item set` / `clear` / `update`), including
130
+ the empty `{}` when no `--set` token resolved. Agents capture
131
+ once and skip subsequent metadata lookups.
132
+
133
+ ### Upgrade notes
134
+
135
+ - **`unsupported_column_type` `deferred_to: "v0.2"` resolves**
136
+ for the M8 firm row (`link` / `email` / `phone` shipped) and
137
+ **slips to `"v0.3"`** for the tentative row (`tags` /
138
+ `board_relation` / `dependency` — friendly translators land in
139
+ v0.3 once the per-account directory + linked-board enumeration
140
+ design clears). Agents using these types via `--set-raw`
141
+ continue to work; the runtime hint surfaces `--set-raw` as the
142
+ current path.
143
+
144
+ - **The error-code registry expanded from 26 to 27.** New code:
145
+ `ambiguous_match` (M12) on `item upsert` with 2+ matches.
146
+ Existing codes' shapes are unchanged.
147
+
148
+ - **Cache-invalidation discipline tightened.** M16's §8 contract
149
+ means a same-process `board describe` after `board column-*` /
150
+ `group-*` / `update` / `archive` / `delete` mutations now sees
151
+ fresh state. v0.1 callers that read post-mutation state see
152
+ *less* stale data than before — purely an improvement, but
153
+ a behavioural shift worth flagging for any agent that timed
154
+ reads against TTL eviction (none should have, but flagging
155
+ for completeness).
156
+
157
+ ### Internals worth highlighting
158
+
159
+ - **R-class refactors shipped during v0.2** — the R20–R52 register
160
+ consolidates per-noun + cross-cutting boilerplate as the surface
161
+ grew. Highlights: R29 destructive-gate helper (initially lifted
162
+ at five consumers in M14; later milestones grew its consumer
163
+ count further as M15-M17 destructive verbs adopted),
164
+ R37/R39/R43/R45/R48 per-noun mutation projection helpers
165
+ (Update / Workspace / Board / Column / Group), R40 partial-
166
+ success-fan-out helper, R46 §8 eager-invalidation wrappers,
167
+ R51 `findBoardChildOrThrow` helper, R52 `startNdjsonStream`
168
+ lift (M18 — ships streaming parity across `item list` /
169
+ `item search` / `update list`). R42 / R44 / R49 / R50 stayed
170
+ deferred to v0.3 at v0.2.0 close. Full R-class register lives
171
+ in [`docs/v0.2-plan.md`](./docs/v0.2-plan.md) §22 with shipped
172
+ commit SHAs.
173
+
174
+ - **Two-AI review** (cli-design pre-flight + implementation review)
175
+ ran for every milestone M8–M18. Catches contract drift before
176
+ it reaches `main` and projection bugs before they reach a
177
+ release; the cumulative finding count across the v0.2 arc is in
178
+ the per-milestone post-mortems in `docs/v0.2-plan.md` §10–§26.
179
+
180
+ ### Tests + quality gates
181
+
182
+ - **2280 unit/integration + 38 E2E tests** at the v0.2.0 tag (was
183
+ 1408+37 = 1445 in v0.1). All green on Node 22 + 24.
184
+ - **Branch coverage ratchet** from 95% (v0.1 floor) to 95.5%
185
+ (v0.2 floor; project's actual branches at v0.2.0 is 95.51%).
186
+ Other thresholds held at 95%. The `vitest.config.ts` floor
187
+ enforces. The §3 M18 exit aimed for 96 — the actual M13–M18
188
+ branch-coverage delta was smaller (~0.5pp) because the new
189
+ code shipped at 100% per-file but the denominator grew
190
+ alongside the numerator. Net effect is "held + small raise"
191
+ per the §3 M18 "held or raised" exit gate.
192
+ - **92 envelope-shape snapshots** (was 60 in v0.1) — every
193
+ shipped command pinned for byte-shape regressions.
194
+ - **Five test layers held**: unit, integration (in-process
195
+ `FixtureTransport`), E2E (subprocess against fixture server),
196
+ envelope-shape snapshot suite (extended at M18), published-
197
+ tarball E2E.
198
+
199
+ ### Documentation
200
+
201
+ - **[`docs/v0.2-plan.md`](./docs/v0.2-plan.md)** new — the v0.2
202
+ active plan with M8–M18 milestones, decisions log, R-class
203
+ register (R20–R52), per-milestone post-mortems (§10–§26), and
204
+ the §13 deferral roadmap.
205
+ - **[`docs/cli-design.md`](./docs/cli-design.md)** §4.3 grew
206
+ ~30 new verb entries; §6.4 added the partial-success +
207
+ wrapped + bulk envelope variants; §8 added the eager-
208
+ invalidation contract.
209
+ - **[`docs/output-shapes.md`](./docs/output-shapes.md)** — every
210
+ shipped v0.2 command has a per-section data shape entry,
211
+ snapshot-backed.
212
+ - **README.md** quickstart expanded with `item create` + `item
213
+ upsert` examples (the two verbs that change the "drive a
214
+ backlog" story most).
215
+
216
+ [0.2.0]: https://github.com/Firer/monday-cli/releases/tag/v0.2.0
217
+
218
+ ## [0.1.0] — Initial release
219
+
220
+ The "read-only core + safe mutations" milestone — an agent can read
221
+ everything the CLI surfaces, make small scoped idempotent changes,
222
+ and post comments narrating its work. Built incrementally across
223
+ M0–M7 (M5 split into M5a + M5b; M2.5 inserted post-M2 as a
224
+ structural-debt cleanup pass).
225
+
226
+ ### Surface
227
+
228
+ **Five reader nouns + 35 commands shipped.**
229
+
230
+ - `account` — `whoami`, `info`, `version`, `complexity`.
231
+ - `workspace` — `list`, `get`, `folders`.
232
+ - `board` — `list`, `get`, `find`, `describe`, `columns`,
233
+ `groups`, `subscribers`, `doctor`.
234
+ - `user` — `list`, `get`, `me` (alias for `account whoami`).
235
+ - `update` (Monday "comments") — `list`, `get`, `create`.
236
+ - `item` reads — `list`, `get`, `find`, `search`, `subitems`.
237
+ - `item` mutations — `set` (single-column write), `clear`
238
+ (per-column clear), `update` (atomic multi-`--set` plus
239
+ bulk `--where`).
240
+ - `raw` — GraphQL escape hatch with AST-aware operation routing
241
+ + `--allow-mutation` + `--operation-name` + `--dry-run` for
242
+ mutations.
243
+ - Local-only — `cache` (`list`, `clear`, `stats`),
244
+ `config` (`show`, `path`), `schema` (full registry + per-command
245
+ JSON Schema 2020-12).
246
+
247
+ **Filter DSL.** `--where <col><op><value>` (operator allowlist:
248
+ `=`, `!=`, `~=`, `<`, `<=`, `>`, `>=`, `:is_empty`,
249
+ `:is_not_empty`) plus `--filter-json` for richer inputs;
250
+ mutually exclusive. `me` token resolves through `account whoami`.
251
+
252
+ **Pagination.** Two walkers, one contract per Monday shape.
253
+ `walkPages` covers Monday's `limit`/`page` collections (workspace
254
+ / board / user / update); `paginate` covers cursor-based
255
+ `items_page` → `next_items_page` (item list / search / find).
256
+ 60-minute cursor lifetime; `stale_cursor` fail-fast (no silent
257
+ re-issue). Page-based walks cap at `--limit-pages`
258
+ (default 50, max 500); `pagination_cap_reached` warning surfaces
259
+ on truncated walks. NDJSON streaming via `--output ndjson`
260
+ (item list).
261
+
262
+ **Column-value writer (v0.1 allowlist).** Seven types are
263
+ writable: `status`, `text`, `long_text`, `numbers`, `dropdown`,
264
+ `date`, `people`. Translates each to its Monday wire shape
265
+ (simple-form `change_simple_column_value`,
266
+ rich-form `change_column_value`, multi-form
267
+ `change_multiple_column_values`). Mutation selection is
268
+ fixture-pinned per (count × type) cell. Token resolution: ID > NFC
269
+ exact title > NFC + case-fold > `ambiguous_column`.
270
+
271
+ **Dry-run engine.** `--dry-run` on every mutation emits a
272
+ `planned_changes[]` envelope (cli-design §6.4) without touching
273
+ the wire. All-or-nothing semantics: any resolution failure
274
+ aborts the batch before the item read fires.
275
+
276
+ **Diagnostics.** `board doctor` flags
277
+ `duplicate_column_title`, `unsupported_column_type` (per roadmap
278
+ category — `v0.2_writer_expansion` / `read_only_forever` /
279
+ `future`), and `broken_board_relation` (archived /
280
+ unreachable / mixed).
281
+
282
+ ### Output contract (binding — major-bump on change)
283
+
284
+ **Universal envelope.** Every command returns
285
+ `{ ok, data, meta, warnings }` (success) or `{ ok, error, meta }`
286
+ (failure). `meta` always carries `schema_version: "1"`,
287
+ `api_version`, `cli_version`, `request_id`, `source`
288
+ (`live` / `cache` / `mixed` / `none`), `cache_age_seconds`,
289
+ `retrieved_at`, `complexity` (when `--verbose`).
290
+
291
+ **Stable error codes (26).** `usage_error`,
292
+ `confirmation_required`, `not_found`, `ambiguous_name`,
293
+ `ambiguous_column`, `column_not_found`, `user_not_found`,
294
+ `unsupported_column_type`, `column_archived`, `unauthorized`,
295
+ `forbidden`, `rate_limited`, `complexity_exceeded`,
296
+ `daily_limit_exceeded`, `concurrency_exceeded`,
297
+ `ip_rate_limited`, `resource_locked`, `validation_failed`,
298
+ `stale_cursor`, `config_error`, `cache_error`, `network_error`,
299
+ `timeout`, `dev_not_configured`, `dev_board_misconfigured`,
300
+ `internal_error`. The two `dev_*` codes are reserved for the
301
+ v0.3 `monday dev` namespace — listed in the registry but
302
+ inactive on the v0.1 surface. Warning codes
303
+ (`stale_cache_refreshed`, `pagination_cap_reached`,
304
+ `column_token_collision`, etc.) live in `warnings[]`, not
305
+ `error`. Agents key off `error.code`; `error.message` is
306
+ human-readable and **not** part of the contract.
307
+
308
+ **Exit codes.**
309
+
310
+ | Code | Meaning |
311
+ |------|---------|
312
+ | 0 | Success |
313
+ | 1 | Usage error / `confirmation_required` |
314
+ | 2 | API or network error |
315
+ | 3 | Config error |
316
+ | 130 | SIGINT |
317
+
318
+ **TTY-aware output.** Tables when stdout is a TTY, JSON when
319
+ piped. `--json` (alias for `--output json`) forces JSON in
320
+ pseudo-TTYs (the agent path). Tables truncate; JSON never does.
321
+
322
+ ### Foundations
323
+
324
+ - **Typed errors** at `src/utils/errors.ts` — `ConfigError`,
325
+ `UsageError`, `ApiError` (with `MondayCliError` parent and
326
+ `code`/`details`/`cause`). Every parse boundary wraps
327
+ `ZodError` so config errors map to exit 3, usage errors to
328
+ exit 1, never `internal_error`.
329
+ - **Two-layer redaction** at `src/utils/redact.ts`. Key-based
330
+ filter (Authorization, MONDAY_API_TOKEN, generic
331
+ `(token|secret|password|api[-_]?key)` regex) + value-scanning
332
+ filter (the literal token value, scrubbed from
333
+ `Error.message`, `Error.stack`, `Error.cause.message`, fetch
334
+ URLs, debug payloads). Adversarial integration suite asserts
335
+ the canary token doesn't appear in any emitted byte.
336
+ - **Header lockdown.** Caller-supplied headers can't override
337
+ transport-owned `Authorization` / `API-Version` /
338
+ `Content-Type` (case-insensitive strip + reserved-set
339
+ enforcement).
340
+ - **Universal-envelope builder + meta-builder** at
341
+ `src/utils/output/envelope.ts`. One source of truth for §6.1
342
+ meta keys; per-command output uses `emitSuccess` /
343
+ `emitMutation` / `emitDryRun` helpers.
344
+ - **Cursor / page walkers** at `src/api/pagination.ts` (cursor)
345
+ and `src/api/walk-pages.ts` (page). Both fail-fast on
346
+ Monday-side errors with structured `details`.
347
+ - **Resolver-warning fold module** at
348
+ `src/api/resolver-error-fold.ts`. Folds collision /
349
+ stale-cache-refreshed warnings into a thrown
350
+ `MondayCliError`'s `details.resolver_warnings` slot so a
351
+ stale-cache-then-failure flow doesn't lose the refresh signal.
352
+ Six consumers across mutation paths.
353
+ - **Cache-aware board metadata** at `src/api/board-metadata.ts`.
354
+ XDG-cache-rooted, with explicit `--no-cache` opt-out.
355
+ Cache-miss-refresh on resolution failure (single round-trip
356
+ to refresh, then re-resolve once); refresh outcome echoed via
357
+ `meta.source: "mixed"` + `stale_cache_refreshed` warning.
358
+ - **Validation-failed → column-archived remap** for
359
+ cache-sourced live mutations (Monday returns
360
+ `validation_failed` when the cached column was archived
361
+ server-side — refresh and remap so agents key off the stable
362
+ code, with `details.remapped_from: "validation_failed"` for
363
+ triage).
364
+
365
+ ### Pinned to Monday API `2026-01`
366
+
367
+ Pinned via the `API-Version` header on every request.
368
+ Override per-call with `--api-version`, per-environment with
369
+ `MONDAY_API_VERSION`. Matches `@mondaydotcomorg/api@14.0.0`'s
370
+ `CURRENT_VERSION`. Bumping the pin is a SemVer-minor (or major
371
+ if the output schema changes).
372
+
373
+ ### Explicitly deferred (see [`docs/cli-design.md`](./docs/cli-design.md) §13)
374
+
375
+ - **v0.2 — writer expansion + bulk + filters.**
376
+ `item create/move/archive/delete/duplicate/upsert`,
377
+ `update reply/edit/delete`, broader column writes
378
+ (`link`, `email`, `phone`, `tags`, `board_relation`,
379
+ `dependency`), `--set-raw` escape hatch, boolean filter DSL,
380
+ workspace mutations, board / column / group mutations.
381
+ - **v0.3 — `monday dev` namespace** (workflow shortcuts on top
382
+ of CRUD), `monday auth login`, OAuth profiles, config files.
383
+ - **v0.4 — operational features.** `monday item watch`
384
+ (long-poll + reconnect), `--concurrency`, asset uploads, shell
385
+ completion.
386
+ - **No `restore` in v0.1.** Monday has no unarchive mutation;
387
+ recreating is lossy. v0.1 deliberately does not ship a
388
+ misleading `restore`.
389
+
390
+ ### Tests + quality gates
391
+
392
+ - **1408 unit/integration + 37 E2E = 1445 tests** at the v0.1.0
393
+ tag. All green.
394
+ - **Branch coverage 94%+ floor** (lines / functions /
395
+ statements 95%+).
396
+ - **Network-boundary mocking only** — no internal-module
397
+ monkey-patching; every test exercises the real
398
+ `commands/*` → `api/*` path.
399
+ - **Five test layers.** Unit, integration (in-process
400
+ fixture-transport), E2E (subprocess against fixture server),
401
+ envelope-shape snapshot suite (M7 — pins per-command
402
+ data/meta byte shape so v0.2 drift fails loud), published-
403
+ tarball E2E (M7 — `npm pack` + extract + install runtime
404
+ deps + smoke-test the binary that ships).
405
+ - **Two-AI review** (Codex `gpt-5.5`) gates every milestone close
406
+ and design-doc change. Ten Codex review rounds across M0–M7.
407
+
408
+ ### CLI standards
409
+
410
+ - Node ≥ 22.
411
+ - ESM (`"type": "module"`); strictest TypeScript
412
+ (`exactOptionalPropertyTypes`, `noUncheckedIndexedAccess`,
413
+ `useUnknownInCatchVariables`, `verbatimModuleSyntax`).
414
+ - Conventional Commits + atomic incremental commits.
415
+ - `process.exitCode` (not `process.exit`) so stdout drains
416
+ naturally before exit — large payloads (e.g. `monday schema
417
+ --json` past ~64KB) won't truncate on slow consumers.
418
+ - SIGINT handler exits 130 without an envelope dump.
419
+ - No interactive prompts. `confirmation_required` exits 1 on
420
+ destructive ops without `--yes` (or `--dry-run`).
421
+
422
+ ### Documentation
423
+
424
+ - [`docs/cli-design.md`](./docs/cli-design.md) — canonical CLI
425
+ contract (~2,200 lines). Two AI-collaborator review passes;
426
+ internally consistent.
427
+ - [`docs/v0.1-plan.md`](./docs/v0.1-plan.md) — implementation plan
428
+ + per-milestone post-mortems (§11–§21).
429
+ - [`docs/output-shapes.md`](./docs/output-shapes.md) — per-command
430
+ output reference. New in v0.1.
431
+ - [`docs/architecture.md`](./docs/architecture.md) — module
432
+ boundaries (commands → api → SDK).
433
+ - [`docs/examples.md`](./docs/examples.md) — worked agent sessions.
434
+ - [`docs/api-reference.md`](./docs/api-reference.md) — Monday
435
+ concepts cheat sheet.
436
+ - [`docs/development.md`](./docs/development.md) — local dev
437
+ workflow.
438
+
439
+ [0.1.0]: https://github.com/Firer/monday-cli/releases/tag/v0.1.0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Nick Webster
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.