@wirecat/cli-core 0.340.0 → 0.342.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 (256) hide show
  1. package/dist/cli/author.d.ts +6 -0
  2. package/dist/cli/author.d.ts.map +1 -1
  3. package/dist/cli/author.js +15 -0
  4. package/dist/cli/author.js.map +1 -1
  5. package/dist/cli/context.d.ts +2 -1
  6. package/dist/cli/context.d.ts.map +1 -1
  7. package/dist/cli/context.js +2 -1
  8. package/dist/cli/context.js.map +1 -1
  9. package/dist/cli/effects.d.ts +2 -1
  10. package/dist/cli/effects.d.ts.map +1 -1
  11. package/dist/cli/effects.js +3 -2
  12. package/dist/cli/effects.js.map +1 -1
  13. package/dist/cli/index.d.ts +0 -1
  14. package/dist/cli/index.d.ts.map +1 -1
  15. package/dist/cli/index.js +0 -1
  16. package/dist/cli/index.js.map +1 -1
  17. package/dist/cli/messenger/attachments-command.d.ts.map +1 -1
  18. package/dist/cli/messenger/attachments-command.js +10 -3
  19. package/dist/cli/messenger/attachments-command.js.map +1 -1
  20. package/dist/cli/messenger/catch-up.d.ts +8 -2
  21. package/dist/cli/messenger/catch-up.d.ts.map +1 -1
  22. package/dist/cli/messenger/catch-up.js +11 -3
  23. package/dist/cli/messenger/catch-up.js.map +1 -1
  24. package/dist/cli/messenger/context.d.ts +2 -0
  25. package/dist/cli/messenger/context.d.ts.map +1 -1
  26. package/dist/cli/messenger/context.js +5 -1
  27. package/dist/cli/messenger/context.js.map +1 -1
  28. package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
  29. package/dist/cli/messenger/conversations-command.js +25 -1
  30. package/dist/cli/messenger/conversations-command.js.map +1 -1
  31. package/dist/cli/messenger/inbox.d.ts.map +1 -1
  32. package/dist/cli/messenger/inbox.js +11 -6
  33. package/dist/cli/messenger/inbox.js.map +1 -1
  34. package/dist/cli/messenger/mcp-command.js +1 -1
  35. package/dist/cli/messenger/mcp-command.js.map +1 -1
  36. package/dist/cli/messenger/mentions-command.d.ts.map +1 -1
  37. package/dist/cli/messenger/mentions-command.js +6 -7
  38. package/dist/cli/messenger/mentions-command.js.map +1 -1
  39. package/dist/cli/messenger/messages-command.d.ts.map +1 -1
  40. package/dist/cli/messenger/messages-command.js +2 -2
  41. package/dist/cli/messenger/messages-command.js.map +1 -1
  42. package/dist/cli/messenger/messages-send-command.d.ts.map +1 -1
  43. package/dist/cli/messenger/messages-send-command.js +2 -2
  44. package/dist/cli/messenger/messages-send-command.js.map +1 -1
  45. package/dist/cli/messenger/private-people-command.d.ts.map +1 -1
  46. package/dist/cli/messenger/private-people-command.js +5 -4
  47. package/dist/cli/messenger/private-people-command.js.map +1 -1
  48. package/dist/cli/messenger/review.js +6 -6
  49. package/dist/cli/messenger/review.js.map +1 -1
  50. package/dist/cli/messenger/store-maintenance-command.d.ts +1 -1
  51. package/dist/cli/messenger/tasks-command.d.ts.map +1 -1
  52. package/dist/cli/messenger/tasks-command.js +12 -10
  53. package/dist/cli/messenger/tasks-command.js.map +1 -1
  54. package/dist/cli/program.d.ts.map +1 -1
  55. package/dist/cli/program.js +3 -2
  56. package/dist/cli/program.js.map +1 -1
  57. package/dist/cli/stdin-field.d.ts +11 -0
  58. package/dist/cli/stdin-field.d.ts.map +1 -0
  59. package/dist/cli/stdin-field.js +7 -0
  60. package/dist/cli/stdin-field.js.map +1 -0
  61. package/dist/domain/tag-consolidation.d.ts +78 -0
  62. package/dist/domain/tag-consolidation.d.ts.map +1 -0
  63. package/dist/domain/tag-consolidation.js +2 -0
  64. package/dist/domain/tag-consolidation.js.map +1 -0
  65. package/dist/errors/reasons.d.ts.map +1 -1
  66. package/dist/errors/reasons.js +7 -1
  67. package/dist/errors/reasons.js.map +1 -1
  68. package/dist/mcp/agent.d.ts +10 -1
  69. package/dist/mcp/agent.d.ts.map +1 -1
  70. package/dist/mcp/agent.js +67 -21
  71. package/dist/mcp/agent.js.map +1 -1
  72. package/dist/mcp/prompts.js +1 -1
  73. package/dist/mcp/prompts.js.map +1 -1
  74. package/dist/mcp/server.d.ts +5 -0
  75. package/dist/mcp/server.d.ts.map +1 -1
  76. package/dist/mcp/server.js +278 -32
  77. package/dist/mcp/server.js.map +1 -1
  78. package/dist/mcp/session.d.ts +2 -0
  79. package/dist/mcp/session.d.ts.map +1 -1
  80. package/dist/mcp/session.js +2 -0
  81. package/dist/mcp/session.js.map +1 -1
  82. package/dist/mcp/surface.d.ts +5 -2
  83. package/dist/mcp/surface.d.ts.map +1 -1
  84. package/dist/mcp/surface.js +7 -4
  85. package/dist/mcp/surface.js.map +1 -1
  86. package/dist/mcp/tool.d.ts +3 -6
  87. package/dist/mcp/tool.d.ts.map +1 -1
  88. package/dist/mcp/tool.js +3 -36
  89. package/dist/mcp/tool.js.map +1 -1
  90. package/dist/mcp/tools/attachments.d.ts.map +1 -1
  91. package/dist/mcp/tools/attachments.js +3 -138
  92. package/dist/mcp/tools/attachments.js.map +1 -1
  93. package/dist/mcp/tools.d.ts +4 -21
  94. package/dist/mcp/tools.d.ts.map +1 -1
  95. package/dist/mcp/tools.js +4 -97
  96. package/dist/mcp/tools.js.map +1 -1
  97. package/dist/sends/permissions.d.ts.map +1 -1
  98. package/dist/sends/permissions.js +2 -1
  99. package/dist/sends/permissions.js.map +1 -1
  100. package/dist/store/drivers/node-sqlite.d.ts +2 -3
  101. package/dist/store/drivers/node-sqlite.d.ts.map +1 -1
  102. package/dist/store/drivers/node-sqlite.js +2 -3
  103. package/dist/store/drivers/node-sqlite.js.map +1 -1
  104. package/dist/store/index.d.ts +1 -0
  105. package/dist/store/index.d.ts.map +1 -1
  106. package/dist/store/index.js.map +1 -1
  107. package/dist/store/open.d.ts.map +1 -1
  108. package/dist/store/open.js +2 -0
  109. package/dist/store/open.js.map +1 -1
  110. package/dist/store/sqlite/open.d.ts.map +1 -1
  111. package/dist/store/sqlite/open.js +2 -0
  112. package/dist/store/sqlite/open.js.map +1 -1
  113. package/dist/store/sqlite/tag-consolidation.d.ts +5 -0
  114. package/dist/store/sqlite/tag-consolidation.d.ts.map +1 -0
  115. package/dist/store/sqlite/tag-consolidation.js +178 -0
  116. package/dist/store/sqlite/tag-consolidation.js.map +1 -0
  117. package/dist/store/sqlite/tags.js +1 -1
  118. package/dist/store/sqlite/tags.js.map +1 -1
  119. package/dist/store/sqlite/vocabulary.d.ts +2 -1
  120. package/dist/store/sqlite/vocabulary.d.ts.map +1 -1
  121. package/dist/store/sqlite/vocabulary.js +2 -0
  122. package/dist/store/sqlite/vocabulary.js.map +1 -1
  123. package/dist/store/sqlite-warning.d.ts +8 -0
  124. package/dist/store/sqlite-warning.d.ts.map +1 -0
  125. package/dist/store/sqlite-warning.js +26 -0
  126. package/dist/store/sqlite-warning.js.map +1 -0
  127. package/package.json +3 -3
  128. package/parity.json +12 -0
  129. package/dist/mcp/search-sync.d.ts +0 -12
  130. package/dist/mcp/search-sync.d.ts.map +0 -1
  131. package/dist/mcp/search-sync.js +0 -18
  132. package/dist/mcp/search-sync.js.map +0 -1
  133. package/dist/mcp/thread-options.d.ts +0 -19
  134. package/dist/mcp/thread-options.d.ts.map +0 -1
  135. package/dist/mcp/thread-options.js +0 -20
  136. package/dist/mcp/thread-options.js.map +0 -1
  137. package/dist/mcp/tools/account.d.ts +0 -4
  138. package/dist/mcp/tools/account.d.ts.map +0 -1
  139. package/dist/mcp/tools/account.js +0 -31
  140. package/dist/mcp/tools/account.js.map +0 -1
  141. package/dist/mcp/tools/admin-statistics.d.ts +0 -4
  142. package/dist/mcp/tools/admin-statistics.d.ts.map +0 -1
  143. package/dist/mcp/tools/admin-statistics.js +0 -163
  144. package/dist/mcp/tools/admin-statistics.js.map +0 -1
  145. package/dist/mcp/tools/admin.d.ts +0 -5
  146. package/dist/mcp/tools/admin.d.ts.map +0 -1
  147. package/dist/mcp/tools/admin.js +0 -262
  148. package/dist/mcp/tools/admin.js.map +0 -1
  149. package/dist/mcp/tools/chats-read.d.ts +0 -4
  150. package/dist/mcp/tools/chats-read.d.ts.map +0 -1
  151. package/dist/mcp/tools/chats-read.js +0 -28
  152. package/dist/mcp/tools/chats-read.js.map +0 -1
  153. package/dist/mcp/tools/chats-state.d.ts +0 -5
  154. package/dist/mcp/tools/chats-state.d.ts.map +0 -1
  155. package/dist/mcp/tools/chats-state.js +0 -58
  156. package/dist/mcp/tools/chats-state.js.map +0 -1
  157. package/dist/mcp/tools/chats.d.ts +0 -4
  158. package/dist/mcp/tools/chats.d.ts.map +0 -1
  159. package/dist/mcp/tools/chats.js +0 -194
  160. package/dist/mcp/tools/chats.js.map +0 -1
  161. package/dist/mcp/tools/contacts-write.d.ts +0 -5
  162. package/dist/mcp/tools/contacts-write.d.ts.map +0 -1
  163. package/dist/mcp/tools/contacts-write.js +0 -53
  164. package/dist/mcp/tools/contacts-write.js.map +0 -1
  165. package/dist/mcp/tools/contacts.d.ts +0 -4
  166. package/dist/mcp/tools/contacts.d.ts.map +0 -1
  167. package/dist/mcp/tools/contacts.js +0 -196
  168. package/dist/mcp/tools/contacts.js.map +0 -1
  169. package/dist/mcp/tools/conversations.d.ts +0 -5
  170. package/dist/mcp/tools/conversations.d.ts.map +0 -1
  171. package/dist/mcp/tools/conversations.js +0 -265
  172. package/dist/mcp/tools/conversations.js.map +0 -1
  173. package/dist/mcp/tools/folders.d.ts +0 -5
  174. package/dist/mcp/tools/folders.d.ts.map +0 -1
  175. package/dist/mcp/tools/folders.js +0 -103
  176. package/dist/mcp/tools/folders.js.map +0 -1
  177. package/dist/mcp/tools/inbox.d.ts +0 -6
  178. package/dist/mcp/tools/inbox.d.ts.map +0 -1
  179. package/dist/mcp/tools/inbox.js +0 -65
  180. package/dist/mcp/tools/inbox.js.map +0 -1
  181. package/dist/mcp/tools/messages-actions.d.ts +0 -5
  182. package/dist/mcp/tools/messages-actions.d.ts.map +0 -1
  183. package/dist/mcp/tools/messages-actions.js +0 -129
  184. package/dist/mcp/tools/messages-actions.js.map +0 -1
  185. package/dist/mcp/tools/messages-delete.d.ts +0 -4
  186. package/dist/mcp/tools/messages-delete.d.ts.map +0 -1
  187. package/dist/mcp/tools/messages-delete.js +0 -39
  188. package/dist/mcp/tools/messages-delete.js.map +0 -1
  189. package/dist/mcp/tools/messages-send.d.ts +0 -8
  190. package/dist/mcp/tools/messages-send.d.ts.map +0 -1
  191. package/dist/mcp/tools/messages-send.js +0 -107
  192. package/dist/mcp/tools/messages-send.js.map +0 -1
  193. package/dist/mcp/tools/messages-transcribe.d.ts +0 -4
  194. package/dist/mcp/tools/messages-transcribe.d.ts.map +0 -1
  195. package/dist/mcp/tools/messages-transcribe.js +0 -32
  196. package/dist/mcp/tools/messages-transcribe.js.map +0 -1
  197. package/dist/mcp/tools/messages.d.ts +0 -4
  198. package/dist/mcp/tools/messages.d.ts.map +0 -1
  199. package/dist/mcp/tools/messages.js +0 -207
  200. package/dist/mcp/tools/messages.js.map +0 -1
  201. package/dist/mcp/tools/moderation.d.ts +0 -8
  202. package/dist/mcp/tools/moderation.d.ts.map +0 -1
  203. package/dist/mcp/tools/moderation.js +0 -36
  204. package/dist/mcp/tools/moderation.js.map +0 -1
  205. package/dist/mcp/tools/polls.d.ts +0 -6
  206. package/dist/mcp/tools/polls.d.ts.map +0 -1
  207. package/dist/mcp/tools/polls.js +0 -140
  208. package/dist/mcp/tools/polls.js.map +0 -1
  209. package/dist/mcp/tools/private-people.d.ts +0 -4
  210. package/dist/mcp/tools/private-people.d.ts.map +0 -1
  211. package/dist/mcp/tools/private-people.js +0 -121
  212. package/dist/mcp/tools/private-people.js.map +0 -1
  213. package/dist/mcp/tools/rankings.d.ts +0 -4
  214. package/dist/mcp/tools/rankings.d.ts.map +0 -1
  215. package/dist/mcp/tools/rankings.js +0 -112
  216. package/dist/mcp/tools/rankings.js.map +0 -1
  217. package/dist/mcp/tools/reactions.d.ts +0 -5
  218. package/dist/mcp/tools/reactions.d.ts.map +0 -1
  219. package/dist/mcp/tools/reactions.js +0 -33
  220. package/dist/mcp/tools/reactions.js.map +0 -1
  221. package/dist/mcp/tools/review.d.ts +0 -4
  222. package/dist/mcp/tools/review.d.ts.map +0 -1
  223. package/dist/mcp/tools/review.js +0 -68
  224. package/dist/mcp/tools/review.js.map +0 -1
  225. package/dist/mcp/tools/runs.d.ts +0 -4
  226. package/dist/mcp/tools/runs.d.ts.map +0 -1
  227. package/dist/mcp/tools/runs.js +0 -28
  228. package/dist/mcp/tools/runs.js.map +0 -1
  229. package/dist/mcp/tools/search-tools.d.ts +0 -5
  230. package/dist/mcp/tools/search-tools.d.ts.map +0 -1
  231. package/dist/mcp/tools/search-tools.js +0 -132
  232. package/dist/mcp/tools/search-tools.js.map +0 -1
  233. package/dist/mcp/tools/search.d.ts +0 -154
  234. package/dist/mcp/tools/search.d.ts.map +0 -1
  235. package/dist/mcp/tools/search.js +0 -163
  236. package/dist/mcp/tools/search.js.map +0 -1
  237. package/dist/mcp/tools/searches.d.ts +0 -4
  238. package/dist/mcp/tools/searches.d.ts.map +0 -1
  239. package/dist/mcp/tools/searches.js +0 -108
  240. package/dist/mcp/tools/searches.js.map +0 -1
  241. package/dist/mcp/tools/store.d.ts +0 -4
  242. package/dist/mcp/tools/store.d.ts.map +0 -1
  243. package/dist/mcp/tools/store.js +0 -163
  244. package/dist/mcp/tools/store.js.map +0 -1
  245. package/dist/mcp/tools/tags.d.ts +0 -4
  246. package/dist/mcp/tools/tags.d.ts.map +0 -1
  247. package/dist/mcp/tools/tags.js +0 -64
  248. package/dist/mcp/tools/tags.js.map +0 -1
  249. package/dist/mcp/tools/tasks.d.ts +0 -4
  250. package/dist/mcp/tools/tasks.d.ts.map +0 -1
  251. package/dist/mcp/tools/tasks.js +0 -369
  252. package/dist/mcp/tools/tasks.js.map +0 -1
  253. package/dist/mcp/tools/topics.d.ts +0 -5
  254. package/dist/mcp/tools/topics.d.ts.map +0 -1
  255. package/dist/mcp/tools/topics.js +0 -134
  256. package/dist/mcp/tools/topics.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,10 @@ type Invocation = Parameters<Messenger["connect"]>[0];
10
10
  * A factory of servers over one session. `serveStdio` may build a probe instance and throw it away
11
11
  * before settling on the protocol era, so each call is a fresh server — and all of them share the
12
12
  * one connection, which is the thing that must not be opened twice.
13
+ *
14
+ * Every tool is a command of this CLI (`toolsFromCommands`), run in this process through the CLI's own `run`
15
+ * (`runCommandForAgent`) on the session's connection. The few answers a command cannot give — a picture handed to
16
+ * the model — stay definitions of their own (`pictureTools`).
13
17
  */
14
18
  export declare const createServer: (command: Invocation, context: MessengerContext, messenger: Messenger, sessionOptions: ServerOptions) => {
15
19
  session: MessengerSession;
@@ -19,6 +23,7 @@ export declare const createServer: (command: Invocation, context: MessengerConte
19
23
  record: (action: import("../store/index.js").AgentActionInput) => Promise<void>;
20
24
  close: () => Promise<void>;
21
25
  };
26
+ offered: string[];
22
27
  };
23
28
  /**
24
29
  * Serves until the client closes stdin or the process is told to stop, then closes the connection.
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAUxD,OAAO,EAAgB,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAQjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAIlD,OAAO,EAAE,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAKpE,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,8BAA8B,EAAE,QAAQ,CAAA;CAAE,CAAA;AAE3G,KAAK,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAErD;;;;GAIG;AACH,eAAO,MAAM,YAAY,YACd,UAAU,WACV,gBAAgB,aACd,SAAS,kBACJ,aAAa;;;iBAuDX,SAAS;;;;;CA4E5B,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,cAAc,YAChB,UAAU,WACV,gBAAgB,aACd,SAAS,WACX,aAAa,KACrB,OAAO,CAAC,IAAI,CA6Bd,CAAA;AAED,wDAAwD;AACxD,eAAO,MAAM,yBAAyB,YAC3B,UAAU,WACV,gBAAgB,aACd,SAAS,WACX,aAAa,QAChB,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC,KACxD,OAAO,CAAC,IAAI,CAoCd,CAAA"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AACA,OAAO,EAAuB,SAAS,EAAE,MAAM,8BAA8B,CAAA;AAc7E,OAAO,EAAgB,KAAK,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAYjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAIlD,OAAO,EAAY,gBAAgB,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAkB9E,MAAM,MAAM,aAAa,GAAG,cAAc,GAAG;IAAE,QAAQ,CAAC,EAAE,OAAO,8BAA8B,EAAE,QAAQ,CAAA;CAAE,CAAA;AAE3G,KAAK,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAqCrD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,YACd,UAAU,WACV,gBAAgB,aACd,SAAS,kBACJ,aAAa;;;iBA8LX,SAAS;;;;;;CAiF5B,CAAA;AAsED;;;;GAIG;AACH,eAAO,MAAM,cAAc,YAChB,UAAU,WACV,gBAAgB,aACd,SAAS,WACX,aAAa,KACrB,OAAO,CAAC,IAAI,CA8Bd,CAAA;AAED,wDAAwD;AACxD,eAAO,MAAM,yBAAyB,YAC3B,UAAU,WACV,gBAAgB,aACd,SAAS,WACX,aAAa,QAChB,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC,KACxD,OAAO,CAAC,IAAI,CAoCd,CAAA"}
@@ -1,52 +1,139 @@
1
+ import { PassThrough, Writable } from "node:stream";
1
2
  import { McpServer } from "@modelcontextprotocol/server";
2
3
  import { StdioServerTransport, serveStdio } from "@modelcontextprotocol/server/stdio";
3
- import { CliError } from "@wirecat/cli-base";
4
+ import { CliError, mcpErrorResult } from "@wirecat/cli-base";
4
5
  import { describeProgram } from "@wirecat/cli-base/commands";
5
6
  import { skillResource } from "@wirecat/cli-base/skill";
6
7
  import * as v from "valibot";
8
+ import { findCommand } from "../cli/command-contract.js";
7
9
  import { environmentOf } from "../cli/context.js";
8
10
  import { judgedTargets } from "../cli/effects.js";
9
11
  import { itemOf } from "../cli/envelope.js";
12
+ import { DEFAULT_OUTPUT_BYTES } from "../cli/execution.js";
10
13
  import { recalledAccount } from "../cli/messenger/accounts.js";
14
+ import { wholeList } from "../cli/messenger/chat-answers.js";
11
15
  import { connectedFor } from "../cli/messenger/context.js";
16
+ import { lackedNeed } from "../cli/messenger/lacks.js";
12
17
  import { syncsFirst } from "../cli/messenger/search-sync-options.js";
18
+ import { stdinFieldOf } from "../cli/stdin-field.js";
13
19
  import { rootOf } from "../cli/steps.js";
14
20
  import { warmEmbedders } from "../embeddings/embed.js";
15
21
  import { guardFor } from "../sends/guard.js";
16
22
  import { levelFor, readKeysForCommand } from "../sends/permissions.js";
17
23
  import { openStore } from "../store/store.js";
24
+ import { runCommandForAgent, toolsFromCommands } from "./agent.js";
18
25
  import { agentLog } from "./agent-log.js";
19
26
  import { instructions } from "./instructions.js";
20
27
  import { registerPrompts } from "./prompts.js";
21
28
  import { registerResources } from "./resources.js";
22
- import { MessengerSession } from "./session.js";
23
- import { registerSurface } from "./surface.js";
24
- import { commandOf, READ, tool, toolKey } from "./tool.js";
25
- import { mountedMcpTools } from "./tools.js";
29
+ import { harmless, MessengerSession } from "./session.js";
30
+ import { outputOf, registerCommands, surfaceCommands } from "./surface.js";
31
+ import { agentJson } from "./text.js";
32
+ import { answered, commandOf, failed, outcomeOf, READ, tierOf, tool, toolKey, WRITE, } from "./tool.js";
33
+ import { pictureTools } from "./tools.js";
34
+ /** What `run()` sets for each run itself; everything else a test or the CLI handed the server reaches its commands. */
35
+ const PER_RUN = new Set([
36
+ "streams",
37
+ "stdin",
38
+ "stdout",
39
+ "stderr",
40
+ "tty",
41
+ "signal",
42
+ "commandSignal",
43
+ "trackCloseable",
44
+ "exit",
45
+ "runCommand",
46
+ "app",
47
+ "relayed",
48
+ "agent",
49
+ "answer",
50
+ "untilStopped",
51
+ "endUntilStopped",
52
+ "handled",
53
+ "mcp",
54
+ ]);
55
+ const SYNC_FIELDS = ["sync_first", "sync_time", "max_chats", "max_messages"];
56
+ /** A command an agent may run, as the tool name `instructions` and the audit tier read it: `chats_mark_read`. */
57
+ const keyOfCommand = (command) => command.replace(/[ -]/g, "_");
58
+ /** A command's `--json` answer is already an envelope; a bare list or value is wrapped as one. */
59
+ const envelope = (command, value) => Array.isArray(value)
60
+ ? wholeList(command, value)
61
+ : value !== null && typeof value === "object" && ("item" in value || "items" in value)
62
+ ? value
63
+ : itemOf(value !== null && typeof value === "object" ? value : { value });
26
64
  /**
27
65
  * A factory of servers over one session. `serveStdio` may build a probe instance and throw it away
28
66
  * before settling on the protocol era, so each call is a fresh server — and all of them share the
29
67
  * one connection, which is the thing that must not be opened twice.
68
+ *
69
+ * Every tool is a command of this CLI (`toolsFromCommands`), run in this process through the CLI's own `run`
70
+ * (`runCommandForAgent`) on the session's connection. The few answers a command cannot give — a picture handed to
71
+ * the model — stay definitions of their own (`pictureTools`).
30
72
  */
31
73
  export const createServer = (command, context, messenger, sessionOptions) => {
32
74
  const { app, provider } = messenger;
33
75
  const name = messenger.name ?? app.command;
34
76
  const { settings } = context;
77
+ const root = rootOf(command);
78
+ const environment = environmentOf(command);
79
+ if (!environment.runCommand)
80
+ throw new Error("the MCP server runs inside run(), which hands it the program");
81
+ const program = { run: environment.runCommand, commands: describeProgram(root) };
82
+ const overrides = command.optsWithGlobals().permission ?? [];
35
83
  const refreshPermissions = () => {
36
84
  const current = messenger.resolveSettings(command.optsWithGlobals(), { env: context.env });
37
85
  settings.permissions = current.permissions;
38
86
  settings.permissionSources = current.permissionSources;
39
87
  };
40
88
  const levelOf = (key) => (key ? levelFor(settings.permissions, key).level : "allow");
41
- // A tool the level would refuse is not offered: an agent is not handed a tool that cannot work.
42
- const offered = Object.fromEntries(Object.entries(mountedMcpTools(describeProgram(rootOf(command)), messenger)).filter(([key, one]) => {
89
+ const keyOf = (path) => {
90
+ if (!messenger.permissionKey)
91
+ return undefined;
92
+ try {
93
+ return messenger.permissionKey(findCommand(root, path));
94
+ }
95
+ catch {
96
+ return undefined;
97
+ }
98
+ };
99
+ const stdin = (path) => {
100
+ try {
101
+ return stdinFieldOf(findCommand(root, path));
102
+ }
103
+ catch {
104
+ return undefined;
105
+ }
106
+ };
107
+ const syncAllowed = (path) => syncsFirst(messenger) &&
108
+ levelOf("messages.sync-first") === "allow" &&
109
+ (path[0] !== "stats" || levelOf(`${path.join(".")}.sync-first`) === "allow");
110
+ // A command the level refuses is not offered: an agent is not handed a tool that cannot work.
111
+ const generated = toolsFromCommands(program.commands, {
112
+ exclude: [["bot"]],
113
+ levels: settings.permissions,
114
+ keyOf,
115
+ offline: true,
116
+ stdin,
117
+ }).map((one) => "sync_first" in one.input.entries && !syncAllowed(one.path)
118
+ ? {
119
+ ...one,
120
+ input: v.object(Object.fromEntries(Object.entries(one.input.entries).filter(([field]) => !SYNC_FIELDS.includes(field)))),
121
+ }
122
+ : one);
123
+ const mounted = new Set(toolsFromCommands(program.commands, { exclude: [["bot"]] }).map((one) => one.command));
124
+ const pictures = Object.fromEntries(Object.entries(pictureTools(messenger)).filter(([key, one]) => {
125
+ const path = commandOf(key, one).split(" ");
126
+ if (!one.agentOnly && (!mounted.has(path.join(" ")) || lackedNeed(messenger, path.join(" "))))
127
+ return false;
43
128
  const level = levelOf(toolKey(key, one));
44
- const writes = one.permission !== undefined || one.annotations.readOnlyHint !== true;
45
129
  return (level !== "deny" &&
46
- !(writes && level === "readonly") &&
47
- readKeysForCommand(commandOf(key, one).split(" ")).every((data) => levelOf(data) !== "deny"));
130
+ !(one.annotations.readOnlyHint !== true && level === "readonly") &&
131
+ readKeysForCommand(path).every((data) => levelOf(data) !== "deny"));
48
132
  }));
49
- const writes = Object.fromEntries(Object.entries(offered).filter(([, one]) => one.annotations.readOnlyHint !== true));
133
+ const pictured = new Set(Object.entries(pictures).map(([key, one]) => commandOf(key, one)));
134
+ // A command whose one adapter method the messenger lacks only refuses: an agent is not handed it.
135
+ const commands = generated.filter((one) => !pictured.has(one.command) && !lackedNeed(messenger, one.command));
136
+ const writes = commands.filter((one) => one.writes).map((one) => one.command);
50
137
  // No one is at a terminal to answer the guard's question: over MCP a write at level `ask` goes ahead.
51
138
  const goAhead = async () => { };
52
139
  const guard = messenger.guard?.(command, settings, context.renderer.warn, goAhead) ??
@@ -62,34 +149,116 @@ export const createServer = (command, context, messenger, sessionOptions) => {
62
149
  local: async () => itemOf({
63
150
  profile: settings.profile,
64
151
  account: recalledAccount(app, provider, settings.profile, context.env)?.account ?? null,
65
- writes: Object.entries(writes).map(([name, definition]) => commandOf(name, definition)),
152
+ writes,
66
153
  permissions: settings.permissions,
67
154
  ...(messenger.diagnose ? { [messenger.provider]: await messenger.diagnose(command, context) } : {}),
68
155
  }),
69
156
  });
70
157
  const skill = messenger.skill ? skillResource(app, messenger.skill) : undefined;
71
158
  const log = agentLog(() => openStore({ env: context.env, command: app.command }));
159
+ const audit = async (call) => {
160
+ if (!recalledAccount(app, provider, settings.profile, context.env))
161
+ return;
162
+ await log.record({ actor: { bot: `${app.command}-mcp` }, ...call });
163
+ };
164
+ const targets = judgedTargets(root);
165
+ const passed = Object.fromEntries(Object.entries(environment).filter(([key]) => !PER_RUN.has(key)));
166
+ const agentEnvironment = {
167
+ ...passed,
168
+ embedders,
169
+ ...(sessionOptions.spawnJob ? { spawnJob: sessionOptions.spawnJob } : {}),
170
+ };
171
+ /**
172
+ * One command at a time, on the session's connection, opened only if the command asks for it. A failure that may
173
+ * have been the connection's drops it, as the session does for its own calls.
174
+ */
175
+ const invoke = (one, input, env) => new Promise((resolve) => {
176
+ let finish;
177
+ let held;
178
+ const connection = () => new Promise((lend, refuse) => {
179
+ held = session.use(`mcp ${one.command}`, (adapter, release) => new Promise((done) => {
180
+ finish = (drop) => void (drop ? release().finally(done) : done());
181
+ lend(adapter);
182
+ }));
183
+ held.catch(refuse);
184
+ });
185
+ void runCommandForAgent(program, one.path, input, {
186
+ profile: settings.profile,
187
+ env,
188
+ levels: () => {
189
+ refreshPermissions();
190
+ return settings.permissions;
191
+ },
192
+ overrides,
193
+ keyOf,
194
+ stdin,
195
+ connection,
196
+ environment: agentEnvironment,
197
+ }).then(async (answer) => {
198
+ finish?.("error" in answer && !harmless(answer.error.error.code));
199
+ await held?.catch(() => undefined);
200
+ resolve(answer);
201
+ });
202
+ });
203
+ let queue = Promise.resolve();
204
+ const queued = (one, input, env) => {
205
+ const next = queue.then(() => invoke(one, input, env));
206
+ queue = next.catch(() => undefined);
207
+ return next;
208
+ };
209
+ const asCommand = (one) => ({
210
+ title: one.title,
211
+ description: one.description,
212
+ writes: one.writes,
213
+ input: one.input,
214
+ ...(one.output ? { output: outputOf(one.output) } : {}),
215
+ run: async (args, ctx) => {
216
+ const startedAt = Date.now();
217
+ // The caller's trace reaches the run, its send journal lines and its record, as `TRACEPARENT` does.
218
+ const traceparent = ctx?.mcpReq?._meta?.traceparent;
219
+ const env = typeof traceparent === "string" ? { ...context.env, TRACEPARENT: traceparent } : context.env;
220
+ const answer = await queued(one, args, env);
221
+ const result = "error" in answer
222
+ ? mcpErrorResult(JSON.parse(agentJson(answer.error)))
223
+ : (() => {
224
+ try {
225
+ return answered(envelope(one.command, answer.result), DEFAULT_OUTPUT_BYTES, targets);
226
+ }
227
+ catch (error) {
228
+ return failed(error, app.errors);
229
+ }
230
+ })();
231
+ // The audit row must not cost the agent its answer: a store that cannot be written is not this call's failure.
232
+ await audit({
233
+ tool: keyOfCommand(one.command),
234
+ tier: tierOf(keyOfCommand(one.command), { annotations: one.writes ? WRITE : READ }, messenger),
235
+ ...outcomeOf(result),
236
+ startedAt,
237
+ finishedAt: Date.now(),
238
+ }).catch(() => undefined);
239
+ return result;
240
+ },
241
+ });
72
242
  const build = () => {
73
243
  const server = new McpServer({ name: app.command, version: app.version }, {
74
244
  instructions: instructions({
75
245
  command: app.command,
76
246
  name,
77
247
  profile: settings.profile,
78
- writes: Object.keys(writes),
248
+ writes: [
249
+ ...writes,
250
+ ...Object.keys(pictures).filter((key) => pictures[key]?.annotations.readOnlyHint !== true),
251
+ ].map(keyOfCommand),
79
252
  ...(skill ? { skill: skill.instruction } : {}),
80
253
  }),
81
254
  });
82
- registerSurface(server, { ...offered, status }, {
255
+ const registration = {
83
256
  command: app.command,
84
257
  messenger,
85
258
  session,
86
259
  withStore: context.withStore,
87
- targets: judgedTargets(rootOf(command)),
88
- log: async (call) => {
89
- if (!recalledAccount(app, provider, settings.profile, context.env))
90
- return;
91
- await log.record({ actor: { bot: `${app.command}-mcp` }, ...call });
92
- },
260
+ targets,
261
+ log: audit,
93
262
  around: (key, definition, work) => {
94
263
  refreshPermissions();
95
264
  const level = levelOf(toolKey(key, definition));
@@ -112,7 +281,11 @@ export const createServer = (command, context, messenger, sessionOptions) => {
112
281
  embedders,
113
282
  history: settings.keepFailedRuns,
114
283
  },
115
- });
284
+ };
285
+ registerCommands(server, app.command, {
286
+ ...Object.fromEntries(commands.map((one) => [one.command, asCommand(one)])),
287
+ ...surfaceCommands({ ...pictures, status }, registration),
288
+ }, app.errors);
116
289
  // The prompts and resources show messages, so a profile that may not read them gets neither.
117
290
  if (levelOf("messages") !== "deny")
118
291
  registerPrompts(server, { command: app.command, name });
@@ -139,7 +312,78 @@ export const createServer = (command, context, messenger, sessionOptions) => {
139
312
  }
140
313
  return server;
141
314
  };
142
- return { session, embedders, build, log };
315
+ return { session, embedders, build, log, offered: [...commands.map((one) => one.command), ...pictured] };
316
+ };
317
+ const lineReader = (onMessage) => {
318
+ let rest = "";
319
+ return (chunk) => {
320
+ const lines = (rest + chunk.toString()).split("\n");
321
+ rest = lines.pop() ?? "";
322
+ for (const line of lines) {
323
+ try {
324
+ const message = JSON.parse(line);
325
+ if (message !== null && typeof message === "object")
326
+ onMessage(message);
327
+ }
328
+ catch {
329
+ // Not a message; the transport answers it as a parse error.
330
+ }
331
+ }
332
+ };
333
+ };
334
+ /**
335
+ * Stdin and stdout as the transport sees them, noting each request that comes in and each answer that goes out, so
336
+ * the server can tell when everything asked has been answered. The transport's stdin never ends by itself: the server
337
+ * closes it, after the client's stdin ended and the last answer went out.
338
+ */
339
+ const answeredWire = (source, sink) => {
340
+ const asked = new Set();
341
+ let settle;
342
+ const input = new PassThrough();
343
+ const onData = lineReader(({ id, method }) => {
344
+ if (id !== undefined && typeof method === "string")
345
+ asked.add(JSON.stringify(id));
346
+ });
347
+ const output = new Writable({
348
+ write: (chunk, _encoding, done) => {
349
+ noteAnswer(chunk);
350
+ sink.write(chunk, done);
351
+ },
352
+ });
353
+ const noteAnswer = lineReader(({ id, method }) => {
354
+ if (id === undefined || method !== undefined)
355
+ return;
356
+ asked.delete(JSON.stringify(id));
357
+ if (asked.size === 0)
358
+ settle?.();
359
+ });
360
+ const forward = (chunk) => {
361
+ onData(chunk);
362
+ input.write(chunk);
363
+ };
364
+ source.on("data", forward);
365
+ const ended = new Promise((resolve) => {
366
+ source.once("end", resolve);
367
+ source.once("close", resolve);
368
+ });
369
+ return {
370
+ input,
371
+ output,
372
+ ended,
373
+ answered: () => new Promise((resolve) => {
374
+ if (asked.size === 0)
375
+ resolve();
376
+ else
377
+ settle = resolve;
378
+ }),
379
+ /** Lets go of the real stdin, so it no longer holds the process open. */
380
+ release: () => {
381
+ source.off("data", forward);
382
+ if (source.listenerCount("data") === 0)
383
+ source.pause();
384
+ input.end();
385
+ },
386
+ };
143
387
  };
144
388
  /**
145
389
  * Serves until the client closes stdin or the process is told to stop, then closes the connection.
@@ -151,23 +395,25 @@ export const serveOverStdio = async (command, context, messenger, options) => {
151
395
  // Relayed by serve, or given by a test's `run()`, the session's bytes are not this process's stdio.
152
396
  const { stdin, stdout, signal } = environmentOf(command);
153
397
  const own = stdin && stdout && stdin !== process.stdin;
154
- const input = own ? stdin : process.stdin;
155
- const transport = own ? new StdioServerTransport(stdin, stdout) : undefined;
398
+ const wire = answeredWire((own ? stdin : process.stdin), (own ? stdout : process.stdout));
156
399
  const handle = serveStdio(build, {
157
- ...(transport ? { transport } : {}),
400
+ transport: new StdioServerTransport(wire.input, wire.output),
158
401
  onerror: (error) => context.renderer.note(`mcp: ${error.message}`),
159
402
  });
160
- await new Promise((resolve) => {
161
- input.once("end", resolve);
162
- input.once("close", resolve);
163
- if (transport)
164
- signal?.addEventListener("abort", () => resolve(), { once: true });
403
+ const ended = await new Promise((resolve) => {
404
+ wire.ended.then(() => resolve("input"));
405
+ if (own)
406
+ signal?.addEventListener("abort", () => resolve("stopped"), { once: true });
165
407
  else {
166
- process.once("SIGINT", resolve);
167
- process.once("SIGTERM", resolve);
408
+ process.once("SIGINT", () => resolve("stopped"));
409
+ process.once("SIGTERM", () => resolve("stopped"));
168
410
  }
169
411
  });
170
412
  try {
413
+ // A one-shot pipe writes its calls and closes stdin: what it asked is still answered (FIND-1514).
414
+ if (ended === "input")
415
+ await wire.answered();
416
+ wire.release();
171
417
  await handle.close();
172
418
  await session.close();
173
419
  }
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export interface SessionOptions {
7
7
  maxAgeMs?: number;
8
8
  now?: () => number;
9
9
  }
10
+ /** Whether a failure with this code leaves the connection worth keeping. */
11
+ export declare const harmless: (code: string) => boolean;
10
12
  /** Opens a connection whose run events go to `events`, and says how to close it and what it opened. */
11
13
  export type Open = (events: EventSink) => Promise<{
12
14
  adapter: MessengerAdapter;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iHAAiH;IACjH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAKD,uGAAuG;AACvG,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAAA;AAE5G,sDAAsD;AACtD,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;AAQ1F;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;;IAY3B,YAAY,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,MAAgB,EAAE,QAAkB,EAAE,GAAc,EAAE,GAAE,cAAmB,EAM9G;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAI9G;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAI3B;CAwCF"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAC7D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAElD,MAAM,WAAW,cAAc;IAC7B,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,iHAAiH;IACjH,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAKD,4EAA4E;AAC5E,eAAO,MAAM,QAAQ,SAAU,MAAM,KAAG,OAA6B,CAAA;AAErE,uGAAuG;AACvG,MAAM,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC;IAAE,OAAO,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAAA;AAE5G,sDAAsD;AACtD,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;AAQ1F;;;;;;;;;;GAUG;AACH,qBAAa,gBAAgB;;IAY3B,YAAY,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,MAAgB,EAAE,QAAkB,EAAE,GAAc,EAAE,GAAE,cAAmB,EAM9G;IAED,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAI9G;IAEK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAI3B;CAwCF"}
@@ -1,6 +1,8 @@
1
1
  import { isCliFailure } from "../errors/failures.js";
2
2
  /** The caller's mistake, not the connection's — nothing about the socket is in doubt after these. */
3
3
  const HARMLESS = new Set(["validation_error", "not_found", "permission_error", "confirmation_required", "rate_limited"]);
4
+ /** Whether a failure with this code leaves the connection worth keeping. */
5
+ export const harmless = (code) => HARMLESS.has(code);
4
6
  /**
5
7
  * **One connection for the whole agent session, and never for long** — max-cli's `MaxSession`
6
8
  * (its `NEED-152`), over any messenger.
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/mcp/session.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { CallToolResult, McpServer, ServerContext } from "@modelcontextprotocol/server";
2
+ import type { CommandOutput } from "@wirecat/cli-base/commands";
2
3
  import * as v from "valibot";
3
4
  import type { AppErrors } from "../errors/reasons.js";
4
5
  import { type AnyTool, type Registration } from "./tool.js";
@@ -26,7 +27,9 @@ export declare const search: (commands: Record<string, McpCommand>, query: strin
26
27
  * did. The list never changes during a connection; what a profile may not use is not in `commands`.
27
28
  */
28
29
  export declare const registerCommands: (server: McpServer, prefix: string, commands: Record<string, McpCommand>, errors?: AppErrors) => void;
29
- /** The personal account's definitions as commands, each run through the shared runner. */
30
- export declare const registerSurface: (server: McpServer, tools: Record<string, AnyTool>, registration: Registration) => void;
30
+ /** The definitions no command answers — a picture for the model, the server's own status — as commands. */
31
+ export declare const surfaceCommands: (tools: Record<string, AnyTool>, registration: Registration) => Record<string, McpCommand>;
32
+ /** The envelope a command answers with, from the entity it declares (`annotate(…, { output })`). */
33
+ export declare const outputOf: ({ entity, view }: CommandOutput) => v.GenericSchema;
31
34
  export {};
32
35
  //# sourceMappingURL=surface.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/mcp/surface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAG5F,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAG5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EACL,KAAK,OAAO,EAQZ,KAAK,YAAY,EAIlB,MAAM,WAAW,CAAA;AAKlB,KAAK,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;AAE1G,qGAAqG;AACrG,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,KAAK,CAAA;IACZ,yFAAyF;IACzF,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,CAAA;IACxB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;CACpF;AAYD;;;GAGG;AACH,eAAO,MAAM,MAAM,aAAc,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,MAAM,KAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAYhG,CAAA;AA0BD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,WACnB,SAAS,UACT,MAAM,YACJ,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,WAC3B,SAAS,SA8GnB,CAAA;AAED,0FAA0F;AAC1F,eAAO,MAAM,eAAe,WAAY,SAAS,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,gBAAgB,YAAY,SAqB5G,CAAA"}
1
+ {"version":3,"file":"surface.d.ts","sourceRoot":"","sources":["../../src/mcp/surface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAG5F,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC/D,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAI5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAErD,OAAO,EACL,KAAK,OAAO,EAQZ,KAAK,YAAY,EAIlB,MAAM,WAAW,CAAA;AAKlB,KAAK,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;AAE1G,qGAAqG;AACrG,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,OAAO,CAAA;IACf,KAAK,EAAE,KAAK,CAAA;IACZ,yFAAyF;IACzF,MAAM,CAAC,EAAE,CAAC,CAAC,aAAa,CAAA;IACxB,gEAAgE;IAChE,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;CACpF;AAYD;;;GAGG;AACH,eAAO,MAAM,MAAM,aAAc,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,MAAM,KAAG,CAAC,MAAM,EAAE,UAAU,CAAC,EAYhG,CAAA;AA0BD;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,WACnB,SAAS,UACT,MAAM,YACJ,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,WAC3B,SAAS,SA8GnB,CAAA;AAED,2GAA2G;AAC3G,eAAO,MAAM,eAAe,UACnB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,gBAChB,YAAY,KACzB,MAAM,CAAC,MAAM,EAAE,UAAU,CAgB3B,CAAA;AAED,oGAAoG;AACpG,eAAO,MAAM,QAAQ,qBAAsB,aAAa,KAAG,CAAC,CAAC,aAG1D,CAAA"}
@@ -3,6 +3,7 @@ import { CliError } from "@wirecat/cli-base";
3
3
  import * as v from "valibot";
4
4
  import { answerSchema, listOf } from "../cli/envelope.js";
5
5
  import { movedPath, movedPointer } from "../cli/moved.js";
6
+ import { ENTITIES } from "../entities/index.js";
6
7
  import { agentArguments } from "./text.js";
7
8
  import { answered, commandOf, entryRunner, failed, inputOf, outputSchemaOf, READ, syncAllowedFor, UNTRUSTED, WRITE, } from "./tool.js";
8
9
  const MATCHES = 8;
@@ -135,10 +136,10 @@ export const registerCommands = (server, prefix, commands, errors) => {
135
136
  annotations: WRITE,
136
137
  }, runner(true));
137
138
  };
138
- /** The personal account's definitions as commands, each run through the shared runner. */
139
- export const registerSurface = (server, tools, registration) => {
139
+ /** The definitions no command answers — a picture for the model, the server's own status — as commands. */
140
+ export const surfaceCommands = (tools, registration) => {
140
141
  const run = entryRunner(registration);
141
- registerCommands(server, registration.command, Object.fromEntries(Object.entries(tools).map(([key, definition]) => [
142
+ return Object.fromEntries(Object.entries(tools).map(([key, definition]) => [
142
143
  commandOf(key, definition),
143
144
  {
144
145
  title: definition.title,
@@ -149,6 +150,8 @@ export const registerSurface = (server, tools, registration) => {
149
150
  checked: true,
150
151
  run: (args, ctx) => run(key, definition, args, ctx),
151
152
  },
152
- ])), registration.messenger?.app?.errors);
153
+ ]));
153
154
  };
155
+ /** The envelope a command answers with, from the entity it declares (`annotate(…, { output })`). */
156
+ export const outputOf = ({ entity, view }) => answerSchema(ENTITIES[(view ? `${entity}.${view}` : entity)] ?? v.unknown());
154
157
  //# sourceMappingURL=surface.js.map