@leemour/cli-messaging 0.156.0 → 0.157.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 (181) hide show
  1. package/README.md +5 -7
  2. package/dist/cli/agent-evaluation.d.ts +25 -0
  3. package/dist/cli/agent-evaluation.d.ts.map +1 -0
  4. package/dist/cli/agent-evaluation.js +42 -0
  5. package/dist/cli/agent-evaluation.js.map +1 -0
  6. package/dist/cli/bot/mcp.d.ts.map +1 -1
  7. package/dist/cli/bot/mcp.js +4 -12
  8. package/dist/cli/bot/mcp.js.map +1 -1
  9. package/dist/cli/command-contract.d.ts +85 -0
  10. package/dist/cli/command-contract.d.ts.map +1 -0
  11. package/dist/cli/command-contract.js +211 -0
  12. package/dist/cli/command-contract.js.map +1 -0
  13. package/dist/cli/commands-command.d.ts.map +1 -1
  14. package/dist/cli/commands-command.js +44 -28
  15. package/dist/cli/commands-command.js.map +1 -1
  16. package/dist/cli/context.d.ts +2 -0
  17. package/dist/cli/context.d.ts.map +1 -1
  18. package/dist/cli/context.js +10 -3
  19. package/dist/cli/context.js.map +1 -1
  20. package/dist/cli/deadline.js +3 -4
  21. package/dist/cli/deadline.js.map +1 -1
  22. package/dist/cli/execution.d.ts +26 -0
  23. package/dist/cli/execution.d.ts.map +1 -0
  24. package/dist/cli/execution.js +175 -0
  25. package/dist/cli/execution.js.map +1 -0
  26. package/dist/cli/index.d.ts +6 -3
  27. package/dist/cli/index.d.ts.map +1 -1
  28. package/dist/cli/index.js +6 -3
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/cli/input-policy.d.ts +14 -0
  31. package/dist/cli/input-policy.d.ts.map +1 -0
  32. package/dist/cli/input-policy.js +66 -0
  33. package/dist/cli/input-policy.js.map +1 -0
  34. package/dist/cli/messenger/mcp-command.d.ts +0 -1
  35. package/dist/cli/messenger/mcp-command.d.ts.map +1 -1
  36. package/dist/cli/messenger/mcp-command.js +15 -19
  37. package/dist/cli/messenger/mcp-command.js.map +1 -1
  38. package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
  39. package/dist/cli/messenger/messages-search-command.js +7 -3
  40. package/dist/cli/messenger/messages-search-command.js.map +1 -1
  41. package/dist/cli/messenger/stats-command.d.ts.map +1 -1
  42. package/dist/cli/messenger/stats-command.js +1 -12
  43. package/dist/cli/messenger/stats-command.js.map +1 -1
  44. package/dist/cli/messenger/stdin.d.ts.map +1 -1
  45. package/dist/cli/messenger/stdin.js +2 -4
  46. package/dist/cli/messenger/stdin.js.map +1 -1
  47. package/dist/cli/permission-migration.d.ts.map +1 -1
  48. package/dist/cli/permission-migration.js +14 -8
  49. package/dist/cli/permission-migration.js.map +1 -1
  50. package/dist/cli/preview.d.ts +35 -0
  51. package/dist/cli/preview.d.ts.map +1 -0
  52. package/dist/cli/preview.js +40 -0
  53. package/dist/cli/preview.js.map +1 -0
  54. package/dist/cli/program.d.ts +1 -1
  55. package/dist/cli/program.d.ts.map +1 -1
  56. package/dist/cli/program.js +148 -15
  57. package/dist/cli/program.js.map +1 -1
  58. package/dist/cli/result-fields.d.ts +3 -0
  59. package/dist/cli/result-fields.d.ts.map +1 -0
  60. package/dist/cli/result-fields.js +55 -0
  61. package/dist/cli/result-fields.js.map +1 -0
  62. package/dist/kit/index.d.ts +1 -0
  63. package/dist/kit/index.d.ts.map +1 -1
  64. package/dist/kit/index.js +1 -0
  65. package/dist/kit/index.js.map +1 -1
  66. package/dist/kit/mcp-commands-client.d.ts +7 -0
  67. package/dist/kit/mcp-commands-client.d.ts.map +1 -0
  68. package/dist/kit/mcp-commands-client.js +50 -0
  69. package/dist/kit/mcp-commands-client.js.map +1 -0
  70. package/dist/mcp/bot/instructions.d.ts +2 -3
  71. package/dist/mcp/bot/instructions.d.ts.map +1 -1
  72. package/dist/mcp/bot/instructions.js +4 -10
  73. package/dist/mcp/bot/instructions.js.map +1 -1
  74. package/dist/mcp/bot/server.d.ts +0 -6
  75. package/dist/mcp/bot/server.d.ts.map +1 -1
  76. package/dist/mcp/bot/server.js +30 -76
  77. package/dist/mcp/bot/server.js.map +1 -1
  78. package/dist/mcp/bot/tools.d.ts +3 -11
  79. package/dist/mcp/bot/tools.d.ts.map +1 -1
  80. package/dist/mcp/bot/tools.js +7 -22
  81. package/dist/mcp/bot/tools.js.map +1 -1
  82. package/dist/mcp/instructions.d.ts +1 -2
  83. package/dist/mcp/instructions.d.ts.map +1 -1
  84. package/dist/mcp/instructions.js +6 -13
  85. package/dist/mcp/instructions.js.map +1 -1
  86. package/dist/mcp/personal.d.ts +1 -1
  87. package/dist/mcp/personal.d.ts.map +1 -1
  88. package/dist/mcp/personal.js +1 -1
  89. package/dist/mcp/personal.js.map +1 -1
  90. package/dist/mcp/prompts.js +14 -14
  91. package/dist/mcp/prompts.js.map +1 -1
  92. package/dist/mcp/server.d.ts +3 -23
  93. package/dist/mcp/server.d.ts.map +1 -1
  94. package/dist/mcp/server.js +20 -51
  95. package/dist/mcp/server.js.map +1 -1
  96. package/dist/mcp/surface.d.ts +29 -0
  97. package/dist/mcp/surface.d.ts.map +1 -0
  98. package/dist/mcp/surface.js +125 -0
  99. package/dist/mcp/surface.js.map +1 -0
  100. package/dist/mcp/tool.d.ts +19 -24
  101. package/dist/mcp/tool.d.ts.map +1 -1
  102. package/dist/mcp/tool.js +109 -91
  103. package/dist/mcp/tool.js.map +1 -1
  104. package/dist/mcp/tools/admin.d.ts.map +1 -1
  105. package/dist/mcp/tools/admin.js +1 -10
  106. package/dist/mcp/tools/admin.js.map +1 -1
  107. package/dist/mcp/tools/attachments.d.ts.map +1 -1
  108. package/dist/mcp/tools/attachments.js +1 -2
  109. package/dist/mcp/tools/attachments.js.map +1 -1
  110. package/dist/mcp/tools/chats-read.d.ts.map +1 -1
  111. package/dist/mcp/tools/chats-read.js +1 -2
  112. package/dist/mcp/tools/chats-read.js.map +1 -1
  113. package/dist/mcp/tools/contacts-write.d.ts.map +1 -1
  114. package/dist/mcp/tools/contacts-write.js +1 -4
  115. package/dist/mcp/tools/contacts-write.js.map +1 -1
  116. package/dist/mcp/tools/conversations.d.ts.map +1 -1
  117. package/dist/mcp/tools/conversations.js +1 -5
  118. package/dist/mcp/tools/conversations.js.map +1 -1
  119. package/dist/mcp/tools/folders.d.ts.map +1 -1
  120. package/dist/mcp/tools/folders.js +1 -4
  121. package/dist/mcp/tools/folders.js.map +1 -1
  122. package/dist/mcp/tools/messages-actions.d.ts.map +1 -1
  123. package/dist/mcp/tools/messages-actions.js +1 -5
  124. package/dist/mcp/tools/messages-actions.js.map +1 -1
  125. package/dist/mcp/tools/messages-delete.d.ts.map +1 -1
  126. package/dist/mcp/tools/messages-delete.js +1 -2
  127. package/dist/mcp/tools/messages-delete.js.map +1 -1
  128. package/dist/mcp/tools/messages-send.d.ts.map +1 -1
  129. package/dist/mcp/tools/messages-send.js +1 -2
  130. package/dist/mcp/tools/messages-send.js.map +1 -1
  131. package/dist/mcp/tools/moderation.d.ts.map +1 -1
  132. package/dist/mcp/tools/moderation.js +1 -2
  133. package/dist/mcp/tools/moderation.js.map +1 -1
  134. package/dist/mcp/tools/polls.d.ts.map +1 -1
  135. package/dist/mcp/tools/polls.js +1 -4
  136. package/dist/mcp/tools/polls.js.map +1 -1
  137. package/dist/mcp/tools/reactions.d.ts.map +1 -1
  138. package/dist/mcp/tools/reactions.js +1 -3
  139. package/dist/mcp/tools/reactions.js.map +1 -1
  140. package/dist/mcp/tools/searches.d.ts.map +1 -1
  141. package/dist/mcp/tools/searches.js +1 -5
  142. package/dist/mcp/tools/searches.js.map +1 -1
  143. package/dist/mcp/tools/tags.d.ts.map +1 -1
  144. package/dist/mcp/tools/tags.js +1 -4
  145. package/dist/mcp/tools/tags.js.map +1 -1
  146. package/dist/mcp/tools/tasks.d.ts.map +1 -1
  147. package/dist/mcp/tools/tasks.js +1 -4
  148. package/dist/mcp/tools/tasks.js.map +1 -1
  149. package/dist/mcp/tools/topics.d.ts.map +1 -1
  150. package/dist/mcp/tools/topics.js +1 -3
  151. package/dist/mcp/tools/topics.js.map +1 -1
  152. package/dist/output.d.ts +3 -1
  153. package/dist/output.d.ts.map +1 -1
  154. package/dist/output.js +13 -3
  155. package/dist/output.js.map +1 -1
  156. package/dist/sends/guarded.d.ts +2 -0
  157. package/dist/sends/guarded.d.ts.map +1 -1
  158. package/dist/sends/guarded.js +37 -3
  159. package/dist/sends/guarded.js.map +1 -1
  160. package/dist/skills/validate.d.ts +9 -0
  161. package/dist/skills/validate.d.ts.map +1 -0
  162. package/dist/skills/validate.js +86 -0
  163. package/dist/skills/validate.js.map +1 -0
  164. package/dist/store/sqlite/chats.d.ts.map +1 -1
  165. package/dist/store/sqlite/chats.js +7 -3
  166. package/dist/store/sqlite/chats.js.map +1 -1
  167. package/dist/terminal/prompt.d.ts +1 -1
  168. package/dist/terminal/prompt.d.ts.map +1 -1
  169. package/dist/terminal/prompt.js +34 -31
  170. package/dist/terminal/prompt.js.map +1 -1
  171. package/package.json +9 -3
  172. package/parity.json +81 -346
  173. package/skills/link-conversations/SKILL.md +8 -13
  174. package/dist/mcp/confirm.d.ts +0 -30
  175. package/dist/mcp/confirm.d.ts.map +0 -1
  176. package/dist/mcp/confirm.js +0 -92
  177. package/dist/mcp/confirm.js.map +0 -1
  178. package/dist/mcp/http/policy.d.ts +0 -13
  179. package/dist/mcp/http/policy.d.ts.map +0 -1
  180. package/dist/mcp/http/policy.js +0 -18
  181. package/dist/mcp/http/policy.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import { resolveOutput } from "../output.js";
2
2
  import { withDeadline } from "./deadline.js";
3
+ import { withAbort } from "./execution.js";
3
4
  import { rootOf } from "./profile.js";
4
5
  import { recorded } from "./runs/recording.js";
5
6
  const environments = new WeakMap();
@@ -9,10 +10,11 @@ export const provide = (program, environment) => {
9
10
  export const environmentOf = (command) => (environments.get(rootOf(command)) ?? {});
10
11
  /** For the commands that print but never need settings or a connection. */
11
12
  export const outputFor = (command) => {
12
- const { streams, tty } = environmentOf(command);
13
+ const { streams, tty, env } = environmentOf(command);
13
14
  return resolveOutput({
14
15
  ...command.optsWithGlobals(),
15
16
  ...(streams ? { streams } : {}),
17
+ ...(env ? { env } : {}),
16
18
  ...(tty === undefined ? {} : { tty }),
17
19
  });
18
20
  };
@@ -23,6 +25,10 @@ export const baseContext = (command, resolveSettings) => {
23
25
  const settings = resolveSettings(command.optsWithGlobals(), { env });
24
26
  const { renderer, format, color, streams } = resolveOutput({
25
27
  ...settings,
28
+ env,
29
+ ...(command.optsWithGlobals().fields
30
+ ? { fields: command.optsWithGlobals().fields }
31
+ : {}),
26
32
  ...(environment.streams ? { streams: environment.streams } : {}),
27
33
  ...(environment.tty === undefined ? {} : { tty: environment.tty }),
28
34
  });
@@ -47,10 +53,11 @@ export const baseContext = (command, resolveSettings) => {
47
53
  format,
48
54
  streams,
49
55
  env,
50
- }, (events) => withDeadline(unbounded ? undefined : settings.commandTimeoutMs, closeables, () => body(events)))
51
- : withDeadline(unbounded ? undefined : settings.commandTimeoutMs, closeables, () => body(() => { })),
56
+ }, (events) => withAbort(environment.commandSignal, () => withDeadline(unbounded ? undefined : settings.commandTimeoutMs, closeables, () => body(events))))
57
+ : withAbort(environment.commandSignal, () => withDeadline(unbounded ? undefined : settings.commandTimeoutMs, closeables, () => body(() => { }))),
52
58
  track: (closeable) => {
53
59
  closeables.push(closeable);
60
+ environment.trackCloseable?.(closeable);
54
61
  },
55
62
  };
56
63
  };
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/cli/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/cli/context.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { CliError } from "@leemour/cli-core";
2
- import { writesInFlight } from "../sends/guarded.js";
2
+ import { stopWrites, withWriteScope } from "../sends/guarded.js";
3
3
  /**
4
4
  * Stops the whole command at `ms`, and **closes what it was holding on the way out**.
5
5
  *
@@ -29,20 +29,19 @@ export const withDeadline = async (ms, closeables, body) => {
29
29
  timer = setTimeout(() => {
30
30
  const pending = [...writes];
31
31
  const cut = pending.filter((write) => !write.preparing);
32
- for (const write of pending)
33
- write.cut();
34
32
  timedOut =
35
33
  cut.length > 0
36
34
  ? new CliError("outcome_unknown", `\`--timeout\` ended the command after ${ms}ms with ${cut.length === 1 ? "a write" : `${cut.length} writes`} ` +
37
35
  "in flight; the messenger may or may not have carried it out — check before repeating it", { operationIds: cut.map((write) => write.operationId), retryable: false })
38
36
  : new CliError("timeout", `the command did not finish within ${ms}ms — \`--timeout\` ended it`);
37
+ stopWrites(writes, timedOut);
39
38
  // Sockets first, then the message: the rejection is what the person reads, and the closing
40
39
  // is what lets the process actually end once they have read it.
41
40
  void Promise.allSettled(closeables.map((closeable) => closeable.close())).then(() => reject(timedOut));
42
41
  }, ms);
43
42
  });
44
43
  try {
45
- return await Promise.race([writesInFlight.run(writes, body), expired]);
44
+ return await Promise.race([withWriteScope(writes, body), expired]);
46
45
  }
47
46
  catch (error) {
48
47
  // Closing rejects the body's own request, and that rejection arrives first.
@@ -1 +1 @@
1
- {"version":3,"file":"deadline.js","sourceRoot":"","sources":["../../src/cli/deadline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAsB,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAOxE;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,EAAsB,EACtB,UAAuB,EACvB,IAAsB,EACV,EAAE;IACd,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,IAAI,EAAE,CAAA;IAEnC,IAAI,KAAiC,CAAA;IACrC,IAAI,QAA8B,CAAA;IAClC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiB,CAAA;IACvC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,CAAA;YAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvD,KAAK,MAAM,KAAK,IAAI,OAAO;gBAAE,KAAK,CAAC,GAAG,EAAE,CAAA;YACxC,QAAQ;gBACN,GAAG,CAAC,MAAM,GAAG,CAAC;oBACZ,CAAC,CAAC,IAAI,QAAQ,CACV,iBAAiB,EACjB,yCAAyC,EAAE,WAAW,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,SAAS,GAAG;wBAC5G,yFAAyF,EAC3F,EAAE,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAC1E;oBACH,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,qCAAqC,EAAE,6BAA6B,CAAC,CAAA;YACnG,2FAA2F;YAC3F,gEAAgE;YAChE,KAAK,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxG,CAAC,EAAE,EAAE,CAAC,CAAA;IACR,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IACxE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4EAA4E;QAC5E,MAAM,QAAQ,IAAI,KAAK,CAAA;IACzB,CAAC;YAAS,CAAC;QACT,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"deadline.js","sourceRoot":"","sources":["../../src/cli/deadline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAsB,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAOpF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAC/B,EAAsB,EACtB,UAAuB,EACvB,IAAsB,EACV,EAAE;IACd,IAAI,EAAE,KAAK,SAAS;QAAE,OAAO,IAAI,EAAE,CAAA;IAEnC,IAAI,KAAiC,CAAA;IACrC,IAAI,QAA8B,CAAA;IAClC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAiB,CAAA;IACvC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,MAAM,OAAO,GAAG,CAAC,GAAG,MAAM,CAAC,CAAA;YAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;YACvD,QAAQ;gBACN,GAAG,CAAC,MAAM,GAAG,CAAC;oBACZ,CAAC,CAAC,IAAI,QAAQ,CACV,iBAAiB,EACjB,yCAAyC,EAAE,WAAW,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,SAAS,GAAG;wBAC5G,yFAAyF,EAC3F,EAAE,YAAY,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAC1E;oBACH,CAAC,CAAC,IAAI,QAAQ,CAAC,SAAS,EAAE,qCAAqC,EAAE,6BAA6B,CAAC,CAAA;YACnG,UAAU,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAC5B,2FAA2F;YAC3F,gEAAgE;YAChE,KAAK,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAA;QACxG,CAAC,EAAE,EAAE,CAAC,CAAA;IACR,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,CAAA;IACpE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,4EAA4E;QAC5E,MAAM,QAAQ,IAAI,KAAK,CAAA;IACzB,CAAC;YAAS,CAAC;QACT,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAA;IAChC,CAAC;AACH,CAAC,CAAA"}
@@ -0,0 +1,26 @@
1
+ import { type Streams } from "@leemour/cli-core";
2
+ import type { Closeable } from "./deadline.js";
3
+ export declare const DEFAULT_COMMAND_MS = 30000;
4
+ export declare const DEFAULT_OUTPUT_BYTES: number;
5
+ export declare const byteCount: (value: string, option: string, zero?: boolean) => number;
6
+ export interface Execution {
7
+ signal: AbortSignal;
8
+ streams: Streams;
9
+ trackCloseable: (closeable: Closeable) => void;
10
+ configure: (options: {
11
+ fields?: string;
12
+ maxOutputBytes: number;
13
+ }) => void;
14
+ start: (timeoutMs?: number) => void;
15
+ race: <T>(body: () => Promise<T>) => Promise<T>;
16
+ abort: (error: unknown) => void;
17
+ failure: () => unknown;
18
+ finish: () => Promise<void>;
19
+ }
20
+ export declare const execution: (streams: Streams, { timeoutMs, fields, maxOutputBytes, }: {
21
+ timeoutMs?: number;
22
+ fields?: string;
23
+ maxOutputBytes?: number;
24
+ }) => Execution;
25
+ export declare const withAbort: <T>(signal: AbortSignal | undefined, body: () => Promise<T>) => Promise<T>;
26
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../src/cli/execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAA;AAG9C,eAAO,MAAM,kBAAkB,QAAS,CAAA;AACxC,eAAO,MAAM,oBAAoB,QAAkB,CAAA;AAEnD,eAAO,MAAM,SAAS,UAAW,MAAM,UAAU,MAAM,qBAAiB,MAKvE,CAAA;AAED,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,WAAW,CAAA;IACnB,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,KAAK,IAAI,CAAA;IAC9C,SAAS,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IACzE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC,IAAI,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAA;IAC/C,KAAK,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAA;IAC/B,OAAO,EAAE,MAAM,OAAO,CAAA;IACtB,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAC5B;AAED,eAAO,MAAM,SAAS,YACX,OAAO,0CAKb;IACD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,KACA,SA4IF,CAAA;AAED,eAAO,MAAM,SAAS,GAAU,CAAC,UAAU,WAAW,GAAG,SAAS,QAAQ,MAAM,OAAO,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,CAAC,CAarG,CAAA"}
@@ -0,0 +1,175 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ import { stopWrites, withWriteScope } from "../sends/guarded.js";
3
+ import { fieldsOf, projectFields } from "./result-fields.js";
4
+ export const DEFAULT_COMMAND_MS = 30_000;
5
+ export const DEFAULT_OUTPUT_BYTES = 4 * 1024 * 1024;
6
+ export const byteCount = (value, option, zero = false) => {
7
+ const result = Number(value);
8
+ if (!/^\d+$/.test(value) || !Number.isSafeInteger(result) || result < (zero ? 0 : 1))
9
+ throw new CliError("validation_error", `${option} takes a ${zero ? "non-negative" : "positive"} whole byte count`);
10
+ return result;
11
+ };
12
+ export const execution = (streams, { timeoutMs, fields, maxOutputBytes = DEFAULT_OUTPUT_BYTES, }) => {
13
+ const stop = new AbortController();
14
+ const writes = new Set();
15
+ const closeables = new Set();
16
+ const closing = new WeakMap();
17
+ const originals = new Map();
18
+ let paths = fields === undefined ? undefined : fieldsOf(fields);
19
+ let active = true;
20
+ let bytes = 0;
21
+ let timer;
22
+ let interrupted;
23
+ let reject = () => { };
24
+ const interruption = new Promise((_, fail) => {
25
+ reject = fail;
26
+ });
27
+ void interruption.catch(() => { });
28
+ const abort = (error) => {
29
+ if (stop.signal.aborted)
30
+ return;
31
+ const pending = [...writes];
32
+ const cut = pending.filter((write) => !write.preparing);
33
+ interrupted = cut.length
34
+ ? new CliError("outcome_unknown", "the command ended with a write in flight — check before repeating it", {
35
+ operationIds: cut.map((write) => write.operationId),
36
+ retryable: false,
37
+ })
38
+ : error;
39
+ stopWrites(writes, interrupted);
40
+ reject(interrupted);
41
+ stop.abort(interrupted);
42
+ for (const closeable of closeables)
43
+ void closeable.close().catch(() => { });
44
+ };
45
+ const start = (timeoutMs) => {
46
+ if (timer)
47
+ clearTimeout(timer);
48
+ if (timeoutMs === undefined)
49
+ return;
50
+ timer = setTimeout(() => abort(new CliError("timeout", `the command did not finish within ${timeoutMs}ms`, {
51
+ retryable: false,
52
+ reason: "command_timeout",
53
+ })), timeoutMs);
54
+ };
55
+ start(timeoutMs);
56
+ return {
57
+ configure: (options) => {
58
+ paths = options.fields === undefined ? undefined : fieldsOf(options.fields);
59
+ maxOutputBytes = options.maxOutputBytes;
60
+ },
61
+ start,
62
+ signal: stop.signal,
63
+ trackCloseable: (closeable) => {
64
+ if (closeables.has(closeable))
65
+ return;
66
+ originals.set(closeable, closeable.close);
67
+ const close = closeable.close.bind(closeable);
68
+ closeable.close = () => {
69
+ let pending = closing.get(closeable);
70
+ if (!pending) {
71
+ pending = Promise.resolve().then(close);
72
+ closing.set(closeable, pending);
73
+ }
74
+ return pending;
75
+ };
76
+ closeables.add(closeable);
77
+ },
78
+ streams: {
79
+ ...streams,
80
+ data: (text) => {
81
+ if (stop.signal.aborted)
82
+ throw stop.signal.reason;
83
+ if (!active)
84
+ return;
85
+ let result = text;
86
+ if (paths) {
87
+ try {
88
+ result = JSON.stringify(projectFields(JSON.parse(text), paths));
89
+ }
90
+ catch (error) {
91
+ if (error instanceof CliError)
92
+ throw error;
93
+ throw new CliError("invalid_response", "this output is not a JSON result — --fields cannot project it", {
94
+ retryable: false,
95
+ reason: "projection_unavailable",
96
+ });
97
+ }
98
+ }
99
+ const size = Buffer.byteLength(result) + 1;
100
+ if (maxOutputBytes !== 0 && bytes + size > maxOutputBytes)
101
+ throw new CliError("invalid_response", `machine output exceeds ${maxOutputBytes} bytes — reduce --limit, select --fields or raise --max-output-bytes`, {
102
+ retryable: false,
103
+ reason: "output_limit",
104
+ maxBytes: maxOutputBytes,
105
+ emittedBytes: bytes,
106
+ partialOutput: bytes > 0,
107
+ });
108
+ bytes += size;
109
+ streams.data(result);
110
+ },
111
+ diagnostic: (text) => {
112
+ if (active)
113
+ streams.diagnostic(text);
114
+ },
115
+ },
116
+ race: async (body) => {
117
+ const running = withWriteScope(writes, body);
118
+ try {
119
+ return await Promise.race([running, interruption]);
120
+ }
121
+ catch (error) {
122
+ if (stop.signal.aborted) {
123
+ let grace;
124
+ await Promise.race([
125
+ running.catch(() => { }),
126
+ new Promise((resolve) => {
127
+ grace = setTimeout(resolve, 100);
128
+ }),
129
+ ]);
130
+ if (grace)
131
+ clearTimeout(grace);
132
+ }
133
+ throw interrupted ?? error;
134
+ }
135
+ },
136
+ abort,
137
+ failure: () => interrupted,
138
+ finish: async () => {
139
+ active = false;
140
+ if (timer)
141
+ clearTimeout(timer);
142
+ {
143
+ let grace;
144
+ await Promise.race([
145
+ Promise.allSettled([...closeables].map((one) => one.close())),
146
+ new Promise((resolve) => {
147
+ grace = setTimeout(resolve, 1000);
148
+ }),
149
+ ]);
150
+ if (grace)
151
+ clearTimeout(grace);
152
+ }
153
+ for (const [closeable, close] of originals)
154
+ closeable.close = close;
155
+ },
156
+ };
157
+ };
158
+ export const withAbort = async (signal, body) => {
159
+ if (!signal)
160
+ return body();
161
+ if (signal.aborted)
162
+ throw signal.reason;
163
+ let abort = () => { };
164
+ const interrupted = new Promise((_, reject) => {
165
+ abort = () => reject(signal.reason);
166
+ signal.addEventListener("abort", abort, { once: true });
167
+ });
168
+ try {
169
+ return await Promise.race([body(), interrupted]);
170
+ }
171
+ finally {
172
+ signal.removeEventListener("abort", abort);
173
+ }
174
+ };
175
+ //# sourceMappingURL=execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/cli/execution.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,9 @@ export { botInstructions } from "../mcp/bot/instructions.js";
3
3
  export { type BotServerOptions, botToolName, createBotServer, type RunBotCommand } from "../mcp/bot/server.js";
4
4
  export { BOT_TOOLS, type BotTool, type BotToolKit, chat as botChatArgument, flag as botFlag, format as botFormat, type Invocation as BotInvocation, limit as botLimit, marks as botMarks, option as botOption, text as botText, withAcross, } from "../mcp/bot/tools.js";
5
5
  export { revokeAll } from "../mcp/http/oauth.js";
6
- export { type HttpConfirmation, httpConfirmationOf, httpServerOptions } from "../mcp/http/policy.js";
7
6
  export { type HttpOptions, MCP_PATH, serveOverHttp } from "../mcp/http/serve.js";
8
- export { answerMcpTool, failMcpTool, McpPicture, type PersonalMcpDefaults, type PersonalMcpRegistration, type PersonalMcpTool, personalMcpConfirmer, personalMcpToolKey, personalMcpTools, registerPersonalMcpTools, warmEmbedders, } from "../mcp/personal.js";
7
+ export { answerMcpTool, failMcpTool, McpPicture, type PersonalMcpDefaults, type PersonalMcpRegistration, type PersonalMcpTool, personalMcpCommand, personalMcpToolKey, personalMcpTools, registerPersonalMcpSurface, registerPersonalMcpTools, warmEmbedders, } from "../mcp/personal.js";
9
8
  export { registerLinkConversationsPrompt } from "../mcp/prompts.js";
10
- export { OVER_HTTP } from "../mcp/server.js";
11
9
  export { answerMessagesSearch, MESSAGES_SEARCH_DESCRIPTION, type MessagesSearchArgs, messagesSearchInput, } from "../mcp/tools/search.js";
12
10
  export { senderFacts } from "../replies/dry-run.js";
13
11
  export { type ReplyRender, replyRenderer } from "../replies/rendering.js";
@@ -20,6 +18,7 @@ export { INBOX_CHATS, newIn, REVIEW_CHATS, reviewIn, unanswered, unreadIn } from
20
18
  export { momentOf } from "../services/moment.js";
21
19
  export { maskedAccount } from "../services/people.js";
22
20
  export { openRequestTask } from "../services/task-rules.js";
21
+ export { type AgentPolicy, type AgentTask, type EvaluationResult, evaluateAgent, type Observation, } from "./agent-evaluation.js";
23
22
  export { type AppIdentity, envName } from "./app.js";
24
23
  export { botAdminsCommand, botMembersCommand } from "./bot/admins.js";
25
24
  export { type ApiCommandInput, type ApiCommands, generatedApiCommand } from "./bot/api.js";
@@ -34,11 +33,14 @@ export { BOT_ACTIONS, type BotAction, type BotAdapter, type BotCallbacks, type B
34
33
  export { botFiles, botsDirectory, ChatRegistry, registryProfiles, type SeenChat } from "./bot/registry.js";
35
34
  export { BotTokenStore, type BotTokenStoreOptions } from "./bot/token.js";
36
35
  export { PressLog, UpdatesCursor } from "./bot/updates.js";
36
+ export { commandContract, type JsonSchema, resultSchemaFor, SCHEMA_DIALECT } from "./command-contract.js";
37
37
  export { CONTRACT, commandsCommand } from "./commands-command.js";
38
38
  export { configCommand, refuseUnknownKey } from "./config-command.js";
39
39
  export { type BaseContext, type BaseEnvironment, baseContext, environmentOf, outputFor, provide, } from "./context.js";
40
40
  export { type Closeable, withDeadline } from "./deadline.js";
41
+ export { withAbort } from "./execution.js";
41
42
  export { isCliFailure, isCommanderFailure } from "./failures.js";
43
+ export { bufferedInput, type InputPolicy, inputPolicy, MAX_BUFFERED_INPUT, MAX_SECRET_INPUT, provideInputPolicy, } from "./input-policy.js";
42
44
  export { accountCommand } from "./messenger/account-command.js";
43
45
  export { accountFileFor, rememberAccount } from "./messenger/accounts.js";
44
46
  export { storeCommand } from "./messenger/archive-commands.js";
@@ -81,6 +83,7 @@ export { knownBeside, knownPermissionKeys, type PermissionKeyOf, unknownPermissi
81
83
  export { migratePermissionConfig, type PermissionMigration } from "./permission-migration.js";
82
84
  export { asFirstWord, commandWords, DEFAULT_PROFILE, liftProfile, refuseCommandName, rootOf, usableProfileName, } from "./profile.js";
83
85
  export { createProgram, type ProgramDefinition, type ProgramOptions, type RunOptions, run } from "./program.js";
86
+ export { fieldsOf, projectFields } from "./result-fields.js";
84
87
  export { runsCommand } from "./runs/command.js";
85
88
  export { type CacheEvent, type DiagnosticEvent, type EventSink, providerErrorKey, type RequestEvent, renderEvent, type WarningEvent, } from "./runs/events.js";
86
89
  export { crashOf, type Recording, type RecordingOptions, recorded, startRecording, wasSettled, } from "./runs/recording.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/cli/index.js CHANGED
@@ -3,11 +3,9 @@ export { botInstructions } from "../mcp/bot/instructions.js";
3
3
  export { botToolName, createBotServer } from "../mcp/bot/server.js";
4
4
  export { BOT_TOOLS, chat as botChatArgument, flag as botFlag, format as botFormat, limit as botLimit, marks as botMarks, option as botOption, text as botText, withAcross, } from "../mcp/bot/tools.js";
5
5
  export { revokeAll } from "../mcp/http/oauth.js";
6
- export { httpConfirmationOf, httpServerOptions } from "../mcp/http/policy.js";
7
6
  export { MCP_PATH, serveOverHttp } from "../mcp/http/serve.js";
8
- export { answerMcpTool, failMcpTool, McpPicture, personalMcpConfirmer, personalMcpToolKey, personalMcpTools, registerPersonalMcpTools, warmEmbedders, } from "../mcp/personal.js";
7
+ export { answerMcpTool, failMcpTool, McpPicture, personalMcpCommand, personalMcpToolKey, personalMcpTools, registerPersonalMcpSurface, registerPersonalMcpTools, warmEmbedders, } from "../mcp/personal.js";
9
8
  export { registerLinkConversationsPrompt } from "../mcp/prompts.js";
10
- export { OVER_HTTP } from "../mcp/server.js";
11
9
  export { answerMessagesSearch, MESSAGES_SEARCH_DESCRIPTION, messagesSearchInput, } from "../mcp/tools/search.js";
12
10
  export { senderFacts } from "../replies/dry-run.js";
13
11
  export { replyRenderer } from "../replies/rendering.js";
@@ -19,6 +17,7 @@ export { INBOX_CHATS, newIn, REVIEW_CHATS, reviewIn, unanswered, unreadIn } from
19
17
  export { momentOf } from "../services/moment.js";
20
18
  export { maskedAccount } from "../services/people.js";
21
19
  export { openRequestTask } from "../services/task-rules.js";
20
+ export { evaluateAgent, } from "./agent-evaluation.js";
22
21
  export { envName } from "./app.js";
23
22
  export { botAdminsCommand, botMembersCommand } from "./bot/admins.js";
24
23
  export { generatedApiCommand } from "./bot/api.js";
@@ -33,11 +32,14 @@ export { BOT_ACTIONS, } from "./bot/port.js";
33
32
  export { botFiles, botsDirectory, ChatRegistry, registryProfiles } from "./bot/registry.js";
34
33
  export { BotTokenStore } from "./bot/token.js";
35
34
  export { PressLog, UpdatesCursor } from "./bot/updates.js";
35
+ export { commandContract, resultSchemaFor, SCHEMA_DIALECT } from "./command-contract.js";
36
36
  export { CONTRACT, commandsCommand } from "./commands-command.js";
37
37
  export { configCommand, refuseUnknownKey } from "./config-command.js";
38
38
  export { baseContext, environmentOf, outputFor, provide, } from "./context.js";
39
39
  export { withDeadline } from "./deadline.js";
40
+ export { withAbort } from "./execution.js";
40
41
  export { isCliFailure, isCommanderFailure } from "./failures.js";
42
+ export { bufferedInput, inputPolicy, MAX_BUFFERED_INPUT, MAX_SECRET_INPUT, provideInputPolicy, } from "./input-policy.js";
41
43
  export { accountCommand } from "./messenger/account-command.js";
42
44
  export { accountFileFor, rememberAccount } from "./messenger/accounts.js";
43
45
  export { storeCommand } from "./messenger/archive-commands.js";
@@ -79,6 +81,7 @@ export { knownBeside, knownPermissionKeys, unknownPermissionKeys, } from "./perm
79
81
  export { migratePermissionConfig } from "./permission-migration.js";
80
82
  export { asFirstWord, commandWords, DEFAULT_PROFILE, liftProfile, refuseCommandName, rootOf, usableProfileName, } from "./profile.js";
81
83
  export { createProgram, run } from "./program.js";
84
+ export { fieldsOf, projectFields } from "./result-fields.js";
82
85
  export { runsCommand } from "./runs/command.js";
83
86
  export { providerErrorKey, renderEvent, } from "./runs/events.js";
84
87
  export { crashOf, recorded, startRecording, wasSettled, } from "./runs/recording.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export declare const MAX_BUFFERED_INPUT: number;
2
+ export declare const MAX_SECRET_INPUT: number;
3
+ export interface InputPolicy {
4
+ noInput?: boolean;
5
+ maxBytes?: number;
6
+ signal?: AbortSignal;
7
+ }
8
+ export declare const inputPolicy: (input: NodeJS.ReadableStream) => InputPolicy;
9
+ export declare const provideInputPolicy: (input: NodeJS.ReadableStream, policy: InputPolicy) => (() => void);
10
+ export declare const bufferedInput: (input: NodeJS.ReadableStream, options?: {
11
+ maxBytes?: number;
12
+ signal?: AbortSignal;
13
+ }) => Promise<Buffer>;
14
+ //# sourceMappingURL=input-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-policy.d.ts","sourceRoot":"","sources":["../../src/cli/input-policy.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,QAAmB,CAAA;AAClD,eAAO,MAAM,gBAAgB,QAAY,CAAA;AAEzC,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,MAAM,CAAC,EAAE,WAAW,CAAA;CACrB;AAID,eAAO,MAAM,WAAW,UAAW,MAAM,CAAC,cAAc,KAAG,WAAwC,CAAA;AAEnG,eAAO,MAAM,kBAAkB,UAAW,MAAM,CAAC,cAAc,UAAU,WAAW,KAAG,CAAC,MAAM,IAAI,CAOjG,CAAA;AAED,eAAO,MAAM,aAAa,UACjB,MAAM,CAAC,cAAc,YACnB;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KACnD,OAAO,CAAC,MAAM,CAsDhB,CAAA"}
@@ -0,0 +1,66 @@
1
+ import { CliError } from "@leemour/cli-core";
2
+ export const MAX_BUFFERED_INPUT = 16 * 1024 * 1024;
3
+ export const MAX_SECRET_INPUT = 64 * 1024;
4
+ const policies = new WeakMap();
5
+ export const inputPolicy = (input) => policies.get(input) ?? {};
6
+ export const provideInputPolicy = (input, policy) => {
7
+ const previous = policies.get(input);
8
+ policies.set(input, policy);
9
+ return () => {
10
+ if (previous)
11
+ policies.set(input, previous);
12
+ else
13
+ policies.delete(input);
14
+ };
15
+ };
16
+ export const bufferedInput = (input, options = {}) => {
17
+ const policy = inputPolicy(input);
18
+ const maxBytes = options.maxBytes ?? policy.maxBytes ?? MAX_BUFFERED_INPUT;
19
+ const signals = [options.signal, policy.signal].filter((one) => one !== undefined);
20
+ const signal = signals.length ? AbortSignal.any(signals) : undefined;
21
+ const state = input;
22
+ if (state.readableEnded)
23
+ return Promise.resolve(Buffer.alloc(0));
24
+ if (state.destroyed)
25
+ return Promise.reject(new CliError("validation_error", "input closed before EOF", { reason: "input_closed" }));
26
+ return new Promise((resolve, reject) => {
27
+ const chunks = [];
28
+ let bytes = 0;
29
+ const cleanup = () => {
30
+ input.off("data", data).off("end", end).off("error", error).off("close", closed);
31
+ signal?.removeEventListener("abort", aborted);
32
+ input.pause();
33
+ };
34
+ const error = (cause) => {
35
+ cleanup();
36
+ reject(cause);
37
+ };
38
+ const aborted = () => error(new CliError("cancelled", "input cancelled", { retryable: false }));
39
+ const closed = () => error(new CliError("validation_error", "input closed before EOF", { reason: "input_closed" }));
40
+ const end = () => {
41
+ cleanup();
42
+ resolve(Buffer.concat(chunks, bytes));
43
+ };
44
+ const data = (chunk) => {
45
+ const buffer = Buffer.from(chunk);
46
+ bytes += buffer.length;
47
+ if (bytes > maxBytes) {
48
+ error(new CliError("validation_error", `buffered input exceeds ${maxBytes} bytes — use a smaller input or --max-input-bytes`, {
49
+ reason: "input_limit",
50
+ maxBytes,
51
+ retryable: false,
52
+ }));
53
+ return;
54
+ }
55
+ chunks.push(buffer);
56
+ };
57
+ if (signal?.aborted) {
58
+ aborted();
59
+ return;
60
+ }
61
+ input.on("data", data).once("end", end).once("error", error).once("close", closed);
62
+ signal?.addEventListener("abort", aborted, { once: true });
63
+ input.resume();
64
+ });
65
+ };
66
+ //# sourceMappingURL=input-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-policy.js","sourceRoot":"","sources":["../../src/cli/input-policy.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,6 @@ export interface McpEnvironment extends BaseEnvironment {
13
13
  export interface McpFlags {
14
14
  confirmSend?: boolean;
15
15
  allowDangerous?: boolean;
16
- yes?: boolean;
17
16
  allowSend?: boolean;
18
17
  allowMarkRead?: boolean;
19
18
  allowDelete?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/mcp-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,8BAA8B,EAAS,MAAM,oBAAoB,CAAA;AAM/E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAAiB,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAE/D,mEAAmE;AACnE,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,GAAG,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACjD;AAED,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,GAAG,CAAC,EAAE,OAAO,CAAA;IACb,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAID,sGAAsG;AACtG,eAAO,MAAM,aAAa,QAAS,WAAW,WAAW,MAAM,OAAO,MAAM,CAAC,UAAU,KAAG,MACqB,CAAA;AAwD/G,eAAO,MAAM,UAAU,cAAe,SAAS,KAAG,OA2JjD,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,UAAU;kBAIA,MAAM,QAAQ,MAAM,EAAE,OAAO,MAAM,CAAC,UAAU,KAAG,8BAA8B;gBAc7E,OAAO,CAAC,MAAM,CAAC;CAKvC,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,MAAM,QAAQ,MAAM,GAAG,SAAS,KAAG,MAMnE,CAAA;AAID;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACjB,WAAW,kDAOb;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,KACrG;IAAE,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAmCpE,CAAA"}
1
+ {"version":3,"file":"mcp-command.d.ts","sourceRoot":"","sources":["../../../src/cli/messenger/mcp-command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,8BAA8B,EAAS,MAAM,oBAAoB,CAAA;AAM/E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,KAAK,WAAW,EAAW,MAAM,WAAW,CAAA;AACrD,OAAO,EAAE,KAAK,eAAe,EAAiB,MAAM,eAAe,CAAA;AACnE,OAAO,EAAE,KAAK,SAAS,EAAoB,MAAM,cAAc,CAAA;AAE/D,mEAAmE;AACnE,MAAM,WAAW,cAAe,SAAQ,eAAe;IACrD,GAAG,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACjD;AAED,MAAM,WAAW,QAAQ;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB;AAID,sGAAsG;AACtG,eAAO,MAAM,aAAa,QAAS,WAAW,WAAW,MAAM,OAAO,MAAM,CAAC,UAAU,KAAG,MACqB,CAAA;AA+D/G,eAAO,MAAM,UAAU,cAAe,SAAS,KAAG,OA+IjD,CAAA;AAMD;;;;;GAKG;AACH,eAAO,MAAM,UAAU;kBAIA,MAAM,QAAQ,MAAM,EAAE,OAAO,MAAM,CAAC,UAAU,KAAG,8BAA8B;gBAc7E,OAAO,CAAC,MAAM,CAAC;CAKvC,CAAA;AAED,eAAO,MAAM,UAAU,SAAU,MAAM,QAAQ,MAAM,GAAG,SAAS,KAAG,MAMnE,CAAA;AAID;;;;;;;GAOG;AACH,eAAO,MAAM,WAAW,QACjB,WAAW,kDAOb;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,KACrG;IAAE,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CA+BpE,CAAA"}