@wirecat/cli-template 0.15.0 → 0.17.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 (170) hide show
  1. package/.github/workflows/ci.yml +35 -0
  2. package/.github/workflows/release-pr.yml +37 -0
  3. package/AGENTS.md +56 -2
  4. package/CHANGELOG.md +50 -0
  5. package/README.md +12 -4
  6. package/bin/release +10 -3
  7. package/biome.json +8 -2
  8. package/contracts/mcp-tools.json +2 -2
  9. package/contracts/plan.json +2 -1
  10. package/dist/bin/clidev.js +2 -2
  11. package/dist/bundle/{chunk-LU4A2T7Y.js → all-profiles-CCT2XPJL.js} +10 -7
  12. package/dist/bundle/{anthropic-ICTW7CNQ.js → anthropic-QLLP7EE4.js} +4 -4
  13. package/dist/bundle/{app-server-OW5LT5XV.js → app-server-ELI5TGL7.js} +36 -37
  14. package/dist/bundle/{bun-ILPS6AYA.js → bun-C7JS2V7G.js} +2 -2
  15. package/dist/bundle/{bun-sqlite-JE6FJFQT.js → bun-sqlite-OM72TCYT.js} +3 -3
  16. package/dist/bundle/{chunk-7F5VMLVK.js → chunk-2Y5NBD7U.js} +4 -4
  17. package/dist/bundle/chunk-33JGD2CR.js +141 -0
  18. package/dist/bundle/{chunk-F34HGYWF.js → chunk-3VVIEZRY.js} +2 -2
  19. package/dist/bundle/{chunk-CGFQT3LQ.js → chunk-6PHTRAZA.js} +1 -1
  20. package/dist/bundle/{chunk-VS5LGSTM.js → chunk-6VCFDEHT.js} +1 -1
  21. package/dist/bundle/{chunk-NENYWEXF.js → chunk-7OQF5ZMN.js} +1 -1
  22. package/dist/bundle/{chunk-62JRF2JA.js → chunk-AKUMR7PE.js} +2 -2
  23. package/dist/bundle/{chunk-7UPBPE3Z.js → chunk-ASO23RNM.js} +152 -79
  24. package/dist/bundle/{chunk-VOTEB3AN.js → chunk-AUVPTFUS.js} +1 -1
  25. package/dist/bundle/{chunk-KLFYY7KC.js → chunk-BOCIYBBO.js} +53 -44
  26. package/dist/bundle/{chunk-TJJ2XSJP.js → chunk-BXZRTMXA.js} +5 -5
  27. package/dist/bundle/{chunk-66VMJGV6.js → chunk-DVLM23HB.js} +2 -2
  28. package/dist/bundle/{chunk-YIVY2WI3.js → chunk-E4KQOKQ5.js} +1 -1
  29. package/dist/bundle/{chunk-GHF72SHT.js → chunk-EQDVQN4E.js} +306 -258
  30. package/dist/bundle/{chunk-NH6LZ3H3.js → chunk-FF3AGTHY.js} +6 -6
  31. package/dist/bundle/{chunk-NG7MOJBT.js → chunk-GG5PXNMH.js} +61 -21
  32. package/dist/bundle/{chunk-LFLSV353.js → chunk-GUCMIUNB.js} +2 -2
  33. package/dist/bundle/{chunk-R5RYPD23.js → chunk-HVAEHUSZ.js} +2 -2
  34. package/dist/bundle/{chunk-PIJUGF5F.js → chunk-ITPFCKCL.js} +13 -13
  35. package/dist/bundle/{chunk-DQIBGCF3.js → chunk-J2RUBXCI.js} +6 -6
  36. package/dist/bundle/{chunk-7Z4HR6GO.js → chunk-KRXN3FV3.js} +1 -1
  37. package/dist/bundle/{chunk-45244QQ6.js → chunk-LFLN6PVS.js} +4 -4
  38. package/dist/bundle/{chunk-MWUHBEDN.js → chunk-LN53L2V5.js} +11 -11
  39. package/dist/bundle/{chunk-IOJ2DTCY.js → chunk-MLSN3UP4.js} +28 -26
  40. package/dist/bundle/{chunk-3MDNAYQA.js → chunk-O6PBO4BU.js} +1 -1
  41. package/dist/bundle/{chunk-YOJLIVGO.js → chunk-QJS4WWYK.js} +63 -63
  42. package/dist/bundle/{chunk-NVNUUHT5.js → chunk-QLBS6OC2.js} +2362 -1225
  43. package/dist/bundle/{chunk-2DAXUNTS.js → chunk-QVPTZDRA.js} +2 -2
  44. package/dist/bundle/{chunk-4MU2UM4C.js → chunk-R5CPFSPI.js} +7 -7
  45. package/dist/bundle/{chunk-AS2PJNQ2.js → chunk-R5IY4O25.js} +4 -4
  46. package/dist/bundle/{chunk-DZLHY4IA.js → chunk-RGKXMVOZ.js} +3 -3
  47. package/dist/bundle/{chunk-G45R7M42.js → chunk-RT46AWIH.js} +1 -1
  48. package/dist/bundle/{chunk-NRZV7K4M.js → chunk-RUHNHEAF.js} +3 -3
  49. package/dist/bundle/{chunk-VXOR76ZL.js → chunk-S465TCR3.js} +8 -8
  50. package/dist/bundle/{chunk-NVGOHYTE.js → chunk-SQKP6V4S.js} +27 -13
  51. package/dist/bundle/{chunk-FC53WQHG.js → chunk-SQOXYNKF.js} +1 -1
  52. package/dist/bundle/{chunk-R2JKPHH5.js → chunk-URPKIONS.js} +8 -8
  53. package/dist/bundle/{chunk-VVGPAHUN.js → chunk-UW4PJZVJ.js} +298 -170
  54. package/dist/bundle/{chunk-EX2FV7YJ.js → chunk-WKUJCPSP.js} +89 -45
  55. package/dist/bundle/{chunk-LATYBJ4T.js → chunk-WQBBSVZM.js} +2 -2
  56. package/dist/bundle/{chunk-G7W53MQP.js → chunk-WRLOK7XC.js} +3 -3
  57. package/dist/bundle/{chunk-SOYOOU2D.js → chunk-X44ZT64I.js} +3 -3
  58. package/dist/bundle/{chunk-U6QD3J3F.js → chunk-XKL5FRH3.js} +3 -3
  59. package/dist/bundle/{chunk-6AW4DDK4.js → chunk-XS56LIQ7.js} +4 -4
  60. package/dist/bundle/{chunk-3WDYHOAF.js → chunk-YIH3PYWJ.js} +1 -1
  61. package/dist/bundle/{chunk-5GTMQTQH.js → chunk-ZRNBKTPP.js} +27 -29
  62. package/dist/bundle/clidev.js +3 -3
  63. package/dist/bundle/{command-contract-3MPKXBVL.js → command-contract-RV5ZOEAT.js} +11 -11
  64. package/dist/bundle/{decode-NXB5UKMO.js → decode-V7HNHZBC.js} +3 -3
  65. package/dist/bundle/{echarts-DRDGGHJT.js → echarts-Y42YP2OL.js} +2 -2
  66. package/dist/bundle/{embed-IKZ24BMC.js → embed-JSQZL7JF.js} +4 -4
  67. package/dist/bundle/{embedder-GMQ24DOQ.js → embedder-7BHRCXWL.js} +7 -7
  68. package/dist/bundle/{first-run-PURIGDLD.js → first-run-BJ36KGST.js} +8 -8
  69. package/dist/bundle/first-screen-5YHQVNY4.js +26 -0
  70. package/dist/bundle/{instructions-EOQOXY6V.js → instructions-UWERND54.js} +1 -1
  71. package/dist/bundle/{mcp-7HBLFGCW.js → mcp-P4FSBSRS.js} +2 -2
  72. package/dist/bundle/{node-52WF2326.js → node-PZDNPKN7.js} +2 -2
  73. package/dist/bundle/{node-sqlite-73Z4SFOA.js → node-sqlite-4F5NLRNT.js} +4 -4
  74. package/dist/bundle/{oauth-EVTPAMZP.js → oauth-VDXNA3DK.js} +5 -5
  75. package/dist/bundle/{open-46WZAPJ3.js → open-EUJRQQNS.js} +3 -3
  76. package/dist/bundle/{openai-GWRDAHDU.js → openai-EIBV2K72.js} +14 -35
  77. package/dist/bundle/{process-YIQPKLZI.js → process-XD5ZIFIL.js} +1 -1
  78. package/dist/bundle/{program-37NVH5YJ.js → program-TJTVMIOX.js} +3067 -736
  79. package/dist/bundle/{prompt-IVEYRLS5.js → prompt-LYUZNHDK.js} +3 -3
  80. package/dist/bundle/{recognize-WVEKHODM.js → recognize-LQMHLOD5.js} +2 -2
  81. package/dist/bundle/{remote-4K5VPMC7.js → remote-34HUWSZI.js} +5 -5
  82. package/dist/bundle/{rerank-V24UJZYJ.js → rerank-ONBASQ5Z.js} +5 -5
  83. package/dist/bundle/{chunk-EMHCXXNJ.js → serve-UJ7FDYAM.js} +8 -6
  84. package/dist/bundle/{chunk-KJ3UADR3.js → server-GNT76BXM.js} +29 -9
  85. package/dist/bundle/server-J4YIXKMI.js +52 -0
  86. package/dist/bundle/{state-ZPYGECVP.js → state-IW5OO6IZ.js} +4 -4
  87. package/dist/bundle/{store-6JQCLPQF.js → store-55UB27H2.js} +12 -10
  88. package/dist/bundle/store-maintenance-command-BLDKUZ3L.js +42 -0
  89. package/dist/commands/comments.d.ts +3 -0
  90. package/dist/commands/comments.d.ts.map +1 -0
  91. package/dist/commands/comments.js +114 -0
  92. package/dist/commands/comments.js.map +1 -0
  93. package/dist/commands/session.d.ts +3 -0
  94. package/dist/commands/session.d.ts.map +1 -0
  95. package/dist/commands/session.js +96 -0
  96. package/dist/commands/session.js.map +1 -0
  97. package/dist/context.d.ts +83 -0
  98. package/dist/context.d.ts.map +1 -0
  99. package/dist/context.js +58 -0
  100. package/dist/context.js.map +1 -0
  101. package/dist/program.d.ts.map +1 -1
  102. package/dist/program.js +25 -4
  103. package/dist/program.js.map +1 -1
  104. package/dist/sample/comments.d.ts +61 -0
  105. package/dist/sample/comments.d.ts.map +1 -0
  106. package/dist/sample/comments.js +39 -0
  107. package/dist/sample/comments.js.map +1 -0
  108. package/dist/sample/transport.d.ts +42 -0
  109. package/dist/sample/transport.d.ts.map +1 -0
  110. package/dist/sample/transport.js +152 -0
  111. package/dist/sample/transport.js.map +1 -0
  112. package/dist/token.d.ts +16 -0
  113. package/dist/token.d.ts.map +1 -0
  114. package/dist/token.js +32 -0
  115. package/dist/token.js.map +1 -0
  116. package/dist/version.d.ts +1 -1
  117. package/dist/version.js +1 -1
  118. package/docs/commands.md +234 -12
  119. package/docs/configuration.md +1 -1
  120. package/docs/dev/reference-clis.md +3 -2
  121. package/docs/dev/skills/release/SKILL.md +9 -3
  122. package/docs/dev/skills/release/fresh-audit.md +1 -1
  123. package/docs/dev/test-matrix.md +36 -5
  124. package/docs/index.md +4 -3
  125. package/docs/security.md +4 -2
  126. package/kit/dist/new.js +7 -3
  127. package/lint/overrides.json +9 -1
  128. package/package.json +6 -7
  129. package/scripts/test-matrix-untested.ts +19 -0
  130. package/skills/clidev-cli/SKILL.md +1 -1
  131. package/src/commands/comments.ts +167 -0
  132. package/src/commands/session.ts +144 -0
  133. package/src/comments.test.ts +258 -0
  134. package/src/context.ts +78 -0
  135. package/src/mcp.test.ts +71 -76
  136. package/src/program.test.ts +9 -16
  137. package/src/program.ts +29 -4
  138. package/src/sample/comments.ts +51 -0
  139. package/src/sample/transport.test.ts +117 -0
  140. package/src/sample/transport.ts +184 -0
  141. package/src/testing/fake-comments.ts +167 -0
  142. package/src/testing/harness.ts +51 -0
  143. package/src/token.ts +42 -0
  144. package/src/version.ts +1 -1
  145. package/dist/bundle/all-profiles-NVB2HT2S.js +0 -24
  146. package/dist/bundle/chunk-GUFPQZUA.js +0 -48
  147. package/dist/bundle/chunk-NL2DQPT7.js +0 -2
  148. package/dist/bundle/first-screen-B2CF2CET.js +0 -26
  149. package/dist/bundle/mcp-ASNYBQ5B.js +0 -152
  150. package/dist/bundle/mcp-EY2NUYDQ.js +0 -82
  151. package/dist/bundle/serve-PJWSOV7F.js +0 -19
  152. package/dist/bundle/server-3TPCEZ6P.js +0 -40
  153. package/dist/bundle/server-GQX5MZTT.js +0 -53
  154. package/dist/bundle/store-maintenance-command-ND4ADMGC.js +0 -42
  155. package/dist/commands/doctor.d.ts +0 -77
  156. package/dist/commands/doctor.d.ts.map +0 -1
  157. package/dist/commands/doctor.js +0 -74
  158. package/dist/commands/doctor.js.map +0 -1
  159. package/dist/commands/mcp.d.ts +0 -3
  160. package/dist/commands/mcp.d.ts.map +0 -1
  161. package/dist/commands/mcp.js +0 -97
  162. package/dist/commands/mcp.js.map +0 -1
  163. package/dist/mcp.d.ts +0 -29
  164. package/dist/mcp.d.ts.map +0 -1
  165. package/dist/mcp.js +0 -98
  166. package/dist/mcp.js.map +0 -1
  167. package/src/commands/doctor.ts +0 -86
  168. package/src/commands/mcp.ts +0 -130
  169. package/src/mcp-http.test.ts +0 -172
  170. package/src/mcp.ts +0 -140
@@ -2,7 +2,7 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  CliError
5
- } from "./chunk-IOJ2DTCY.js";
5
+ } from "./chunk-MLSN3UP4.js";
6
6
  import {
7
7
  importFrom
8
8
  } from "./chunk-Y5E2WNWB.js";
@@ -10,10 +10,10 @@ import {
10
10
  __name
11
11
  } from "./chunk-ZVVMGPBJ.js";
12
12
 
13
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/speech/recognize.js
13
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/speech/recognize.js
14
14
  import { createRequire } from "node:module";
15
15
 
16
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/speech/ogg-limit.js
16
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/speech/ogg-limit.js
17
17
  var invalid = /* @__PURE__ */ __name(() => new CliError("validation_error", "local transcription needs a complete mono or stereo Ogg Opus recording"), "invalid");
18
18
  var checkOggDuration = /* @__PURE__ */ __name((bytes) => {
19
19
  const view = new DataView(bytes.buffer, bytes.byteOffset, bytes.byteLength);
@@ -70,7 +70,7 @@ var checkOggDuration = /* @__PURE__ */ __name((bytes) => {
70
70
  throw invalid();
71
71
  }, "checkOggDuration");
72
72
 
73
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/speech/recognize.js
73
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/speech/recognize.js
74
74
  var SAMPLE_RATE = 16e3;
75
75
  var LEAD = SAMPLE_RATE / 2;
76
76
  var toModelRate = /* @__PURE__ */ __name((samples, rate) => {
@@ -0,0 +1,141 @@
1
+ import { createRequire as __bundleRequire } from "node:module";
2
+ const require = __bundleRequire(import.meta.url);
3
+ import {
4
+ CliError,
5
+ isCliError
6
+ } from "./chunk-MLSN3UP4.js";
7
+ import {
8
+ __name
9
+ } from "./chunk-ZVVMGPBJ.js";
10
+
11
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/http/body.js
12
+ var interrupted = /* @__PURE__ */ __name((signal) => isCliError(signal.reason) ? signal.reason : new CliError(signal.reason instanceof Error && signal.reason.name === "TimeoutError" ? "timeout" : "cancelled", "HTTP response read was interrupted"), "interrupted");
13
+ var checked = /* @__PURE__ */ __name((signal) => {
14
+ if (signal?.aborted)
15
+ throw interrupted(signal);
16
+ }, "checked");
17
+ var abortable = /* @__PURE__ */ __name(async (pending, signal) => {
18
+ if (!signal)
19
+ return pending;
20
+ let abort = /* @__PURE__ */ __name(() => {
21
+ }, "abort");
22
+ const stopped = new Promise((_, reject) => {
23
+ abort = /* @__PURE__ */ __name(() => reject(interrupted(signal)), "abort");
24
+ signal.addEventListener("abort", abort, { once: true });
25
+ if (signal.aborted)
26
+ abort();
27
+ });
28
+ try {
29
+ return await Promise.race([pending, stopped]);
30
+ } finally {
31
+ signal.removeEventListener("abort", abort);
32
+ }
33
+ }, "abortable");
34
+ var readJsonResponse = /* @__PURE__ */ __name(async (response, options) => {
35
+ const { maxBytes, signal } = options ?? {};
36
+ if (!Number.isSafeInteger(maxBytes) || maxBytes < 1)
37
+ throw new CliError("validation_error", "maxBytes must be a positive safe integer");
38
+ if (signal !== void 0 && !(signal instanceof AbortSignal))
39
+ throw new CliError("validation_error", "signal must be an AbortSignal");
40
+ if (signal?.aborted) {
41
+ void response.body?.cancel().catch(() => {
42
+ });
43
+ throw interrupted(signal);
44
+ }
45
+ const length = response.headers.get("content-length");
46
+ if (length !== null && (!/^\d+$/.test(length) || Number(length) > maxBytes)) {
47
+ void response.body?.cancel().catch(() => {
48
+ });
49
+ throw new CliError("invalid_response", "HTTP response exceeds the byte budget");
50
+ }
51
+ if (!response.body)
52
+ throw new CliError("invalid_response", "HTTP response has no body");
53
+ if (response.body.locked)
54
+ throw new CliError("invalid_response", "HTTP response body is already in use");
55
+ const reader = response.body.getReader();
56
+ const chunks = [];
57
+ let bytes = 0;
58
+ try {
59
+ for (; ; ) {
60
+ checked(signal);
61
+ const part = await abortable(reader.read(), signal);
62
+ checked(signal);
63
+ if (part.done)
64
+ break;
65
+ if (!(part.value instanceof Uint8Array))
66
+ throw new CliError("invalid_response", "HTTP response is not bytes");
67
+ bytes += part.value.byteLength;
68
+ if (bytes > maxBytes)
69
+ throw new CliError("invalid_response", "HTTP response exceeds the byte budget");
70
+ if (part.value.byteLength)
71
+ chunks.push(new Uint8Array(part.value));
72
+ }
73
+ const body = new Uint8Array(bytes);
74
+ let offset = 0;
75
+ for (const chunk of chunks) {
76
+ body.set(chunk, offset);
77
+ offset += chunk.byteLength;
78
+ }
79
+ try {
80
+ return JSON.parse(new TextDecoder("utf-8", { fatal: true }).decode(body));
81
+ } catch {
82
+ throw new CliError("invalid_response", "HTTP response is not valid UTF-8 JSON");
83
+ }
84
+ } catch (error) {
85
+ checked(signal);
86
+ if (isCliError(error))
87
+ throw error;
88
+ throw new CliError("network_error", "HTTP response could not be read");
89
+ } finally {
90
+ void reader.cancel().catch(() => {
91
+ });
92
+ reader.releaseLock();
93
+ }
94
+ }, "readJsonResponse");
95
+
96
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/http/index.js
97
+ var parseRetryAfter = /* @__PURE__ */ __name((header, now) => {
98
+ if (!header)
99
+ return void 0;
100
+ const trimmed = header.trim();
101
+ if (/^\d+$/.test(trimmed))
102
+ return Number(trimmed) * 1e3;
103
+ const at = Date.parse(trimmed);
104
+ if (Number.isNaN(at))
105
+ return void 0;
106
+ const delta = at - now().getTime();
107
+ return delta > 0 ? delta : void 0;
108
+ }, "parseRetryAfter");
109
+ var parseRateLimitReset = /* @__PURE__ */ __name((header, now) => {
110
+ if (!header)
111
+ return void 0;
112
+ const seconds = Number(header.trim());
113
+ if (!Number.isFinite(seconds))
114
+ return void 0;
115
+ const delta = seconds * 1e3 - now().getTime();
116
+ return delta > 0 ? delta : void 0;
117
+ }, "parseRateLimitReset");
118
+ var providerWaitMs = /* @__PURE__ */ __name((headers, now) => parseRetryAfter(headers.get("retry-after"), now) ?? parseRateLimitReset(headers.get("x-ratelimit-reset"), now), "providerWaitMs");
119
+ var statusToCode = /* @__PURE__ */ __name((status) => {
120
+ if (status === 400 || status === 422)
121
+ return "validation_error";
122
+ if (status === 401)
123
+ return "authentication_error";
124
+ if (status === 403)
125
+ return "permission_error";
126
+ if (status === 404)
127
+ return "not_found";
128
+ if (status === 408)
129
+ return "timeout";
130
+ if (status === 429)
131
+ return "rate_limited";
132
+ if (status === 502 || status === 503 || status === 504)
133
+ return "provider_unavailable";
134
+ return "provider_error";
135
+ }, "statusToCode");
136
+
137
+ export {
138
+ readJsonResponse,
139
+ providerWaitMs,
140
+ statusToCode
141
+ };
@@ -29,7 +29,7 @@ import {
29
29
  agentOf,
30
30
  clientHash,
31
31
  currentCaller
32
- } from "./chunk-VXOR76ZL.js";
32
+ } from "./chunk-S465TCR3.js";
33
33
  import {
34
34
  __name
35
35
  } from "./chunk-ZVVMGPBJ.js";
@@ -541,7 +541,7 @@ function toError(value) {
541
541
  }
542
542
  __name(toError, "toError");
543
543
 
544
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/caller.js
544
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/caller.js
545
545
  var callingAgent = /* @__PURE__ */ __name((fallback, caller = currentCaller()) => {
546
546
  const client = caller?.agent?.client?.name;
547
547
  if (client && client !== "unknown")
@@ -4,7 +4,7 @@ import {
4
4
  __name
5
5
  } from "./chunk-ZVVMGPBJ.js";
6
6
 
7
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/store/sqlite/drizzle/shared-55XJMTPA.js
7
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/store/sqlite/drizzle/shared-55XJMTPA.js
8
8
  var entityKind = /* @__PURE__ */ Symbol.for("drizzle:entityKind");
9
9
  var kindsByConstructor = /* @__PURE__ */ new WeakMap();
10
10
  function collectKinds(ctor) {
@@ -4,7 +4,7 @@ import {
4
4
  __name
5
5
  } from "./chunk-ZVVMGPBJ.js";
6
6
 
7
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/stdio-wire.js
7
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/stdio-wire.js
8
8
  import { PassThrough, Writable } from "node:stream";
9
9
  var lineReader = /* @__PURE__ */ __name((onMessage) => {
10
10
  let rest = "";
@@ -4,7 +4,7 @@ import {
4
4
  __name
5
5
  } from "./chunk-ZVVMGPBJ.js";
6
6
 
7
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/http/listen.js
7
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/http/listen.js
8
8
  import { createServer } from "node:http";
9
9
  import { Readable } from "node:stream";
10
10
  var MAX_BODY = 4 * 1024 * 1024;
@@ -2,12 +2,12 @@ import { createRequire as __bundleRequire } from "node:module";
2
2
  const require = __bundleRequire(import.meta.url);
3
3
  import {
4
4
  resolvePaths
5
- } from "./chunk-IOJ2DTCY.js";
5
+ } from "./chunk-MLSN3UP4.js";
6
6
  import {
7
7
  __name
8
8
  } from "./chunk-ZVVMGPBJ.js";
9
9
 
10
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/store/path.js
10
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/store/path.js
11
11
  import { userInfo } from "node:os";
12
12
  import { isAbsolute, join, relative, resolve } from "node:path";
13
13
  var wirecatDirectory = /* @__PURE__ */ __name((env = process.env, platform) => resolvePaths({ appName: "WireCat", prefix: "WIRECAT", env, ...platform ? { platform } : {} }).state, "wirecatDirectory");
@@ -7,10 +7,10 @@ import {
7
7
  agentJson,
8
8
  commandAvailability,
9
9
  failureContext
10
- } from "./chunk-NVGOHYTE.js";
10
+ } from "./chunk-SQKP6V4S.js";
11
11
  import {
12
12
  callerOf
13
- } from "./chunk-F34HGYWF.js";
13
+ } from "./chunk-3VVIEZRY.js";
14
14
  import {
15
15
  QUERY_ARGUMENT,
16
16
  lentConnection,
@@ -18,10 +18,10 @@ import {
18
18
  refuseLacking,
19
19
  servicesFor,
20
20
  storeModeDeps
21
- } from "./chunk-GHF72SHT.js";
21
+ } from "./chunk-EQDVQN4E.js";
22
22
  import {
23
23
  MAX_BUFFERED_INPUT
24
- } from "./chunk-2DAXUNTS.js";
24
+ } from "./chunk-QVPTZDRA.js";
25
25
  import {
26
26
  DEFAULT_OUTPUT_BYTES,
27
27
  ENTITIES,
@@ -45,16 +45,16 @@ import {
45
45
  sealed,
46
46
  startRecording,
47
47
  traceOf
48
- } from "./chunk-VVGPAHUN.js";
48
+ } from "./chunk-UW4PJZVJ.js";
49
49
  import {
50
50
  currentCaller,
51
51
  keepsSuccess,
52
52
  runContextOf,
53
53
  withCaller
54
- } from "./chunk-VXOR76ZL.js";
54
+ } from "./chunk-S465TCR3.js";
55
55
  import {
56
56
  queryDescription
57
- } from "./chunk-YOJLIVGO.js";
57
+ } from "./chunk-QJS4WWYK.js";
58
58
  import {
59
59
  COMPACT_FLAG,
60
60
  CliError,
@@ -97,15 +97,15 @@ import {
97
97
  unknown,
98
98
  word,
99
99
  writes
100
- } from "./chunk-IOJ2DTCY.js";
100
+ } from "./chunk-MLSN3UP4.js";
101
101
  import {
102
102
  __name
103
103
  } from "./chunk-ZVVMGPBJ.js";
104
104
 
105
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/agent.js
105
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/agent.js
106
106
  import { Readable } from "node:stream";
107
107
 
108
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/lint.js
108
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/lint.js
109
109
  var LINT_SEVERITIES = ["high", "medium", "low"];
110
110
  var lintRuleSchema = strictObject({
111
111
  id: word,
@@ -233,7 +233,7 @@ var overrideSchema = strictObject({
233
233
  });
234
234
  var overridesSchema = array(overrideSchema);
235
235
 
236
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/audit.js
236
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/audit.js
237
237
  var auditRuleSchema = strictObject({ id: word, severity: picklist(LINT_SEVERITIES), summary: text });
238
238
  var defineAuditRules = /* @__PURE__ */ __name((input) => parseRegistry("audit rules", array(auditRuleSchema), input, (rules) => duplicates(rules.map((rule) => rule.id)).map((id) => `"${id}" is listed twice`)), "defineAuditRules");
239
239
  var AUDIT_RULES = defineAuditRules([
@@ -342,7 +342,7 @@ var REQUIRED_ROOTS = defineRequiredRoots([
342
342
  { path: ["upgrade"], meaning: "updates the CLI" }
343
343
  ]);
344
344
 
345
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/fields.js
345
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/fields.js
346
346
  var fieldRuleSchema = strictObject({ id: word, rule: text });
347
347
  var defineFieldRules = /* @__PURE__ */ __name((input) => parseRegistry("output field rules", array(fieldRuleSchema), input, (rules) => duplicates(rules.map((rule) => rule.id)).map((id) => `"${id}" is listed twice`)), "defineFieldRules");
348
348
  var FIELD_RULES = defineFieldRules([
@@ -358,7 +358,7 @@ var FIELD_RULES = defineFieldRules([
358
358
  }
359
359
  ]);
360
360
 
361
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/identifiers.js
361
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/identifiers.js
362
362
  var key = pipe(string(), regex(SNAKE_CASE, "a snake_case key"));
363
363
  var identifierSchema = strictObject({ key, meaning: text, replaces: optional(array(key)) });
364
364
  var defineIdentifiers = /* @__PURE__ */ __name((input) => parseRegistry("identifiers", array(identifierSchema), input, (identifiers) => {
@@ -380,7 +380,7 @@ var IDENTIFIERS = defineIdentifiers([
380
380
  { key: "trace_id", meaning: "the distributed trace a run belongs to, from `traceparent`" }
381
381
  ]);
382
382
 
383
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-calendar.js
383
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-calendar.js
384
384
  var CALENDAR_FLAGS = [
385
385
  { name: "--end-time", value: "<time>", role: "value", type: "time", meaning: "when it ends" },
386
386
  {
@@ -454,7 +454,47 @@ var CALENDAR_FLAGS = [
454
454
  }
455
455
  ];
456
456
 
457
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-how.js
457
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-crm.js
458
+ var CRM_FLAGS = [
459
+ {
460
+ name: "--pipeline",
461
+ value: "<pipeline>",
462
+ role: "value",
463
+ type: "string",
464
+ meaning: "a CRM pipeline: pipeline:<id>, or a name only one pipeline has"
465
+ },
466
+ {
467
+ name: "--stage",
468
+ value: "<stage>",
469
+ role: "value",
470
+ type: "string",
471
+ meaning: "a stage of the record's pipeline, by the CRM's id or its name"
472
+ },
473
+ {
474
+ name: "--amount",
475
+ value: "<decimal>",
476
+ role: "value",
477
+ type: "string",
478
+ meaning: "a sum of money as a decimal, such as 1500.50, in --currency"
479
+ },
480
+ { name: "--currency", value: "<code>", role: "value", type: "string", meaning: "an ISO 4217 code, such as EUR" },
481
+ {
482
+ name: "--close-date",
483
+ value: "<date>",
484
+ role: "value",
485
+ type: "time",
486
+ meaning: "the day a deal or lead is expected to close, YYYY-MM-DD"
487
+ },
488
+ {
489
+ name: "--owner",
490
+ value: "<user>",
491
+ role: "value",
492
+ type: "id",
493
+ meaning: "the CRM user a record is assigned to, by the CRM's id"
494
+ }
495
+ ];
496
+
497
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-how.js
458
498
  var HOW_FLAGS = [
459
499
  {
460
500
  name: "--limit",
@@ -1448,7 +1488,7 @@ var HOW_FLAGS = [
1448
1488
  }
1449
1489
  ];
1450
1490
 
1451
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-mail.js
1491
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-mail.js
1452
1492
  var MAIL_FLAGS = [
1453
1493
  {
1454
1494
  name: "--cc",
@@ -1478,7 +1518,68 @@ var MAIL_FLAGS = [
1478
1518
  }
1479
1519
  ];
1480
1520
 
1481
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-what.js
1521
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-privacy.js
1522
+ var PRIVACY_FLAGS = [
1523
+ {
1524
+ name: "--about-text",
1525
+ value: "<who>",
1526
+ role: "value",
1527
+ type: "choice",
1528
+ meaning: "who sees the about text: everyone, contacts or nobody"
1529
+ },
1530
+ {
1531
+ name: "--calls",
1532
+ value: "<who>",
1533
+ role: "value",
1534
+ type: "choice",
1535
+ meaning: "whose calls ring: everyone, contacts or nobody"
1536
+ },
1537
+ {
1538
+ name: "--chat-invites",
1539
+ value: "<who>",
1540
+ role: "value",
1541
+ type: "choice",
1542
+ meaning: "who may add the account to groups and channels: everyone, contacts or nobody"
1543
+ },
1544
+ {
1545
+ name: "--find-by-phone",
1546
+ value: "<who>",
1547
+ role: "value",
1548
+ type: "choice",
1549
+ meaning: "who finds the account by its number: everyone, contacts or nobody"
1550
+ },
1551
+ {
1552
+ name: "--hide-online",
1553
+ value: "<on|off>",
1554
+ role: "value",
1555
+ type: "choice",
1556
+ meaning: "hide online status and last seen"
1557
+ },
1558
+ {
1559
+ name: "--last-seen",
1560
+ value: "<who>",
1561
+ role: "value",
1562
+ type: "choice",
1563
+ meaning: "who sees when the account was last online: everyone, contacts or nobody"
1564
+ },
1565
+ {
1566
+ name: "--phone-number",
1567
+ value: "<who>",
1568
+ role: "value",
1569
+ type: "choice",
1570
+ meaning: "who sees the number: everyone, contacts or nobody"
1571
+ },
1572
+ {
1573
+ name: "--profile-photo",
1574
+ value: "<who>",
1575
+ role: "value",
1576
+ type: "choice",
1577
+ meaning: "who sees the profile photo: everyone, contacts or nobody"
1578
+ },
1579
+ { name: "--read-receipts", value: "<on|off>", role: "value", type: "choice", meaning: "send read receipts" }
1580
+ ];
1581
+
1582
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/flags-what.js
1482
1583
  var WHAT_FLAGS = [
1483
1584
  {
1484
1585
  name: "--analysis-provider",
@@ -1901,6 +2002,13 @@ var WHAT_FLAGS = [
1901
2002
  meaning: "look again from this day, for what arrived late"
1902
2003
  },
1903
2004
  { name: "--run", value: "<id>", role: "target", type: "id", meaning: "the run it is about" },
2005
+ {
2006
+ name: "--write",
2007
+ value: "<id>",
2008
+ role: "target",
2009
+ type: "id",
2010
+ meaning: "one write of a run, by the operation_id its answer listed: undo or act on that write alone"
2011
+ },
1904
2012
  {
1905
2013
  name: "--target",
1906
2014
  value: "<ref>",
@@ -2103,63 +2211,6 @@ var WHAT_FLAGS = [
2103
2211
  type: "path",
2104
2212
  meaning: "an Ogg Opus file sent as a voice message"
2105
2213
  },
2106
- {
2107
- name: "--about-text",
2108
- value: "<who>",
2109
- role: "value",
2110
- type: "choice",
2111
- meaning: "who sees the about text: everyone, contacts or nobody"
2112
- },
2113
- {
2114
- name: "--calls",
2115
- value: "<who>",
2116
- role: "value",
2117
- type: "choice",
2118
- meaning: "whose calls ring: everyone, contacts or nobody"
2119
- },
2120
- {
2121
- name: "--chat-invites",
2122
- value: "<who>",
2123
- role: "value",
2124
- type: "choice",
2125
- meaning: "who may add the account to groups and channels: everyone, contacts or nobody"
2126
- },
2127
- {
2128
- name: "--find-by-phone",
2129
- value: "<who>",
2130
- role: "value",
2131
- type: "choice",
2132
- meaning: "who finds the account by its number: everyone, contacts or nobody"
2133
- },
2134
- {
2135
- name: "--hide-online",
2136
- value: "<on|off>",
2137
- role: "value",
2138
- type: "choice",
2139
- meaning: "hide online status and last seen"
2140
- },
2141
- {
2142
- name: "--last-seen",
2143
- value: "<who>",
2144
- role: "value",
2145
- type: "choice",
2146
- meaning: "who sees when the account was last online: everyone, contacts or nobody"
2147
- },
2148
- {
2149
- name: "--phone-number",
2150
- value: "<who>",
2151
- role: "value",
2152
- type: "choice",
2153
- meaning: "who sees the number: everyone, contacts or nobody"
2154
- },
2155
- {
2156
- name: "--profile-photo",
2157
- value: "<who>",
2158
- role: "value",
2159
- type: "choice",
2160
- meaning: "who sees the profile photo: everyone, contacts or nobody"
2161
- },
2162
- { name: "--read-receipts", value: "<on|off>", role: "value", type: "choice", meaning: "send read receipts" },
2163
2214
  {
2164
2215
  name: "--until",
2165
2216
  value: "<time>",
@@ -2262,6 +2313,13 @@ var WHAT_FLAGS = [
2262
2313
  type: "id",
2263
2314
  meaning: "never show this chat in it; repeat it for more"
2264
2315
  },
2316
+ {
2317
+ name: "--field",
2318
+ value: "<key=value>",
2319
+ role: "value",
2320
+ type: "string",
2321
+ meaning: "set one named field on a write, as key=value; repeat it for more"
2322
+ },
2265
2323
  {
2266
2324
  name: "--file",
2267
2325
  value: "<file>",
@@ -2476,7 +2534,7 @@ var WHAT_FLAGS = [
2476
2534
  }
2477
2535
  ];
2478
2536
 
2479
- // node_modules/.pnpm/@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/vocabulary.js
2537
+ // node_modules/.pnpm/@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_typescript@7.0.2_vitest@5.0.5/node_modules/@wirecat/cli-base/dist/standards/vocabulary.js
2480
2538
  var FLAG_TYPES = [
2481
2539
  "switch",
2482
2540
  "count",
@@ -2617,6 +2675,7 @@ var verbs = [
2617
2675
  // Only when someone asks, never from a matching name: WC-ACCT-11 in docs/standards/accounts.md.
2618
2676
  ["link", "record that two identities are one person"],
2619
2677
  ["unlink", "undo a link"],
2678
+ ["allocate", "match a payment to the invoice or order it settles, in whole or in part"],
2620
2679
  ["lookup", "ask the messenger who is behind a phone number"],
2621
2680
  [
2622
2681
  "inspect",
@@ -2717,6 +2776,20 @@ var collections = [
2717
2776
  "derived records attached to a selected entity, with explicit coverage of included and omitted facets"
2718
2777
  ],
2719
2778
  ["organizations", "companies, teams, families or communities"],
2779
+ [
2780
+ "records",
2781
+ "documents of the owner's business, such as an invoice or a receipt, kept with the things they are about"
2782
+ ],
2783
+ ["invoices", "bills the owner sends or receives, with their amounts and due dates"],
2784
+ ["orders", "what a customer asked for and the owner owes or delivers"],
2785
+ ["payments", "money that moved in or out, each one matched to the invoices it settles"],
2786
+ ["deals", "sales the owner works on, each at a stage of a pipeline, with an amount and an outcome"],
2787
+ ["leads", "possible customers not yet qualified into a deal"],
2788
+ ["pipelines", "ordered sets of stages a deal moves through"],
2789
+ ["stages", "steps of a pipeline, each open, won or lost"],
2790
+ ["products", "goods and services the owner sells, with their prices"],
2791
+ ["users", "people who work in the owner's account at a service, such as a CRM's employees"],
2792
+ ["fields", "a record type's field definitions: code, label, type and options, such as a CRM's custom fields"],
2720
2793
  [
2721
2794
  "identities",
2722
2795
  "ways to reach a person or an organization: an account in one messenger or mailbox, an e-mail address, a phone"
@@ -2846,10 +2919,10 @@ var VOCABULARY = defineVocabulary({
2846
2919
  ],
2847
2920
  views: views.map(([entry, meaning]) => ({ word: entry, meaning })),
2848
2921
  roots: roots.map(([entry, meaning]) => ({ word: entry, meaning })),
2849
- flags: [...HOW_FLAGS, ...WHAT_FLAGS, ...CALENDAR_FLAGS, ...MAIL_FLAGS]
2922
+ flags: [...HOW_FLAGS, ...WHAT_FLAGS, ...PRIVACY_FLAGS, ...CALENDAR_FLAGS, ...MAIL_FLAGS, ...CRM_FLAGS]
2850
2923
  });
2851
2924
 
2852
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/agent.js
2925
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/agent.js
2853
2926
  var TYPES = new Map(VOCABULARY.flags.map((flag) => [flag.name, flag.type]));
2854
2927
  var snake = /* @__PURE__ */ __name((name) => name.replaceAll("|", "_or_").replace(/[^a-z0-9]+/gi, "_"), "snake");
2855
2928
  var longOf = /* @__PURE__ */ __name((option) => option.flags.match(/--[a-z0-9][a-z0-9-]*/)?.[0], "longOf");
@@ -3072,7 +3145,7 @@ var runCommandForAgent = /* @__PURE__ */ __name(async (program, path, input, ctx
3072
3145
  }
3073
3146
  }, "runCommandForAgent");
3074
3147
 
3075
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/tool.js
3148
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/tool.js
3076
3149
  var limit = optional(pipe(number(), integer(), minValue(1), maxValue(100), description("how many")));
3077
3150
  var page = optional(pipe(number(), integer(), minValue(1), description("which page, from 1")));
3078
3151
  var message = pipe(
@@ -3331,7 +3404,7 @@ var failed = /* @__PURE__ */ __name((error, errors, effects) => {
3331
3404
  return mcpErrorResult(JSON.parse(agentJson(errorObjectOf(error, context))));
3332
3405
  }, "failed");
3333
3406
 
3334
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/mcp/surface.js
3407
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/mcp/surface.js
3335
3408
  import { randomUUID } from "node:crypto";
3336
3409
  var MATCHES = 8;
3337
3410
  var ANSWER = answerSchema();
@@ -4,7 +4,7 @@ import {
4
4
  __name
5
5
  } from "./chunk-ZVVMGPBJ.js";
6
6
 
7
- // node_modules/.pnpm/@wirecat+cli-core@0.584.0_@wirecat+cli-base@0.77.1_commander@15.0.0_esbuild@0.28.2_type_ab8c0b68b8b4768d5b87d6e249ef10da/node_modules/@wirecat/cli-core/dist/background/processes.js
7
+ // node_modules/.pnpm/@wirecat+cli-core@0.595.0_@wirecat+cli-base@0.80.3_commander@15.0.0_esbuild@0.28.2_type_2c96d170c489856a39cafd5889a9e4ba/node_modules/@wirecat/cli-core/dist/background/processes.js
8
8
  import { execFileSync } from "node:child_process";
9
9
  import { readdirSync, readFileSync, readlinkSync } from "node:fs";
10
10
  var alive = /* @__PURE__ */ __name((pid) => {