@wirecat/mail-cli 0.2.0 → 0.3.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 (94) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/dist/bin/mail.js +2 -2
  3. package/dist/bundle/{all-profiles-7WILOT5E.js → all-profiles-52LCOKSL.js} +5 -5
  4. package/dist/bundle/{anthropic-NHWLIMEZ.js → anthropic-HPW7PLTT.js} +3 -3
  5. package/dist/bundle/{app-server-XDMYCJLV.js → app-server-Y7XSPVHJ.js} +39 -39
  6. package/dist/bundle/{bun-GTG5IYLQ.js → bun-B7YXDIMT.js} +2 -2
  7. package/dist/bundle/{bun-sqlite-KGH5F33G.js → bun-sqlite-TTTKY7H2.js} +2 -2
  8. package/dist/bundle/{chunk-MABCR67K.js → chunk-37MSU5O6.js} +1 -1
  9. package/dist/bundle/{chunk-CT7NG7BI.js → chunk-3RDTVH3H.js} +3 -3
  10. package/dist/bundle/{chunk-TMVIQJCG.js → chunk-4PXWXI2U.js} +2 -2
  11. package/dist/bundle/{chunk-4I3YT5KK.js → chunk-4UOEUEZZ.js} +4 -4
  12. package/dist/bundle/{chunk-7LKJDJNS.js → chunk-5LY3OS7U.js} +1 -1
  13. package/dist/bundle/{chunk-H5BW7454.js → chunk-5SSFYIFF.js} +4 -4
  14. package/dist/bundle/{chunk-MDVXIPA3.js → chunk-732GKOLO.js} +10 -10
  15. package/dist/bundle/{chunk-ZNYJG4AY.js → chunk-C2THROZU.js} +42 -42
  16. package/dist/bundle/{chunk-DDMJ3RVO.js → chunk-C6E3VFUX.js} +2 -2
  17. package/dist/bundle/{chunk-QJHCKFFC.js → chunk-DKKCQMDM.js} +16 -16
  18. package/dist/bundle/{chunk-7REG25RM.js → chunk-FGNTGLWA.js} +3 -3
  19. package/dist/bundle/{chunk-GQKYSGIA.js → chunk-FUXSKWWJ.js} +46 -46
  20. package/dist/bundle/{chunk-EKE3R36Y.js → chunk-FX77WAQL.js} +6 -6
  21. package/dist/bundle/{chunk-H7NUGJPV.js → chunk-GX2M3AOO.js} +2 -2
  22. package/dist/bundle/{chunk-QUSZWBZF.js → chunk-H2JVXO5V.js} +32 -22
  23. package/dist/bundle/{chunk-77VHMI3A.js → chunk-HS25KDT3.js} +1 -1
  24. package/dist/bundle/{chunk-H66ZMBDD.js → chunk-I2ARI6FI.js} +1 -1
  25. package/dist/bundle/{chunk-D7UZXUSB.js → chunk-IXHLMSHV.js} +2 -2
  26. package/dist/bundle/{chunk-BUOSCMCD.js → chunk-JDOOPGKW.js} +2 -2
  27. package/dist/bundle/{chunk-VWO3XXSF.js → chunk-JHNLU42I.js} +1 -1
  28. package/dist/bundle/{chunk-6HIW7IJL.js → chunk-JXYFIUVX.js} +4 -4
  29. package/dist/bundle/{chunk-HJRUFT5Y.js → chunk-K6SIGXRS.js} +5 -5
  30. package/dist/bundle/{chunk-WJ3LUWRN.js → chunk-KALDYMKJ.js} +3 -3
  31. package/dist/bundle/{chunk-BKZEYTLU.js → chunk-KXVZ373I.js} +358 -303
  32. package/dist/bundle/{chunk-VRQRBVKT.js → chunk-LCA5KC34.js} +43 -43
  33. package/dist/bundle/{chunk-76IKLP2M.js → chunk-LJDOPCPW.js} +96 -91
  34. package/dist/bundle/{chunk-GPAAQ6LY.js → chunk-MHNEMDH3.js} +13 -13
  35. package/dist/bundle/{chunk-5FLW25US.js → chunk-MXUUQXMA.js} +5 -5
  36. package/dist/bundle/{chunk-ETPT7TPW.js → chunk-N5WIUNOT.js} +1 -1
  37. package/dist/bundle/{chunk-UZR3IKS7.js → chunk-O2F54PUO.js} +1 -1
  38. package/dist/bundle/{chunk-H7XOHNRY.js → chunk-O3DRPTWF.js} +1 -1
  39. package/dist/bundle/{chunk-5JOKRFWE.js → chunk-PL6UPJIL.js} +1 -1
  40. package/dist/bundle/{chunk-SVNTRF5O.js → chunk-PYIJCWCH.js} +11 -11
  41. package/dist/bundle/{chunk-THVLMTH7.js → chunk-QTWIZKUI.js} +26 -26
  42. package/dist/bundle/{chunk-QUGFBY7O.js → chunk-RMYYKBFW.js} +7 -7
  43. package/dist/bundle/{chunk-2X4WYZPA.js → chunk-RORC2FW7.js} +2 -2
  44. package/dist/bundle/{chunk-S2GSU4MT.js → chunk-RVIMMCHF.js} +9 -9
  45. package/dist/bundle/{chunk-STC45HZX.js → chunk-RZCFEASJ.js} +196 -196
  46. package/dist/bundle/{chunk-QLYHLW54.js → chunk-SRMJ6LLC.js} +5 -5
  47. package/dist/bundle/{chunk-AJIT2T3F.js → chunk-TL7PE6JU.js} +6 -6
  48. package/dist/bundle/{chunk-BPF7IXJT.js → chunk-TLZWUADZ.js} +5 -5
  49. package/dist/bundle/{chunk-Y5WA7AOA.js → chunk-TNQOKGJS.js} +21 -21
  50. package/dist/bundle/{chunk-Z6F7EXT2.js → chunk-V7NZTJKU.js} +7 -7
  51. package/dist/bundle/{chunk-Y6KUKIQZ.js → chunk-VTJDEWMB.js} +2 -2
  52. package/dist/bundle/{chunk-YQAUH3PN.js → chunk-X7TFD5SX.js} +1 -1
  53. package/dist/bundle/{chunk-R5JD4GMA.js → chunk-XD3TL4BK.js} +1 -1
  54. package/dist/bundle/{chunk-7QEE5I7H.js → chunk-XQVGIW4R.js} +2 -2
  55. package/dist/bundle/{chunk-AROBJF5P.js → chunk-Y2HGQK7A.js} +1 -1
  56. package/dist/bundle/{chunk-ZKH5CHGI.js → chunk-YVIX7FHL.js} +5 -5
  57. package/dist/bundle/{chunk-VBLFQJY3.js → chunk-ZIJJNH47.js} +1 -1
  58. package/dist/bundle/{command-contract-Y42ULKE5.js → command-contract-3HA7CZEQ.js} +13 -13
  59. package/dist/bundle/{decode-L4X542L3.js → decode-VLI3MAXE.js} +2 -2
  60. package/dist/bundle/{dist-WKIRHOLK.js → dist-C7LAAMNF.js} +14 -14
  61. package/dist/bundle/{echarts-G6QLXR4X.js → echarts-POTU3SHN.js} +2 -2
  62. package/dist/bundle/{embed-E33ZBHQR.js → embed-J2DEEEUF.js} +3 -3
  63. package/dist/bundle/{embedder-EMBCIVGF.js → embedder-5N56V7YJ.js} +6 -6
  64. package/dist/bundle/{first-run-WF2HF5FI.js → first-run-XILZE4PI.js} +5 -5
  65. package/dist/bundle/{first-screen-DZFOUUZC.js → first-screen-43VLEDWZ.js} +14 -14
  66. package/dist/bundle/{instructions-DUH7265J.js → instructions-B7AUZXPL.js} +1 -1
  67. package/dist/bundle/mail.js +2 -2
  68. package/dist/bundle/{node-73PKCCE7.js → node-SZAO6HTA.js} +2 -2
  69. package/dist/bundle/{node-sqlite-FDD5N6GC.js → node-sqlite-O34FFLRV.js} +2 -2
  70. package/dist/bundle/{oauth-ND3K2F7B.js → oauth-YYTLIPJT.js} +4 -4
  71. package/dist/bundle/{open-FZYY6TKE.js → open-SWJGI6H4.js} +1 -1
  72. package/dist/bundle/{openai-BXOF6XIM.js → openai-GYXWCQOV.js} +10 -10
  73. package/dist/bundle/{process-TXIK4VJP.js → process-GLVWCUMK.js} +1 -1
  74. package/dist/bundle/{program-2SUR4WOS.js → program-HW73TGIF.js} +306 -289
  75. package/dist/bundle/{prompt-I5GCP73M.js → prompt-OZLHHGCD.js} +2 -2
  76. package/dist/bundle/{recognize-ILYEKXVB.js → recognize-RDQSGHC5.js} +1 -1
  77. package/dist/bundle/{remote-SSPZEAJ7.js → remote-BKU5P3GK.js} +4 -4
  78. package/dist/bundle/{rerank-NAO5RMGB.js → rerank-EQIXYHKB.js} +4 -4
  79. package/dist/bundle/{serve-UDXIEQKC.js → serve-S6K5HKWG.js} +6 -6
  80. package/dist/bundle/{server-KTPELKAN.js → server-4VRVHPQC.js} +31 -31
  81. package/dist/bundle/server-WK6DRJX2.js +63 -0
  82. package/dist/bundle/{sqlite-runtime-AONFLND6.js → sqlite-runtime-OOE455YM.js} +2 -2
  83. package/dist/bundle/{state-I4PLX3UB.js → state-OLPOJ2TY.js} +3 -3
  84. package/dist/bundle/{store-ZPPRXGPY.js → store-6AVCPLH4.js} +9 -9
  85. package/dist/bundle/{store-OHQH3MGN.js → store-WFV26CWY.js} +11 -11
  86. package/dist/bundle/store-maintenance-command-S6235I3W.js +52 -0
  87. package/dist/program.d.ts.map +1 -1
  88. package/dist/program.js +8 -1
  89. package/dist/program.js.map +1 -1
  90. package/dist/version.d.ts +1 -1
  91. package/dist/version.js +1 -1
  92. package/package.json +2 -2
  93. package/dist/bundle/server-UZFSEKNJ.js +0 -63
  94. package/dist/bundle/store-maintenance-command-QOYXEBT6.js +0 -52
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  Notable changes to `@wirecat/mail-cli`. One section per version, newest first.
4
4
 
5
+ ## 0.3.0 — 01.11.2026
6
+
7
+ ### Added
8
+
9
+ - **`mail <profile> schedule`** runs a mail command on a timer through systemd, launchd or Task Scheduler, as `tg`
10
+ does: `mail ya schedule command mail-ya --every 5m -- sync`. `doctor` says when a scheduled run keeps failing.
11
+
5
12
  ## 0.2.0 — 01.11.2026
6
13
 
7
14
  ### Added
package/dist/bin/mail.js CHANGED
@@ -9,7 +9,7 @@ if (
9
9
  (words[0] === "--version" || words[0] === "-V") &&
10
10
  !Object.keys(process.env).some((key) => key.endsWith("_TEST_ARGV_LOG"))
11
11
  ) {
12
- process.stdout.write("0.2.0\n")
12
+ process.stdout.write("0.3.0\n")
13
13
  } else {
14
14
  // Before the bundle compiles: the bundle's own call comes after its chunks.
15
15
  module.enableCompileCache()
@@ -29,7 +29,7 @@ if (
29
29
  })
30
30
  }
31
31
  const running = import("../bundle/mail.js")
32
- const chunks = ["../bundle/all-profiles-7WILOT5E.js","../bundle/anthropic-NHWLIMEZ.js","../bundle/app-server-XDMYCJLV.js","../bundle/bun-GTG5IYLQ.js","../bundle/bun-sqlite-KGH5F33G.js","../bundle/decode-L4X542L3.js","../bundle/dispatch-EUKKT3PD.js","../bundle/dist-HFUVURJG.js","../bundle/dist-WKIRHOLK.js","../bundle/echarts-G6QLXR4X.js","../bundle/embed-E33ZBHQR.js","../bundle/embedder-EMBCIVGF.js","../bundle/failure-OAIC5VAP.js","../bundle/first-screen-DZFOUUZC.js","../bundle/instructions-DUH7265J.js","../bundle/mcp-L7SRVDRN.js","../bundle/node-73PKCCE7.js","../bundle/node-KM3CUABH.js","../bundle/node-TLZSIHIJ.js","../bundle/node-sqlite-FDD5N6GC.js","../bundle/oauth-ND3K2F7B.js","../bundle/open-FZYY6TKE.js","../bundle/openai-BXOF6XIM.js","../bundle/process-TXIK4VJP.js","../bundle/program-2SUR4WOS.js","../bundle/prompt-I5GCP73M.js","../bundle/recognize-ILYEKXVB.js","../bundle/remote-SSPZEAJ7.js","../bundle/rerank-NAO5RMGB.js","../bundle/serve-UDXIEQKC.js","../bundle/server-KTPELKAN.js","../bundle/server-UZFSEKNJ.js","../bundle/sqlite-runtime-AONFLND6.js","../bundle/state-I4PLX3UB.js","../bundle/store-OHQH3MGN.js","../bundle/store-ZPPRXGPY.js","../bundle/store-maintenance-command-QOYXEBT6.js"]
32
+ const chunks = ["../bundle/all-profiles-52LCOKSL.js","../bundle/anthropic-HPW7PLTT.js","../bundle/app-server-Y7XSPVHJ.js","../bundle/bun-B7YXDIMT.js","../bundle/bun-sqlite-TTTKY7H2.js","../bundle/decode-VLI3MAXE.js","../bundle/dispatch-EUKKT3PD.js","../bundle/dist-C7LAAMNF.js","../bundle/dist-HFUVURJG.js","../bundle/echarts-POTU3SHN.js","../bundle/embed-J2DEEEUF.js","../bundle/embedder-5N56V7YJ.js","../bundle/failure-OAIC5VAP.js","../bundle/first-screen-43VLEDWZ.js","../bundle/instructions-B7AUZXPL.js","../bundle/mcp-L7SRVDRN.js","../bundle/node-KM3CUABH.js","../bundle/node-SZAO6HTA.js","../bundle/node-TLZSIHIJ.js","../bundle/node-sqlite-O34FFLRV.js","../bundle/oauth-YYTLIPJT.js","../bundle/open-SWJGI6H4.js","../bundle/openai-GYXWCQOV.js","../bundle/process-GLVWCUMK.js","../bundle/program-HW73TGIF.js","../bundle/prompt-OZLHHGCD.js","../bundle/recognize-RDQSGHC5.js","../bundle/remote-BKU5P3GK.js","../bundle/rerank-EQIXYHKB.js","../bundle/serve-S6K5HKWG.js","../bundle/server-4VRVHPQC.js","../bundle/server-WK6DRJX2.js","../bundle/sqlite-runtime-OOE455YM.js","../bundle/state-OLPOJ2TY.js","../bundle/store-6AVCPLH4.js","../bundle/store-WFV26CWY.js","../bundle/store-maintenance-command-S6235I3W.js"]
33
33
  // After the server answers its first request, so it starts no later.
34
34
  if (serves) setTimeout(() => void Promise.allSettled(chunks.map((chunk) => import(chunk))), 2000).unref()
35
35
  await running
@@ -2,18 +2,18 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  answeredWire
5
- } from "./chunk-AROBJF5P.js";
5
+ } from "./chunk-Y2HGQK7A.js";
6
6
  import {
7
7
  CALLER_META_KEY,
8
8
  PROXY_CLIENT_NAME,
9
9
  StdioServerTransport,
10
10
  callerOf,
11
11
  serveStdio
12
- } from "./chunk-H7NUGJPV.js";
12
+ } from "./chunk-GX2M3AOO.js";
13
13
  import {
14
14
  McpServer
15
15
  } from "./chunk-5D4AEUVA.js";
16
- import "./chunk-QUGFBY7O.js";
16
+ import "./chunk-RMYYKBFW.js";
17
17
  import "./chunk-NPGVOZVK.js";
18
18
  import "./chunk-J3QXTBD2.js";
19
19
  import "./chunk-LQ37ALDJ.js";
@@ -23,7 +23,7 @@ import {
23
23
  __name
24
24
  } from "./chunk-ZVVMGPBJ.js";
25
25
 
26
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/all-profiles.js
26
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/all-profiles.js
27
27
  import { spawn } from "node:child_process";
28
28
  import { randomUUID } from "node:crypto";
29
29
  var PROTOCOL = "2025-06-18";
@@ -257,7 +257,7 @@ var serveAllProfilesOverStdio = /* @__PURE__ */ __name(async (options, io = {})
257
257
  }, "serveAllProfilesOverStdio");
258
258
  var serveAllProfilesOverHttp = /* @__PURE__ */ __name(async (options, http) => {
259
259
  const { build, close } = allProfilesServer(options);
260
- const { serveOverHttp } = await import("./serve-UDXIEQKC.js");
260
+ const { serveOverHttp } = await import("./serve-S6K5HKWG.js");
261
261
  const listening = await serveOverHttp(build, {
262
262
  ...http,
263
263
  appName: options.command,
@@ -5,11 +5,11 @@ import {
5
5
  } from "./chunk-XQUUANA2.js";
6
6
  import {
7
7
  checkedOptions
8
- } from "./chunk-ETPT7TPW.js";
8
+ } from "./chunk-N5WIUNOT.js";
9
9
  import {
10
10
  messagesFor,
11
11
  systemFor
12
- } from "./chunk-YQAUH3PN.js";
12
+ } from "./chunk-X7TFD5SX.js";
13
13
  import "./chunk-J3QXTBD2.js";
14
14
  import {
15
15
  array,
@@ -23,7 +23,7 @@ import {
23
23
  __name
24
24
  } from "./chunk-ZVVMGPBJ.js";
25
25
 
26
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/models/anthropic.js
26
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/models/anthropic.js
27
27
  var options = strictObject({
28
28
  stop_sequences: optional(array(string()))
29
29
  });
@@ -3,43 +3,43 @@ const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  PER_RUN,
5
5
  envelope
6
- } from "./chunk-THVLMTH7.js";
6
+ } from "./chunk-QTWIZKUI.js";
7
7
  import {
8
8
  answered,
9
9
  failed,
10
10
  registerCommands,
11
11
  runCommandForAgent,
12
12
  toolsFromCommands
13
- } from "./chunk-GPAAQ6LY.js";
13
+ } from "./chunk-MHNEMDH3.js";
14
14
  import {
15
15
  mcpUrlOf
16
- } from "./chunk-QUSZWBZF.js";
16
+ } from "./chunk-H2JVXO5V.js";
17
17
  import {
18
18
  agentJson,
19
19
  skillResource
20
- } from "./chunk-S2GSU4MT.js";
21
- import "./chunk-2X4WYZPA.js";
20
+ } from "./chunk-RVIMMCHF.js";
21
+ import "./chunk-RORC2FW7.js";
22
22
  import {
23
23
  appInstructions
24
- } from "./chunk-7LKJDJNS.js";
24
+ } from "./chunk-5LY3OS7U.js";
25
25
  import {
26
26
  answeredWire
27
- } from "./chunk-AROBJF5P.js";
27
+ } from "./chunk-Y2HGQK7A.js";
28
28
  import {
29
29
  StdioServerTransport,
30
30
  serveStdio
31
- } from "./chunk-H7NUGJPV.js";
31
+ } from "./chunk-GX2M3AOO.js";
32
32
  import {
33
33
  McpServer
34
34
  } from "./chunk-5D4AEUVA.js";
35
- import "./chunk-Y5WA7AOA.js";
36
- import "./chunk-STC45HZX.js";
37
- import "./chunk-SVNTRF5O.js";
38
- import "./chunk-ZKH5CHGI.js";
39
- import "./chunk-YQAUH3PN.js";
40
- import "./chunk-VBLFQJY3.js";
41
- import "./chunk-5FLW25US.js";
42
- import "./chunk-76IKLP2M.js";
35
+ import "./chunk-TNQOKGJS.js";
36
+ import "./chunk-RZCFEASJ.js";
37
+ import "./chunk-PYIJCWCH.js";
38
+ import "./chunk-YVIX7FHL.js";
39
+ import "./chunk-X7TFD5SX.js";
40
+ import "./chunk-ZIJJNH47.js";
41
+ import "./chunk-MXUUQXMA.js";
42
+ import "./chunk-LJDOPCPW.js";
43
43
  import {
44
44
  DEFAULT_OUTPUT_BYTES,
45
45
  changesAuthorityAt,
@@ -49,34 +49,34 @@ import {
49
49
  judgedTargets,
50
50
  readOnlyLockOf,
51
51
  rootOf2 as rootOf
52
- } from "./chunk-GQKYSGIA.js";
53
- import "./chunk-H5BW7454.js";
54
- import "./chunk-QUGFBY7O.js";
52
+ } from "./chunk-FUXSKWWJ.js";
53
+ import "./chunk-5SSFYIFF.js";
54
+ import "./chunk-RMYYKBFW.js";
55
55
  import "./chunk-ZD3WUGR2.js";
56
56
  import "./chunk-P7P5MNAU.js";
57
- import "./chunk-7QEE5I7H.js";
57
+ import "./chunk-XQVGIW4R.js";
58
58
  import {
59
59
  mcpHttpMarker
60
- } from "./chunk-4I3YT5KK.js";
61
- import "./chunk-Y6KUKIQZ.js";
62
- import "./chunk-H66ZMBDD.js";
63
- import "./chunk-TMVIQJCG.js";
64
- import "./chunk-QJHCKFFC.js";
65
- import "./chunk-7REG25RM.js";
66
- import "./chunk-BKZEYTLU.js";
67
- import "./chunk-BPF7IXJT.js";
68
- import "./chunk-EKE3R36Y.js";
69
- import "./chunk-ZNYJG4AY.js";
60
+ } from "./chunk-4UOEUEZZ.js";
61
+ import "./chunk-VTJDEWMB.js";
62
+ import "./chunk-I2ARI6FI.js";
63
+ import "./chunk-4PXWXI2U.js";
64
+ import "./chunk-DKKCQMDM.js";
65
+ import "./chunk-FGNTGLWA.js";
66
+ import "./chunk-KXVZ373I.js";
67
+ import "./chunk-TLZWUADZ.js";
68
+ import "./chunk-FX77WAQL.js";
69
+ import "./chunk-C2THROZU.js";
70
70
  import "./chunk-NPGVOZVK.js";
71
- import "./chunk-Z6F7EXT2.js";
72
- import "./chunk-6HIW7IJL.js";
73
- import "./chunk-HJRUFT5Y.js";
74
- import "./chunk-UZR3IKS7.js";
71
+ import "./chunk-V7NZTJKU.js";
72
+ import "./chunk-JXYFIUVX.js";
73
+ import "./chunk-K6SIGXRS.js";
74
+ import "./chunk-O2F54PUO.js";
75
75
  import "./chunk-QX7RCLRS.js";
76
76
  import "./chunk-D72URWJE.js";
77
- import "./chunk-QLYHLW54.js";
78
- import "./chunk-CT7NG7BI.js";
79
- import "./chunk-5JOKRFWE.js";
77
+ import "./chunk-SRMJ6LLC.js";
78
+ import "./chunk-3RDTVH3H.js";
79
+ import "./chunk-PL6UPJIL.js";
80
80
  import "./chunk-J3QXTBD2.js";
81
81
  import {
82
82
  mcpErrorResult
@@ -89,7 +89,7 @@ import {
89
89
  __name
90
90
  } from "./chunk-ZVVMGPBJ.js";
91
91
 
92
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/app-server.js
92
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/app-server.js
93
93
  var EXCLUDED = [["mcp"]];
94
94
  var createAppServer = /* @__PURE__ */ __name((command, context, options) => {
95
95
  const { app } = options;
@@ -204,7 +204,7 @@ var serveAppOverStdio = /* @__PURE__ */ __name(async (command, context, options)
204
204
  var serveAppOverHttp = /* @__PURE__ */ __name(async (command, context, options, http) => {
205
205
  const { app } = options;
206
206
  const { build } = createAppServer(command, context, options);
207
- const { serveOverHttp } = await import("./serve-UDXIEQKC.js");
207
+ const { serveOverHttp } = await import("./serve-S6K5HKWG.js");
208
208
  const listening = await serveOverHttp(build, {
209
209
  ...http,
210
210
  appName: app.command,
@@ -18,12 +18,12 @@ import {
18
18
  jitCompatCheck,
19
19
  refineSqliteCodecs,
20
20
  sql
21
- } from "./chunk-UZR3IKS7.js";
21
+ } from "./chunk-O2F54PUO.js";
22
22
  import {
23
23
  __name
24
24
  } from "./chunk-ZVVMGPBJ.js";
25
25
 
26
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/store/sqlite/drizzle/bun.js
26
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/store/sqlite/drizzle/bun.js
27
27
  import { Database } from "bun:sqlite";
28
28
  var bunSQLiteCodecs = refineSqliteCodecs({
29
29
  "integer:boolean": { normalize: booleanFromInteger },
@@ -3,7 +3,7 @@ const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  loadVectorExtension,
5
5
  vectorExtension
6
- } from "./chunk-77VHMI3A.js";
6
+ } from "./chunk-HS25KDT3.js";
7
7
  import "./chunk-J3QXTBD2.js";
8
8
  import "./chunk-LQ37ALDJ.js";
9
9
  import {
@@ -14,7 +14,7 @@ import {
14
14
  __name
15
15
  } from "./chunk-ZVVMGPBJ.js";
16
16
 
17
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/store/drivers/bun-sqlite.js
17
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/store/drivers/bun-sqlite.js
18
18
  var customised = false;
19
19
  var ownLibrary = /* @__PURE__ */ __name(async () => {
20
20
  try {
@@ -2,7 +2,7 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
 
4
4
  // dist/version.js
5
- var VERSION = "0.2.0";
5
+ var VERSION = "0.3.0";
6
6
 
7
7
  // dist/identity.js
8
8
  var PACKAGE = "@wirecat/mail-cli";
@@ -2,7 +2,7 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  wirecatDirectory
5
- } from "./chunk-5JOKRFWE.js";
5
+ } from "./chunk-PL6UPJIL.js";
6
6
  import {
7
7
  CliError
8
8
  } from "./chunk-5BVIWP3S.js";
@@ -10,7 +10,7 @@ import {
10
10
  __name
11
11
  } from "./chunk-ZVVMGPBJ.js";
12
12
 
13
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/speech/models.js
13
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/speech/models.js
14
14
  var huggingFace = /* @__PURE__ */ __name((repository, commit) => (name) => `https://huggingface.co/csukuangfj/${repository}/resolve/${commit}/${name}`, "huggingFace");
15
15
  var gigaam = huggingFace("sherpa-onnx-nemo-transducer-punct-giga-am-v3-russian-2025-12-16", "a6039be7cee829a9044a69ac0ebaf1c191217c97");
16
16
  var gigaamCtc = huggingFace("sherpa-onnx-nemo-ctc-punct-giga-am-v3-russian-2025-12-16", "4fb5407ff028a69fec516cdf4c10fac9ddea7c16");
@@ -135,7 +135,7 @@ var speechModel = /* @__PURE__ */ __name((id) => {
135
135
  return model;
136
136
  }, "speechModel");
137
137
 
138
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/speech/install.js
138
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/speech/install.js
139
139
  import { createHash, randomUUID } from "node:crypto";
140
140
  import { createReadStream, createWriteStream, mkdirSync, statSync } from "node:fs";
141
141
  import { rename, rm } from "node:fs/promises";
@@ -2,7 +2,7 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  unit
5
- } from "./chunk-QLYHLW54.js";
5
+ } from "./chunk-SRMJ6LLC.js";
6
6
  import {
7
7
  CliError
8
8
  } from "./chunk-5BVIWP3S.js";
@@ -10,7 +10,7 @@ import {
10
10
  __name
11
11
  } from "./chunk-ZVVMGPBJ.js";
12
12
 
13
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/embeddings/remote.js
13
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/embeddings/remote.js
14
14
  import { setTimeout } from "node:timers/promises";
15
15
  var OPENAI_URL = "https://api.openai.com/v1";
16
16
  var OPENAI_MODELS = {
@@ -5,15 +5,15 @@ import {
5
5
  readLock,
6
6
  releaseLock,
7
7
  takeLock
8
- } from "./chunk-Y6KUKIQZ.js";
8
+ } from "./chunk-VTJDEWMB.js";
9
9
  import {
10
10
  __name
11
11
  } from "./chunk-ZVVMGPBJ.js";
12
12
 
13
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/http/state.js
13
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/http/state.js
14
14
  import { existsSync as existsSync2, readFileSync as readFileSync2 } from "node:fs";
15
15
 
16
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/http/activity.js
16
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/http/activity.js
17
17
  import { randomBytes } from "node:crypto";
18
18
  import { chmodSync, existsSync, mkdirSync, readFileSync, renameSync, writeFileSync } from "node:fs";
19
19
  import { dirname } from "node:path";
@@ -86,7 +86,7 @@ var activityRecorder = /* @__PURE__ */ __name((path, now = Date.now) => {
86
86
  };
87
87
  }, "activityRecorder");
88
88
 
89
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/http/state.js
89
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/http/state.js
90
90
  var ACCESS_SECONDS = 60 * 60;
91
91
  var REFRESH_SECONDS = 30 * 24 * 60 * 60;
92
92
  var readStored = /* @__PURE__ */ __name((path) => existsSync2(path) ? JSON.parse(readFileSync2(path, "utf8")) : { clients: [], tokens: [] }, "readStored");
@@ -4,7 +4,7 @@ import {
4
4
  __name
5
5
  } from "./chunk-ZVVMGPBJ.js";
6
6
 
7
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/mcp/instructions.js
7
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/mcp/instructions.js
8
8
  var instructions = /* @__PURE__ */ __name(({ command, name, profile, writes, skill }) => {
9
9
  const all = typeof profile !== "string";
10
10
  const offers = /* @__PURE__ */ __name((key) => all || writes.includes(key), "offers");
@@ -14,7 +14,7 @@ import {
14
14
  __name
15
15
  } from "./chunk-ZVVMGPBJ.js";
16
16
 
17
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/sends/permissions.js
17
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/sends/permissions.js
18
18
  var LEVELS = ["deny", "readonly", "ask", "allow"];
19
19
  var DANGEROUS = /* @__PURE__ */ new Set(["messages.delete", "bot.messages.delete", "topics.delete", "chats.delete", "chats.clear"]);
20
20
  var skipFlagFor = /* @__PURE__ */ __name((key) => DANGEROUS.has(key) ? "--allow-dangerous" : "--yes", "skipFlagFor");
@@ -403,7 +403,7 @@ var assertRetentionEvidenceRead = /* @__PURE__ */ __name((permissions) => {
403
403
  }
404
404
  }, "assertRetentionEvidenceRead");
405
405
 
406
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/cli/result-fields.js
406
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/cli/result-fields.js
407
407
  var named = /* @__PURE__ */ __name((work) => {
408
408
  try {
409
409
  return work();
@@ -430,7 +430,7 @@ var projectFields2 = /* @__PURE__ */ __name((value, fields) => named(() => {
430
430
  return projectFields(value, fields);
431
431
  }), "projectFields");
432
432
 
433
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/output-detail.js
433
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/output-detail.js
434
434
  var RARELY_SET = ["editedAt", "replyTo", "forwardedFrom", "reactions"];
435
435
  var BRIEF = ["locator", "chatTitle", "timestamp", "senderName", "excerpt", "score"];
436
436
  var isHit = /* @__PURE__ */ __name((value) => typeof value === "object" && value !== null && typeof value.locator === "string" && typeof value.text === "string", "isHit");
@@ -460,7 +460,7 @@ var atDetail = /* @__PURE__ */ __name((value, detail = "default") => {
460
460
  return value;
461
461
  }, "atDetail");
462
462
 
463
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/output.js
463
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/output.js
464
464
  var resolveOutput = /* @__PURE__ */ __name(({ json, jsonl, quiet, streams = processStreams, tty, color, fields, hitDetail, env = process.env, capture } = {}) => {
465
465
  const interactive = tty ?? process.stdout.isTTY === true;
466
466
  const format = jsonl ? "jsonl" : json || !interactive ? "json" : "pretty";
@@ -8,25 +8,25 @@ import {
8
8
  readSetupAnswers,
9
9
  unanswered,
10
10
  writeSetupAnswers
11
- } from "./chunk-7QEE5I7H.js";
11
+ } from "./chunk-XQVGIW4R.js";
12
12
  import {
13
13
  DEFAULT_STEMMERS,
14
14
  LANGUAGES
15
- } from "./chunk-Z6F7EXT2.js";
15
+ } from "./chunk-V7NZTJKU.js";
16
16
  import {
17
17
  sharedConfigPath
18
- } from "./chunk-6HIW7IJL.js";
18
+ } from "./chunk-JXYFIUVX.js";
19
19
  import {
20
20
  installerOf
21
21
  } from "./chunk-QX7RCLRS.js";
22
22
  import {
23
23
  storePath
24
- } from "./chunk-5JOKRFWE.js";
24
+ } from "./chunk-PL6UPJIL.js";
25
25
  import {
26
26
  __name
27
27
  } from "./chunk-ZVVMGPBJ.js";
28
28
 
29
- // node_modules/.pnpm/@wirecat+cli-core@0.516.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_25c347a01b8fd53eda94896ae0eba94d/node_modules/@wirecat/cli-core/dist/cli/first-run.js
29
+ // node_modules/.pnpm/@wirecat+cli-core@0.519.0_@wirecat+cli-base@0.68.1_commander@15.0.0_esbuild@0.28.2_type_3a77a7242330d89656a32c8be893f1d1/node_modules/@wirecat/cli-core/dist/cli/first-run.js
30
30
  import { spawnSync } from "node:child_process";
31
31
  import { accessSync, constants, realpathSync } from "node:fs";
32
32
  import { delimiter, join } from "node:path";
@@ -84,7 +84,7 @@ var suggested = /* @__PURE__ */ __name((env, contentLanguages) => {
84
84
  return (own.length ? own : LANGUAGES.filter(({ code }) => code === "en" || code === system)).map(({ name }) => name);
85
85
  }, "suggested");
86
86
  var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLanguages }) => {
87
- const { openStore } = await import("./store-ZPPRXGPY.js");
87
+ const { openStore } = await import("./store-6AVCPLH4.js");
88
88
  const store = await openStore({ env });
89
89
  let rebuild = false;
90
90
  try {
@@ -113,8 +113,8 @@ var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLang
113
113
  if (!rebuild)
114
114
  return;
115
115
  const [{ openCache }, { buildStems }] = await Promise.all([
116
- import("./open-FZYY6TKE.js"),
117
- import("./store-maintenance-command-QOYXEBT6.js")
116
+ import("./open-SWJGI6H4.js"),
117
+ import("./store-maintenance-command-S6235I3W.js")
118
118
  ]);
119
119
  const database = await openCache(storePath(env));
120
120
  try {
@@ -126,7 +126,7 @@ var askLanguages = /* @__PURE__ */ __name(async ({ command, env, io, contentLang
126
126
  var askTools = /* @__PURE__ */ __name(async (run) => {
127
127
  const { command, env, io } = run;
128
128
  const installed = run.installed ?? ((name) => onPath(name, env));
129
- const { WIRECAT_TOOLS } = await import("./first-screen-DZFOUUZC.js");
129
+ const { WIRECAT_TOOLS } = await import("./first-screen-43VLEDWZ.js");
130
130
  const others = WIRECAT_TOOLS.filter((tool) => tool.command !== command);
131
131
  const missing = others.filter((tool) => !installed(tool.command));
132
132
  io.say("Other WireCat tools \u2014 they share this store, so one search finds everything:");
@@ -199,7 +199,7 @@ var setupAtStart = /* @__PURE__ */ __name(async (start) => {
199
199
  contentLanguages: start.contentLanguages,
200
200
  all: start.path[0] === "setup",
201
201
  io: {
202
- ask: /* @__PURE__ */ __name(async (prompt) => (await import("./prompt-I5GCP73M.js")).readSecret(prompt, { input, echo: true }), "ask"),
202
+ ask: /* @__PURE__ */ __name(async (prompt) => (await import("./prompt-OZLHHGCD.js")).readSecret(prompt, { input, echo: true }), "ask"),
203
203
  say: /* @__PURE__ */ __name((text) => process.stderr.write(`${text}
204
204
  `), "say")
205
205
  }