@wirecat/cli-core 0.263.0 → 0.265.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 (473) hide show
  1. package/README.md +226 -486
  2. package/dist/background/schedules.d.ts +2 -0
  3. package/dist/background/schedules.d.ts.map +1 -1
  4. package/dist/background/schedules.js +26 -8
  5. package/dist/background/schedules.js.map +1 -1
  6. package/dist/cli/envelope.d.ts +2 -0
  7. package/dist/cli/envelope.d.ts.map +1 -1
  8. package/dist/cli/envelope.js +2 -2
  9. package/dist/cli/envelope.js.map +1 -1
  10. package/dist/cli/index.d.ts +2 -0
  11. package/dist/cli/index.d.ts.map +1 -1
  12. package/dist/cli/index.js +2 -0
  13. package/dist/cli/index.js.map +1 -1
  14. package/dist/cli/list-query.d.ts +42 -0
  15. package/dist/cli/list-query.d.ts.map +1 -0
  16. package/dist/cli/list-query.js +121 -0
  17. package/dist/cli/list-query.js.map +1 -0
  18. package/dist/cli/messenger/admin-commands.d.ts.map +1 -1
  19. package/dist/cli/messenger/admin-commands.js +34 -46
  20. package/dist/cli/messenger/admin-commands.js.map +1 -1
  21. package/dist/cli/messenger/admin-contacts-command.d.ts.map +1 -1
  22. package/dist/cli/messenger/admin-contacts-command.js +7 -3
  23. package/dist/cli/messenger/admin-contacts-command.js.map +1 -1
  24. package/dist/cli/messenger/admin-folders-command.d.ts.map +1 -1
  25. package/dist/cli/messenger/admin-folders-command.js +21 -21
  26. package/dist/cli/messenger/admin-folders-command.js.map +1 -1
  27. package/dist/cli/messenger/admin-moderation-command.d.ts.map +1 -1
  28. package/dist/cli/messenger/admin-moderation-command.js +11 -13
  29. package/dist/cli/messenger/admin-moderation-command.js.map +1 -1
  30. package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
  31. package/dist/cli/messenger/backfill-command.js +10 -6
  32. package/dist/cli/messenger/backfill-command.js.map +1 -1
  33. package/dist/cli/messenger/backfill-jobs.d.ts +1 -1
  34. package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
  35. package/dist/cli/messenger/backfill-jobs.js +1 -1
  36. package/dist/cli/messenger/backfill-jobs.js.map +1 -1
  37. package/dist/cli/messenger/chat-answers.d.ts +155 -0
  38. package/dist/cli/messenger/chat-answers.d.ts.map +1 -0
  39. package/dist/cli/messenger/chat-answers.js +243 -0
  40. package/dist/cli/messenger/chat-answers.js.map +1 -0
  41. package/dist/cli/messenger/chat-lists.d.ts +161 -0
  42. package/dist/cli/messenger/chat-lists.d.ts.map +1 -0
  43. package/dist/cli/messenger/chat-lists.js +82 -0
  44. package/dist/cli/messenger/chat-lists.js.map +1 -0
  45. package/dist/cli/messenger/chat-queries.d.ts +14 -0
  46. package/dist/cli/messenger/chat-queries.d.ts.map +1 -0
  47. package/dist/cli/messenger/chat-queries.js +48 -0
  48. package/dist/cli/messenger/chat-queries.js.map +1 -0
  49. package/dist/cli/messenger/chats-bots-command.d.ts.map +1 -1
  50. package/dist/cli/messenger/chats-bots-command.js +7 -2
  51. package/dist/cli/messenger/chats-bots-command.js.map +1 -1
  52. package/dist/cli/messenger/chats-command.d.ts.map +1 -1
  53. package/dist/cli/messenger/chats-command.js +33 -71
  54. package/dist/cli/messenger/chats-command.js.map +1 -1
  55. package/dist/cli/messenger/chats-documents-command.d.ts.map +1 -1
  56. package/dist/cli/messenger/chats-documents-command.js +10 -5
  57. package/dist/cli/messenger/chats-documents-command.js.map +1 -1
  58. package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
  59. package/dist/cli/messenger/chats-members-command.js +38 -64
  60. package/dist/cli/messenger/chats-members-command.js.map +1 -1
  61. package/dist/cli/messenger/chats-read-command.d.ts.map +1 -1
  62. package/dist/cli/messenger/chats-read-command.js +4 -2
  63. package/dist/cli/messenger/chats-read-command.js.map +1 -1
  64. package/dist/cli/messenger/chats-stats-command.d.ts.map +1 -1
  65. package/dist/cli/messenger/chats-stats-command.js +24 -17
  66. package/dist/cli/messenger/chats-stats-command.js.map +1 -1
  67. package/dist/cli/messenger/chats-tracking-command.d.ts.map +1 -1
  68. package/dist/cli/messenger/chats-tracking-command.js +11 -17
  69. package/dist/cli/messenger/chats-tracking-command.js.map +1 -1
  70. package/dist/cli/messenger/contacts-command.d.ts.map +1 -1
  71. package/dist/cli/messenger/contacts-command.js +61 -43
  72. package/dist/cli/messenger/contacts-command.js.map +1 -1
  73. package/dist/cli/messenger/context.d.ts.map +1 -1
  74. package/dist/cli/messenger/context.js +5 -2
  75. package/dist/cli/messenger/context.js.map +1 -1
  76. package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
  77. package/dist/cli/messenger/conversations-command.js +13 -20
  78. package/dist/cli/messenger/conversations-command.js.map +1 -1
  79. package/dist/cli/messenger/gaps-command.js +3 -3
  80. package/dist/cli/messenger/gaps-command.js.map +1 -1
  81. package/dist/cli/messenger/hearing-command.d.ts +1 -1
  82. package/dist/cli/messenger/hearing-command.d.ts.map +1 -1
  83. package/dist/cli/messenger/hearing-command.js +1 -1
  84. package/dist/cli/messenger/hearing-command.js.map +1 -1
  85. package/dist/cli/messenger/history-query.d.ts +18 -0
  86. package/dist/cli/messenger/history-query.d.ts.map +1 -0
  87. package/dist/cli/messenger/history-query.js +63 -0
  88. package/dist/cli/messenger/history-query.js.map +1 -0
  89. package/dist/cli/messenger/images-command.d.ts +8 -0
  90. package/dist/cli/messenger/images-command.d.ts.map +1 -0
  91. package/dist/cli/messenger/images-command.js +36 -0
  92. package/dist/cli/messenger/images-command.js.map +1 -0
  93. package/dist/cli/messenger/list-query.d.ts +13 -0
  94. package/dist/cli/messenger/list-query.d.ts.map +1 -0
  95. package/dist/cli/messenger/list-query.js +23 -0
  96. package/dist/cli/messenger/list-query.js.map +1 -0
  97. package/dist/cli/messenger/mentions-command.d.ts +5 -0
  98. package/dist/cli/messenger/mentions-command.d.ts.map +1 -0
  99. package/dist/cli/messenger/mentions-command.js +51 -0
  100. package/dist/cli/messenger/mentions-command.js.map +1 -0
  101. package/dist/cli/messenger/message-items.d.ts +31 -0
  102. package/dist/cli/messenger/message-items.d.ts.map +1 -0
  103. package/dist/cli/messenger/message-items.js +95 -0
  104. package/dist/cli/messenger/message-items.js.map +1 -0
  105. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  106. package/dist/cli/messenger/messages-command.js +52 -77
  107. package/dist/cli/messenger/messages-command.js.map +1 -1
  108. package/dist/cli/messenger/messages-comments-command.d.ts.map +1 -1
  109. package/dist/cli/messenger/messages-comments-command.js +39 -28
  110. package/dist/cli/messenger/messages-comments-command.js.map +1 -1
  111. package/dist/cli/messenger/messages-link-command.d.ts.map +1 -1
  112. package/dist/cli/messenger/messages-link-command.js +16 -14
  113. package/dist/cli/messenger/messages-link-command.js.map +1 -1
  114. package/dist/cli/messenger/messages-scheduled-command.d.ts.map +1 -1
  115. package/dist/cli/messenger/messages-scheduled-command.js +23 -26
  116. package/dist/cli/messenger/messages-scheduled-command.js.map +1 -1
  117. package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
  118. package/dist/cli/messenger/messages-search-command.js +6 -0
  119. package/dist/cli/messenger/messages-search-command.js.map +1 -1
  120. package/dist/cli/messenger/models-command.d.ts.map +1 -1
  121. package/dist/cli/messenger/models-command.js +57 -0
  122. package/dist/cli/messenger/models-command.js.map +1 -1
  123. package/dist/cli/messenger/people-queries.d.ts +6 -0
  124. package/dist/cli/messenger/people-queries.d.ts.map +1 -0
  125. package/dist/cli/messenger/people-queries.js +15 -0
  126. package/dist/cli/messenger/people-queries.js.map +1 -0
  127. package/dist/cli/messenger/polls-command.d.ts.map +1 -1
  128. package/dist/cli/messenger/polls-command.js +29 -23
  129. package/dist/cli/messenger/polls-command.js.map +1 -1
  130. package/dist/cli/messenger/reactions-command.d.ts.map +1 -1
  131. package/dist/cli/messenger/reactions-command.js +6 -2
  132. package/dist/cli/messenger/reactions-command.js.map +1 -1
  133. package/dist/cli/messenger/serve-command.d.ts.map +1 -1
  134. package/dist/cli/messenger/serve-command.js +21 -33
  135. package/dist/cli/messenger/serve-command.js.map +1 -1
  136. package/dist/cli/messenger/serve-members.d.ts +2 -1
  137. package/dist/cli/messenger/serve-members.d.ts.map +1 -1
  138. package/dist/cli/messenger/serve-members.js +11 -2
  139. package/dist/cli/messenger/serve-members.js.map +1 -1
  140. package/dist/cli/messenger/serve-notice.d.ts +21 -0
  141. package/dist/cli/messenger/serve-notice.d.ts.map +1 -0
  142. package/dist/cli/messenger/serve-notice.js +40 -0
  143. package/dist/cli/messenger/serve-notice.js.map +1 -0
  144. package/dist/cli/messenger/serve-stems.d.ts +2 -1
  145. package/dist/cli/messenger/serve-stems.d.ts.map +1 -1
  146. package/dist/cli/messenger/serve-stems.js +2 -1
  147. package/dist/cli/messenger/serve-stems.js.map +1 -1
  148. package/dist/cli/messenger/tags-command.d.ts.map +1 -1
  149. package/dist/cli/messenger/tags-command.js +11 -30
  150. package/dist/cli/messenger/tags-command.js.map +1 -1
  151. package/dist/cli/messenger/tasks-command.d.ts.map +1 -1
  152. package/dist/cli/messenger/tasks-command.js +13 -22
  153. package/dist/cli/messenger/tasks-command.js.map +1 -1
  154. package/dist/cli/messenger/topics-command.d.ts.map +1 -1
  155. package/dist/cli/messenger/topics-command.js +21 -9
  156. package/dist/cli/messenger/topics-command.js.map +1 -1
  157. package/dist/cli/runs/log-attributes.d.ts +5 -0
  158. package/dist/cli/runs/log-attributes.d.ts.map +1 -0
  159. package/dist/cli/runs/log-attributes.js +67 -0
  160. package/dist/cli/runs/log-attributes.js.map +1 -0
  161. package/dist/cli/runs/record-log.d.ts +8 -0
  162. package/dist/cli/runs/record-log.d.ts.map +1 -0
  163. package/dist/cli/runs/record-log.js +17 -0
  164. package/dist/cli/runs/record-log.js.map +1 -0
  165. package/dist/cli/runs/recording.d.ts +4 -1
  166. package/dist/cli/runs/recording.d.ts.map +1 -1
  167. package/dist/cli/runs/recording.js +11 -3
  168. package/dist/cli/runs/recording.js.map +1 -1
  169. package/dist/cli/runs/run.d.ts +4 -0
  170. package/dist/cli/runs/run.d.ts.map +1 -1
  171. package/dist/cli/runs/run.js +4 -0
  172. package/dist/cli/runs/run.js.map +1 -1
  173. package/dist/cli/runs/scope.d.ts +17 -0
  174. package/dist/cli/runs/scope.d.ts.map +1 -1
  175. package/dist/cli/runs/scope.js +25 -1
  176. package/dist/cli/runs/scope.js.map +1 -1
  177. package/dist/cli/settings.d.ts +4 -0
  178. package/dist/cli/settings.d.ts.map +1 -1
  179. package/dist/cli/settings.js +4 -0
  180. package/dist/cli/settings.js.map +1 -1
  181. package/dist/cli/steps.d.ts.map +1 -1
  182. package/dist/cli/steps.js +24 -0
  183. package/dist/cli/steps.js.map +1 -1
  184. package/dist/domain/google-documents.d.ts +4 -0
  185. package/dist/domain/google-documents.d.ts.map +1 -1
  186. package/dist/domain/google-documents.js +7 -6
  187. package/dist/domain/google-documents.js.map +1 -1
  188. package/dist/domain/mentions.d.ts +22 -0
  189. package/dist/domain/mentions.d.ts.map +1 -0
  190. package/dist/domain/mentions.js +139 -0
  191. package/dist/domain/mentions.js.map +1 -0
  192. package/dist/embeddings/embed.d.ts.map +1 -1
  193. package/dist/embeddings/embed.js +1 -4
  194. package/dist/embeddings/embed.js.map +1 -1
  195. package/dist/embeddings/models.d.ts +1 -1
  196. package/dist/entities/attachment.d.ts +6 -0
  197. package/dist/entities/attachment.d.ts.map +1 -1
  198. package/dist/entities/attachment.js +6 -0
  199. package/dist/entities/attachment.js.map +1 -1
  200. package/dist/entities/chat-event.d.ts +28 -0
  201. package/dist/entities/chat-event.d.ts.map +1 -0
  202. package/dist/entities/chat-event.js +19 -0
  203. package/dist/entities/chat-event.js.map +1 -0
  204. package/dist/entities/chat.d.ts +29 -0
  205. package/dist/entities/chat.d.ts.map +1 -1
  206. package/dist/entities/chat.js +15 -0
  207. package/dist/entities/chat.js.map +1 -1
  208. package/dist/entities/contact.d.ts +137 -0
  209. package/dist/entities/contact.d.ts.map +1 -1
  210. package/dist/entities/contact.js +6 -1
  211. package/dist/entities/contact.js.map +1 -1
  212. package/dist/entities/conversation.d.ts +16 -0
  213. package/dist/entities/conversation.d.ts.map +1 -0
  214. package/dist/entities/conversation.js +17 -0
  215. package/dist/entities/conversation.js.map +1 -0
  216. package/dist/entities/folder.d.ts +31 -0
  217. package/dist/entities/folder.d.ts.map +1 -0
  218. package/dist/entities/folder.js +25 -0
  219. package/dist/entities/folder.js.map +1 -0
  220. package/dist/entities/index.d.ts +385 -1
  221. package/dist/entities/index.d.ts.map +1 -1
  222. package/dist/entities/index.js +21 -1
  223. package/dist/entities/index.js.map +1 -1
  224. package/dist/entities/invite-link.d.ts +17 -0
  225. package/dist/entities/invite-link.d.ts.map +1 -0
  226. package/dist/entities/invite-link.js +18 -0
  227. package/dist/entities/invite-link.js.map +1 -0
  228. package/dist/entities/join-request.d.ts +12 -0
  229. package/dist/entities/join-request.d.ts.map +1 -0
  230. package/dist/entities/join-request.js +13 -0
  231. package/dist/entities/join-request.js.map +1 -0
  232. package/dist/entities/member.d.ts +24 -0
  233. package/dist/entities/member.d.ts.map +1 -0
  234. package/dist/entities/member.js +25 -0
  235. package/dist/entities/member.js.map +1 -0
  236. package/dist/entities/message-link.d.ts +10 -0
  237. package/dist/entities/message-link.d.ts.map +1 -0
  238. package/dist/entities/message-link.js +11 -0
  239. package/dist/entities/message-link.js.map +1 -0
  240. package/dist/entities/message.d.ts +19 -0
  241. package/dist/entities/message.d.ts.map +1 -1
  242. package/dist/entities/message.js +4 -0
  243. package/dist/entities/message.js.map +1 -1
  244. package/dist/entities/poll-vote.d.ts +11 -0
  245. package/dist/entities/poll-vote.d.ts.map +1 -0
  246. package/dist/entities/poll-vote.js +12 -0
  247. package/dist/entities/poll-vote.js.map +1 -0
  248. package/dist/entities/tagging.d.ts +14 -0
  249. package/dist/entities/tagging.d.ts.map +1 -0
  250. package/dist/entities/tagging.js +16 -0
  251. package/dist/entities/tagging.js.map +1 -0
  252. package/dist/entities/topic.d.ts +14 -0
  253. package/dist/entities/topic.d.ts.map +1 -0
  254. package/dist/entities/topic.js +15 -0
  255. package/dist/entities/topic.js.map +1 -0
  256. package/dist/images/picture/embedder.d.ts +15 -0
  257. package/dist/images/picture/embedder.d.ts.map +1 -0
  258. package/dist/images/picture/embedder.js +48 -0
  259. package/dist/images/picture/embedder.js.map +1 -0
  260. package/dist/images/picture/models.d.ts +27 -0
  261. package/dist/images/picture/models.d.ts.map +1 -0
  262. package/dist/images/picture/models.js +55 -0
  263. package/dist/images/picture/models.js.map +1 -0
  264. package/dist/images/picture/preprocess.d.ts +28 -0
  265. package/dist/images/picture/preprocess.d.ts.map +1 -0
  266. package/dist/images/picture/preprocess.js +48 -0
  267. package/dist/images/picture/preprocess.js.map +1 -0
  268. package/dist/mcp/agent-log.d.ts +7 -0
  269. package/dist/mcp/agent-log.d.ts.map +1 -1
  270. package/dist/mcp/agent-log.js +32 -0
  271. package/dist/mcp/agent-log.js.map +1 -1
  272. package/dist/mcp/instructions.d.ts.map +1 -1
  273. package/dist/mcp/instructions.js +3 -2
  274. package/dist/mcp/instructions.js.map +1 -1
  275. package/dist/mcp/prompts.js +3 -3
  276. package/dist/mcp/prompts.js.map +1 -1
  277. package/dist/mcp/tool.d.ts +1 -1
  278. package/dist/mcp/tool.d.ts.map +1 -1
  279. package/dist/mcp/tool.js +23 -11
  280. package/dist/mcp/tool.js.map +1 -1
  281. package/dist/mcp/tools/admin.d.ts.map +1 -1
  282. package/dist/mcp/tools/admin.js +41 -39
  283. package/dist/mcp/tools/admin.js.map +1 -1
  284. package/dist/mcp/tools/chats-read.d.ts.map +1 -1
  285. package/dist/mcp/tools/chats-read.js +4 -2
  286. package/dist/mcp/tools/chats-read.js.map +1 -1
  287. package/dist/mcp/tools/chats.d.ts.map +1 -1
  288. package/dist/mcp/tools/chats.js +77 -84
  289. package/dist/mcp/tools/chats.js.map +1 -1
  290. package/dist/mcp/tools/contacts-write.d.ts.map +1 -1
  291. package/dist/mcp/tools/contacts-write.js +4 -2
  292. package/dist/mcp/tools/contacts-write.js.map +1 -1
  293. package/dist/mcp/tools/contacts.d.ts.map +1 -1
  294. package/dist/mcp/tools/contacts.js +55 -30
  295. package/dist/mcp/tools/contacts.js.map +1 -1
  296. package/dist/mcp/tools/conversations.d.ts.map +1 -1
  297. package/dist/mcp/tools/conversations.js +12 -15
  298. package/dist/mcp/tools/conversations.js.map +1 -1
  299. package/dist/mcp/tools/folders.d.ts.map +1 -1
  300. package/dist/mcp/tools/folders.js +12 -11
  301. package/dist/mcp/tools/folders.js.map +1 -1
  302. package/dist/mcp/tools/messages.d.ts.map +1 -1
  303. package/dist/mcp/tools/messages.js +74 -59
  304. package/dist/mcp/tools/messages.js.map +1 -1
  305. package/dist/mcp/tools/moderation.d.ts.map +1 -1
  306. package/dist/mcp/tools/moderation.js +5 -3
  307. package/dist/mcp/tools/moderation.js.map +1 -1
  308. package/dist/mcp/tools/polls.d.ts.map +1 -1
  309. package/dist/mcp/tools/polls.js +31 -14
  310. package/dist/mcp/tools/polls.js.map +1 -1
  311. package/dist/mcp/tools/reactions.d.ts.map +1 -1
  312. package/dist/mcp/tools/reactions.js +4 -2
  313. package/dist/mcp/tools/reactions.js.map +1 -1
  314. package/dist/mcp/tools/search.d.ts +2 -0
  315. package/dist/mcp/tools/search.d.ts.map +1 -1
  316. package/dist/mcp/tools/tags.d.ts.map +1 -1
  317. package/dist/mcp/tools/tags.js +16 -11
  318. package/dist/mcp/tools/tags.js.map +1 -1
  319. package/dist/mcp/tools/tasks.d.ts.map +1 -1
  320. package/dist/mcp/tools/tasks.js +15 -20
  321. package/dist/mcp/tools/tasks.js.map +1 -1
  322. package/dist/mcp/tools/topics.d.ts.map +1 -1
  323. package/dist/mcp/tools/topics.js +30 -20
  324. package/dist/mcp/tools/topics.js.map +1 -1
  325. package/dist/meetings/cli/passage.d.ts.map +1 -1
  326. package/dist/meetings/cli/passage.js +6 -2
  327. package/dist/meetings/cli/passage.js.map +1 -1
  328. package/dist/sends/guard.js +3 -1
  329. package/dist/sends/guard.js.map +1 -1
  330. package/dist/sends/journal.d.ts.map +1 -1
  331. package/dist/sends/journal.js +11 -8
  332. package/dist/sends/journal.js.map +1 -1
  333. package/dist/sends/permissions.d.ts +1 -1
  334. package/dist/sends/permissions.d.ts.map +1 -1
  335. package/dist/sends/permissions.js +6 -1
  336. package/dist/sends/permissions.js.map +1 -1
  337. package/dist/services/admin.js +2 -2
  338. package/dist/services/admin.js.map +1 -1
  339. package/dist/services/backfill-jobs.d.ts +11 -1
  340. package/dist/services/backfill-jobs.d.ts.map +1 -1
  341. package/dist/services/backfill-jobs.js +36 -4
  342. package/dist/services/backfill-jobs.js.map +1 -1
  343. package/dist/services/chats.d.ts +6 -20
  344. package/dist/services/chats.d.ts.map +1 -1
  345. package/dist/services/chats.js +6 -43
  346. package/dist/services/chats.js.map +1 -1
  347. package/dist/services/conversations.d.ts +18 -4
  348. package/dist/services/conversations.d.ts.map +1 -1
  349. package/dist/services/conversations.js +29 -2
  350. package/dist/services/conversations.js.map +1 -1
  351. package/dist/services/deps.d.ts +5 -0
  352. package/dist/services/deps.d.ts.map +1 -1
  353. package/dist/services/deps.js.map +1 -1
  354. package/dist/services/document-pictures.d.ts +26 -0
  355. package/dist/services/document-pictures.d.ts.map +1 -0
  356. package/dist/services/document-pictures.js +37 -0
  357. package/dist/services/document-pictures.js.map +1 -0
  358. package/dist/services/index.d.ts +8 -3
  359. package/dist/services/index.d.ts.map +1 -1
  360. package/dist/services/index.js +8 -2
  361. package/dist/services/index.js.map +1 -1
  362. package/dist/services/meeting-hit-context.d.ts.map +1 -1
  363. package/dist/services/meeting-hit-context.js +5 -2
  364. package/dist/services/meeting-hit-context.js.map +1 -1
  365. package/dist/services/mentions.d.ts +30 -0
  366. package/dist/services/mentions.d.ts.map +1 -0
  367. package/dist/services/mentions.js +38 -0
  368. package/dist/services/mentions.js.map +1 -0
  369. package/dist/services/messages.d.ts +10 -0
  370. package/dist/services/messages.d.ts.map +1 -1
  371. package/dist/services/messages.js +1 -0
  372. package/dist/services/messages.js.map +1 -1
  373. package/dist/services/notes-search.d.ts +14 -1
  374. package/dist/services/notes-search.d.ts.map +1 -1
  375. package/dist/services/notes-search.js +46 -1
  376. package/dist/services/notes-search.js.map +1 -1
  377. package/dist/services/people.d.ts +1 -1
  378. package/dist/services/people.d.ts.map +1 -1
  379. package/dist/services/people.js +0 -18
  380. package/dist/services/people.js.map +1 -1
  381. package/dist/services/pictures.d.ts +56 -0
  382. package/dist/services/pictures.d.ts.map +1 -0
  383. package/dist/services/pictures.js +226 -0
  384. package/dist/services/pictures.js.map +1 -0
  385. package/dist/services/tags.d.ts +17 -6
  386. package/dist/services/tags.d.ts.map +1 -1
  387. package/dist/services/tags.js +42 -5
  388. package/dist/services/tags.js.map +1 -1
  389. package/dist/services/tasks.d.ts +28 -9
  390. package/dist/services/tasks.d.ts.map +1 -1
  391. package/dist/services/tasks.js +69 -11
  392. package/dist/services/tasks.js.map +1 -1
  393. package/dist/speech/hearing.d.ts +3 -0
  394. package/dist/speech/hearing.d.ts.map +1 -1
  395. package/dist/speech/hearing.js +16 -0
  396. package/dist/speech/hearing.js.map +1 -1
  397. package/dist/speech/install.d.ts +1 -1
  398. package/dist/speech/install.d.ts.map +1 -1
  399. package/dist/speech/install.js.map +1 -1
  400. package/dist/sqlite-runtime.d.ts +1 -1
  401. package/dist/sqlite-runtime.js +2 -2
  402. package/dist/sqlite-runtime.js.map +1 -1
  403. package/dist/store/account-store.d.ts +1 -1
  404. package/dist/store/account-store.d.ts.map +1 -1
  405. package/dist/store/account-store.js +5 -0
  406. package/dist/store/account-store.js.map +1 -1
  407. package/dist/store/drivers/bun-sqlite.js +1 -1
  408. package/dist/store/drivers/bun-sqlite.js.map +1 -1
  409. package/dist/store/index.d.ts +1 -1
  410. package/dist/store/index.d.ts.map +1 -1
  411. package/dist/store/index.js.map +1 -1
  412. package/dist/store/sqlite/conversations.d.ts +36 -4
  413. package/dist/store/sqlite/conversations.d.ts.map +1 -1
  414. package/dist/store/sqlite/conversations.js +20 -3
  415. package/dist/store/sqlite/conversations.js.map +1 -1
  416. package/dist/store/sqlite/document-pictures.d.ts +29 -0
  417. package/dist/store/sqlite/document-pictures.d.ts.map +1 -0
  418. package/dist/store/sqlite/document-pictures.js +81 -0
  419. package/dist/store/sqlite/document-pictures.js.map +1 -0
  420. package/dist/store/sqlite/emails.d.ts +10 -0
  421. package/dist/store/sqlite/emails.d.ts.map +1 -1
  422. package/dist/store/sqlite/emails.js +14 -0
  423. package/dist/store/sqlite/emails.js.map +1 -1
  424. package/dist/store/sqlite/entity-types.d.ts +1 -0
  425. package/dist/store/sqlite/entity-types.d.ts.map +1 -1
  426. package/dist/store/sqlite/entity-types.js +1 -0
  427. package/dist/store/sqlite/entity-types.js.map +1 -1
  428. package/dist/store/sqlite/image-chunks.d.ts +33 -2
  429. package/dist/store/sqlite/image-chunks.d.ts.map +1 -1
  430. package/dist/store/sqlite/image-chunks.js +45 -6
  431. package/dist/store/sqlite/image-chunks.js.map +1 -1
  432. package/dist/store/sqlite/manifest.d.ts.map +1 -1
  433. package/dist/store/sqlite/manifest.js +2 -0
  434. package/dist/store/sqlite/manifest.js.map +1 -1
  435. package/dist/store/sqlite/mentions.d.ts +61 -0
  436. package/dist/store/sqlite/mentions.d.ts.map +1 -0
  437. package/dist/store/sqlite/mentions.js +186 -0
  438. package/dist/store/sqlite/mentions.js.map +1 -0
  439. package/dist/store/sqlite/migrations.generated.d.ts.map +1 -1
  440. package/dist/store/sqlite/migrations.generated.js +19 -0
  441. package/dist/store/sqlite/migrations.generated.js.map +1 -1
  442. package/dist/store/sqlite/note-index.d.ts.map +1 -1
  443. package/dist/store/sqlite/note-index.js +3 -0
  444. package/dist/store/sqlite/note-index.js.map +1 -1
  445. package/dist/store/sqlite/note-search.d.ts +2 -1
  446. package/dist/store/sqlite/note-search.d.ts.map +1 -1
  447. package/dist/store/sqlite/note-search.js +4 -1
  448. package/dist/store/sqlite/note-search.js.map +1 -1
  449. package/dist/store/sqlite/notes.js +1 -1
  450. package/dist/store/sqlite/notes.js.map +1 -1
  451. package/dist/store/sqlite/schema.d.ts +339 -0
  452. package/dist/store/sqlite/schema.d.ts.map +1 -1
  453. package/dist/store/sqlite/schema.js +35 -0
  454. package/dist/store/sqlite/schema.js.map +1 -1
  455. package/dist/store/sqlite/tags.d.ts +7 -0
  456. package/dist/store/sqlite/tags.d.ts.map +1 -1
  457. package/dist/store/sqlite/tags.js +16 -9
  458. package/dist/store/sqlite/tags.js.map +1 -1
  459. package/dist/store/sqlite/tasks.d.ts +11 -1
  460. package/dist/store/sqlite/tasks.d.ts.map +1 -1
  461. package/dist/store/sqlite/tasks.js +11 -0
  462. package/dist/store/sqlite/tasks.js.map +1 -1
  463. package/dist/store/store.d.ts +57 -3
  464. package/dist/store/store.d.ts.map +1 -1
  465. package/dist/store/store.js +57 -7
  466. package/dist/store/store.js.map +1 -1
  467. package/package.json +6 -5
  468. package/parity.json +65 -104
  469. package/skills/follow-ups/SKILL.md +1 -1
  470. package/dist/cli/messenger/after.d.ts +0 -20
  471. package/dist/cli/messenger/after.d.ts.map +0 -1
  472. package/dist/cli/messenger/after.js +0 -27
  473. package/dist/cli/messenger/after.js.map +0 -1
@@ -3,7 +3,12 @@ import { annotate } from "@wirecat/cli-base/commands";
3
3
  import { Command } from "commander";
4
4
  import { ADMIN_RIGHTS, GROUP_SETTINGS } from "../../domain/models.js";
5
5
  import { readUpload } from "../../sends/upload.js";
6
+ import { renderAnswer } from "../envelope.js";
7
+ import { withQuery } from "../list-query.js";
6
8
  import { positiveCount } from "../paging.js";
9
+ import { lines, renderItem, withPage } from "./chat-answers.js";
10
+ import { inviteLinks, joinRequests } from "./chat-lists.js";
11
+ import { LINKS_QUERY, REQUESTS_QUERY } from "./chat-queries.js";
7
12
  import { messengerContext } from "./context.js";
8
13
  const SETTING_FLAGS = {
9
14
  allCanPin: ["all-can-pin", "every member may pin messages"],
@@ -42,7 +47,7 @@ const updateCommand = (messenger) => {
42
47
  const { title, description, photo, ...rest } = this.opts();
43
48
  const settings = settingsOf(keys, rest);
44
49
  const upload = photo === undefined ? undefined : await readUpload("photo", photo, { app: messenger.app, env: context.env });
45
- context.renderer.result(await context.withServices((services) => services.admin.update(chat, {
50
+ renderItem(this, context, await context.withServices((services) => services.admin.update(chat, {
46
51
  ...(title === undefined ? {} : { title }),
47
52
  ...(description === undefined ? {} : { description }),
48
53
  ...(Object.keys(settings).length > 0 ? { settings } : {}),
@@ -58,7 +63,7 @@ const linkCommand = (messenger) => {
58
63
  .argument("<chat>", messenger.chatArgument)
59
64
  .action(async function (chat) {
60
65
  const context = messengerContext(this, messenger);
61
- context.renderer.result(await context.withServices((services) => services.admin.link(chat)));
66
+ renderItem(this, context, await context.withServices((services) => services.admin.link(chat)));
62
67
  });
63
68
  link.addCommand(annotate(new Command("create"), { mutates: true })
64
69
  .description("make another invite link; nobody is told until you share it")
@@ -69,31 +74,27 @@ const linkCommand = (messenger) => {
69
74
  .action(async function (chat) {
70
75
  const context = messengerContext(this, messenger);
71
76
  const { approval, expireTime, maxUses } = this.opts();
72
- context.renderer.result(await context.withServices((services) => services.admin.createLink(chat, {
77
+ renderItem(this, context, await context.withServices((services) => services.admin.createLink(chat, {
73
78
  approval: approval === true,
74
79
  ...(expireTime === undefined ? {} : { expires: expireTime }),
75
80
  ...(maxUses === undefined ? {} : { maxUses }),
76
81
  })));
77
82
  }));
78
83
  if (messenger.inviteLinkList !== false)
79
- link
80
- .command("list")
84
+ link.addCommand(withQuery(annotate(withPage(new Command("list")
81
85
  .description("your invite links, newest first, with how many joined and how many wait")
82
- .argument("<chat>", messenger.chatArgument)
83
- .option("--revoked", "the links you stopped, instead")
84
- .option("--limit <n>", "how many", positiveCount("--limit"))
85
- .action(async function (chat) {
86
+ .argument("<chat>", messenger.chatArgument)), { output: { entity: "invite_link" } }), LINKS_QUERY).action(async function (chat, words) {
86
87
  const context = messengerContext(this, messenger);
87
- const { revoked } = this.opts();
88
- const { limit } = context.settings;
89
- const found = await context.withServices((services) => services.admin.links(chat, { limit, revoked: revoked === true }));
90
- if (context.format === "json")
91
- context.renderer.result(found);
92
- else
93
- context.renderer.stream(found.items);
94
- if (found.hasMore)
95
- context.renderer.note(`more links: raise --limit above ${limit}`);
96
- });
88
+ const body = await context.withServices((services) => inviteLinks(services, chat, words, context.settings));
89
+ renderAnswer(this, context, body, lines(({ link, approval, expires_at, joined_count, pending_count, revoked }) => [
90
+ link,
91
+ revoked ? "revoked" : "",
92
+ approval ? "approval" : "",
93
+ expires_at ? `until ${expires_at}` : "",
94
+ joined_count === undefined ? "" : `${joined_count} joined`,
95
+ pending_count ? `${pending_count} waiting` : "",
96
+ ].join(" ")));
97
+ }));
97
98
  if (messenger.inviteLinkRevoke !== false)
98
99
  link.addCommand(annotate(new Command("revoke"), { mutates: true })
99
100
  .description("stop one link; for the group's own link, the answer is the new one")
@@ -101,7 +102,7 @@ const linkCommand = (messenger) => {
101
102
  .argument("<link>", "the link, as `chats link list` shows it")
102
103
  .action(async function (chat, link) {
103
104
  const context = messengerContext(this, messenger);
104
- context.renderer.result(await context.withServices((services) => services.admin.revokeLink(chat, link)));
105
+ renderItem(this, context, await context.withServices((services) => services.admin.revokeLink(chat, link)));
105
106
  }));
106
107
  if (messenger.inviteLinkUpdate === true)
107
108
  link.addCommand(annotate(new Command("update"), { mutates: true })
@@ -115,7 +116,7 @@ const linkCommand = (messenger) => {
115
116
  .action(async function (chat, link) {
116
117
  const context = messengerContext(this, messenger);
117
118
  const { approval, expireTime, maxUses } = this.opts();
118
- context.renderer.result(await context.withServices((services) => services.admin.updateLink(chat, link, {
119
+ renderItem(this, context, await context.withServices((services) => services.admin.updateLink(chat, link, {
119
120
  ...(approval === undefined ? {} : { approval }),
120
121
  ...(expireTime === undefined ? {} : { expires: expireTime }),
121
122
  ...(maxUses === undefined ? {} : { maxUses }),
@@ -126,7 +127,7 @@ const linkCommand = (messenger) => {
126
127
  .argument("<chat>", messenger.chatArgument)
127
128
  .action(async function (chat) {
128
129
  const context = messengerContext(this, messenger);
129
- context.renderer.result(await context.withServices((services) => services.admin.resetLink(chat)));
130
+ renderItem(this, context, await context.withServices((services) => services.admin.resetLink(chat)));
130
131
  }));
131
132
  return link;
132
133
  };
@@ -141,7 +142,7 @@ const adminsCommand = (messenger) => {
141
142
  .action(async function (chat, person) {
142
143
  const context = messengerContext(this, messenger);
143
144
  const rights = rightsOf(offered, this.opts().can);
144
- context.renderer.result(await context.withServices((services) => services.admin.addAdmin(chat, person, rights)));
145
+ renderItem(this, context, await context.withServices((services) => services.admin.addAdmin(chat, person, rights)));
145
146
  }));
146
147
  admins.addCommand(annotate(new Command("remove"), { mutates: true })
147
148
  .description("take an admin's rights back; they stay a member")
@@ -149,7 +150,7 @@ const adminsCommand = (messenger) => {
149
150
  .argument("<person>", "an id, or part of a name")
150
151
  .action(async function (chat, person) {
151
152
  const context = messengerContext(this, messenger);
152
- context.renderer.result(await context.withServices((services) => services.admin.removeAdmin(chat, person)));
153
+ renderItem(this, context, await context.withServices((services) => services.admin.removeAdmin(chat, person)));
153
154
  }));
154
155
  return admins;
155
156
  };
@@ -168,26 +169,13 @@ export const rightsOf = (offered, typed) => {
168
169
  };
169
170
  const requestsCommand = (messenger) => {
170
171
  const requests = new Command("requests").description("requests to join a group that needs an admin's approval");
171
- requests
172
- .command("list")
172
+ requests.addCommand(withQuery(annotate(withPage(new Command("list")
173
173
  .description("who asked to join, newest first; only admins see them, and reading tells nobody")
174
- .argument("<chat>", messenger.chatArgument)
175
- .option("--limit <n>", "how many", positiveCount("--limit"))
176
- .option("--search <text>", "only people whose name or @username has this")
177
- .option("--link <link>", "only people who asked through this invite link; not with --search")
178
- .action(async function (chat) {
174
+ .argument("<chat>", messenger.chatArgument)), { output: { entity: "join_request" } }), REQUESTS_QUERY).action(async function (chat, words) {
179
175
  const context = messengerContext(this, messenger);
180
- const { limit } = context.settings;
181
- const { search, link } = this.opts();
182
- const window = { limit, ...(search === undefined ? {} : { search }), ...(link === undefined ? {} : { link }) };
183
- const found = await context.withServices((services) => services.admin.requests(chat, window));
184
- if (context.format === "json")
185
- context.renderer.result(found);
186
- else
187
- context.renderer.stream(found.items);
188
- if (found.hasMore)
189
- context.renderer.note(`more requests: raise --limit above ${limit}`);
190
- });
176
+ const body = await context.withServices((services) => joinRequests(services, chat, words, context.settings));
177
+ renderAnswer(this, context, body, lines(({ person_id, name, username, requested_at }) => [person_id, name ?? "", username ? `@${username}` : "", requested_at ?? ""].join(" ")));
178
+ }));
191
179
  for (const [verb, accept, help] of [
192
180
  ["accept", true, "let them in; the group sees them join"],
193
181
  ["decline", false, "turn the request away"],
@@ -205,7 +193,7 @@ const requestsCommand = (messenger) => {
205
193
  throw new CliError("validation_error", "give one person, or --all — not both, not neither");
206
194
  if (link !== undefined && all !== true)
207
195
  throw new CliError("validation_error", "--link goes with --all");
208
- context.renderer.result(await context.withServices((services) => person === undefined
196
+ renderItem(this, context, await context.withServices((services) => person === undefined
209
197
  ? services.admin.answerAllRequests(chat, accept, link === undefined ? {} : { link })
210
198
  : services.admin.answerRequest(chat, person, accept)));
211
199
  }));
@@ -222,21 +210,21 @@ export const groupCommands = (messenger) => [
222
210
  .action(async function (title, people) {
223
211
  const context = messengerContext(this, messenger);
224
212
  const { channel } = this.opts();
225
- context.renderer.result(await context.withServices((services) => services.admin.create({ title, people, channel: channel === true })));
213
+ renderItem(this, context, await context.withServices((services) => services.admin.create({ title, people, channel: channel === true })));
226
214
  }),
227
215
  annotate(new Command("join"), { mutates: true })
228
216
  .description("join a group or channel by its link; the others in it see that you joined")
229
217
  .argument("<link>", `an invite link, or a public one`)
230
218
  .action(async function (link) {
231
219
  const context = messengerContext(this, messenger);
232
- context.renderer.result(await context.withServices((services) => services.admin.join(link)));
220
+ renderItem(this, context, await context.withServices((services) => services.admin.join(link)));
233
221
  }),
234
222
  annotate(new Command("leave"), { mutates: true })
235
223
  .description("leave a group or channel; the others in it see that you left")
236
224
  .argument("<chat>", messenger.chatArgument)
237
225
  .action(async function (chat) {
238
226
  const context = messengerContext(this, messenger);
239
- context.renderer.result(await context.withServices((services) => services.admin.leave(chat)));
227
+ renderItem(this, context, await context.withServices((services) => services.admin.leave(chat)));
240
228
  }),
241
229
  updateCommand(messenger),
242
230
  linkCommand(messenger),
@@ -1 +1 @@
1
- {"version":3,"file":"admin-commands.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-commands.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-commands.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"admin-contacts-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-contacts-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAI/D,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,cAAe,SAAS,KAAG,OAAO,EAiDlE,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,cAAc,EAUnD,CAAA"}
1
+ {"version":3,"file":"admin-contacts-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-contacts-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAI5D,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAI/D,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,cAAe,SAAS,KAAG,OAAO,EA+ClE,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,SAAS,SAAU,MAAM,KAAG,cAAc,EAUnD,CAAA"}
@@ -3,6 +3,8 @@ import { CliError } from "@wirecat/cli-base";
3
3
  import { annotate } from "@wirecat/cli-base/commands";
4
4
  import { Command } from "commander";
5
5
  import { phoneOf } from "../../services/index.js";
6
+ import { itemOf, renderAnswer } from "../envelope.js";
7
+ import { snakeKeys } from "./chat-answers.js";
6
8
  import { messengerContext } from "./context.js";
7
9
  const PERSON = "person id — `contacts lookup` finds one — or part of a known name";
8
10
  /** The address book's writes, in max-cli's words. */
@@ -17,7 +19,8 @@ export const contactWriteCommands = (messenger) => {
17
19
  .argument("<person>", PERSON)
18
20
  .action(async function (person) {
19
21
  const context = messengerContext(this, messenger);
20
- context.renderer.result(await context.withServices((services) => services.people[name](person)));
22
+ const done = await context.withServices((services) => services.people[name](person));
23
+ renderAnswer(this, context, itemOf(snakeKeys(done)));
21
24
  }));
22
25
  const rename = annotate(new Command("rename"), { mutates: true })
23
26
  .description("rename the contact in the messenger address book; use contacts alias for a private local name")
@@ -26,7 +29,8 @@ export const contactWriteCommands = (messenger) => {
26
29
  .argument("[last-name]")
27
30
  .action(async function (person, firstName, lastName) {
28
31
  const context = messengerContext(this, messenger);
29
- context.renderer.result(await context.withServices((services) => services.people.rename(person, firstName, lastName)));
32
+ const renamed = await context.withServices((services) => services.people.rename(person, firstName, lastName));
33
+ renderAnswer(this, context, itemOf(snakeKeys(renamed)));
30
34
  });
31
35
  /** A file rather than argv: these are phone numbers, and argv is read by `ps` and kept by the shell. */
32
36
  const importing = annotate(new Command("import"), { mutates: true })
@@ -38,7 +42,7 @@ export const contactWriteCommands = (messenger) => {
38
42
  throw new CliError("not_found", `cannot read ${file}: ${error.code ?? error.message}`);
39
43
  }));
40
44
  const imported = await context.withServices((services) => services.people.import(entries));
41
- context.renderer.result(imported);
45
+ renderAnswer(this, context, itemOf(snakeKeys(imported)));
42
46
  context.renderer.success(`${imported.sent} sent, ${imported.recognised.length} recognised`);
43
47
  });
44
48
  return [...simple, rename, importing];
@@ -1 +1 @@
1
- {"version":3,"file":"admin-contacts-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-contacts-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-contacts-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-contacts-command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"admin-folders-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-folders-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAInC,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAoD/D,6CAA6C;AAC7C,eAAO,MAAM,cAAc,cAAe,SAAS,KAAG,OA0FrD,CAAA"}
1
+ {"version":3,"file":"admin-folders-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-folders-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAoD/D,6CAA6C;AAC7C,eAAO,MAAM,cAAc,cAAe,SAAS,KAAG,OAqGrD,CAAA"}
@@ -2,10 +2,11 @@ import { CliError } from "@wirecat/cli-base";
2
2
  import { annotate } from "@wirecat/cli-base/commands";
3
3
  import { Command } from "commander";
4
4
  import { FOLDER_KINDS, FOLDER_SKIPS } from "../../domain/models.js";
5
- import { renderList } from "../paging.js";
5
+ import { itemOf, renderAnswer } from "../envelope.js";
6
+ import { folderAnswer, lines, renderItem, wholeList } from "./chat-answers.js";
6
7
  import { messengerContext } from "./context.js";
7
8
  const collect = (value, previous = []) => [...previous, value];
8
- const listOf = (flag, allowed) => (value) => {
9
+ const wordsOf = (flag, allowed) => (value) => {
9
10
  if (value.trim() === "none")
10
11
  return [];
11
12
  const words = value.split(",").map((one) => one.trim());
@@ -20,8 +21,8 @@ const withRules = (command, messenger, replaces) => {
20
21
  return command;
21
22
  const set = replaces ? "; replaces what it had, none clears it" : "";
22
23
  return command
23
- .option("--include <kinds>", `every chat of these kinds: ${FOLDER_KINDS.join(", ")}${set}`, listOf("--include", FOLDER_KINDS))
24
- .option("--skip <which>", `leave out chats that are ${FOLDER_SKIPS.join(", ")}${set}`, listOf("--skip", FOLDER_SKIPS))
24
+ .option("--include <kinds>", `every chat of these kinds: ${FOLDER_KINDS.join(", ")}${set}`, wordsOf("--include", FOLDER_KINDS))
25
+ .option("--skip <which>", `leave out chats that are ${FOLDER_SKIPS.join(", ")}${set}`, wordsOf("--skip", FOLDER_SKIPS))
25
26
  .option("--exclude-chat <chat>", "never show this chat in it; repeat it for more", collect)
26
27
  .option("--pin <chat>", "pin this chat at the top of the folder; repeat it for more", collect)
27
28
  .option("--emoji <emoji>", "the folder's icon");
@@ -39,21 +40,20 @@ const rulesOf = (command) => {
39
40
  /** `chats folders …`, in max-cli's words. */
40
41
  export const foldersCommand = (messenger) => {
41
42
  const folders = new Command("folders").description("your chat folders");
42
- folders
43
- .command("list")
44
- .description("your chat folders, in the order the app shows them")
45
- .action(async function () {
43
+ folders.addCommand(annotate(new Command("list").description("your chat folders, in the order the app shows them"), {
44
+ output: { entity: "folder" },
45
+ }).action(async function () {
46
46
  const context = messengerContext(this, messenger);
47
- renderList(context.renderer, context.format, await context.withServices((services) => services.folders.list()));
48
- });
49
- folders
50
- .command("show")
47
+ const found = await context.withServices((services) => services.folders.list());
48
+ renderAnswer(this, context, wholeList("chats folders list", found.map(folderAnswer)), lines(({ id, title, emoji, chat_ids }) => [id, emoji ?? "", title, `${chat_ids.length} chats`].join(" ")));
49
+ }));
50
+ folders.addCommand(annotate(new Command("show")
51
51
  .description("one chat folder, with the names of the chats in it")
52
- .argument("<folder>", "the folder's id, or its title exactly")
53
- .action(async function (folder) {
52
+ .argument("<folder>", "the folder's id, or its title exactly"), { output: { entity: "folder" } }).action(async function (folder) {
54
53
  const context = messengerContext(this, messenger);
55
- context.renderer.result(await context.withServices((services) => services.folders.show(folder)));
56
- });
54
+ const found = await context.withServices((services) => services.folders.show(folder));
55
+ renderAnswer(this, context, itemOf(folderAnswer(found)));
56
+ }));
57
57
  folders.addCommand(withRules(annotate(new Command("create"), { mutates: true })
58
58
  .description("create a chat folder")
59
59
  .argument("<title>", "the folder's name; the app may refuse a long one")
@@ -61,7 +61,7 @@ export const foldersCommand = (messenger) => {
61
61
  const context = messengerContext(this, messenger);
62
62
  const { chat = [] } = this.opts();
63
63
  const rules = rulesOf(this);
64
- context.renderer.result(await context.withServices((services) => services.folders.create(title, chat, rules)));
64
+ renderItem(this, context, await context.withServices((services) => services.folders.create(title, chat, rules)));
65
65
  }));
66
66
  folders.addCommand(withRules(annotate(new Command("update"), { mutates: true })
67
67
  .description("rename a folder, or change which chats are in it")
@@ -77,14 +77,14 @@ export const foldersCommand = (messenger) => {
77
77
  ...(remove === undefined ? {} : { remove }),
78
78
  ...rulesOf(this),
79
79
  };
80
- context.renderer.result(await context.withServices((services) => services.folders.update(folder, edit)));
80
+ renderItem(this, context, await context.withServices((services) => services.folders.update(folder, edit)));
81
81
  }));
82
82
  folders.addCommand(annotate(new Command("delete"), { mutates: true })
83
83
  .description("delete a folder; the chats in it stay")
84
84
  .argument("<folder>", "folder id, or its title exactly")
85
85
  .action(async function (folder) {
86
86
  const context = messengerContext(this, messenger);
87
- context.renderer.result(await context.withServices((services) => services.folders.delete(folder)));
87
+ renderItem(this, context, await context.withServices((services) => services.folders.delete(folder)));
88
88
  }));
89
89
  if (messenger.folderOrder !== false)
90
90
  folders.addCommand(annotate(new Command("order"), { mutates: true })
@@ -92,7 +92,7 @@ export const foldersCommand = (messenger) => {
92
92
  .argument("<folders...>", "folder ids, or titles exactly, first one first")
93
93
  .action(async function (typed) {
94
94
  const context = messengerContext(this, messenger);
95
- context.renderer.result(await context.withServices((services) => services.folders.order(typed)));
95
+ renderItem(this, context, await context.withServices((services) => services.folders.order(typed)));
96
96
  }));
97
97
  if (messenger.folderJoin !== false)
98
98
  folders.addCommand(annotate(new Command("join"), { mutates: true })
@@ -100,7 +100,7 @@ export const foldersCommand = (messenger) => {
100
100
  .argument("<link>", "the folder's link, as t.me/addlist/…")
101
101
  .action(async function (link) {
102
102
  const context = messengerContext(this, messenger);
103
- context.renderer.result(await context.withServices((services) => services.folders.join(link)));
103
+ renderItem(this, context, await context.withServices((services) => services.folders.join(link)));
104
104
  }));
105
105
  return folders;
106
106
  };
@@ -1 +1 @@
1
- {"version":3,"file":"admin-folders-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-folders-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-folders-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-folders-command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"admin-moderation-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-moderation-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAKnC,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAE/D,gIAAgI;AAChI,eAAO,MAAM,YAAY,cAAe,SAAS,KAAG,OAkCnD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,cAAe,SAAS,KAAG,OA8CjD,CAAA"}
1
+ {"version":3,"file":"admin-moderation-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/admin-moderation-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOnC,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAE/D,gIAAgI;AAChI,eAAO,MAAM,YAAY,cAAe,SAAS,KAAG,OAkCnD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,eAAe,cAAe,SAAS,KAAG,OA4CjD,CAAA"}
@@ -4,7 +4,9 @@ import { Command } from "commander";
4
4
  import { describe, MAX_ACTIONS } from "../../moderation/check.js";
5
5
  import { RULE_KEYS } from "../../moderation/rules.js";
6
6
  import { momentOf } from "../../services/moment.js";
7
+ import { itemOf, renderAnswer } from "../envelope.js";
7
8
  import { answerOf } from "./ask.js";
9
+ import { renderItem, snakeKeys } from "./chat-answers.js";
8
10
  import { messengerContext } from "./context.js";
9
11
  /** `chats rules show|set|unset`: the rules live in a file of this profile, and only the chat's id is asked of the messenger. */
10
12
  export const rulesCommand = (messenger) => {
@@ -15,7 +17,7 @@ export const rulesCommand = (messenger) => {
15
17
  .argument("<chat>", messenger.chatArgument)
16
18
  .action(async function (chat) {
17
19
  const context = messengerContext(this, messenger);
18
- context.renderer.result(await context.withServices((services) => services.moderation.rules(chat)));
20
+ renderItem(this, context, await context.withServices((services) => services.moderation.rules(chat)));
19
21
  });
20
22
  rules.addCommand(annotate(new Command("set"), { mutates: true, local: true })
21
23
  .description("change one rule; the group's first change writes every rule with its default")
@@ -24,7 +26,7 @@ export const rulesCommand = (messenger) => {
24
26
  .argument("<value>", "the new value; a list is comma-separated")
25
27
  .action(async function (chat, key, value) {
26
28
  const context = messengerContext(this, messenger);
27
- context.renderer.result(await context.withServices((services) => services.moderation.set(chat, key, value)));
29
+ renderItem(this, context, await context.withServices((services) => services.moderation.set(chat, key, value)));
28
30
  }));
29
31
  rules.addCommand(annotate(new Command("unset"), { mutates: true, local: true })
30
32
  .description("put one rule back to its default")
@@ -32,7 +34,7 @@ export const rulesCommand = (messenger) => {
32
34
  .argument("<key>", `one of: ${RULE_KEYS.join(", ")}`)
33
35
  .action(async function (chat, key) {
34
36
  const context = messengerContext(this, messenger);
35
- context.renderer.result(await context.withServices((services) => services.moderation.unset(chat, key)));
37
+ renderItem(this, context, await context.withServices((services) => services.moderation.unset(chat, key)));
36
38
  }));
37
39
  return rules;
38
40
  };
@@ -67,16 +69,12 @@ export const moderateCommand = (messenger) => annotate(new Command("moderate"),
67
69
  return /^\s*y(es)?\s*$/i.test(answer);
68
70
  },
69
71
  }));
70
- context.renderer.result(context.format === "pretty"
71
- ? rows.map((row) => ({
72
- what: row.kind,
73
- who: row.personName ?? row.personId,
74
- rule: row.rule,
75
- action: row.action,
76
- outcome: row.outcome,
77
- ...(row.reason ? { why: row.reason } : {}),
78
- }))
79
- : { chatId, rows });
72
+ renderAnswer(this, context, itemOf(snakeKeys({ chatId, rows })), () => rows
73
+ .map((row) => [row.kind, row.personName ?? row.personId, row.rule, row.action, row.outcome, row.reason ?? ""]
74
+ .join(" ")
75
+ .trimEnd())
76
+ .map((line) => `${line}\n`)
77
+ .join(""));
80
78
  for (const note of notes)
81
79
  context.renderer.note(note);
82
80
  });
@@ -1 +1 @@
1
- {"version":3,"file":"admin-moderation-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-moderation-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-moderation-command.js","sourceRoot":"","sources":["../../../src/cli/messenger/admin-moderation-command.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"backfill-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-command.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAA;AAwB3C,OAAO,EAAE,KAAK,SAAS,EAA6D,MAAM,cAAc,CAAA;AAcxG,eAAO,MAAM,WAAW,cAAe,SAAS,KAAG,OAqLlD,CAAA;AAED,8EAA8E;AAC9E,eAAO,MAAM,WAAW,cAAe,SAAS,KAAG,OA4FlD,CAAA"}
1
+ {"version":3,"file":"backfill-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/backfill-command.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAA;AA2B3C,OAAO,EAAE,KAAK,SAAS,EAA6D,MAAM,cAAc,CAAA;AAcxG,eAAO,MAAM,WAAW,cAAe,SAAS,KAAG,OAqLlD,CAAA;AAED,8EAA8E;AAC9E,eAAO,MAAM,WAAW,cAAe,SAAS,KAAG,OA4FlD,CAAA"}
@@ -13,7 +13,7 @@ import { environmentOf } from "../context.js";
13
13
  import { isCliFailure } from "../failures.js";
14
14
  import { renderList } from "../paging.js";
15
15
  import { parseDuration } from "../settings.js";
16
- import { JOB_STATES, jobsDir, listJobs, readJob, removeJob, saveJob, spawnDetached, stateOf, updateJob, } from "./backfill-jobs.js";
16
+ import { finishJob, JOB_STATES, jobStarted, jobsDir, listJobs, readJob, removeJob, saveJob, spawnDetached, stateOf, tracedJob, updateJob, } from "./backfill-jobs.js";
17
17
  import { messengerContext, refuseLocalWrite } from "./context.js";
18
18
  import { stopOnSignal } from "./patience.js";
19
19
  /**
@@ -137,7 +137,7 @@ export const syncCommand = (messenger) => {
137
137
  };
138
138
  const result = await context.withServices((services) => chat === undefined ? services.archive.fetchAll(options) : services.archive.fetch(chat, options));
139
139
  if (jobId)
140
- updateJob(jobs, jobId, { finishedAt: new Date().toISOString(), result });
140
+ finishJob(messenger.app, jobs, jobId, { finishedAt: new Date().toISOString(), result });
141
141
  context.renderer.result(result);
142
142
  const prepared = "prepared" in result ? result.prepared : undefined;
143
143
  if (prepared && !prepared.complete && "chat" in result && result.chat !== null) {
@@ -150,7 +150,7 @@ export const syncCommand = (messenger) => {
150
150
  if (jobId) {
151
151
  const code = isCliFailure(error) ? error.code : "generic_failure";
152
152
  const message = error instanceof Error ? error.message : String(error);
153
- updateJob(jobs, jobId, { finishedAt: new Date().toISOString(), error: { code, message } });
153
+ finishJob(messenger.app, jobs, jobId, { finishedAt: new Date().toISOString(), error: { code, message } });
154
154
  }
155
155
  throw error;
156
156
  }
@@ -314,7 +314,11 @@ const launchJob = (command, context, messenger, { chat, argv, limit, pageSize, l
314
314
  const log = join(dir, `${id}.log`);
315
315
  // A shell's --timeout default would cut a job short that was asked to outlive the shell.
316
316
  const { [envName(app, "TIMEOUT")]: _timeout, ...inherited } = context.env;
317
- const env = { ...inherited, [envName(app, "PROFILE")]: context.profile, [envName(app, "BACKFILL_JOB")]: id };
317
+ const traced = tracedJob({
318
+ ...inherited,
319
+ [envName(app, "PROFILE")]: context.profile,
320
+ [envName(app, "BACKFILL_JOB")]: id,
321
+ });
318
322
  const job = {
319
323
  id,
320
324
  chat,
@@ -329,8 +333,8 @@ const launchJob = (command, context, messenger, { chat, argv, limit, pageSize, l
329
333
  };
330
334
  saveJob(dir, job);
331
335
  const spawnJob = environmentOf(command).spawnJob ?? spawnDetached;
332
- const pid = spawnJob(argv, env, log);
333
- saveJob(dir, { ...job, pid });
336
+ const pid = spawnJob(argv, traced.env, log);
337
+ jobStarted(app, dir, { ...job, pid, traceId: traced.traceId });
334
338
  return { job: id, pid, chat, log };
335
339
  };
336
340
  /** A job recorded before it kept its argv: what it did keep, the pause and window back at their defaults. */