@wirecat/cli-memo 0.131.24 → 0.131.26

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 (258) hide show
  1. package/README.md +9 -12
  2. package/dist/actions/actions.d.ts +1 -1
  3. package/dist/actions/actions.d.ts.map +1 -1
  4. package/dist/actions/actions.js +27 -8
  5. package/dist/actions/actions.js.map +1 -1
  6. package/dist/actions/command.d.ts +1 -1
  7. package/dist/actions/command.d.ts.map +1 -1
  8. package/dist/actions/command.js +1 -12
  9. package/dist/actions/command.js.map +1 -1
  10. package/dist/app.d.ts +1 -1
  11. package/dist/bin/memo.js +2 -2
  12. package/dist/bundle/{all-profiles-ZCJTYGOL.js → all-profiles-VULFSNYE.js} +9 -9
  13. package/dist/bundle/{anthropic-7WVLAKTX.js → anthropic-VXQ6ST2U.js} +6 -6
  14. package/dist/bundle/{app-server-6G3SXEHO.js → app-server-HQPELIPY.js} +42 -42
  15. package/dist/bundle/auto-3R4RFJGK.js +86 -0
  16. package/dist/bundle/{bun-JVBDJKBB.js → bun-2NMWL5YB.js} +2 -2
  17. package/dist/bundle/{bun-sqlite-P4I7NVMQ.js → bun-sqlite-CT544OXO.js} +5 -5
  18. package/dist/bundle/{chunk-EGG3PGCM.js → chunk-254TXVLA.js} +2 -2
  19. package/dist/bundle/{chunk-FXHN2UZW.js → chunk-2ND2XYME.js} +33 -17
  20. package/dist/bundle/{chunk-5YCNCXL5.js → chunk-3CVDHJER.js} +1 -1
  21. package/dist/bundle/{chunk-ALGIPJ6L.js → chunk-3ZJE5TIG.js} +2 -2
  22. package/dist/bundle/{chunk-3KNXQZMO.js → chunk-4ENVJFRM.js} +29 -29
  23. package/dist/bundle/{chunk-NAH473ZR.js → chunk-5FPQGUJA.js} +1 -1
  24. package/dist/bundle/{chunk-ZOYGY2PN.js → chunk-6PRRZC7Z.js} +3 -3
  25. package/dist/bundle/{chunk-CM2H7NRC.js → chunk-6TJCRDNZ.js} +4 -4
  26. package/dist/bundle/{chunk-AWGV4VOA.js → chunk-7ISENDNK.js} +12 -12
  27. package/dist/bundle/{chunk-UY2VH3QK.js → chunk-7LMTWOTP.js} +2 -2
  28. package/dist/bundle/{chunk-2IRCJT4O.js → chunk-A4NZ2XOG.js} +8 -8
  29. package/dist/bundle/{chunk-R3LNQ3I4.js → chunk-A6PITALJ.js} +4 -2
  30. package/dist/bundle/{chunk-EACY2ULS.js → chunk-AGMYCYSG.js} +306 -187
  31. package/dist/bundle/{chunk-EB7LKK4K.js → chunk-ARDUJR5Z.js} +1 -1
  32. package/dist/bundle/{chunk-UA2C4BCH.js → chunk-BELLQAWL.js} +9 -9
  33. package/dist/bundle/{chunk-LWIMGWKB.js → chunk-BO4FN4UB.js} +3 -3
  34. package/dist/bundle/{chunk-3MER7NE6.js → chunk-CRC3AW6N.js} +4 -4
  35. package/dist/bundle/{chunk-UVR6U55E.js → chunk-CUWI6JIX.js} +6 -6
  36. package/dist/bundle/{chunk-VLPMB3UU.js → chunk-CW3NJ764.js} +4 -4
  37. package/dist/bundle/{chunk-ND3GBFEY.js → chunk-DKKWZMR7.js} +2 -2
  38. package/dist/bundle/{chunk-BTQSFPIM.js → chunk-DUHXWFCB.js} +5 -5
  39. package/dist/bundle/{chunk-CCHHEMPM.js → chunk-EB2IULWB.js} +3 -2
  40. package/dist/bundle/{chunk-R2LJDDZP.js → chunk-FHY664YS.js} +4 -4
  41. package/dist/bundle/{chunk-JY4LVWGZ.js → chunk-G2BB5WY5.js} +15 -8
  42. package/dist/bundle/chunk-GJBK3M6X.js +452 -0
  43. package/dist/bundle/{chunk-ZDOVR4PA.js → chunk-GOEHJK2R.js} +7 -7
  44. package/dist/bundle/{chunk-GQOXFZBX.js → chunk-GPYGMETC.js} +286 -282
  45. package/dist/bundle/{chunk-DIMX5AEE.js → chunk-H6O6IQND.js} +5 -5
  46. package/dist/bundle/{chunk-ELKYINWL.js → chunk-HN3EDDVX.js} +13 -13
  47. package/dist/bundle/{chunk-GSEDSGJF.js → chunk-HVVBSM2C.js} +753 -648
  48. package/dist/bundle/{chunk-JCCL7RGH.js → chunk-I7PL5WX2.js} +4 -4
  49. package/dist/bundle/{chunk-LNXFM4FD.js → chunk-IJ34FAES.js} +45 -26
  50. package/dist/bundle/{chunk-MPVW7BQZ.js → chunk-IUM5XZWV.js} +6 -6
  51. package/dist/bundle/{chunk-GRXVN2X7.js → chunk-J57DDKF4.js} +1 -1
  52. package/dist/bundle/{chunk-INTF3YPV.js → chunk-KFDPW2AR.js} +2 -2
  53. package/dist/bundle/{chunk-AIGMYGEL.js → chunk-KMZRXGTF.js} +1 -1
  54. package/dist/bundle/{chunk-MROFZXAB.js → chunk-KTDNFSXC.js} +22 -22
  55. package/dist/bundle/{chunk-ILHTNOIV.js → chunk-KV4267S4.js} +1 -1
  56. package/dist/bundle/{chunk-VVEFQEWP.js → chunk-LJZFMXDC.js} +22 -22
  57. package/dist/bundle/{chunk-OQK2IKPB.js → chunk-LMN7SYX4.js} +1 -1
  58. package/dist/bundle/{chunk-RTESJ5O2.js → chunk-M4QN77GH.js} +4 -4
  59. package/dist/bundle/{chunk-M43DAAZ7.js → chunk-M6O4DH5F.js} +1 -1
  60. package/dist/bundle/{chunk-UXCDBNAY.js → chunk-MQAHMAJB.js} +2 -2
  61. package/dist/bundle/{chunk-XF3LZ32F.js → chunk-NAM2Y63Z.js} +3 -3
  62. package/dist/bundle/{chunk-UPXUE27A.js → chunk-NH2JSH24.js} +6 -6
  63. package/dist/bundle/{chunk-3U7OUQV2.js → chunk-OYB3FUYQ.js} +1 -1
  64. package/dist/bundle/{chunk-J6D34BFP.js → chunk-PWA3RNXN.js} +260 -263
  65. package/dist/bundle/{chunk-KQSHIQSV.js → chunk-QFW4MJIH.js} +239 -242
  66. package/dist/bundle/{chunk-CPJEQK4V.js → chunk-QKQ7A4L7.js} +46 -46
  67. package/dist/bundle/{chunk-N5H6I7WQ.js → chunk-S3RBWUUA.js} +6 -6
  68. package/dist/bundle/{chunk-Q6MFBH6Q.js → chunk-SY7M2DLJ.js} +9 -9
  69. package/dist/bundle/{chunk-EKTZEF3Q.js → chunk-TKVRZZE3.js} +3 -27
  70. package/dist/bundle/{chunk-SKTGBVYC.js → chunk-TPFWNOPG.js} +4 -4
  71. package/dist/bundle/{chunk-F2ED6KG6.js → chunk-TXANQZEG.js} +3 -3
  72. package/dist/bundle/{chunk-T4LW6UYQ.js → chunk-TZ7WDQPD.js} +40 -34
  73. package/dist/bundle/{chunk-AIVUS6WA.js → chunk-UZXCBBDC.js} +15 -12
  74. package/dist/bundle/{chunk-XSI5NYGB.js → chunk-VL3YCTZD.js} +8 -8
  75. package/dist/bundle/{chunk-ZLZE5P6M.js → chunk-WRZ7JDA2.js} +8 -8
  76. package/dist/bundle/{chunk-EW3XTUPB.js → chunk-XBIPSSKI.js} +4 -4
  77. package/dist/bundle/{chunk-JDDVGGUV.js → chunk-XKGXVVYV.js} +10 -10
  78. package/dist/bundle/{chunk-ITQBXFMC.js → chunk-YFBKS5BW.js} +3 -3
  79. package/dist/bundle/{chunk-PQLBPYJR.js → chunk-YPF6OS37.js} +1 -1
  80. package/dist/bundle/{chunk-IC2TL7RW.js → chunk-Z3YGDBBS.js} +2 -2
  81. package/dist/bundle/{chunk-IJC6MFLP.js → chunk-ZR3BPBS6.js} +10 -10
  82. package/dist/bundle/command-contract-RQMIQKBS.js +32 -0
  83. package/dist/bundle/{decode-YHX3DQG2.js → decode-7VB3CHK2.js} +5 -5
  84. package/dist/bundle/{dispatch-MELZFYOS.js → dispatch-CU5KGRQL.js} +8 -8
  85. package/dist/bundle/{echarts-FBVAP7BR.js → echarts-45D6USAX.js} +2 -2
  86. package/dist/bundle/{embed-CQJ42S5C.js → embed-KU2RGB24.js} +6 -6
  87. package/dist/bundle/{embedder-EDXLEJ27.js → embedder-E7YZDZ5Y.js} +9 -9
  88. package/dist/bundle/{entry-HZEA7QFK.js → entry-N42HJMIN.js} +7 -7
  89. package/dist/bundle/failure-R355OCVE.js +66 -0
  90. package/dist/bundle/{failure-RBNZBCZJ.js → failure-TUXXI6JT.js} +2 -2
  91. package/dist/bundle/{first-run-JZQN7R6M.js → first-run-Y5YNAAO3.js} +11 -11
  92. package/dist/bundle/first-screen-SNPGBQFZ.js +30 -0
  93. package/dist/bundle/{instructions-NYVYNWVU.js → instructions-6EFSPC7C.js} +1 -1
  94. package/dist/bundle/mcp-6Z7UKX7E.js +90 -0
  95. package/dist/bundle/{mcp-MNI62HHE.js → mcp-PPVOM4SE.js} +2 -2
  96. package/dist/bundle/memo.js +16 -16
  97. package/dist/bundle/{node-2QE6UPGS.js → node-OXC26QXO.js} +2 -2
  98. package/dist/bundle/{node-sqlite-SDHZJNY7.js → node-sqlite-FNTICDEN.js} +6 -6
  99. package/dist/bundle/{oauth-FFUJREKS.js → oauth-4JFOFCBB.js} +7 -7
  100. package/dist/bundle/{open-NT2GYX6N.js → open-WXFCCY7S.js} +5 -5
  101. package/dist/bundle/{openai-IQA2XR6Z.js → openai-TPQKQNM7.js} +10 -10
  102. package/dist/bundle/{process-HIEJXYW6.js → process-YWPAOI6G.js} +1 -1
  103. package/dist/bundle/{chunk-DMQ3342A.js → program-WFUPN7XO.js} +9769 -2059
  104. package/dist/bundle/{prompt-IOZAME2R.js → prompt-HJUH4EP4.js} +5 -5
  105. package/dist/bundle/{recognize-2XOAZJ5N.js → recognize-DAIRHALM.js} +4 -4
  106. package/dist/bundle/{remote-2LE7OTDA.js → remote-MJLWTLAX.js} +7 -7
  107. package/dist/bundle/{rerank-UKOVVZM6.js → rerank-VAK5HSJE.js} +7 -7
  108. package/dist/bundle/{serve-S2UHPEBP.js → serve-M2A66WOW.js} +9 -9
  109. package/dist/bundle/server-33FB7QXW.js +48 -0
  110. package/dist/bundle/server-AIPDQO57.js +61 -0
  111. package/dist/bundle/{server-BG4WWQHY.js → server-NN2CBVSX.js} +57 -57
  112. package/dist/bundle/{state-F5KT3CBD.js → state-6TBUXJOX.js} +6 -6
  113. package/dist/bundle/{store-WBUUS7FO.js → store-TJCL3QBY.js} +13 -13
  114. package/dist/bundle/store-maintenance-command-NKJV5A3G.js +48 -0
  115. package/dist/bundle/update-OXR3SNM2.js +69 -0
  116. package/dist/config.d.ts +15 -29
  117. package/dist/config.d.ts.map +1 -1
  118. package/dist/config.js +23 -36
  119. package/dist/config.js.map +1 -1
  120. package/dist/context/command.d.ts.map +1 -1
  121. package/dist/context/command.js +6 -2
  122. package/dist/context/command.js.map +1 -1
  123. package/dist/context/context.d.ts +2 -0
  124. package/dist/context/context.d.ts.map +1 -1
  125. package/dist/context/context.js +15 -0
  126. package/dist/context/context.js.map +1 -1
  127. package/dist/doctor/command.d.ts +0 -12
  128. package/dist/doctor/command.d.ts.map +1 -1
  129. package/dist/doctor/command.js +19 -24
  130. package/dist/doctor/command.js.map +1 -1
  131. package/dist/examples.d.ts.map +1 -1
  132. package/dist/examples.js +3 -9
  133. package/dist/examples.js.map +1 -1
  134. package/dist/failure.d.ts +2 -2
  135. package/dist/mail/command.d.ts.map +1 -1
  136. package/dist/mail/command.js +2 -87
  137. package/dist/mail/command.js.map +1 -1
  138. package/dist/mail/findings-command.d.ts.map +1 -1
  139. package/dist/mail/findings-command.js +1 -1
  140. package/dist/mail/findings-command.js.map +1 -1
  141. package/dist/mail/messages-command.d.ts.map +1 -1
  142. package/dist/mail/messages-command.js +9 -2
  143. package/dist/mail/messages-command.js.map +1 -1
  144. package/dist/mail/moved.d.ts +1 -1
  145. package/dist/mail/moved.d.ts.map +1 -1
  146. package/dist/mail/moved.js +3 -0
  147. package/dist/mail/moved.js.map +1 -1
  148. package/dist/mail/review-command.d.ts +1 -1
  149. package/dist/mail/review-command.d.ts.map +1 -1
  150. package/dist/mail/review-command.js +5 -8
  151. package/dist/mail/review-command.js.map +1 -1
  152. package/dist/program.js +1 -1
  153. package/dist/program.js.map +1 -1
  154. package/dist/read-only.d.ts +1 -1
  155. package/dist/reasons.d.ts.map +1 -1
  156. package/dist/reasons.js +1 -25
  157. package/dist/reasons.js.map +1 -1
  158. package/dist/review/command.d.ts +0 -1
  159. package/dist/review/command.d.ts.map +1 -1
  160. package/dist/review/command.js +2 -10
  161. package/dist/review/command.js.map +1 -1
  162. package/dist/review/kinds.d.ts +4 -21
  163. package/dist/review/kinds.d.ts.map +1 -1
  164. package/dist/review/kinds.js +13 -174
  165. package/dist/review/kinds.js.map +1 -1
  166. package/dist/review/review.js +2 -2
  167. package/dist/review/review.js.map +1 -1
  168. package/dist/review/status.js +2 -2
  169. package/dist/review/status.js.map +1 -1
  170. package/dist/run/auto.js +3 -3
  171. package/dist/run/auto.js.map +1 -1
  172. package/dist/run/import.d.ts +2 -2
  173. package/dist/run/import.d.ts.map +1 -1
  174. package/dist/run/import.js +24 -121
  175. package/dist/run/import.js.map +1 -1
  176. package/dist/schedule/command.d.ts +2 -2
  177. package/dist/schedule/command.d.ts.map +1 -1
  178. package/dist/schedule/command.js +9 -4
  179. package/dist/schedule/command.js.map +1 -1
  180. package/dist/search/command.js +1 -1
  181. package/dist/store/source-list.d.ts +1 -6
  182. package/dist/store/source-list.d.ts.map +1 -1
  183. package/dist/store/source-list.js +11 -46
  184. package/dist/store/source-list.js.map +1 -1
  185. package/dist/tasks/command.js +1 -1
  186. package/dist/tasks/command.js.map +1 -1
  187. package/dist/version.d.ts +1 -1
  188. package/dist/version.js +1 -1
  189. package/package.json +3 -3
  190. package/scenarios/set-up.md +3 -3
  191. package/skills/cli-memo/SKILL.md +13 -21
  192. package/skills/mail-triage/SKILL.md +28 -16
  193. package/dist/bundle/auto-JWPM5654.js +0 -86
  194. package/dist/bundle/chunk-MLMSQK76.js +0 -103
  195. package/dist/bundle/command-contract-543RRFNU.js +0 -32
  196. package/dist/bundle/failure-62G7QSPX.js +0 -66
  197. package/dist/bundle/first-screen-56V3UOQE.js +0 -30
  198. package/dist/bundle/mcp-Y6IPYDS2.js +0 -90
  199. package/dist/bundle/program-DEMRKCZY.js +0 -10972
  200. package/dist/bundle/server-3YNOEPWU.js +0 -61
  201. package/dist/bundle/server-EZWQ5KP4.js +0 -48
  202. package/dist/bundle/setup-2X7ADKFH.js +0 -973
  203. package/dist/bundle/store-maintenance-command-KLST56XF.js +0 -48
  204. package/dist/bundle/update-WH4CGJGP.js +0 -69
  205. package/dist/mail/accounts.d.ts +0 -7
  206. package/dist/mail/accounts.d.ts.map +0 -1
  207. package/dist/mail/accounts.js +0 -28
  208. package/dist/mail/accounts.js.map +0 -1
  209. package/dist/mail/backfill-headers.d.ts +0 -11
  210. package/dist/mail/backfill-headers.d.ts.map +0 -1
  211. package/dist/mail/backfill-headers.js +0 -84
  212. package/dist/mail/backfill-headers.js.map +0 -1
  213. package/dist/mail/domain-age.d.ts +0 -26
  214. package/dist/mail/domain-age.d.ts.map +0 -1
  215. package/dist/mail/domain-age.js +0 -151
  216. package/dist/mail/domain-age.js.map +0 -1
  217. package/dist/mail/gmail.d.ts +0 -39
  218. package/dist/mail/gmail.d.ts.map +0 -1
  219. package/dist/mail/gmail.js +0 -325
  220. package/dist/mail/gmail.js.map +0 -1
  221. package/dist/mail/himalaya.d.ts +0 -22
  222. package/dist/mail/himalaya.d.ts.map +0 -1
  223. package/dist/mail/himalaya.js +0 -113
  224. package/dist/mail/himalaya.js.map +0 -1
  225. package/dist/mail/mbox.d.ts +0 -9
  226. package/dist/mail/mbox.d.ts.map +0 -1
  227. package/dist/mail/mbox.js +0 -230
  228. package/dist/mail/mbox.js.map +0 -1
  229. package/dist/mail/repair.d.ts +0 -7
  230. package/dist/mail/repair.d.ts.map +0 -1
  231. package/dist/mail/repair.js +0 -54
  232. package/dist/mail/repair.js.map +0 -1
  233. package/dist/mail/rule-store.d.ts +0 -12
  234. package/dist/mail/rule-store.d.ts.map +0 -1
  235. package/dist/mail/rule-store.js +0 -83
  236. package/dist/mail/rule-store.js.map +0 -1
  237. package/dist/mail/setup-command.d.ts +0 -4
  238. package/dist/mail/setup-command.d.ts.map +0 -1
  239. package/dist/mail/setup-command.js +0 -41
  240. package/dist/mail/setup-command.js.map +0 -1
  241. package/dist/mail/setup.d.ts +0 -19
  242. package/dist/mail/setup.d.ts.map +0 -1
  243. package/dist/mail/setup.js +0 -95
  244. package/dist/mail/setup.js.map +0 -1
  245. package/dist/mail/slices.d.ts +0 -6
  246. package/dist/mail/slices.d.ts.map +0 -1
  247. package/dist/mail/slices.js +0 -7
  248. package/dist/mail/slices.js.map +0 -1
  249. package/dist/mail/source.d.ts +0 -7
  250. package/dist/mail/source.d.ts.map +0 -1
  251. package/dist/mail/source.js +0 -119
  252. package/dist/mail/source.js.map +0 -1
  253. package/dist/mail/sync.d.ts +0 -21
  254. package/dist/mail/sync.d.ts.map +0 -1
  255. package/dist/mail/sync.js +0 -24
  256. package/dist/mail/sync.js.map +0 -1
  257. /package/dist/bundle/{chunk-CWOKGEL3.js → chunk-DF7NE4ZG.js} +0 -0
  258. /package/dist/bundle/{chunk-NUN6OGOV.js → chunk-LU3WKZBA.js} +0 -0
package/dist/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.131.24";
1
+ export declare const VERSION = "0.131.26";
2
2
  //# sourceMappingURL=version.d.ts.map
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = "0.131.24";
1
+ export const VERSION = "0.131.26";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wirecat/cli-memo",
3
- "version": "0.131.24",
3
+ "version": "0.131.26",
4
4
  "description": "Context about people across messengers, notes and mail, from a local store",
5
5
  "mcpName": "dev.wirecat/cli-memo",
6
6
  "license": "Apache-2.0",
@@ -60,8 +60,8 @@
60
60
  },
61
61
  "dependencies": {
62
62
  "@modelcontextprotocol/server": "2.4.0",
63
- "@wirecat/cli-base": "0.75.0",
64
- "@wirecat/cli-core": "0.564.0",
63
+ "@wirecat/cli-base": "0.77.1",
64
+ "@wirecat/cli-core": "0.569.0",
65
65
  "commander": "15.0.0",
66
66
  "disposable-email-domains-js": "1.26.0",
67
67
  "postal-mime": "4.1.4",
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  title: Set up memo
3
- goal: Get notes and mail into the local store, keep it fresh, and let your agent read it.
3
+ goal: Get notes into the local store, keep it fresh, and let your agent read them with the mail the mail CLI syncs.
4
4
  steps:
5
5
  - run: memo folders add ~/notes
6
6
  why: gives your notes folder an id; memo never changes the files
7
7
  - run: memo sync --only notes
8
- why: imports the notes now; mail accounts come from the mail.accounts setting
8
+ why: imports the notes now; the mail CLI syncs mail into the same store (mail <profile> sync)
9
9
  - run: memo jobs start
10
- why: syncs notes and mail every 5 minutes from now on
10
+ why: syncs notes and embeds new mail for search every 5 minutes from now on
11
11
  - run: memo doctor
12
12
  why: where memo keeps its files and what needs attention; it connects to nothing
13
13
  - run: memo skill install --for all
@@ -79,29 +79,21 @@ markers to bypass that permission. Historical proposals stay proposed.
79
79
  7. **Never write message, mail or note text to a file.** Quote it in the answer with its reference.
80
80
  8. **Before reporting a bug, compare `memo --version` with `npm view @wirecat/cli-memo version`.** An
81
81
  older install may lack the fix.
82
- 9. **Mail imports resume.** Bound initial runs with `--limit`, then repeat; completed mail is skipped.
83
- `--rescan` lists all mail again to detect
84
- deletions sooner than the daily whole listing. Import throughput depends on the mailbox and server.
85
- The owner adds a mailbox themselves (`mail <profile> session start`, then `mail <profile> sync`; the older way is Himalaya and `memo mail add`);
86
- `mail <profile> status` shows how far a `mail` sync is. Never ask for a mail or app
87
- password in the chat.
88
- 10. **Inspect before a first large mail import.** `memo mail inspect <account> --json` groups mail by
89
- sender and list from headers only; its `suggest` is a hint, not a decision. Its `score` and `signals`
90
- flag likely spam, scams and robots; a high score is a reason to show the owner, not to add a rule.
91
- Pass `--domain-age` only when the owner agrees: it tells domain registries the sender domains.
82
+ 9. **memo never reads a mailbox; the `mail` CLI does.** The owner adds and syncs a mailbox themselves
83
+ (`mail <profile> session start`, then `mail <profile> sync`); `mail <profile> status` shows how far it is, and
84
+ `memo sync` only prepares stored mail for search by meaning. Never ask for a mail or app password in the chat.
85
+ 10. **Look at a mailbox before a first large sync with `mail <profile> account inspect --json`**: it groups mail by
86
+ sender and list from headers only; its `suggest` is a hint, not a decision, and a high `score` is a reason to
87
+ show the owner, not to add a rule. Pass `--domain-age` only when the owner agrees: it tells domain registries the
88
+ sender domains. Old Gmail years come from a Google Takeout file: `mail <profile> messages import <file.mbox>`.
92
89
  11. **Mail rules, Gmail cleanup and restore are commands of the `mail` CLI, not memo.** Use
93
90
  `mail <profile> rules list|add|remove|apply|export|import …`, `mail <profile> messages delete --rules`,
94
- `mail <profile> messages restore --run <id>` and `mail runs list`; `mail session status` lists the profiles and
95
- their addresses. memo's old `memo mail rules|delete|restore|runs` commands only answer with that command. Rules
96
- stay the owner's decision: never add a skip or envelope rule unasked, and never run a cleanup's `--yes` without
97
- the owner's yes. `memo sync` still honours the rules stored for an account.
98
- 12. **Old years come from a Google Takeout mbox**, an account with `"mode": "mbox"` and the Gmail
99
- address; it syncs only when named. An incomplete import scans the file again, so use a generous
100
- `--limit`; a completed snapshot is skipped until its size or modification time changes. `--rescan`
101
- forces another scan:
102
- `memo sync --source email:<name> --since-time 2000-01-01 --limit 5000`.
103
- An account with `"import": false` is synced by `mail`: memo's sync skips it (naming it says so) while rules,
104
- delete, restore and inspect still work.
91
+ `mail <profile> messages restore --run <id>` and `mail doctor`; `mail session list` lists the profiles and their
92
+ addresses. memo's old `memo mail add|check|inspect|rules|delete|restore|runs` commands only answer with that
93
+ command. Rules stay the owner's decision: never add a skip or envelope rule unasked, and never run a cleanup's
94
+ `--yes` without the owner's yes.
95
+ 12. **`memo: memo sync no longer imports mail` on stderr means the config still has memo's old `mail` settings.**
96
+ Tell the owner: `memo doctor` names the mailboxes to sync with `mail`, and `memo config unset mail` removes them.
105
97
  13. **A stderr line `memo: scheduled sync failing since …` means the owner's timer is broken** and their
106
98
  notes or mail are going stale. Tell the owner, quote its reason (an error code and reason id); the full
107
99
  message is in the journal `memo jobs status` names.
@@ -9,8 +9,10 @@ description: >-
9
9
  # mail-triage — stage what new mail asks of the owner
10
10
 
11
11
  You run on a schedule with `Bash(memo:*)` under `MEMO_READ_ONLY`. memo lets you read, stage one findings batch per
12
- mailbox (`memo mail findings add`) and move your own mark (`memo messages acknowledge`). Everything else is refused,
13
- and that is intended.
12
+ mailbox (`memo mail findings add`) and move your own mark (`memo messages acknowledge`). Your schedule names your
13
+ holder (`--on-new-mail mail-triage`), and memo refuses to move any other mark. Everything else is refused, and that is
14
+ intended. A run starts once enough mail waits (10 emails, or the oldest 30 minutes old, by default), so expect several
15
+ emails per run.
14
16
 
15
17
  ## Hard rules
16
18
 
@@ -22,20 +24,25 @@ and that is intended.
22
24
  - Never write email text to a file. Pass the findings JSON on stdin (`-`).
23
25
  - Read only through existing links (below). No broad search over all mail or all chats.
24
26
  - Stage first, acknowledge after. If staging fails, do not acknowledge: the next run reads the same mail again.
27
+ - The mailbox itself belongs to the `mail` CLI, which this run cannot call: its sync, rules and cleanup are the
28
+ owner's. When a sender should be skipped or kept as an envelope, put the command in the report for the owner, such
29
+ as `mail <profile> rules add --domain <domain> --do envelope`; `mail session list` names the profile of an address.
25
30
 
26
31
  ## One run
27
32
 
28
- Find the mailboxes: `memo review status --json` lists each mail account. For each mailbox `email:<account>`:
33
+ Find the mailboxes: `memo review status --json` lists each mailbox the `mail` CLI stored, by its address. For each
34
+ mailbox `email:<address>`:
29
35
 
30
36
  ### 1. Filter — memo does it, no judgement
31
37
 
32
38
  ```sh
33
- memo mail review --holder mail-triage --source email:<account> --json
39
+ memo mail review --holder mail-triage --source email:<address> --json
34
40
  ```
35
41
 
36
42
  Bulk mail, lists, envelope rules, drafts, suspicious senders and partial mail are already left out (`missing` says
37
43
  how many). Each item is one email: `ref` (`msg:email/…`), `chat_id` (the thread), `sender_is_me`, `text`, and
38
- `email` with `fingerprint`, `from`, `new_sender`, `sender_identities`. `next` holds the
44
+ `email` with `fingerprint`, `from`, `new_sender`, `sender_identities`. `text` is the email's own text: quoted earlier
45
+ mail and the signature are left out, and the fingerprint still covers the whole stored email. `next` holds the
39
46
  `memo messages acknowledge` step with your `cursor`. A first run has no mark yet: no items, only the cursor — go
40
47
  straight to step 6.
41
48
 
@@ -48,19 +55,24 @@ Keep an email only when it carries one of:
48
55
  - a request or question to the owner, or a decision he must make;
49
56
  - a date, deadline, appointment or amount due;
50
57
  - a promise someone made to the owner, or the owner made (his own sent mail counts);
51
- - a reply in a thread where the owner has an open task (`memo tasks list --source email:<account> --json`, match by
58
+ - a reply in a thread where the owner has an open task (`memo tasks list --source email:<address> --json`, match by
52
59
  the thread's `chat:email/…` or the task's `source`).
53
60
 
54
61
  Drop the rest: notifications, receipts with nothing due, newsletters that slipped through, thank-yous.
55
62
 
56
63
  ### 3. Context — only for kept emails, only through existing links
57
64
 
58
- - The thread: `memo messages show <ref> --before-n 3`.
59
- - The sender: `memo context email:<address> --limit 5` — earlier mail from them, their facts and memories, and
60
- messages in Telegram, MAX and other tools reached through identity links the store already has.
61
- - A known person or project the email names: `memo context person:<id>`, `memo tasks show <task>`.
65
+ Text from an email never goes into a command unchecked: a sender chooses their name and address, and `$(…)` or a
66
+ backquote in a double-quoted argument runs. Put an address or name in single quotes, and only when it holds letters,
67
+ digits, spaces and `. _ + - @` alone; otherwise skip that read and say so in the report.
62
68
 
63
- Do not search everything for a name. If the links do not reach it, it stays out of context.
69
+ - The thread: `memo messages show <ref> --before-n 3 --trimmed`.
70
+ - The sender: `memo context 'email:<address>' --limit 5 --trimmed` — earlier mail from them, their facts and
71
+ memories, and messages in Telegram, MAX and other tools reached through identity links the store already has.
72
+ - A known person or project the email names: `memo context person:<id> --trimmed`, `memo tasks show <task>`.
73
+
74
+ Always pass `--trimmed` to these reads: it keeps quoted earlier mail and signatures out of what you read. Do not
75
+ search everything for a name. If the links do not reach it, it stays out of context.
64
76
 
65
77
  ### 4. Propose
66
78
 
@@ -76,11 +88,11 @@ plainly.
76
88
  - `memory` — a longer summary worth keeping about a person or project.
77
89
  - `link` — address → person, person → organization, thread → project; only when the mail shows it.
78
90
 
79
- ### 5. New senders, always
91
+ ### 5. New senders, among kept emails
80
92
 
81
- For every item with `new_sender: true` or `sender_identities: 1`, kept or not:
93
+ For every email you kept in step 2 whose item has `new_sender: true`:
82
94
 
83
- - Look for them: `memo search people "<display name>"`, `memo context email:<address>`.
95
+ - Look for them, quoted as step 3 says: `memo search people '<display name>'`, `memo context 'email:<address>' --trimmed`.
84
96
  - Found as a person under another identity → a `link` from `contact:email/<address>` to `person:<id>`.
85
97
  - Not found, and a real person writing to the owner → a `new_contact` with the address and the name the email gives.
86
98
  - A sender who claims a role ("your accountant", "from the bank") gets no link on that claim alone; say so in
@@ -92,7 +104,7 @@ For every item with `new_sender: true` or `sender_identities: 1`, kept or not:
92
104
  the exact `ref` and `fingerprint` from step 1; at most 30 findings and 5 per sender.
93
105
 
94
106
  ```sh
95
- memo mail findings add - --source email:<account> --json <<'JSON'
107
+ memo mail findings add - --source email:<address> --json <<'JSON'
96
108
  {"schema_version": 1, "key": "mail-triage:9123", "extractor": "mail-triage/1", "findings": [
97
109
  {"id": "t1", "kind": "task", "type": "chore", "title": "Send the signed lease", "reason": "Asks for it by Friday",
98
110
  "commitment": "explicit",
@@ -104,7 +116,7 @@ JSON
104
116
  Nothing worth proposing: stage nothing. Then, and only then:
105
117
 
106
118
  ```sh
107
- memo messages acknowledge --holder mail-triage --cursor <cursor> --source email:<account>
119
+ memo messages acknowledge --holder mail-triage --cursor <cursor> --source email:<address>
108
120
  ```
109
121
 
110
122
  A refused batch stages nothing. `mail-findings.stale` means an email changed since review: read that mailbox again
@@ -1,86 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import {
4
- DEFAULT_EVERY,
5
- PLACE_VARIABLES,
6
- applyAuto,
7
- autoCommand,
8
- autoNotice,
9
- autoState,
10
- followInstall,
11
- globalRoots,
12
- interval,
13
- lastAutoRun,
14
- placesOf,
15
- recordAutoRun,
16
- serviceUnit,
17
- timerUnit
18
- } from "./chunk-JDDVGGUV.js";
19
- import "./chunk-ZDOVR4PA.js";
20
- import "./chunk-DMQ3342A.js";
21
- import "./chunk-QP3KNC5D.js";
22
- import "./chunk-GSEDSGJF.js";
23
- import "./chunk-M43DAAZ7.js";
24
- import "./chunk-3U7OUQV2.js";
25
- import "./chunk-MROFZXAB.js";
26
- import "./chunk-EGG3PGCM.js";
27
- import "./chunk-FXHN2UZW.js";
28
- import "./chunk-CPJEQK4V.js";
29
- import "./chunk-VVEFQEWP.js";
30
- import "./chunk-J6D34BFP.js";
31
- import "./chunk-ELKYINWL.js";
32
- import "./chunk-XSI5NYGB.js";
33
- import "./chunk-HTQTIKWP.js";
34
- import "./chunk-3MER7NE6.js";
35
- import "./chunk-EACY2ULS.js";
36
- import "./chunk-UA2C4BCH.js";
37
- import "./chunk-AWGV4VOA.js";
38
- import "./chunk-JCCL7RGH.js";
39
- import "./chunk-PQLBPYJR.js";
40
- import "./chunk-CM2H7NRC.js";
41
- import "./chunk-AIVUS6WA.js";
42
- import "./chunk-R3LNQ3I4.js";
43
- import "./chunk-VLPMB3UU.js";
44
- import "./chunk-LWIMGWKB.js";
45
- import "./chunk-5YCNCXL5.js";
46
- import "./chunk-GQOXFZBX.js";
47
- import "./chunk-KQSHIQSV.js";
48
- import "./chunk-GRXVN2X7.js";
49
- import "./chunk-2IRCJT4O.js";
50
- import "./chunk-UPXUE27A.js";
51
- import "./chunk-XF3LZ32F.js";
52
- import "./chunk-ND3GBFEY.js";
53
- import "./chunk-ZOYGY2PN.js";
54
- import "./chunk-ALGIPJ6L.js";
55
- import "./chunk-ITQBXFMC.js";
56
- import "./chunk-MPVW7BQZ.js";
57
- import "./chunk-RTESJ5O2.js";
58
- import "./chunk-UXCDBNAY.js";
59
- import "./chunk-EKTZEF3Q.js";
60
- import "./chunk-ILHTNOIV.js";
61
- import "./chunk-NUN6OGOV.js";
62
- import "./chunk-D72URWJE.js";
63
- import "./chunk-UVR6U55E.js";
64
- import "./chunk-AIGMYGEL.js";
65
- import "./chunk-T4LW6UYQ.js";
66
- import "./chunk-JY4LVWGZ.js";
67
- import "./chunk-Y5E2WNWB.js";
68
- import "./chunk-CCHHEMPM.js";
69
- import "./chunk-OQK2IKPB.js";
70
- import "./chunk-ZVVMGPBJ.js";
71
- export {
72
- DEFAULT_EVERY,
73
- PLACE_VARIABLES,
74
- applyAuto,
75
- autoCommand,
76
- autoNotice,
77
- autoState,
78
- followInstall,
79
- globalRoots,
80
- interval,
81
- lastAutoRun,
82
- placesOf,
83
- recordAutoRun,
84
- serviceUnit,
85
- timerUnit
86
- };
@@ -1,103 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import {
4
- providerRequest
5
- } from "./chunk-GSEDSGJF.js";
6
- import {
7
- CliError
8
- } from "./chunk-CCHHEMPM.js";
9
- import {
10
- __name
11
- } from "./chunk-ZVVMGPBJ.js";
12
-
13
- // dist/mail/himalaya.js
14
- import { execFile } from "node:child_process";
15
- import { setTimeout as sleep } from "node:timers/promises";
16
- var TAIL_LINES = 5;
17
- var THROTTLED = /\[THROTTLED\]|Too many simultaneous connections|Account exceeded command or bandwidth limits/i;
18
- var SECRET = /((?:pass(?:word)?|token|secret|auth[a-z]*|bearer|key)\s*[:=]?\s*)\S+/gi;
19
- var redact = /* @__PURE__ */ __name((line) => line.replace(/\/\/[^/@\s]+@/g, "//\u2026@").replace(SECRET, "$1\u2026"), "redact");
20
- var stderrTail = /* @__PURE__ */ __name((stderr) => stderr.split(/\r?\n/).map((line) => line.trim()).filter(Boolean).slice(-TAIL_LINES).map(redact), "stderrTail");
21
- var isThrottled = /* @__PURE__ */ __name((text) => THROTTLED.test(text), "isThrottled");
22
- var LOGIN_FAILED = /AUTHENTICATIONFAILED|authentication failed|cannot authenticate|invalid credentials|keyring/i;
23
- var lasting = /* @__PURE__ */ new WeakSet();
24
- var lastingly = /* @__PURE__ */ __name((error) => {
25
- lasting.add(error);
26
- return error;
27
- }, "lastingly");
28
- var errorReport = /* @__PURE__ */ __name((stdout) => {
29
- const lines = stdout.split(/\r?\n/);
30
- const start = lines.findLastIndex((line) => line.startsWith("Error:"));
31
- if (start < 0)
32
- return [];
33
- const end = lines.findIndex((line, index) => index > start && line.startsWith("Suggestions:"));
34
- return stderrTail(lines.slice(start, end < 0 ? void 0 : end).join("\n"));
35
- }, "errorReport");
36
- var WRITES = /^\S+\s+(?:UID\s+)?(?:STORE|EXPUNGE|COPY|MOVE|APPEND|DELETE|CREATE|RENAME)\b/im;
37
- var throttledError = /* @__PURE__ */ __name((what) => new CliError("rate_limited", `${what}: Gmail is limiting this account's IMAP traffic; try again in an hour or more`, {
38
- reason: "mail.throttled"
39
- }), "throttledError");
40
- var howItEnded = /* @__PURE__ */ __name(({ code, signal }) => signal ? `killed by ${signal}` : typeof code === "number" ? `exit ${code}` : String(code ?? "failed"), "howItEnded");
41
- var WORD = /^[a-z][a-z-]{0,23}$/;
42
- var operationOf = /* @__PURE__ */ __name((args) => ["himalaya", ...args.slice(0, 2).filter((word) => WORD.test(word))].join("."), "operationOf");
43
- var once = /* @__PURE__ */ __name((env, signal, retry = { attempt: 1 }) => (args, input, options) => new Promise((resolve, reject) => {
44
- const answered = providerRequest(operationOf(args), void 0, retry);
45
- const child = execFile(env.MEMO_HIMALAYA ?? "himalaya", args, { env, maxBuffer: options?.maxBuffer ?? 64 * 1024 * 1024, ...signal ? { signal } : {} }, (error, stdout, stderr) => {
46
- if (error === null) {
47
- answered({ status: 0 });
48
- return resolve(stdout);
49
- }
50
- const exit = error.code;
51
- const printed = stderrTail(stderr);
52
- const tail = printed.length ? printed : errorReport(String(stdout));
53
- const throttled = isThrottled(stderr) || isThrottled(String(stdout).slice(-4096)) || isThrottled(tail.join("\n"));
54
- answered({
55
- ...typeof exit === "number" ? { status: exit } : {},
56
- error,
57
- ...throttled ? { providerError: "mail.throttled" } : {}
58
- });
59
- if (signal?.aborted)
60
- return reject(signal.reason);
61
- const what = `himalaya ${args[0] ?? ""} ${args[1] ?? ""}`.trim();
62
- if (throttled)
63
- return reject(throttledError(what));
64
- const failure = error;
65
- if (failure.code === "ENOENT")
66
- return reject(lastingly(new CliError("provider_error", `${what}: himalaya is not installed or not on PATH`, {
67
- reason: "mail.source-failed"
68
- })));
69
- const ended = howItEnded(failure);
70
- const said = tail.at(-1) ?? (/maxBuffer/i.test(failure.message) ? "its answer was too large" : "no error text");
71
- const failed = new CliError("provider_error", `${what} failed (${ended}): ${said}`, {
72
- reason: "mail.source-failed",
73
- ...typeof failure.code === "number" ? { exit_code: failure.code } : {},
74
- ...failure.signal ? { signal: failure.signal } : {},
75
- stderr_tail: tail
76
- });
77
- reject(LOGIN_FAILED.test(`${stderr}
78
- ${String(stdout).slice(-4096)}`) ? lastingly(failed) : failed);
79
- });
80
- child.stdin?.on("error", () => {
81
- });
82
- child.stdin?.end(input ?? "");
83
- }), "once");
84
- var himalaya = /* @__PURE__ */ __name((env = process.env, signal) => async (args, input, options) => {
85
- try {
86
- return await once(env, signal)(args, input, options);
87
- } catch (error) {
88
- const again = error instanceof CliError && error.code === "provider_error" && !lasting.has(error) && !error.message.includes("too large") && !WRITES.test(input ?? "");
89
- if (!again)
90
- throw error;
91
- const waitMs = Number(env.MEMO_HIMALAYA_RETRY_MS ?? 15e3);
92
- await sleep(waitMs, void 0, signal ? { signal } : {}).catch(() => {
93
- throw signal?.reason;
94
- });
95
- return once(env, signal, { attempt: 2, waitMs })(args, input, options);
96
- }
97
- }, "himalaya");
98
-
99
- export {
100
- isThrottled,
101
- throttledError,
102
- himalaya
103
- };
@@ -1,32 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import {
4
- SCHEMA_DIALECT,
5
- commandContract,
6
- commandPathOf,
7
- findCommand,
8
- outputOf
9
- } from "./chunk-3MER7NE6.js";
10
- import "./chunk-EACY2ULS.js";
11
- import "./chunk-UA2C4BCH.js";
12
- import "./chunk-CM2H7NRC.js";
13
- import "./chunk-R3LNQ3I4.js";
14
- import "./chunk-5YCNCXL5.js";
15
- import "./chunk-KQSHIQSV.js";
16
- import "./chunk-GRXVN2X7.js";
17
- import "./chunk-UPXUE27A.js";
18
- import "./chunk-RTESJ5O2.js";
19
- import "./chunk-UXCDBNAY.js";
20
- import "./chunk-NUN6OGOV.js";
21
- import "./chunk-T4LW6UYQ.js";
22
- import "./chunk-JY4LVWGZ.js";
23
- import "./chunk-Y5E2WNWB.js";
24
- import "./chunk-CCHHEMPM.js";
25
- import "./chunk-ZVVMGPBJ.js";
26
- export {
27
- SCHEMA_DIALECT,
28
- commandContract,
29
- commandPathOf,
30
- findCommand,
31
- outputOf
32
- };
@@ -1,66 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import {
4
- errorObject,
5
- mcpFailure,
6
- recognisable,
7
- reportFailure,
8
- throwParseFailures
9
- } from "./chunk-DIMX5AEE.js";
10
- import "./chunk-GSEDSGJF.js";
11
- import "./chunk-M43DAAZ7.js";
12
- import "./chunk-3U7OUQV2.js";
13
- import "./chunk-MROFZXAB.js";
14
- import "./chunk-EGG3PGCM.js";
15
- import "./chunk-FXHN2UZW.js";
16
- import "./chunk-CPJEQK4V.js";
17
- import "./chunk-VVEFQEWP.js";
18
- import "./chunk-J6D34BFP.js";
19
- import "./chunk-ELKYINWL.js";
20
- import "./chunk-XSI5NYGB.js";
21
- import "./chunk-HTQTIKWP.js";
22
- import "./chunk-3MER7NE6.js";
23
- import "./chunk-EACY2ULS.js";
24
- import "./chunk-UA2C4BCH.js";
25
- import "./chunk-AWGV4VOA.js";
26
- import "./chunk-JCCL7RGH.js";
27
- import "./chunk-PQLBPYJR.js";
28
- import "./chunk-CM2H7NRC.js";
29
- import "./chunk-AIVUS6WA.js";
30
- import "./chunk-R3LNQ3I4.js";
31
- import "./chunk-VLPMB3UU.js";
32
- import "./chunk-LWIMGWKB.js";
33
- import "./chunk-5YCNCXL5.js";
34
- import "./chunk-GQOXFZBX.js";
35
- import "./chunk-KQSHIQSV.js";
36
- import "./chunk-GRXVN2X7.js";
37
- import "./chunk-2IRCJT4O.js";
38
- import "./chunk-UPXUE27A.js";
39
- import "./chunk-XF3LZ32F.js";
40
- import "./chunk-ND3GBFEY.js";
41
- import "./chunk-ZOYGY2PN.js";
42
- import "./chunk-ALGIPJ6L.js";
43
- import "./chunk-ITQBXFMC.js";
44
- import "./chunk-MPVW7BQZ.js";
45
- import "./chunk-RTESJ5O2.js";
46
- import "./chunk-UXCDBNAY.js";
47
- import "./chunk-BPGYTJNB.js";
48
- import "./chunk-EKTZEF3Q.js";
49
- import "./chunk-ILHTNOIV.js";
50
- import "./chunk-NUN6OGOV.js";
51
- import "./chunk-D72URWJE.js";
52
- import "./chunk-UVR6U55E.js";
53
- import "./chunk-AIGMYGEL.js";
54
- import "./chunk-T4LW6UYQ.js";
55
- import "./chunk-JY4LVWGZ.js";
56
- import "./chunk-Y5E2WNWB.js";
57
- import "./chunk-CCHHEMPM.js";
58
- import "./chunk-OQK2IKPB.js";
59
- import "./chunk-ZVVMGPBJ.js";
60
- export {
61
- errorObject,
62
- mcpFailure,
63
- recognisable,
64
- reportFailure,
65
- throwParseFailures
66
- };
@@ -1,30 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import {
4
- WIRECAT_TOOLS,
5
- firstScreen,
6
- installHelp
7
- } from "./chunk-XSI5NYGB.js";
8
- import "./chunk-HTQTIKWP.js";
9
- import "./chunk-3MER7NE6.js";
10
- import "./chunk-EACY2ULS.js";
11
- import "./chunk-UA2C4BCH.js";
12
- import "./chunk-CM2H7NRC.js";
13
- import "./chunk-R3LNQ3I4.js";
14
- import "./chunk-5YCNCXL5.js";
15
- import "./chunk-KQSHIQSV.js";
16
- import "./chunk-GRXVN2X7.js";
17
- import "./chunk-UPXUE27A.js";
18
- import "./chunk-RTESJ5O2.js";
19
- import "./chunk-UXCDBNAY.js";
20
- import "./chunk-NUN6OGOV.js";
21
- import "./chunk-T4LW6UYQ.js";
22
- import "./chunk-JY4LVWGZ.js";
23
- import "./chunk-Y5E2WNWB.js";
24
- import "./chunk-CCHHEMPM.js";
25
- import "./chunk-ZVVMGPBJ.js";
26
- export {
27
- WIRECAT_TOOLS,
28
- firstScreen,
29
- installHelp
30
- };
@@ -1,90 +0,0 @@
1
- import { createRequire as __bundleRequire } from "node:module";
2
- const require = __bundleRequire(import.meta.url);
3
- import "./chunk-CWOKGEL3.js";
4
- import {
5
- createBotServer
6
- } from "./chunk-Q6MFBH6Q.js";
7
- import "./chunk-M43DAAZ7.js";
8
- import {
9
- MCP_PATH,
10
- serveOverHttp
11
- } from "./chunk-BTQSFPIM.js";
12
- import "./chunk-3U7OUQV2.js";
13
- import {
14
- revokeAll
15
- } from "./chunk-IC2TL7RW.js";
16
- import {
17
- registerCommands,
18
- runCommandForAgent,
19
- toolsFromCommands
20
- } from "./chunk-LNXFM4FD.js";
21
- import {
22
- mcpUrlOf,
23
- portOf,
24
- publicUrlOf
25
- } from "./chunk-EGG3PGCM.js";
26
- import "./chunk-FXHN2UZW.js";
27
- import {
28
- allProfilesServer,
29
- serveAllProfilesOverHttp,
30
- serveAllProfilesOverStdio
31
- } from "./chunk-SKTGBVYC.js";
32
- import "./chunk-EB7LKK4K.js";
33
- import {
34
- callingAgent
35
- } from "./chunk-INTF3YPV.js";
36
- import "./chunk-MM5NVP7F.js";
37
- import "./chunk-3X4JM3ZR.js";
38
- import "./chunk-H3ZN4YLB.js";
39
- import "./chunk-J6D34BFP.js";
40
- import "./chunk-ELKYINWL.js";
41
- import "./chunk-EACY2ULS.js";
42
- import "./chunk-UA2C4BCH.js";
43
- import "./chunk-JCCL7RGH.js";
44
- import "./chunk-PQLBPYJR.js";
45
- import "./chunk-CM2H7NRC.js";
46
- import "./chunk-R3LNQ3I4.js";
47
- import {
48
- httpLockFile
49
- } from "./chunk-VLPMB3UU.js";
50
- import "./chunk-LWIMGWKB.js";
51
- import "./chunk-5YCNCXL5.js";
52
- import "./chunk-GQOXFZBX.js";
53
- import "./chunk-KQSHIQSV.js";
54
- import "./chunk-GRXVN2X7.js";
55
- import "./chunk-2IRCJT4O.js";
56
- import "./chunk-UPXUE27A.js";
57
- import "./chunk-ND3GBFEY.js";
58
- import "./chunk-ALGIPJ6L.js";
59
- import "./chunk-ITQBXFMC.js";
60
- import "./chunk-MPVW7BQZ.js";
61
- import "./chunk-RTESJ5O2.js";
62
- import "./chunk-UXCDBNAY.js";
63
- import "./chunk-ILHTNOIV.js";
64
- import "./chunk-NUN6OGOV.js";
65
- import "./chunk-D72URWJE.js";
66
- import "./chunk-UVR6U55E.js";
67
- import "./chunk-AIGMYGEL.js";
68
- import "./chunk-T4LW6UYQ.js";
69
- import "./chunk-JY4LVWGZ.js";
70
- import "./chunk-Y5E2WNWB.js";
71
- import "./chunk-CCHHEMPM.js";
72
- import "./chunk-OQK2IKPB.js";
73
- import "./chunk-ZVVMGPBJ.js";
74
- export {
75
- MCP_PATH,
76
- allProfilesServer,
77
- callingAgent,
78
- createBotServer,
79
- httpLockFile,
80
- mcpUrlOf,
81
- portOf,
82
- publicUrlOf,
83
- registerCommands,
84
- revokeAll,
85
- runCommandForAgent,
86
- serveAllProfilesOverHttp,
87
- serveAllProfilesOverStdio,
88
- serveOverHttp,
89
- toolsFromCommands
90
- };