@moxxy/sdk 0.43.0 → 0.45.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 (246) hide show
  1. package/dist/agent-account-limit.d.ts +41 -0
  2. package/dist/agent-account-limit.d.ts.map +1 -0
  3. package/dist/agent-account-limit.js +64 -0
  4. package/dist/agent-account-limit.js.map +1 -0
  5. package/dist/agent-computer-use.d.ts +10 -0
  6. package/dist/agent-computer-use.d.ts.map +1 -0
  7. package/dist/agent-computer-use.js +24 -0
  8. package/dist/agent-computer-use.js.map +1 -0
  9. package/dist/agent-context-window.d.ts +22 -0
  10. package/dist/agent-context-window.d.ts.map +1 -0
  11. package/dist/agent-context-window.js +40 -0
  12. package/dist/agent-context-window.js.map +1 -0
  13. package/dist/agent-no-reply.d.ts +11 -0
  14. package/dist/agent-no-reply.d.ts.map +1 -0
  15. package/dist/agent-no-reply.js +13 -0
  16. package/dist/agent-no-reply.js.map +1 -0
  17. package/dist/agent-step.d.ts +14 -0
  18. package/dist/agent-step.d.ts.map +1 -0
  19. package/dist/agent-step.js +26 -0
  20. package/dist/agent-step.js.map +1 -0
  21. package/dist/agent-work.d.ts +34 -0
  22. package/dist/agent-work.d.ts.map +1 -0
  23. package/dist/agent-work.js +80 -0
  24. package/dist/agent-work.js.map +1 -0
  25. package/dist/attachment-payload.d.ts +95 -0
  26. package/dist/attachment-payload.d.ts.map +1 -0
  27. package/dist/attachment-payload.js +155 -0
  28. package/dist/attachment-payload.js.map +1 -0
  29. package/dist/auto-approve.d.ts +9 -0
  30. package/dist/auto-approve.d.ts.map +1 -1
  31. package/dist/auto-approve.js +18 -0
  32. package/dist/auto-approve.js.map +1 -1
  33. package/dist/channel-auth.d.ts +3 -3
  34. package/dist/channel-auth.d.ts.map +1 -1
  35. package/dist/channel-auth.js +1 -1
  36. package/dist/channel.d.ts +1 -1
  37. package/dist/client-session.d.ts +9 -5
  38. package/dist/client-session.d.ts.map +1 -1
  39. package/dist/computer-control.d.ts +11 -11
  40. package/dist/computer-control.d.ts.map +1 -1
  41. package/dist/computer-control.js +1 -1
  42. package/dist/computer-control.js.map +1 -1
  43. package/dist/conversation-history.d.ts +50 -0
  44. package/dist/conversation-history.d.ts.map +1 -0
  45. package/dist/conversation-history.js +227 -0
  46. package/dist/conversation-history.js.map +1 -0
  47. package/dist/cron.d.ts +58 -0
  48. package/dist/cron.d.ts.map +1 -0
  49. package/dist/cron.js +320 -0
  50. package/dist/cron.js.map +1 -0
  51. package/dist/define.d.ts +2 -1
  52. package/dist/define.d.ts.map +1 -1
  53. package/dist/define.js +1 -0
  54. package/dist/define.js.map +1 -1
  55. package/dist/event-store.d.ts +1 -1
  56. package/dist/event-store.d.ts.map +1 -1
  57. package/dist/event-store.js +1 -0
  58. package/dist/event-store.js.map +1 -1
  59. package/dist/events.d.ts +23 -1
  60. package/dist/events.d.ts.map +1 -1
  61. package/dist/file-diff.d.ts +31 -0
  62. package/dist/file-diff.d.ts.map +1 -0
  63. package/dist/file-diff.js +196 -0
  64. package/dist/file-diff.js.map +1 -0
  65. package/dist/index.d.ts +23 -7
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +17 -4
  68. package/dist/index.js.map +1 -1
  69. package/dist/mode/agent-step-loop.d.ts +13 -0
  70. package/dist/mode/agent-step-loop.d.ts.map +1 -0
  71. package/dist/mode/agent-step-loop.js +578 -0
  72. package/dist/mode/agent-step-loop.js.map +1 -0
  73. package/dist/mode/checkpoint-gate.d.ts +25 -0
  74. package/dist/mode/checkpoint-gate.d.ts.map +1 -0
  75. package/dist/mode/checkpoint-gate.js +150 -0
  76. package/dist/mode/checkpoint-gate.js.map +1 -0
  77. package/dist/mode/checkpoint.d.ts +6 -0
  78. package/dist/mode/checkpoint.d.ts.map +1 -1
  79. package/dist/mode/collect-stream.d.ts +2 -0
  80. package/dist/mode/collect-stream.d.ts.map +1 -1
  81. package/dist/mode/collect-stream.js +1 -1
  82. package/dist/mode/collect-stream.js.map +1 -1
  83. package/dist/mode/project-messages.d.ts +3 -1
  84. package/dist/mode/project-messages.d.ts.map +1 -1
  85. package/dist/mode/project-messages.js +122 -81
  86. package/dist/mode/project-messages.js.map +1 -1
  87. package/dist/mode/react-loop-options.d.ts +113 -0
  88. package/dist/mode/react-loop-options.d.ts.map +1 -0
  89. package/dist/mode/react-loop-options.js +2 -0
  90. package/dist/mode/react-loop-options.js.map +1 -0
  91. package/dist/mode/react-loop.d.ts +2 -99
  92. package/dist/mode/react-loop.d.ts.map +1 -1
  93. package/dist/mode/react-loop.js +7 -145
  94. package/dist/mode/react-loop.js.map +1 -1
  95. package/dist/mode.d.ts +19 -7
  96. package/dist/mode.d.ts.map +1 -1
  97. package/dist/mode.js +1 -1
  98. package/dist/mode.js.map +1 -1
  99. package/dist/npm-registry.d.ts +22 -0
  100. package/dist/npm-registry.d.ts.map +1 -0
  101. package/dist/npm-registry.js +54 -0
  102. package/dist/npm-registry.js.map +1 -0
  103. package/dist/permission.d.ts +31 -0
  104. package/dist/permission.d.ts.map +1 -1
  105. package/dist/process-invocation.d.ts +2 -0
  106. package/dist/process-invocation.d.ts.map +1 -1
  107. package/dist/process-invocation.js +2 -2
  108. package/dist/process-invocation.js.map +1 -1
  109. package/dist/process-tree.d.ts +9 -0
  110. package/dist/process-tree.d.ts.map +1 -0
  111. package/dist/process-tree.js +40 -0
  112. package/dist/process-tree.js.map +1 -0
  113. package/dist/provider-login-bridge.js +1 -1
  114. package/dist/provider-login-bridge.js.map +1 -1
  115. package/dist/provider.d.ts +408 -0
  116. package/dist/provider.d.ts.map +1 -1
  117. package/dist/question-draft.d.ts +19 -0
  118. package/dist/question-draft.d.ts.map +1 -0
  119. package/dist/question-draft.js +30 -0
  120. package/dist/question-draft.js.map +1 -0
  121. package/dist/question.d.ts +204 -0
  122. package/dist/question.d.ts.map +1 -0
  123. package/dist/question.js +141 -0
  124. package/dist/question.js.map +1 -0
  125. package/dist/questions.d.ts +7 -0
  126. package/dist/questions.d.ts.map +1 -0
  127. package/dist/questions.js +7 -0
  128. package/dist/questions.js.map +1 -0
  129. package/dist/resolvers.d.ts +14 -1
  130. package/dist/resolvers.d.ts.map +1 -1
  131. package/dist/resolvers.js +33 -21
  132. package/dist/resolvers.js.map +1 -1
  133. package/dist/schemas.d.ts +53 -53
  134. package/dist/schemas.d.ts.map +1 -1
  135. package/dist/schemas.js +3 -2
  136. package/dist/schemas.js.map +1 -1
  137. package/dist/server.d.ts +2 -0
  138. package/dist/server.d.ts.map +1 -1
  139. package/dist/server.js +3 -0
  140. package/dist/server.js.map +1 -1
  141. package/dist/session-like.d.ts +19 -1
  142. package/dist/session-like.d.ts.map +1 -1
  143. package/dist/starting-model.d.ts +12 -0
  144. package/dist/starting-model.d.ts.map +1 -0
  145. package/dist/starting-model.js +9 -0
  146. package/dist/starting-model.js.map +1 -0
  147. package/dist/tool-dispatch.d.ts.map +1 -1
  148. package/dist/tool-dispatch.js +10 -4
  149. package/dist/tool-dispatch.js.map +1 -1
  150. package/dist/tool-display.d.ts +79 -3
  151. package/dist/tool-display.d.ts.map +1 -1
  152. package/dist/tool-display.js +117 -3
  153. package/dist/tool-display.js.map +1 -1
  154. package/dist/tool-modes.d.ts +1 -1
  155. package/dist/tool-modes.d.ts.map +1 -1
  156. package/dist/tool-modes.js +8 -2
  157. package/dist/tool-modes.js.map +1 -1
  158. package/dist/tool-output.d.ts +15 -0
  159. package/dist/tool-output.d.ts.map +1 -0
  160. package/dist/tool-output.js +39 -0
  161. package/dist/tool-output.js.map +1 -0
  162. package/dist/tool.d.ts +14 -1
  163. package/dist/tool.d.ts.map +1 -1
  164. package/dist/tunnel.d.ts +3 -3
  165. package/dist/tunnel.d.ts.map +1 -1
  166. package/dist/tunnel.js +2 -2
  167. package/dist/workflow-approval.d.ts +9 -9
  168. package/dist/workflow-approval.d.ts.map +1 -1
  169. package/dist/workflow-approval.js +1 -1
  170. package/dist/workflow-approval.js.map +1 -1
  171. package/package.json +37 -5
  172. package/src/agent-account-limit.test.ts +87 -0
  173. package/src/agent-account-limit.ts +89 -0
  174. package/src/agent-computer-use.test.ts +26 -0
  175. package/src/agent-computer-use.ts +29 -0
  176. package/src/agent-context-window.ts +51 -0
  177. package/src/agent-no-reply.ts +16 -0
  178. package/src/agent-step.ts +26 -0
  179. package/src/agent-work.ts +102 -0
  180. package/src/attachment-payload.test.ts +165 -0
  181. package/src/attachment-payload.ts +187 -0
  182. package/src/auto-approve.test.ts +13 -1
  183. package/src/auto-approve.ts +19 -0
  184. package/src/channel-auth.ts +3 -3
  185. package/src/channel.ts +1 -1
  186. package/src/client-session.ts +9 -2
  187. package/src/computer-control.ts +1 -1
  188. package/src/conversation-history.test.ts +184 -0
  189. package/src/conversation-history.ts +272 -0
  190. package/src/cron.test.ts +280 -0
  191. package/src/cron.ts +355 -0
  192. package/src/define.test.ts +1 -1
  193. package/src/define.ts +3 -1
  194. package/src/event-store.ts +2 -1
  195. package/src/events.ts +23 -1
  196. package/src/file-diff.test.ts +103 -0
  197. package/src/file-diff.ts +208 -0
  198. package/src/index.ts +140 -1
  199. package/src/json-file-store.test.ts +1 -1
  200. package/src/loop-helpers.test.ts +15 -0
  201. package/src/mode/agent-step-loop.ts +645 -0
  202. package/src/mode/checkpoint-gate.ts +198 -0
  203. package/src/mode/checkpoint.ts +6 -0
  204. package/src/mode/collect-stream.ts +1 -1
  205. package/src/mode/project-messages.test.ts +118 -1
  206. package/src/mode/project-messages.ts +136 -77
  207. package/src/mode/react-loop-options.ts +124 -0
  208. package/src/mode/react-loop.ts +10 -296
  209. package/src/mode.ts +19 -7
  210. package/src/npm-registry.test.ts +95 -0
  211. package/src/npm-registry.ts +57 -0
  212. package/src/permission.ts +30 -0
  213. package/src/process-invocation.test.ts +25 -0
  214. package/src/process-invocation.ts +8 -3
  215. package/src/process-tree.ts +37 -0
  216. package/src/provider-login-bridge.ts +1 -1
  217. package/src/provider-schema-constraints.test.ts +1 -1
  218. package/src/provider-utils.test.ts +1 -1
  219. package/src/provider.ts +346 -0
  220. package/src/question-draft.test.ts +57 -0
  221. package/src/question-draft.ts +47 -0
  222. package/src/question.test.ts +130 -0
  223. package/src/question.ts +229 -0
  224. package/src/questions.ts +6 -0
  225. package/src/resolvers.test.ts +84 -1
  226. package/src/resolvers.ts +40 -27
  227. package/src/schemas.test.ts +5 -0
  228. package/src/schemas.ts +3 -2
  229. package/src/server.ts +3 -0
  230. package/src/session-like.ts +19 -1
  231. package/src/skill-mentions.test.ts +1 -1
  232. package/src/starting-model.test.ts +19 -0
  233. package/src/starting-model.ts +11 -0
  234. package/src/token-efficiency.test.ts +1 -1
  235. package/src/tool-dispatch.ts +10 -4
  236. package/src/tool-display.test.ts +119 -0
  237. package/src/tool-display.ts +162 -4
  238. package/src/tool-gating.test.ts +1 -1
  239. package/src/tool-icon.test.ts +1 -1
  240. package/src/tool-modes.test.ts +18 -1
  241. package/src/tool-modes.ts +6 -2
  242. package/src/tool-output.test.ts +46 -0
  243. package/src/tool-output.ts +46 -0
  244. package/src/tool.ts +14 -1
  245. package/src/tunnel.ts +3 -3
  246. package/src/workflow-approval.ts +1 -1
package/src/tool.ts CHANGED
@@ -1,10 +1,11 @@
1
- import type { z } from 'zod';
1
+ import type { z } from 'zod/v3';
2
2
  import type { EventLogReader } from './log.js';
3
3
  import type { ToolIcon } from './tool-icon.js';
4
4
  import type { PermissionRule } from './permission.js';
5
5
  import type { SessionId, ToolCallId, TurnId } from './ids.js';
6
6
  import type { SubagentSpawner } from './subagent.js';
7
7
  import type { ToolIsolationSpec } from './isolation.js';
8
+ import type { QuestionItem, QuestionOutcome } from './question.js';
8
9
 
9
10
  /**
10
11
  * A tool the active model provider can execute on its own infrastructure.
@@ -158,6 +159,13 @@ export interface ToolContext {
158
159
  * then read it here, e.g. `const key = await ctx.getSecret('ELEVENLABS_API_KEY')`.
159
160
  */
160
161
  readonly getSecret?: (name: string) => Promise<string | null>;
162
+ /**
163
+ * Ask the person a Question and wait for the answer. Present when the tool
164
+ * runs inside a session turn; the outcome says `unanswerable` when no surface
165
+ * that can show a question is attached (a headless run), so the tool can tell
166
+ * the agent to decide on its own.
167
+ */
168
+ readonly ask?: (questions: ReadonlyArray<QuestionItem>) => Promise<QuestionOutcome>;
161
169
  }
162
170
 
163
171
  /**
@@ -230,6 +238,11 @@ export interface ToolDef {
230
238
  * a task in a mode that never asked for it. See `toolsForMode`.
231
239
  */
232
240
  readonly modes?: ReadonlyArray<string>;
241
+ /**
242
+ * The modes this tool is left out of; the opposite of `modes`. For a tool
243
+ * that cannot work there (`ask_user` in goal mode, which runs unattended).
244
+ */
245
+ readonly notInModes?: ReadonlyArray<string>;
233
246
  /**
234
247
  * The user's refusal of this tool ends the turn, with this text as its last
235
248
  * message, instead of letting the model try another way round it. For tools
package/src/tunnel.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /**
2
- * A swappable way to expose a locally-bound surface (the web channel, the mobile
3
- * bridge, the webhooks listener) to the user over the public internet — so an
2
+ * A swappable way to expose a locally-bound surface (the web channel, the
3
+ * webhooks listener) to the user over the public internet — so an
4
4
  * agent on Telegram/TUI can hand the user a URL they can open. One provider is
5
5
  * active per session (registered via plugins, like every other block); core
6
6
  * seeds a `localhost` no-op provider so `getActive()` is non-null.
@@ -23,7 +23,7 @@ export interface TunnelOpenOptions {
23
23
  }
24
24
 
25
25
  export interface TunnelHandle {
26
- /** The publicly reachable base URL (e.g. https://abc123.proxy.moxxy.ai/mobile). */
26
+ /** The publicly reachable base URL (e.g. https://abc123.proxy.moxxy.ai/web). */
27
27
  readonly url: string;
28
28
  /** Tear the tunnel down (deregister the target / close the connection). */
29
29
  close(): Promise<void>;
@@ -21,7 +21,7 @@ export interface WorkflowApprovalsView {
21
21
  revoke(id: string): Promise<void>;
22
22
  cancel(id: string): Promise<void>;
23
23
  }
24
- import { z } from 'zod';
24
+ import { z } from 'zod/v3';
25
25
 
26
26
  export const workflowApprovalItemSchema = z
27
27
  .object({