@gaodefa/daocore 2026.5.48 → 2026.5.51

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 (1125) hide show
  1. package/dist/abort-fu5ot-XT.js +277 -0
  2. package/dist/abort.runtime-D5daoBjn.js +2 -0
  3. package/dist/abort.runtime.js +1 -1
  4. package/dist/account-inspect-BzG5-Rgz.js +173 -0
  5. package/dist/accounts-CPcG2JIz.js +107 -0
  6. package/dist/accounts-CiDgcaPY.js +2 -0
  7. package/dist/accounts-DcI0wEyL.js +107 -0
  8. package/dist/accounts-xBYbyTsZ.js +119 -0
  9. package/dist/acp-runtime-DpVkymzf.js +26 -0
  10. package/dist/acp-spawn-CbNHSZr-.js +1275 -0
  11. package/dist/acp-spawn-DFG0HgXi.js +2 -0
  12. package/dist/acp-stateful-target-driver-pz6XosZ9.js +89 -0
  13. package/dist/action-kill-DJuPSfgy.js +33 -0
  14. package/dist/action-runtime-DxnMH2dB.js +469 -0
  15. package/dist/action-runtime-api-Dvo3Gbll.js +2 -0
  16. package/dist/action-send-WtfSYfhf.js +39 -0
  17. package/dist/action-spawn-CA4-_H9p.js +47 -0
  18. package/dist/actions-BQ2B4Vhj.js +161 -0
  19. package/dist/actions.runtime-Bw0OZtGG.js +5 -0
  20. package/dist/agent-CsPtASj4.js +2 -0
  21. package/dist/agent-command-DeA1YV0L.js +1367 -0
  22. package/dist/agent-components.runtime-CP2KCzTj.js +10 -0
  23. package/dist/agent-components.runtime.js +1 -1
  24. package/dist/agent-harness-runtime-hAssTrVq.js +180 -0
  25. package/dist/agent-harness-task-runtime-VSFzRIbH.js +140 -0
  26. package/dist/agent-rg2WmmbX.js +3 -0
  27. package/dist/agent-runner-execution-lRuwJobi.js +1713 -0
  28. package/dist/agent-runner-utils-Bluglnku.js +266 -0
  29. package/dist/agent-runner.runtime-B709koec.js +3455 -0
  30. package/dist/agent-runner.runtime.js +1 -1
  31. package/dist/agent-runtime-DKr0TX79.js +229 -0
  32. package/dist/agent-via-gateway-J8tTS5o6.js +463 -0
  33. package/dist/api-BVSGXSkS.js +3 -0
  34. package/dist/api-C7LbY8d2.js +6 -0
  35. package/dist/api-ClLB89eP.js +2 -0
  36. package/dist/api-D7kpdmvQ.js +2 -0
  37. package/dist/api-DJaf27mk.js +639 -0
  38. package/dist/api-XpFyLrKp.js +134 -0
  39. package/dist/apply-CHHI0r0H.js +41 -0
  40. package/dist/apply-DoQ4g3Kr.js +54 -0
  41. package/dist/approval-handler.runtime-Jbt7zH9f.js +130 -0
  42. package/dist/assistant-DQw33Vzx.js +291 -0
  43. package/dist/attachment-normalize-CrbLuYsp.js +225 -0
  44. package/dist/attempt-execution-DkgSHSVj.js +558 -0
  45. package/dist/attempt-execution.runtime-DCcD7P4g.js +3 -0
  46. package/dist/attempt-execution.runtime.js +1 -1
  47. package/dist/attempt-execution.shared-Cok8CE9p.js +38 -0
  48. package/dist/attempt.prompt-helpers-Kok600qT.js +475 -0
  49. package/dist/attempt.tool-run-context-C5nkRM5Y.js +2094 -0
  50. package/dist/binding-routing-BILfy0c8.js +113 -0
  51. package/dist/binding-targets-BrYDo8Jx.js +121 -0
  52. package/dist/bot-CxJsNrtp.js +7894 -0
  53. package/dist/bot-deps-BWdw7DXt.js +2 -0
  54. package/dist/bot-deps-BbL_ePix.js +747 -0
  55. package/dist/bot-message-context.runtime-qkq-RzJY.js +7 -0
  56. package/dist/bot-message-context.runtime.js +1 -1
  57. package/dist/bot-message-context.session.runtime-CxuxYsNb.js +12 -0
  58. package/dist/bot-message-context.session.runtime.js +1 -1
  59. package/dist/bot-native-commands.delivery.runtime-BOjc08fe.js +4 -0
  60. package/dist/bot-native-commands.delivery.runtime.js +1 -1
  61. package/dist/bot-native-commands.runtime-LtWQYEai.js +13 -0
  62. package/dist/bot-native-commands.runtime.js +1 -1
  63. package/dist/bridge-server-BvrlsnvW.js +113 -0
  64. package/dist/browser-cli-BmH-wDEt.js +230 -0
  65. package/dist/browser-cli-D7JUe5WT.js +2 -0
  66. package/dist/browser-cli-actions-input-BtCjZh2W.js +473 -0
  67. package/dist/browser-cli-actions-observe-CKCy--u8.js +81 -0
  68. package/dist/browser-cli-debug-D7KF3hoB.js +137 -0
  69. package/dist/browser-cli-inspect-B5_Q_bKp.js +104 -0
  70. package/dist/browser-cli-manage-BNRyXUfb.js +443 -0
  71. package/dist/browser-cli-resize-BR9dybJM.js +26 -0
  72. package/dist/browser-cli-shared-ZfP-ZP1r.js +50 -0
  73. package/dist/browser-cli-state-BJRQ87Hp.js +337 -0
  74. package/dist/browser-control-auth-C1ZlS07R.js +2 -0
  75. package/dist/browser-profiles-BLgaJJYW.js +2 -0
  76. package/dist/browser-runtime-CX-EDgFi.js +384 -0
  77. package/dist/build-DOEtxYaU.js +257 -0
  78. package/dist/build-info.json +3 -3
  79. package/dist/bundled/boot-md/handler.js +2 -2
  80. package/dist/bundled/session-memory/handler.js +1 -1
  81. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  82. package/dist/capability-cli-Mj0McddT.js +1782 -0
  83. package/dist/channel-BDvizmrp.js +1556 -0
  84. package/dist/channel-C749d8mG.js +376 -0
  85. package/dist/channel-CWP6h4W5.js +1134 -0
  86. package/dist/channel-CgzMA_Q0.js +2126 -0
  87. package/dist/channel-Chx_WUyI.js +867 -0
  88. package/dist/channel-Ctnzf_tM.js +238 -0
  89. package/dist/channel-CusFbCv9.js +653 -0
  90. package/dist/channel-D5jjabnb.js +1249 -0
  91. package/dist/channel-DF-fw8lK.js +1496 -0
  92. package/dist/channel-DKAG-w5b.js +481 -0
  93. package/dist/channel-DSbpV7ax.js +808 -0
  94. package/dist/channel-DiN2VJEK.js +955 -0
  95. package/dist/channel-DvN94bvt.js +740 -0
  96. package/dist/channel-DxtVMwdk.js +508 -0
  97. package/dist/channel-GubQ1f0C.js +362 -0
  98. package/dist/channel-MXOd30fz.d.ts +427 -0
  99. package/dist/channel-actions.runtime-DEb9ZniG.js +265 -0
  100. package/dist/channel-actions.runtime.js +1 -1
  101. package/dist/channel-core-Dr6fp5Ub.js +5 -0
  102. package/dist/channel-inbound-FG-Mc5xc.js +80 -0
  103. package/dist/channel-plugin-runtime-hiqeg-_c.js +998 -0
  104. package/dist/channel-rej8M5lJ.js +1777 -0
  105. package/dist/channel-runtime-DJp4CruI.js +408 -0
  106. package/dist/channel-z0v-MMYk.js +562 -0
  107. package/dist/channel.runtime-1o_vRC84.js +109 -0
  108. package/dist/channel.runtime-BXrIcht7.js +254 -0
  109. package/dist/channel.runtime-C9opTci8.js +2528 -0
  110. package/dist/channel.runtime-CBvyS9OE.js +1008 -0
  111. package/dist/channel.runtime-CSwcAfTq.js +88 -0
  112. package/dist/channel.runtime-DKFrmmAg.js +652 -0
  113. package/dist/channel.runtime-DTBcVFL7.js +733 -0
  114. package/dist/channel.runtime-E2IhUtz8.js +4 -0
  115. package/dist/channel.runtime-s8LoLneR.js +21009 -0
  116. package/dist/channel.setup-BU4bp4OI.js +10 -0
  117. package/dist/channel.setup-CpygZ2ZG.js +343 -0
  118. package/dist/channel.setup-Z7jM_Q-v.js +1098 -0
  119. package/dist/chat-BQA8JGz8.js +2666 -0
  120. package/dist/chrome-YaZdp6CU.js +1503 -0
  121. package/dist/cli/run-main.js +5 -5
  122. package/dist/cli-DvGvBxMy.js +1341 -0
  123. package/dist/cli-compaction-0ER1653L.js +347 -0
  124. package/dist/cli-metadata-BJX-MSNl.js +22 -0
  125. package/dist/cli-runner-BGc4U7E0.js +2 -0
  126. package/dist/cli-runner-CH30meJN.js +540 -0
  127. package/dist/cli-runner.runtime-BqU9giS7.js +4 -0
  128. package/dist/cli-runner.runtime-D14IpD46.js +3 -0
  129. package/dist/cli-runner.runtime.js +1 -1
  130. package/dist/cli-startup-metadata.json +8 -8
  131. package/dist/client-DqnCi7vL.js +650 -0
  132. package/dist/client-adapter-BKZ5qBVY.js +897 -0
  133. package/dist/client-factory-BbBpLxaP.js +9 -0
  134. package/dist/command-auth-fZ1DLCTo.js +135 -0
  135. package/dist/command-handlers-CHbhwC1N.js +1609 -0
  136. package/dist/command-registry-_Oons836.js +4 -0
  137. package/dist/command-registry-core-Btb-M6JE.js +110 -0
  138. package/dist/command-registry-gWuCKROh.js +9 -0
  139. package/dist/command-status.runtime-DLav1SGb.js +90 -0
  140. package/dist/command-status.runtime.js +1 -1
  141. package/dist/commands-acp-DVbINB4V.js +74 -0
  142. package/dist/commands-compact.runtime-CqQIDvM8.js +10 -0
  143. package/dist/commands-compact.runtime.js +1 -1
  144. package/dist/commands-handlers.runtime-DJBGEdTB.js +6154 -0
  145. package/dist/commands-handlers.runtime.js +1 -1
  146. package/dist/commands-status-BaDacW0z.js +3 -0
  147. package/dist/commands-status-CTZ-HwUc.js +16 -0
  148. package/dist/commands-status.runtime-BaDacW0z.js +3 -0
  149. package/dist/commands-status.runtime.js +1 -1
  150. package/dist/commands-subagents-control.runtime-B6SOliNd.js +2 -0
  151. package/dist/commands-subagents-control.runtime-DTdEiA7w.js +3 -0
  152. package/dist/commands-subagents-control.runtime.js +1 -1
  153. package/dist/commands-system-prompt-BAdsJpn8.js +162 -0
  154. package/dist/commands-system-prompt-CX5iT-44.js +2 -0
  155. package/dist/commands.runtime-DObObKfz.js +176 -0
  156. package/dist/commands.runtime.js +1 -1
  157. package/dist/commitments/runtime.js +1 -1
  158. package/dist/compact-Bs_eAw33.js +480 -0
  159. package/dist/compact-Ck7hE3ba.js +1141 -0
  160. package/dist/compact.runtime-el4EYgrW.js +12 -0
  161. package/dist/compact.runtime.js +1 -1
  162. package/dist/completion-cli-BbDnqYnS.js +315 -0
  163. package/dist/computer-use-GvCUpEEf.js +367 -0
  164. package/dist/config-BLgaJJYW.js +2 -0
  165. package/dist/config-FCIVG4Db.js +373 -0
  166. package/dist/config-mutations-BIPJigAd.js +159 -0
  167. package/dist/context-engine-host-compat--OOY7QEI.js +2 -0
  168. package/dist/context-engine-host-compat-DYVeYR5u.js +288 -0
  169. package/dist/context-engine-lifecycle-DAB4GWd5.js +1274 -0
  170. package/dist/control-auth-BekRscGw.js +114 -0
  171. package/dist/control-service-Hg9bqOzH.js +145 -0
  172. package/dist/control-ui/apple-touch-icon.png +0 -0
  173. package/dist/control-ui/assets/agents-BRFjPVUQ.js +1008 -0
  174. package/dist/control-ui/assets/channel-config-extras-BySqgsd3.js +2 -0
  175. package/dist/control-ui/assets/channels-CC3sudX4.js +367 -0
  176. package/dist/control-ui/assets/cron-D0s06fzI.js +1013 -0
  177. package/dist/control-ui/assets/debug-9oq9PYZU.js +97 -0
  178. package/dist/control-ui/assets/index-ChE1ypG4.js +7381 -0
  179. package/dist/control-ui/assets/instances-k9LggJet.js +57 -0
  180. package/dist/control-ui/assets/logs-DKvc2q9b.js +74 -0
  181. package/dist/control-ui/assets/nodes-Bn7kmEGE.js +436 -0
  182. package/dist/control-ui/assets/sessions-0K-_jD8O.js +399 -0
  183. package/dist/control-ui/assets/skills-C9d4OZr_.js +314 -0
  184. package/dist/control-ui/assets/skills-shared-Bv7GgVjx.js +11 -0
  185. package/dist/control-ui/favicon-32.png +0 -0
  186. package/dist/control-ui/favicon-512.png +0 -0
  187. package/dist/control-ui/index.html +1 -1
  188. package/dist/control-ui/manifest.webmanifest +19 -6
  189. package/dist/control-ui/sw.js +1 -1
  190. package/dist/conversation-binding-runtime-CC1fW5Mc.js +4 -0
  191. package/dist/conversation-runtime-YK1oLoen.js +31 -0
  192. package/dist/core-D9SaX41X.js +282 -0
  193. package/dist/core-api-6x_6ros_.js +2 -0
  194. package/dist/core-api-DQaZ_B6s.js +5 -0
  195. package/dist/crestodian/crestodian.js +1 -1
  196. package/dist/crestodian/rescue-message.js +1 -1
  197. package/dist/crestodian-DLJAlHQO.js +55 -0
  198. package/dist/daocore-tools-DnGMRYJ5.js +11727 -0
  199. package/dist/delivery-dlloZivQ.js +1002 -0
  200. package/dist/dialogue-BQcF-xHi.js +37 -0
  201. package/dist/dir-fetch-tool-BmkLMRQd.js +565 -0
  202. package/dist/dir-list-tool-lJdvGnnr.js +100 -0
  203. package/dist/direct-dm-BfzS7vxm.js +64 -0
  204. package/dist/directive-handling.fast-lane-BdYkpgfF.js +68 -0
  205. package/dist/directive-handling.impl-DRIFqx-C.js +818 -0
  206. package/dist/directive-handling.impl-DoXcyCdO.js +2 -0
  207. package/dist/directive-handling.model-selection-xgiP4xbL.js +122 -0
  208. package/dist/directive-handling.persist.runtime-Dl-jD_0m.js +263 -0
  209. package/dist/directive-handling.persist.runtime.js +1 -1
  210. package/dist/dispatch-acp-transcript.runtime-B-PwrS4S.js +40 -0
  211. package/dist/dispatch-acp-transcript.runtime.js +1 -1
  212. package/dist/dispatch-acp.runtime-CQHluA8f.js +18 -0
  213. package/dist/dispatch-acp.runtime.js +1 -1
  214. package/dist/dispatch-kxJ95i3A.js +1640 -0
  215. package/dist/doctor-3QQaqcgK.js +2 -0
  216. package/dist/doctor-B9I7SuuU.js +6 -0
  217. package/dist/doctor-config-flow-DZQY34yK.js +1741 -0
  218. package/dist/doctor-core-checks-C_o9kgoZ.js +2 -0
  219. package/dist/doctor-core-checks-jWtsa4Nz.js +573 -0
  220. package/dist/doctor-health-BJ5wJFg5.js +65 -0
  221. package/dist/doctor-health-contributions-DxNPaNU6.js +696 -0
  222. package/dist/doctor-lint-DQrwNSTd.js +94 -0
  223. package/dist/doctor-state-integrity-Ctb6H9Pr.js +1231 -0
  224. package/dist/doctor-update-BZrZGmOg.js +58 -0
  225. package/dist/dynamic-tools-B9sHtLKs.js +486 -0
  226. package/dist/embedded-backend-CVEWr5Vd.js +579 -0
  227. package/dist/embedded-gateway-stub.runtime-BUl3fCUr.js +12 -0
  228. package/dist/embedded-gateway-stub.runtime.js +1 -1
  229. package/dist/exec-approvals-U0VRo553.js +149 -0
  230. package/dist/extensionAPI.js +1 -1
  231. package/dist/extensions/active-memory/index.js +1 -1
  232. package/dist/extensions/admin-http-rpc/index.js +1 -1
  233. package/dist/extensions/browser/browser-bridge.js +1 -1
  234. package/dist/extensions/browser/browser-config.js +4 -4
  235. package/dist/extensions/browser/browser-control-auth.js +2 -2
  236. package/dist/extensions/browser/browser-doctor.js +2 -2
  237. package/dist/extensions/browser/browser-maintenance.js +1 -1
  238. package/dist/extensions/browser/browser-profiles.js +2 -2
  239. package/dist/extensions/browser/browser-runtime-api.js +11 -11
  240. package/dist/extensions/browser/cli-metadata.js +1 -1
  241. package/dist/extensions/browser/index.js +1 -1
  242. package/dist/extensions/browser/plugin-registration.js +1 -1
  243. package/dist/extensions/browser/register.runtime.js +4 -4
  244. package/dist/extensions/browser/runtime-api.js +13 -13
  245. package/dist/extensions/canvas/index.js +1 -1
  246. package/dist/extensions/clickclack/api.js +2 -2
  247. package/dist/extensions/clickclack/channel-plugin-api.js +1 -1
  248. package/dist/extensions/clickclack/runtime-api.js +2 -2
  249. package/dist/extensions/device-pair/api.js +1 -1
  250. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  251. package/dist/extensions/file-transfer/index.js +4 -4
  252. package/dist/extensions/imessage/api.js +2 -2
  253. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  254. package/dist/extensions/imessage/message-tool-api.d.ts +1 -1
  255. package/dist/extensions/imessage/runtime-api.js +3 -3
  256. package/dist/extensions/irc/api.js +2 -2
  257. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  258. package/dist/extensions/llm-task/index.js +1 -1
  259. package/dist/extensions/mattermost/api.js +1 -1
  260. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  261. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  262. package/dist/extensions/mattermost/policy-api.js +1 -1
  263. package/dist/extensions/mattermost/runtime-api.js +2 -2
  264. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  265. package/dist/extensions/memory-core/cli-metadata.js +1 -1
  266. package/dist/extensions/migrate-claude/apply.js +1 -1
  267. package/dist/extensions/migrate-claude/index.js +1 -1
  268. package/dist/extensions/migrate-claude/plan.js +1 -1
  269. package/dist/extensions/migrate-claude/provider.js +1 -1
  270. package/dist/extensions/migrate-claude/targets.js +1 -1
  271. package/dist/extensions/migrate-hermes/apply.js +1 -1
  272. package/dist/extensions/migrate-hermes/index.js +1 -1
  273. package/dist/extensions/migrate-hermes/model.js +1 -1
  274. package/dist/extensions/migrate-hermes/plan.js +1 -1
  275. package/dist/extensions/migrate-hermes/provider.js +1 -1
  276. package/dist/extensions/migrate-hermes/secrets.js +1 -1
  277. package/dist/extensions/migrate-hermes/targets.js +1 -1
  278. package/dist/extensions/policy/api.js +1 -1
  279. package/dist/extensions/policy/index.js +2 -2
  280. package/dist/extensions/signal/api.js +6 -6
  281. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  282. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  283. package/dist/extensions/signal/runtime-api.js +7 -7
  284. package/dist/extensions/skill-workshop/api.js +1 -1
  285. package/dist/extensions/skill-workshop/index.js +2 -2
  286. package/dist/extensions/telegram/account-inspect-api.js +1 -1
  287. package/dist/extensions/telegram/api.js +11 -11
  288. package/dist/extensions/telegram/channel-plugin-api.js +2 -2
  289. package/dist/extensions/telegram/contract-api.js +3 -3
  290. package/dist/extensions/telegram/runtime-api.js +7 -7
  291. package/dist/extensions/telegram/security-audit-contract-api.js +1 -1
  292. package/dist/extensions/telegram/setup-plugin-api.js +1 -1
  293. package/dist/extensions/telegram/test-api.js +2 -2
  294. package/dist/extensions/webhooks/api.js +1 -1
  295. package/dist/extensions/webhooks/index.js +1 -1
  296. package/dist/extensions/xai/index.js +4 -4
  297. package/dist/extensions/xai/realtime-transcription-provider.js +1 -1
  298. package/dist/extensions/xai/speech-provider.js +1 -1
  299. package/dist/extensions/xai/test-api.js +1 -1
  300. package/dist/extensions/xai/tts.js +1 -1
  301. package/dist/extensions/xai/web-search.js +1 -1
  302. package/dist/extensions/xai/xai-oauth.js +1 -1
  303. package/dist/file-fetch-tool-PskYnfdX.js +124 -0
  304. package/dist/file-write-tool-BWMKcxSs.js +127 -0
  305. package/dist/format-DCronAhx.js +250 -0
  306. package/dist/format-Dk3-Jpqj.js +1145 -0
  307. package/dist/gateway-cli-BEtRyNAV.js +435 -0
  308. package/dist/gateway-method-runtime-Ba3mc5Ui.js +21 -0
  309. package/dist/get-reply-B-kNh5PS.js +4689 -0
  310. package/dist/get-reply-from-config.runtime-D-49TKR5.js +2 -0
  311. package/dist/get-reply-from-config.runtime.js +1 -1
  312. package/dist/graph-users-DIK-qpar.js +1419 -0
  313. package/dist/group-access-B6LDV7nR.js +112 -0
  314. package/dist/handle-action.guild-admin-Dz9DREmk.js +288 -0
  315. package/dist/harness-CJWitSNk.js +61 -0
  316. package/dist/health-SAxsj7q2.js +4 -0
  317. package/dist/health-state-Bp0DOLCD.js +106 -0
  318. package/dist/heartbeat-runner-D2IpmXX0.js +5 -0
  319. package/dist/heartbeat-runner.runtime-BKwSStf9.js +4 -0
  320. package/dist/heartbeat-runner.runtime.js +1 -1
  321. package/dist/hooks-C9V4TVXi.js +534 -0
  322. package/dist/inbound-direct-dm-runtime-C-KKlFVB.js +2 -0
  323. package/dist/inbound-reply-dispatch-3Kvtrdcn.js +148 -0
  324. package/dist/index.js +1 -1
  325. package/dist/init-BGepd_Xi.js +59 -0
  326. package/dist/inline-buttons-Dqa993W-.js +40 -0
  327. package/dist/internal-events-hTD06P4Z.js +90 -0
  328. package/dist/isolated-agent-C30IhhQ4.js +1118 -0
  329. package/dist/isolated-agent-D9rwsYrc.js +2 -0
  330. package/dist/lifecycle-lYxX16zr.js +571 -0
  331. package/dist/list.probe-BuLNPfwh.js +449 -0
  332. package/dist/list.status-command-C9FwGWNZ.js +789 -0
  333. package/dist/llm-slug-generator-DEOtPI7b.js +78 -0
  334. package/dist/llm-slug-generator.js +1 -1
  335. package/dist/local-dispatch.runtime-D2mwqssZ.js +9 -0
  336. package/dist/local-dispatch.runtime.js +1 -1
  337. package/dist/manager.runtime-eqnbDApb.js +2714 -0
  338. package/dist/manager.runtime.js +1 -1
  339. package/dist/markdown-to-line-n4E_Ss2j.js +811 -0
  340. package/dist/mcp-http-DG2YDXx1.js +555 -0
  341. package/dist/mcp-http-DiGvYUK1.js +2 -0
  342. package/dist/media-understanding-provider-BAzC42im.js +339 -0
  343. package/dist/message-actions-DfM9sh0u.js +145 -0
  344. package/dist/message-handler-D3j7tiLC.js +1715 -0
  345. package/dist/message-handler-PdqXVaqc.js +384 -0
  346. package/dist/message-handler.preflight-DVTL11NJ.js +1125 -0
  347. package/dist/message-handler.process-Beo6fyUz.js +1484 -0
  348. package/dist/model-DiiSzCXH.js +74 -0
  349. package/dist/model-selection-CeDXYcsy.js +272 -0
  350. package/dist/models-BecxnLfn.js +104 -0
  351. package/dist/models-BxPknoYN.js +2 -0
  352. package/dist/models-cli-CmGPOjEx.js +256 -0
  353. package/dist/monitor-B2qfveOv.js +60 -0
  354. package/dist/monitor-BIKmDw4B.js +2 -0
  355. package/dist/monitor-CJXHxvh-.js +1657 -0
  356. package/dist/monitor-CqndMsTS.js +4377 -0
  357. package/dist/monitor-Dg9KC5G4.js +834 -0
  358. package/dist/monitor-IbL8Gw1Y.js +2788 -0
  359. package/dist/monitor-LxpNUkve.js +1370 -0
  360. package/dist/monitor-auth-EPov6Z4x.js +179 -0
  361. package/dist/monitor-i7_7ne6w.js +715 -0
  362. package/dist/monitor-polling.runtime-BRFuwAQo.js +883 -0
  363. package/dist/monitor-polling.runtime.js +1 -1
  364. package/dist/monitor-webhook.runtime-CGyP4NKq.js +387 -0
  365. package/dist/monitor-webhook.runtime.js +1 -1
  366. package/dist/monitor.account-L5cJkJbV.js +5233 -0
  367. package/dist/monitor.runtime-Caq1xo2T.js +2 -0
  368. package/dist/monitor.runtime.js +1 -1
  369. package/dist/monitor.webhook-CWo_j5xt.js +180 -0
  370. package/dist/node-cli-sessions-Dlrq3Hrt.js +1228 -0
  371. package/dist/openai-http-Cbs9WY_K.js +824 -0
  372. package/dist/openresponses-http-Djc1TNo5.js +1173 -0
  373. package/dist/operations-CePwJ_bf.js +805 -0
  374. package/dist/outbound-adapter-Cmcx_Msg.js +543 -0
  375. package/dist/outbound-session-route-DIvKTIer.js +45 -0
  376. package/dist/outbound.runtime-BCm1uM9e.js +2 -0
  377. package/dist/outbound.runtime.js +1 -1
  378. package/dist/pi-embedded-BGYOawy9.js +3796 -0
  379. package/dist/pi-embedded-s_XN5zci.js +4 -0
  380. package/dist/pi-embedded.runtime-Iv_ADnNC.js +4 -0
  381. package/dist/pi-embedded.runtime.js +1 -1
  382. package/dist/pi-tools-b-Wh6fBG.js +2413 -0
  383. package/dist/plan-9Cb-QHmS.js +112 -0
  384. package/dist/plan-DOX8mLZM.js +81 -0
  385. package/dist/plugin-CRqD5XqH.js +12396 -0
  386. package/dist/plugin-app-cache-key-BKpHiVS2.js +46 -0
  387. package/dist/plugin-enabled-BEi_lYEW.js +233 -0
  388. package/dist/plugin-registration-D99tHdMd.js +88 -0
  389. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  390. package/dist/plugin-sdk/acp-runtime-backend.js +1 -1
  391. package/dist/plugin-sdk/acp-runtime.js +2 -2
  392. package/dist/plugin-sdk/agent-harness-runtime.js +6 -6
  393. package/dist/plugin-sdk/agent-harness-task-runtime.js +1 -1
  394. package/dist/plugin-sdk/agent-harness.js +7 -7
  395. package/dist/plugin-sdk/agent-runtime.js +2 -2
  396. package/dist/plugin-sdk/channel-core.js +2 -2
  397. package/dist/plugin-sdk/channel-inbound.js +2 -2
  398. package/dist/plugin-sdk/channel-test-helpers.js +1 -1
  399. package/dist/plugin-sdk/command-auth.js +1 -1
  400. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  401. package/dist/plugin-sdk/compat.js +1 -1
  402. package/dist/plugin-sdk/conversation-binding-runtime.js +2 -2
  403. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  404. package/dist/plugin-sdk/core.js +2 -2
  405. package/dist/plugin-sdk/direct-dm.js +1 -1
  406. package/dist/plugin-sdk/gateway-method-runtime.js +1 -1
  407. package/dist/plugin-sdk/health.js +2 -2
  408. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  409. package/dist/plugin-sdk/index.js +1 -1
  410. package/dist/plugin-sdk/mattermost.js +1 -1
  411. package/dist/plugin-sdk/plugin-test-contracts.js +2 -2
  412. package/dist/plugin-sdk/provider-test-contracts.js +4 -4
  413. package/dist/plugin-sdk/reply-runtime.js +4 -4
  414. package/dist/plugin-sdk/testing.js +2 -2
  415. package/dist/plugin-sdk/zalouser.js +1 -1
  416. package/dist/plugin-service-DBTlrK7m.js +1229 -0
  417. package/dist/plugins/runtime/index.js +4 -4
  418. package/dist/policy-B-G2ltps.js +680 -0
  419. package/dist/policy-DCljYbZL.js +138 -0
  420. package/dist/prepare.runtime-Ewb81gRo.js +732 -0
  421. package/dist/prepare.runtime.js +1 -1
  422. package/dist/preview-warnings-DhWnG_r-.js +392 -0
  423. package/dist/probe-Bqu475Tv.js +2204 -0
  424. package/dist/probe-CRWUBMuB.js +682 -0
  425. package/dist/probe-Dm3lYN25.js +47 -0
  426. package/dist/probe-LLx6ayxG.js +2 -0
  427. package/dist/program-vxEyXm2e.js +131 -0
  428. package/dist/provider-B2aKgXI0.js +32 -0
  429. package/dist/provider-BUYMN3uZ.js +152 -0
  430. package/dist/provider-BlBfyHXO.js +32 -0
  431. package/dist/provider-D3O0zKex.js +8735 -0
  432. package/dist/provider-dispatcher-CYuX21il.js +22 -0
  433. package/dist/provider-dispatcher.runtime.js +1 -1
  434. package/dist/provider-session.runtime-xIOzPEA7.js +9 -0
  435. package/dist/provider-session.runtime.js +1 -1
  436. package/dist/provider.runtime-C94TKQWq.js +2 -0
  437. package/dist/provider.runtime.js +1 -1
  438. package/dist/public-surface-loader-CDa3nA_L.js +114 -0
  439. package/dist/pw-ai-BH_nTHa5.js +3029 -0
  440. package/dist/pw-role-snapshot-BPi5ipRX.js +333 -0
  441. package/dist/reaction-level-CSHisLIF.js +19 -0
  442. package/dist/reaction-runtime-api-D5YNDU-7.js +116 -0
  443. package/dist/realtime-transcription-provider-B6-wne03.js +205 -0
  444. package/dist/register-AeYt54B0.js +2178 -0
  445. package/dist/register.agent-DuW_Cioa.js +156 -0
  446. package/dist/register.crestodian-DfuAvHf8.js +24 -0
  447. package/dist/register.maintenance-DhSW2XSZ.js +83 -0
  448. package/dist/register.runtime-CYWai1dl.js +54 -0
  449. package/dist/register.status-health-sessions-BrkNpe59.js +282 -0
  450. package/dist/register.subclis-B4c9g5v0.js +31 -0
  451. package/dist/register.subclis-Do4TSxcj.js +3 -0
  452. package/dist/register.subclis-core-Dm9-Cc4K.js +273 -0
  453. package/dist/repair-sequencing-CKX_OEBn.js +640 -0
  454. package/dist/reply-delivery-Dx31Fawb.js +196 -0
  455. package/dist/reply-runtime-DyCbxbOD.js +11 -0
  456. package/dist/reply.runtime-D-49TKR5.js +2 -0
  457. package/dist/reply.runtime.js +1 -1
  458. package/dist/request-CZtiBI4R.js +54 -0
  459. package/dist/resolve-allowlist-C-WRtkEq.js +220 -0
  460. package/dist/result-fallback-classifier-BkI5uV-W.js +79 -0
  461. package/dist/route-BEeC4HAl.js +469 -0
  462. package/dist/route-resolution-CHA13yYB.js +274 -0
  463. package/dist/routes-CfBm1qOU.js +2 -0
  464. package/dist/routes-DsgV54GJ.js +3602 -0
  465. package/dist/run-DL8UkH0h.js +1162 -0
  466. package/dist/run-attempt-D0qv7bs7.js +7704 -0
  467. package/dist/run-command-BWyjy--D.js +23 -0
  468. package/dist/run-command-IDml3oWg.js +2 -0
  469. package/dist/run-embedded.runtime-DeIZpKHe.js +4 -0
  470. package/dist/run-embedded.runtime.js +1 -1
  471. package/dist/run-execution-cli.runtime-yf9gfWAm.js +4 -0
  472. package/dist/run-execution-cli.runtime.js +1 -1
  473. package/dist/run-executor.runtime.js +1 -1
  474. package/dist/run-subagent-registry.runtime-oZs4xMMU.js +2 -0
  475. package/dist/run-subagent-registry.runtime.js +1 -1
  476. package/dist/runtime-BDbGwqGy.js +6179 -0
  477. package/dist/runtime-Bwn06s0u.js +438 -0
  478. package/dist/runtime-CD6WyVpL.js +1287 -0
  479. package/dist/runtime-api-BzvORSkx.js +4 -0
  480. package/dist/runtime-api-CAORRCZU.js +17 -0
  481. package/dist/runtime-api-CZGRk5D1.js +24 -0
  482. package/dist/runtime-api-CZm1iIlw.js +13 -0
  483. package/dist/runtime-api-D0d1LZvp.js +21 -0
  484. package/dist/runtime-api-DPIkVTDM.js +3 -0
  485. package/dist/runtime-api-DbQDZRSI.js +13 -0
  486. package/dist/runtime-api.actions-CuYXLj2I.js +3 -0
  487. package/dist/runtime-api.monitor-BPMqlEBC.js +6 -0
  488. package/dist/runtime-api.send-cXGaIwD8.js +4 -0
  489. package/dist/runtime-api.threads-DF6EqVSY.js +2 -0
  490. package/dist/runtime-channel-B2dCbld0.js +2 -0
  491. package/dist/runtime-channel-BfzwZ133.js +150 -0
  492. package/dist/runtime-embedded-pi.runtime-Bz4-Me2g.js +2 -0
  493. package/dist/runtime-embedded-pi.runtime.js +1 -1
  494. package/dist/sanitize-outbound-52UJkVc2.js +127 -0
  495. package/dist/sdk-setup-tools-DzA0rD_t.js +8 -0
  496. package/dist/secrets-BzY28DjS.js +113 -0
  497. package/dist/security-audit-B_x9Bqsd.js +122 -0
  498. package/dist/security-audit-CaX5F2YD.js +118 -0
  499. package/dist/security-audit.runtime-BZFJXu8H.js +2 -0
  500. package/dist/security-audit.runtime.js +1 -1
  501. package/dist/selection-B4V4O6zr.js +16157 -0
  502. package/dist/selection-Cp7REh-j.js +3 -0
  503. package/dist/send-C8NgsGx0.js +2 -0
  504. package/dist/send-CktHKbVL.js +192 -0
  505. package/dist/send-DSDSSxuo.js +1631 -0
  506. package/dist/send-I0iE28XZ.js +143 -0
  507. package/dist/send.components-CdYNwUR8.js +500 -0
  508. package/dist/send.components-DDmsziVe.js +2 -0
  509. package/dist/send.runtime-DEr6-5Rp.js +2 -0
  510. package/dist/send.runtime.js +1 -1
  511. package/dist/server-Bdu2XxWz.js +24 -0
  512. package/dist/server-BnVdhBLM.js +73 -0
  513. package/dist/server-close.runtime.js +1 -1
  514. package/dist/server-context-B7bIBpAz.js +2 -0
  515. package/dist/server-context-BlPO5a-j.js +955 -0
  516. package/dist/server-cron-3tDiqp95.js +2989 -0
  517. package/dist/server-cron-Ckfa7HkP.js +2 -0
  518. package/dist/server-maintenance-CDfLZpYN.js +167 -0
  519. package/dist/server-methods-BNAICSKA.js +16494 -0
  520. package/dist/server-node-events-BSp5sE0Q.js +596 -0
  521. package/dist/server-plugin-bootstrap-Noai-kpp.js +70 -0
  522. package/dist/server-plugins-DYPvxv5q.js +432 -0
  523. package/dist/server-reload-handlers-I8gCBw7C.js +714 -0
  524. package/dist/server-restart-sentinel-Bykg5_Sm.js +747 -0
  525. package/dist/server-restart-sentinel-Dz8m-1uN.js +2 -0
  526. package/dist/server-runtime-services-B2DpVh1J.js +2 -0
  527. package/dist/server-runtime-services-DPDcSogD.js +267 -0
  528. package/dist/server-startup-early-Ctjir66B.js +87 -0
  529. package/dist/server-startup-plugins-DHFkcvFX.js +113 -0
  530. package/dist/server-startup-post-attach-BvKY1MjB.js +716 -0
  531. package/dist/server-ws-runtime-DbsgWSNE.js +349 -0
  532. package/dist/server.impl-DkzYcRnc.js +2586 -0
  533. package/dist/service-oKCE97n8.js +1446 -0
  534. package/dist/session-binding-BCYHcgKv.js +219 -0
  535. package/dist/session-binding-Dbc5SyV1.js +2 -0
  536. package/dist/session-kill-http-MtEei2A_.js +121 -0
  537. package/dist/session-reset-service-BetsGXPL.js +625 -0
  538. package/dist/session-route-BNumUO6m.js +93 -0
  539. package/dist/session-status.runtime-8-kVkZLZ.js +2 -0
  540. package/dist/session-status.runtime.js +1 -1
  541. package/dist/session-subagent-reactivation.runtime-C4xmUBc4.js +2 -0
  542. package/dist/session-subagent-reactivation.runtime.js +1 -1
  543. package/dist/session-tab-registry-DldD575V.js +521 -0
  544. package/dist/sessions-history-http-Dh8uuG7K.js +430 -0
  545. package/dist/sessions.runtime-CTD1EISY.js +2 -0
  546. package/dist/sessions.runtime.js +1 -1
  547. package/dist/setup-api-ClFwxmWg.js +29 -0
  548. package/dist/setup-core-DF053J7r.js +174 -0
  549. package/dist/setup-surface-C3vtcmut.js +221 -0
  550. package/dist/setup-surface-hKgM61lK.js +288 -0
  551. package/dist/setup-surface-kl5kIfCD.js +405 -0
  552. package/dist/setup-surface-o44p_EZs.js +320 -0
  553. package/dist/shared-DuNbDPVK.js +121 -0
  554. package/dist/shared-client-BGdKzX6-.js +2 -0
  555. package/dist/shared-client-DiaCaBiw.js +629 -0
  556. package/dist/side-question-vADB_V7t.js +683 -0
  557. package/dist/skill-tool-dispatch.runtime-DeTiaxln.js +143 -0
  558. package/dist/skill-tool-dispatch.runtime.js +1 -1
  559. package/dist/slash-state-TiAtCc3B.js +2166 -0
  560. package/dist/speech-provider-Dko5aOz2.js +184 -0
  561. package/dist/src-Bczx7izw.js +4256 -0
  562. package/dist/startup-context-sYE5tS1C.js +313 -0
  563. package/dist/status-CHChLqRH.js +3 -0
  564. package/dist/status-OYJF7NHg.js +4 -0
  565. package/dist/status-all-CSz2mOkm.js +573 -0
  566. package/dist/status-json-B5iKxsPt.js +14 -0
  567. package/dist/status-json-command-B7mD_HM0.js +84 -0
  568. package/dist/status-runtime-shared-tJ5_gXDE.js +283 -0
  569. package/dist/status-subagents.runtime-B79dVmOZ.js +18 -0
  570. package/dist/status-subagents.runtime.js +1 -1
  571. package/dist/status-text-CNV3Xo_z.js +296 -0
  572. package/dist/status.command-29iMh5b8.js +420 -0
  573. package/dist/status.command-cDrXztZ4.js +2 -0
  574. package/dist/status.command.text-runtime-CJLiLlec.js +15 -0
  575. package/dist/status.scan-BnCyO_-1.js +68 -0
  576. package/dist/status.scan-overview-8jfuH7wl.js +444 -0
  577. package/dist/status.scan.fast-json-CyqrMrI6.js +2 -0
  578. package/dist/status.scan.fast-json-D0y03alo.js +127 -0
  579. package/dist/status.scan.runtime-DGbNNELT.js +479 -0
  580. package/dist/status.scan.runtime.js +1 -1
  581. package/dist/status.update-C6moG8hY.js +2 -0
  582. package/dist/status.update-Ch-d2YqJ.js +86 -0
  583. package/dist/sticker-cache-ClnmeK7n.js +206 -0
  584. package/dist/sticker-vision.runtime-DKWYX_Z0.js +17 -0
  585. package/dist/sticker-vision.runtime.js +1 -1
  586. package/dist/subagent-announce-BxgiPcah.js +354 -0
  587. package/dist/subagent-announce-delivery-M73wDt9b.js +958 -0
  588. package/dist/subagent-control-Svp4alxT.js +508 -0
  589. package/dist/subagent-hooks-B8fQ4SB-.js +2 -0
  590. package/dist/subagent-hooks-Bide9UGs.js +2 -0
  591. package/dist/subagent-hooks-BroJYfmc.js +116 -0
  592. package/dist/subagent-hooks-CeLaGy0S.js +2 -0
  593. package/dist/subagent-hooks-D0jzCSJB.js +230 -0
  594. package/dist/subagent-hooks-DMtU9Utn.js +146 -0
  595. package/dist/subagent-hooks-api-6X1AhZ92.js +23 -0
  596. package/dist/subagent-hooks-api-C3hw2s-7.js +22 -0
  597. package/dist/subagent-hooks-api-D0utPXhG.js +23 -0
  598. package/dist/subagent-orphan-recovery-DlyXF_8M.js +352 -0
  599. package/dist/subagent-registry-Ct9aaUSq.js +2351 -0
  600. package/dist/subagent-registry-_ThKY_a5.js +3 -0
  601. package/dist/subagent-registry.runtime.js +1 -1
  602. package/dist/subagent-session-cleanup-D9jhUKCY.js +525 -0
  603. package/dist/subagent-spawn-Bl5_-Qro.js +1164 -0
  604. package/dist/target-id-DgUyIiaj.js +107 -0
  605. package/dist/targets-CV6YGekF.js +19 -0
  606. package/dist/targets-Ct6zFYUl.js +19 -0
  607. package/dist/targets-DQxwAOx5.js +44 -0
  608. package/dist/task-registry-control.runtime.js +1 -1
  609. package/dist/telegram/token.js +1 -1
  610. package/dist/testing-JsUCJjUs.js +267 -0
  611. package/dist/text-report-E0TZg1LV.js +695 -0
  612. package/dist/thread-bindings-BJJr5qB6.js +232 -0
  613. package/dist/thread-bindings-BVe9r2rW.js +571 -0
  614. package/dist/thread-bindings-p78_o8d0.js +228 -0
  615. package/dist/thread-bindings-yvtEoUyM.js +8 -0
  616. package/dist/thread-bindings.discord-api-DpdJ31xq.js +187 -0
  617. package/dist/thread-bindings.manager-DkA46uP3.js +536 -0
  618. package/dist/thread-bindings.manager-MVNj26UO.js +2 -0
  619. package/dist/thread-lifecycle-CLhulJIV.js +1614 -0
  620. package/dist/token-VGmXler6.js +134 -0
  621. package/dist/tool-BJkgiGjR.js +139 -0
  622. package/dist/tool-actions.runtime-DhrT4z_Z.js +534 -0
  623. package/dist/tool-actions.runtime.js +1 -1
  624. package/dist/tool-resolution-BJLcYvry.js +149 -0
  625. package/dist/tools-effective-inventory-D1c6J-sI.js +204 -0
  626. package/dist/tools-invoke-http-B-k9cOYf.js +67 -0
  627. package/dist/tools-invoke-shared-qMHGnaLY.js +200 -0
  628. package/dist/tts-CmxOJYRq.js +66 -0
  629. package/dist/tui-BcRfXYtK.js +2 -0
  630. package/dist/tui-ChmyCc_c.js +4709 -0
  631. package/dist/tui-backend-BOAgkU7O.js +256 -0
  632. package/dist/tui-cli-C_1WxXuf.js +37 -0
  633. package/dist/update-check-Dvp_oog_.js +387 -0
  634. package/dist/update-cli-CBJVr7p3.js +3664 -0
  635. package/dist/update-runner-DHzvirfV.js +2379 -0
  636. package/dist/update-startup-3l7wPrqM.js +339 -0
  637. package/dist/update-startup-C_peqiGI.js +2 -0
  638. package/dist/vision-tools-BIOoLPOZ.js +1409 -0
  639. package/dist/web-search-8-XCZJzj.js +62 -0
  640. package/dist/web-search-provider.runtime-BORgiL3n.js +2 -0
  641. package/dist/web-search-provider.runtime-CCXm-JLK.js +328 -0
  642. package/dist/web-search-provider.runtime.js +1 -1
  643. package/dist/xai-oauth-CcxHOluD.js +479 -0
  644. package/dist/xai-user-agent-BE2MgJak.js +32 -0
  645. package/package.json +1 -1
  646. package/dist/abort-Bp4IXIaT.js +0 -277
  647. package/dist/abort.runtime-yT20lVm3.js +0 -2
  648. package/dist/account-inspect-Braq4T5C.js +0 -173
  649. package/dist/accounts-B73T487L.js +0 -2
  650. package/dist/accounts-Byqhka0B.js +0 -107
  651. package/dist/accounts-C6REvXTb.js +0 -107
  652. package/dist/accounts-DHkZahnb.js +0 -119
  653. package/dist/acp-runtime-CsYu7oyf.js +0 -26
  654. package/dist/acp-spawn-BpcanpjB.js +0 -2
  655. package/dist/acp-spawn-CXnfFZet.js +0 -1275
  656. package/dist/acp-stateful-target-driver-dbQl7Cls.js +0 -89
  657. package/dist/action-kill-CmrHUh6-.js +0 -33
  658. package/dist/action-runtime-Nz_MTd85.js +0 -469
  659. package/dist/action-runtime-api-NVBTHRJ0.js +0 -2
  660. package/dist/action-send-Bw28r8YX.js +0 -39
  661. package/dist/action-spawn-Db3goKdw.js +0 -47
  662. package/dist/actions-CZEEFK0T.js +0 -161
  663. package/dist/actions.runtime-f4FlBapO.js +0 -5
  664. package/dist/agent-BFrHijEI.js +0 -3
  665. package/dist/agent-BvTZZujh.js +0 -2
  666. package/dist/agent-command-CexUxiL4.js +0 -1367
  667. package/dist/agent-components.runtime-Bv--4UUq.js +0 -10
  668. package/dist/agent-harness-runtime-_4Ou4ZI_.js +0 -180
  669. package/dist/agent-harness-task-runtime-D0TI6yGM.js +0 -140
  670. package/dist/agent-runner-execution-BWvPnRM1.js +0 -1713
  671. package/dist/agent-runner-utils-hmda0Lyc.js +0 -266
  672. package/dist/agent-runner.runtime-6MrZPOYP.js +0 -3455
  673. package/dist/agent-runtime-Cnq13raf.js +0 -229
  674. package/dist/agent-via-gateway-Cux4caUy.js +0 -463
  675. package/dist/api-0vV8JjoW.js +0 -2
  676. package/dist/api-4kojV9vT.js +0 -639
  677. package/dist/api-C4dZHG-E.js +0 -2
  678. package/dist/api-DFDhOB71.js +0 -134
  679. package/dist/api-Dd41e_NF.js +0 -3
  680. package/dist/api-DqSBNv8i.js +0 -6
  681. package/dist/apply-DnknmYSP.js +0 -41
  682. package/dist/apply-XMFoVMgK.js +0 -54
  683. package/dist/approval-handler.runtime-BIKhPCUE.js +0 -130
  684. package/dist/assistant-Cfzr-QfG.js +0 -291
  685. package/dist/attachment-normalize-Bqthqujs.js +0 -225
  686. package/dist/attempt-execution-Cc2IUiUY.js +0 -558
  687. package/dist/attempt-execution.runtime-C1pnC5CL.js +0 -3
  688. package/dist/attempt-execution.shared-DR-LL9H1.js +0 -38
  689. package/dist/attempt.prompt-helpers-DvfaNdO_.js +0 -475
  690. package/dist/attempt.tool-run-context-Fk3-iLKA.js +0 -2094
  691. package/dist/binding-routing-BjRihOZ8.js +0 -113
  692. package/dist/binding-targets-D3vQIPpu.js +0 -121
  693. package/dist/bot-BzKQljl1.js +0 -7894
  694. package/dist/bot-deps-CHJno4Xv.js +0 -747
  695. package/dist/bot-deps-CTU3vOGH.js +0 -2
  696. package/dist/bot-message-context.runtime-DPAocg_K.js +0 -7
  697. package/dist/bot-message-context.session.runtime-cWFJiTXb.js +0 -12
  698. package/dist/bot-native-commands.delivery.runtime-BBiSJ9qu.js +0 -4
  699. package/dist/bot-native-commands.runtime-BoWjkHEv.js +0 -13
  700. package/dist/bridge-server-BnWfM8E9.js +0 -113
  701. package/dist/browser-cli-CKSNhiVi.js +0 -230
  702. package/dist/browser-cli-CsC0lbjc.js +0 -2
  703. package/dist/browser-cli-actions-input-1PFDZ0_b.js +0 -473
  704. package/dist/browser-cli-actions-observe-DfH0Y9FC.js +0 -81
  705. package/dist/browser-cli-debug-hj-w-s9t.js +0 -137
  706. package/dist/browser-cli-inspect-CxxMD86J.js +0 -104
  707. package/dist/browser-cli-manage-DOn9OEh_.js +0 -443
  708. package/dist/browser-cli-resize-BFHf-RqV.js +0 -26
  709. package/dist/browser-cli-shared-Ca_pACoG.js +0 -50
  710. package/dist/browser-cli-state-CCIHMGkC.js +0 -337
  711. package/dist/browser-control-auth-dTGAuDxC.js +0 -2
  712. package/dist/browser-profiles-CjXJJdop.js +0 -2
  713. package/dist/browser-runtime-DrNsVpfv.js +0 -384
  714. package/dist/build-QfdWbTGY.js +0 -257
  715. package/dist/capability-cli-D7nQY4qe.js +0 -1782
  716. package/dist/channel-13BBMvGu.js +0 -1496
  717. package/dist/channel-B9qWcqGg.js +0 -562
  718. package/dist/channel-BB9gjVcH.js +0 -362
  719. package/dist/channel-BM_u9Kct.js +0 -508
  720. package/dist/channel-BdhbzWTg.d.ts +0 -427
  721. package/dist/channel-CQbX6z1g.js +0 -740
  722. package/dist/channel-CXkMpUA_.js +0 -1134
  723. package/dist/channel-CcENPjLR.js +0 -1556
  724. package/dist/channel-CfgfbGDs.js +0 -808
  725. package/dist/channel-D6JtLARW.js +0 -955
  726. package/dist/channel-D6klawjQ.js +0 -867
  727. package/dist/channel-DFTg6l_Y.js +0 -1777
  728. package/dist/channel-DI30oIzM.js +0 -238
  729. package/dist/channel-Dwmhp2QK.js +0 -376
  730. package/dist/channel-DyOJHorx.js +0 -481
  731. package/dist/channel-DzLAzPz_.js +0 -1249
  732. package/dist/channel-ZshGzzZU.js +0 -2126
  733. package/dist/channel-actions.runtime-BPuh-LPy.js +0 -265
  734. package/dist/channel-core-Cip0DXqW.js +0 -5
  735. package/dist/channel-inbound-nxJGbY-L.js +0 -80
  736. package/dist/channel-kn7WFIV-.js +0 -653
  737. package/dist/channel-plugin-runtime-D2mUAQP6.js +0 -998
  738. package/dist/channel-runtime-DWbCQz0-.js +0 -408
  739. package/dist/channel.runtime-BRLds_50.js +0 -1008
  740. package/dist/channel.runtime-BYk5D3KV.js +0 -652
  741. package/dist/channel.runtime-Bd5GuqVD.js +0 -4
  742. package/dist/channel.runtime-BhiiHau6.js +0 -109
  743. package/dist/channel.runtime-CKnG96oM.js +0 -254
  744. package/dist/channel.runtime-DbuDXi8A.js +0 -2528
  745. package/dist/channel.runtime-DfQ7lbcl.js +0 -21009
  746. package/dist/channel.runtime-DhzR3IQP.js +0 -733
  747. package/dist/channel.runtime-SnJqiMZZ.js +0 -88
  748. package/dist/channel.setup-0jZeZ91N.js +0 -1098
  749. package/dist/channel.setup-C3aSMtNe.js +0 -343
  750. package/dist/channel.setup-x_GPUW2e.js +0 -10
  751. package/dist/chat-DyxY_o5e.js +0 -2666
  752. package/dist/chrome-CUytWLO5.js +0 -1503
  753. package/dist/cli-BnAifbUH.js +0 -1341
  754. package/dist/cli-compaction-BsDXzDbB.js +0 -347
  755. package/dist/cli-metadata-C2ez_EOq.js +0 -22
  756. package/dist/cli-runner-Df8f6aib.js +0 -2
  757. package/dist/cli-runner-N-xuwavW.js +0 -540
  758. package/dist/cli-runner.runtime-BZgB5Wze.js +0 -3
  759. package/dist/cli-runner.runtime-CzWSBiUX.js +0 -4
  760. package/dist/client-BSznX-Sw.js +0 -650
  761. package/dist/client-adapter-CvuAhGRl.js +0 -897
  762. package/dist/client-factory-Dl9ZpTlR.js +0 -9
  763. package/dist/command-auth-Cp3qho7_.js +0 -135
  764. package/dist/command-handlers-7evBobOS.js +0 -1609
  765. package/dist/command-registry-BTdu515H.js +0 -4
  766. package/dist/command-registry-MW7FkJ_Y.js +0 -9
  767. package/dist/command-registry-core-COtKps6g.js +0 -110
  768. package/dist/command-status.runtime-HmI60xl3.js +0 -90
  769. package/dist/commands-acp-NnHhockz.js +0 -74
  770. package/dist/commands-compact.runtime-wJDJ6VWY.js +0 -10
  771. package/dist/commands-handlers.runtime-CDlvieOM.js +0 -6154
  772. package/dist/commands-status-CJsUMgIw.js +0 -16
  773. package/dist/commands-status-j5QdKUbl.js +0 -3
  774. package/dist/commands-status.runtime-j5QdKUbl.js +0 -3
  775. package/dist/commands-subagents-control.runtime-BfOBOw5t.js +0 -3
  776. package/dist/commands-subagents-control.runtime-CALs_ywD.js +0 -2
  777. package/dist/commands-system-prompt-BnMuvo_P.js +0 -2
  778. package/dist/commands-system-prompt-BqcYl8m9.js +0 -162
  779. package/dist/commands.runtime-DMhewKIp.js +0 -176
  780. package/dist/compact-B4Hs8o3S.js +0 -1141
  781. package/dist/compact-CKxyl7Ak.js +0 -480
  782. package/dist/compact.runtime-BPnE7Lia.js +0 -12
  783. package/dist/completion-cli-dN803PIC.js +0 -315
  784. package/dist/computer-use-DI-JbifZ.js +0 -367
  785. package/dist/config-CA7Mb3IV.js +0 -373
  786. package/dist/config-CjXJJdop.js +0 -2
  787. package/dist/config-mutations-CIt7XNeY.js +0 -159
  788. package/dist/context-engine-host-compat-C0PN-GqB.js +0 -288
  789. package/dist/context-engine-host-compat-r4dLJY0h.js +0 -2
  790. package/dist/context-engine-lifecycle-BgedIp9C.js +0 -1274
  791. package/dist/control-auth-BNpGd-Kk.js +0 -114
  792. package/dist/control-service-kce7bfHU.js +0 -145
  793. package/dist/control-ui/assets/agents-DYF7Shwp.js +0 -1008
  794. package/dist/control-ui/assets/channel-config-extras-BeVJ9wQW.js +0 -2
  795. package/dist/control-ui/assets/channels-B8hQJyN1.js +0 -367
  796. package/dist/control-ui/assets/cron-DEY9YxY4.js +0 -1013
  797. package/dist/control-ui/assets/debug-B4Pj_8SV.js +0 -97
  798. package/dist/control-ui/assets/index-BIr_za5p.js +0 -7370
  799. package/dist/control-ui/assets/instances-DBjo0xZX.js +0 -57
  800. package/dist/control-ui/assets/logs-Btu3zodR.js +0 -74
  801. package/dist/control-ui/assets/nodes-BNsG2ZQZ.js +0 -436
  802. package/dist/control-ui/assets/sessions-DVGZAenz.js +0 -399
  803. package/dist/control-ui/assets/skills-BOO5gAI1.js +0 -314
  804. package/dist/control-ui/assets/skills-shared-Ce6HjZf-.js +0 -11
  805. package/dist/conversation-binding-runtime-CUUOaxkw.js +0 -4
  806. package/dist/conversation-runtime-CAGsRmgG.js +0 -31
  807. package/dist/core-DDHeEXv5.js +0 -282
  808. package/dist/core-api-BfuO-na1.js +0 -5
  809. package/dist/core-api-YA03piFN.js +0 -2
  810. package/dist/crestodian-BvNBIbgT.js +0 -55
  811. package/dist/daocore-tools-V8Z6YbCA.js +0 -11727
  812. package/dist/delivery-CqDMMxF-.js +0 -1002
  813. package/dist/dialogue-C7jN6TtR.js +0 -37
  814. package/dist/dir-fetch-tool-DKizoBAo.js +0 -565
  815. package/dist/dir-list-tool-CMSe1Gic.js +0 -100
  816. package/dist/direct-dm-CNDGhZHH.js +0 -64
  817. package/dist/directive-handling.fast-lane-BNDUrJm9.js +0 -68
  818. package/dist/directive-handling.impl-CNMskvfI.js +0 -2
  819. package/dist/directive-handling.impl-DkSnupbX.js +0 -818
  820. package/dist/directive-handling.model-selection-DrYH2dJi.js +0 -122
  821. package/dist/directive-handling.persist.runtime-Bf1g-e09.js +0 -263
  822. package/dist/dispatch-BqXq6928.js +0 -1640
  823. package/dist/dispatch-acp-transcript.runtime-B8OLBkcv.js +0 -40
  824. package/dist/dispatch-acp.runtime-CFRlXnm3.js +0 -18
  825. package/dist/doctor-C8zSecbl.js +0 -6
  826. package/dist/doctor-DmE-4kn4.js +0 -2
  827. package/dist/doctor-config-flow-CiEbrb8s.js +0 -1741
  828. package/dist/doctor-core-checks-B3G8nJ2e.js +0 -573
  829. package/dist/doctor-core-checks-BeflOFTE.js +0 -2
  830. package/dist/doctor-health-Ali-Hxdp.js +0 -65
  831. package/dist/doctor-health-contributions-CXfgIUQd.js +0 -696
  832. package/dist/doctor-lint-B5IHZCxG.js +0 -94
  833. package/dist/doctor-state-integrity-BjeDtfbq.js +0 -1231
  834. package/dist/doctor-update-CG2msB2K.js +0 -58
  835. package/dist/dynamic-tools-D5gHaas6.js +0 -486
  836. package/dist/embedded-backend-BLW2WQJF.js +0 -579
  837. package/dist/embedded-gateway-stub.runtime-DbUedhpy.js +0 -12
  838. package/dist/exec-approvals-CwwQA-_B.js +0 -149
  839. package/dist/file-fetch-tool-CekPjemC.js +0 -124
  840. package/dist/file-write-tool-C7-UYxXN.js +0 -127
  841. package/dist/format-BrgWhpMP.js +0 -1145
  842. package/dist/format-C-lnTES_.js +0 -250
  843. package/dist/gateway-cli-BIl9ooav.js +0 -435
  844. package/dist/gateway-method-runtime-B3nJGqAy.js +0 -21
  845. package/dist/get-reply-CCGEqENF.js +0 -4689
  846. package/dist/get-reply-from-config.runtime-1bVL6Eaa.js +0 -2
  847. package/dist/graph-users-CCkJYdwo.js +0 -1419
  848. package/dist/group-access-BrcrVhTm.js +0 -112
  849. package/dist/handle-action.guild-admin-8EfNNvKz.js +0 -288
  850. package/dist/harness-BNsomB7U.js +0 -61
  851. package/dist/health-CJOAk46r.js +0 -4
  852. package/dist/health-state-CETJtly-.js +0 -106
  853. package/dist/heartbeat-runner-BjAnHwan.js +0 -5
  854. package/dist/heartbeat-runner.runtime-BhQDpIvL.js +0 -4
  855. package/dist/hooks-CAleL-fH.js +0 -534
  856. package/dist/inbound-direct-dm-runtime-aWeBKeRE.js +0 -2
  857. package/dist/inbound-reply-dispatch-DvWaNCgR.js +0 -148
  858. package/dist/init-D_kHY2_L.js +0 -59
  859. package/dist/inline-buttons-CBfC5L_C.js +0 -40
  860. package/dist/internal-events-DR7M-R-k.js +0 -90
  861. package/dist/isolated-agent-BSwvfJdq.js +0 -1118
  862. package/dist/isolated-agent-B_H2wb6F.js +0 -2
  863. package/dist/lifecycle-BsPQk14E.js +0 -571
  864. package/dist/list.probe-DVPoP_gs.js +0 -449
  865. package/dist/list.status-command-YLSxt2nU.js +0 -789
  866. package/dist/llm-slug-generator-DMXCuj_8.js +0 -78
  867. package/dist/local-dispatch.runtime-ByJpKbzY.js +0 -9
  868. package/dist/manager.runtime-Cbd4Wkzv.js +0 -2714
  869. package/dist/markdown-to-line-UROW4ICU.js +0 -811
  870. package/dist/mcp-http-Bs04-o36.js +0 -2
  871. package/dist/mcp-http-DusJ-yus.js +0 -555
  872. package/dist/media-understanding-provider-DJ2PVD5L.js +0 -339
  873. package/dist/message-actions-BOhsMU7S.js +0 -145
  874. package/dist/message-handler-BUvaTnYL.js +0 -384
  875. package/dist/message-handler-DsiaQGjj.js +0 -1715
  876. package/dist/message-handler.preflight-COR7HHaa.js +0 -1125
  877. package/dist/message-handler.process-Cnlh9kQt.js +0 -1484
  878. package/dist/model-CrGV78vh.js +0 -74
  879. package/dist/model-selection-BkMRVKvT.js +0 -272
  880. package/dist/models-CAsfL9Yc.js +0 -104
  881. package/dist/models-DAHwZzdm.js +0 -2
  882. package/dist/models-cli-NVAexFpF.js +0 -256
  883. package/dist/monitor-BHLuAWAQ.js +0 -2
  884. package/dist/monitor-BbTVo-eV.js +0 -715
  885. package/dist/monitor-CLLyEX0R.js +0 -2788
  886. package/dist/monitor-CTR3lVMb.js +0 -834
  887. package/dist/monitor-Cl2p6Juz.js +0 -60
  888. package/dist/monitor-D5rBDT5w.js +0 -4377
  889. package/dist/monitor-DyRkvAJd.js +0 -1370
  890. package/dist/monitor-IiG3eV5_.js +0 -1657
  891. package/dist/monitor-auth-D_0zoeLn.js +0 -179
  892. package/dist/monitor-polling.runtime-BXzw5egF.js +0 -883
  893. package/dist/monitor-webhook.runtime-C3arPPzi.js +0 -387
  894. package/dist/monitor.account-DrVGHE8V.js +0 -5233
  895. package/dist/monitor.runtime-DPEbukZB.js +0 -2
  896. package/dist/monitor.webhook-jkAnTCQb.js +0 -180
  897. package/dist/node-cli-sessions-DcVj-6eN.js +0 -1228
  898. package/dist/openai-http-CmoI0e7t.js +0 -824
  899. package/dist/openresponses-http-Bi3LSGUc.js +0 -1173
  900. package/dist/operations-9LkwgILD.js +0 -805
  901. package/dist/outbound-adapter-xUTnrNGD.js +0 -543
  902. package/dist/outbound-session-route-CBXkht6a.js +0 -45
  903. package/dist/outbound.runtime-CAgimRZ1.js +0 -2
  904. package/dist/pi-embedded-BKpKsszm.js +0 -4
  905. package/dist/pi-embedded-DmeQCwCt.js +0 -3796
  906. package/dist/pi-embedded.runtime-C283Wor9.js +0 -4
  907. package/dist/pi-tools-B0nJW7W4.js +0 -2413
  908. package/dist/plan-BILA3XMN.js +0 -81
  909. package/dist/plan-DHXchBJq.js +0 -112
  910. package/dist/plugin-CHLmrL9G.js +0 -12396
  911. package/dist/plugin-app-cache-key-C-_klURZ.js +0 -46
  912. package/dist/plugin-enabled-DzYMnPpm.js +0 -233
  913. package/dist/plugin-registration-DLrh8AB5.js +0 -88
  914. package/dist/plugin-service-xm4tv2oM.js +0 -1229
  915. package/dist/policy-BUSsfT7A.js +0 -138
  916. package/dist/policy-BwwL6sP2.js +0 -680
  917. package/dist/prepare.runtime-Dcrb22a5.js +0 -732
  918. package/dist/preview-warnings-Cx__1X43.js +0 -392
  919. package/dist/probe-CevnbYpq.js +0 -682
  920. package/dist/probe-CoEDhBiC.js +0 -2204
  921. package/dist/probe-ConXyeqE.js +0 -2
  922. package/dist/probe-D-jU5onR.js +0 -47
  923. package/dist/program-BBwmibpa.js +0 -131
  924. package/dist/provider--7lUimtp.js +0 -152
  925. package/dist/provider-CCGQtVNI.js +0 -8735
  926. package/dist/provider-DVMSF8i8.js +0 -32
  927. package/dist/provider-R_TaXN59.js +0 -32
  928. package/dist/provider-dispatcher-CYkb3lfL.js +0 -22
  929. package/dist/provider-session.runtime-DzG2BUE9.js +0 -9
  930. package/dist/provider.runtime-D1-pMnoj.js +0 -2
  931. package/dist/public-surface-loader-BZisefzq.js +0 -114
  932. package/dist/pw-ai-Cbau3n7J.js +0 -3029
  933. package/dist/pw-role-snapshot-HeQTrxIk.js +0 -333
  934. package/dist/reaction-level-uJ8tiLpH.js +0 -19
  935. package/dist/reaction-runtime-api-BKUvK5Wn.js +0 -116
  936. package/dist/realtime-transcription-provider-Daix0e58.js +0 -205
  937. package/dist/register-Dj9j6LEv.js +0 -2178
  938. package/dist/register.agent-OiMUcpgI.js +0 -156
  939. package/dist/register.crestodian-CbqhJMEx.js +0 -24
  940. package/dist/register.maintenance-CQILEqsM.js +0 -83
  941. package/dist/register.runtime-BwfUZoFY.js +0 -54
  942. package/dist/register.status-health-sessions-DF6wxmsG.js +0 -282
  943. package/dist/register.subclis-BR2kCzHF.js +0 -31
  944. package/dist/register.subclis-Wd-wKmYg.js +0 -3
  945. package/dist/register.subclis-core-DS7RVqtY.js +0 -273
  946. package/dist/repair-sequencing-DvQQmyrq.js +0 -640
  947. package/dist/reply-delivery-ohbM16VN.js +0 -196
  948. package/dist/reply-runtime-qGOCyyux.js +0 -11
  949. package/dist/reply.runtime-1bVL6Eaa.js +0 -2
  950. package/dist/request-CC3c4Svm.js +0 -54
  951. package/dist/resolve-allowlist-vAhCe75e.js +0 -220
  952. package/dist/result-fallback-classifier-CZtnXmbx.js +0 -79
  953. package/dist/route-resolution-CXaxgYtw.js +0 -274
  954. package/dist/route-uo5aoUdQ.js +0 -469
  955. package/dist/routes-BqtrHP28.js +0 -2
  956. package/dist/routes-pIjFm3n0.js +0 -3602
  957. package/dist/run-DYwW1kIR.js +0 -1162
  958. package/dist/run-attempt-B2GDG3uT.js +0 -7704
  959. package/dist/run-command-CbUIDjYf.js +0 -2
  960. package/dist/run-command-DHOIYQm_.js +0 -23
  961. package/dist/run-embedded.runtime-g47oIqaL.js +0 -4
  962. package/dist/run-execution-cli.runtime-zQ48ZAc5.js +0 -4
  963. package/dist/run-subagent-registry.runtime-CXj8K_pJ.js +0 -2
  964. package/dist/runtime-CjTLh1Zl.js +0 -6179
  965. package/dist/runtime-NVf_F_HM.js +0 -1287
  966. package/dist/runtime-Z5_yALHT.js +0 -438
  967. package/dist/runtime-api-BExObylL.js +0 -17
  968. package/dist/runtime-api-BfCI6iAu.js +0 -3
  969. package/dist/runtime-api-BkzOHOsq.js +0 -13
  970. package/dist/runtime-api-BtVSnSI4.js +0 -4
  971. package/dist/runtime-api-DLHn_SE-.js +0 -24
  972. package/dist/runtime-api-_nsdMn3H.js +0 -13
  973. package/dist/runtime-api-qMRycIAN.js +0 -21
  974. package/dist/runtime-api.actions-UmkTxLGC.js +0 -3
  975. package/dist/runtime-api.monitor-JDAShUxC.js +0 -6
  976. package/dist/runtime-api.send-B65J_Lod.js +0 -4
  977. package/dist/runtime-api.threads-B7tsKPA_.js +0 -2
  978. package/dist/runtime-channel-Bs6XTsp4.js +0 -150
  979. package/dist/runtime-channel-C3WZVBBg.js +0 -2
  980. package/dist/runtime-embedded-pi.runtime-P8AdyyIu.js +0 -2
  981. package/dist/sanitize-outbound-Bt4-FGfp.js +0 -127
  982. package/dist/sdk-setup-tools-CfyJODAu.js +0 -8
  983. package/dist/secrets-DjmhS0YO.js +0 -113
  984. package/dist/security-audit-CKVBQPWN.js +0 -118
  985. package/dist/security-audit-D9IeXoG3.js +0 -122
  986. package/dist/security-audit.runtime-CYMQTOM9.js +0 -2
  987. package/dist/selection--wvE7VOv.js +0 -16157
  988. package/dist/selection-y-7QPgGA.js +0 -3
  989. package/dist/send-BlmkYrI0.js +0 -1631
  990. package/dist/send-CbkEX0QM.js +0 -143
  991. package/dist/send-Cmn4RsqA.js +0 -192
  992. package/dist/send-Dug9BZ9D.js +0 -2
  993. package/dist/send.components-CyaKuD2L.js +0 -500
  994. package/dist/send.components-PcOc-Ovz.js +0 -2
  995. package/dist/send.runtime-xY6hEtyv.js +0 -2
  996. package/dist/server-BnGgr3PE.js +0 -73
  997. package/dist/server-DSUxFJfU.js +0 -24
  998. package/dist/server-context-CLKwYCyu.js +0 -955
  999. package/dist/server-context-CYVPTQQC.js +0 -2
  1000. package/dist/server-cron-B1jBiRyb.js +0 -2989
  1001. package/dist/server-cron-X77jGOEU.js +0 -2
  1002. package/dist/server-maintenance-Y0NvZrH-.js +0 -167
  1003. package/dist/server-methods-BBnXSrf2.js +0 -16494
  1004. package/dist/server-node-events-BUsL79RS.js +0 -596
  1005. package/dist/server-plugin-bootstrap-ALp-FJwj.js +0 -70
  1006. package/dist/server-plugins-ufO_8NhB.js +0 -432
  1007. package/dist/server-reload-handlers-CPiyHZtT.js +0 -714
  1008. package/dist/server-restart-sentinel-CQk6eeWM.js +0 -747
  1009. package/dist/server-restart-sentinel-D3cRaMdv.js +0 -2
  1010. package/dist/server-runtime-services-Bu0xO9C9.js +0 -2
  1011. package/dist/server-runtime-services-DXP2sVWQ.js +0 -267
  1012. package/dist/server-startup-early-5UM54scV.js +0 -87
  1013. package/dist/server-startup-plugins-CQ_pYS5Y.js +0 -113
  1014. package/dist/server-startup-post-attach-Ja8NHfJQ.js +0 -716
  1015. package/dist/server-ws-runtime-DNH4m_Ix.js +0 -349
  1016. package/dist/server.impl-BXCtVnO2.js +0 -2586
  1017. package/dist/service-wi5zUseG.js +0 -1446
  1018. package/dist/session-binding-BUfCOB1r.js +0 -219
  1019. package/dist/session-binding-DBdZdGMb.js +0 -2
  1020. package/dist/session-kill-http-PtCc8zMl.js +0 -121
  1021. package/dist/session-reset-service-BOBmro8l.js +0 -625
  1022. package/dist/session-route-CJUmMLQC.js +0 -93
  1023. package/dist/session-status.runtime-C10K54fr.js +0 -2
  1024. package/dist/session-subagent-reactivation.runtime-DfIyTUKb.js +0 -2
  1025. package/dist/session-tab-registry-DQbVw6TC.js +0 -521
  1026. package/dist/sessions-history-http-BX2MupcW.js +0 -430
  1027. package/dist/sessions.runtime-C2inYyN4.js +0 -2
  1028. package/dist/setup-api-LkhGnkD8.js +0 -29
  1029. package/dist/setup-core-CinEapxM.js +0 -174
  1030. package/dist/setup-surface-BCtf5vsv.js +0 -221
  1031. package/dist/setup-surface-BlIPVefp.js +0 -320
  1032. package/dist/setup-surface-CfGI8GXG.js +0 -288
  1033. package/dist/setup-surface-Cpi2A6hH.js +0 -405
  1034. package/dist/shared-D57heBsq.js +0 -121
  1035. package/dist/shared-client-BNqlZyQZ.js +0 -2
  1036. package/dist/shared-client-DkXSWGuf.js +0 -629
  1037. package/dist/side-question-CJpQXQwO.js +0 -683
  1038. package/dist/skill-tool-dispatch.runtime-DFIYzLB7.js +0 -143
  1039. package/dist/slash-state-PVFVXsf5.js +0 -2166
  1040. package/dist/speech-provider-BYMES40R.js +0 -184
  1041. package/dist/src-Cig0nIaB.js +0 -4256
  1042. package/dist/startup-context-BhCfCVUP.js +0 -313
  1043. package/dist/status-BUGiySd0.js +0 -3
  1044. package/dist/status-CCUVxq2T.js +0 -4
  1045. package/dist/status-all-DVmRki9n.js +0 -573
  1046. package/dist/status-json-C9yB-I_P.js +0 -14
  1047. package/dist/status-json-command-DLiHHY4-.js +0 -84
  1048. package/dist/status-runtime-shared-CVVr1-B8.js +0 -283
  1049. package/dist/status-subagents.runtime-Dnd_-sFp.js +0 -18
  1050. package/dist/status-text-Bv7B6Qvi.js +0 -296
  1051. package/dist/status.command-CgQ_YxAV.js +0 -2
  1052. package/dist/status.command-DljDx7Pt.js +0 -420
  1053. package/dist/status.command.text-runtime-HPfXUUVK.js +0 -15
  1054. package/dist/status.scan-XGVKT6BH.js +0 -68
  1055. package/dist/status.scan-overview-BdO_Dwpk.js +0 -444
  1056. package/dist/status.scan.fast-json-BbfAYFaX.js +0 -2
  1057. package/dist/status.scan.fast-json-CixCI_VT.js +0 -127
  1058. package/dist/status.scan.runtime-c77nmHB8.js +0 -479
  1059. package/dist/status.update-CgJc9Ame.js +0 -2
  1060. package/dist/status.update-DxUx2UCj.js +0 -86
  1061. package/dist/sticker-cache-zbRCf5UY.js +0 -206
  1062. package/dist/sticker-vision.runtime-D8hb_hbK.js +0 -17
  1063. package/dist/subagent-announce-D-tCpxB7.js +0 -354
  1064. package/dist/subagent-announce-delivery-CV9sHBb8.js +0 -958
  1065. package/dist/subagent-control-B71yROQ1.js +0 -508
  1066. package/dist/subagent-hooks-5z9r_kyU.js +0 -230
  1067. package/dist/subagent-hooks-B9N4nO9J.js +0 -2
  1068. package/dist/subagent-hooks-Bqm8GC4e.js +0 -116
  1069. package/dist/subagent-hooks-CH64M3D2.js +0 -2
  1070. package/dist/subagent-hooks-YX204bTO.js +0 -2
  1071. package/dist/subagent-hooks-api-22u-zraT.js +0 -23
  1072. package/dist/subagent-hooks-api-CZbBhZq3.js +0 -23
  1073. package/dist/subagent-hooks-api-Ji-FhB1I.js +0 -22
  1074. package/dist/subagent-hooks-yIneGe_q.js +0 -146
  1075. package/dist/subagent-orphan-recovery-BR2b7ZZK.js +0 -352
  1076. package/dist/subagent-registry-7llbjThI.js +0 -2351
  1077. package/dist/subagent-registry-IXRntXRj.js +0 -3
  1078. package/dist/subagent-session-cleanup-Ckvz5u4B.js +0 -525
  1079. package/dist/subagent-spawn-28HeMeKx.js +0 -1164
  1080. package/dist/target-id-CGBWkCke.js +0 -107
  1081. package/dist/targets-B8kgW-Y8.js +0 -19
  1082. package/dist/targets-BhYsYz4Q.js +0 -44
  1083. package/dist/targets-Dl-MgHWz.js +0 -19
  1084. package/dist/testing-CwJ9EDFR.js +0 -267
  1085. package/dist/text-report-97aYC9pB.js +0 -695
  1086. package/dist/thread-bindings-B6t8Q4ba.js +0 -8
  1087. package/dist/thread-bindings-B9f-_sFy.js +0 -571
  1088. package/dist/thread-bindings-CJDUpwXD.js +0 -228
  1089. package/dist/thread-bindings-DxvjdbzW.js +0 -232
  1090. package/dist/thread-bindings.discord-api-CnRP-DSi.js +0 -187
  1091. package/dist/thread-bindings.manager-2B6_nSpQ.js +0 -536
  1092. package/dist/thread-bindings.manager-C_n--VnJ.js +0 -2
  1093. package/dist/thread-lifecycle-C2hLLuqe.js +0 -1614
  1094. package/dist/token-Bo7-r-aE.js +0 -134
  1095. package/dist/tool-BLIlzoql.js +0 -139
  1096. package/dist/tool-actions.runtime-CXZ0UNkZ.js +0 -534
  1097. package/dist/tool-resolution-BqtQFCPq.js +0 -149
  1098. package/dist/tools-effective-inventory-DABx239z.js +0 -204
  1099. package/dist/tools-invoke-http-8pjepRT1.js +0 -67
  1100. package/dist/tools-invoke-shared-l5WK0ntS.js +0 -200
  1101. package/dist/tts-BIYGM92g.js +0 -66
  1102. package/dist/tui-DCykl3IU.js +0 -4709
  1103. package/dist/tui-DzUa_vFQ.js +0 -2
  1104. package/dist/tui-backend-BJUtldXg.js +0 -256
  1105. package/dist/tui-cli-C-Q6SJc7.js +0 -37
  1106. package/dist/update-check-BKUpUW-v.js +0 -372
  1107. package/dist/update-cli-DA6H6wa0.js +0 -3664
  1108. package/dist/update-runner-C680U-SL.js +0 -2379
  1109. package/dist/update-startup-D26cmPn-.js +0 -2
  1110. package/dist/update-startup-XLbXHCT1.js +0 -339
  1111. package/dist/vision-tools-DJ4y7cV-.js +0 -1409
  1112. package/dist/web-search-DpV8PBBY.js +0 -62
  1113. package/dist/web-search-provider.runtime-Bmvff7rR.js +0 -2
  1114. package/dist/web-search-provider.runtime-CY9JJJoF.js +0 -328
  1115. package/dist/xai-oauth-gj-8ubLa.js +0 -479
  1116. package/dist/xai-user-agent-D4JRRc1W.js +0 -32
  1117. /package/dist/{acp-runtime-backend-DL9bHzqW.js → acp-runtime-backend-DFDX5U10.js} +0 -0
  1118. /package/dist/{channel-actions-CMf4W2nb.js → channel-actions-DMH2vVzJ.js} +0 -0
  1119. /package/dist/{command-status-runtime-CFttYerC.js → command-status-runtime-Du_onNYh.js} +0 -0
  1120. /package/dist/{delegate-D6LGFAf5.js → delegate-CDb4qcfr.js} +0 -0
  1121. /package/dist/{dispatch-acp-aDmm-ClP.js → dispatch-acp-0Se8OniI.js} +0 -0
  1122. /package/dist/{heartbeat-runner-CA3FnKVt.js → heartbeat-runner-BdsqQ3pi.js} +0 -0
  1123. /package/dist/{library-Bwpqe3Xn.js → library-CsfrQOyp.js} +0 -0
  1124. /package/dist/{run-executor.runtime-BDRmO1Qf.js → run-executor.runtime-OlsZwyZw.js} +0 -0
  1125. /package/dist/{shared-DMRXpVQc.js → shared-DxV6gup5.js} +0 -0
@@ -0,0 +1,1782 @@
1
+ import { a as normalizeLowercaseStringOrEmpty, c as normalizeOptionalString, d as normalizeStringifiedOptionalString } from "./string-coerce-DyL154ka.js";
2
+ import { t as formatDocsLink } from "./links-CM5vg8_V.js";
3
+ import { r as theme } from "./theme-D58JpUfy.js";
4
+ import { i as resolveAgentModelPrimaryValue } from "./model-input-ChW9XXsQ.js";
5
+ import "./agent-scope-Dx1S0aWX.js";
6
+ import { a as resolveAgentDir, c as resolveDefaultAgentId } from "./agent-scope-config-CJUQxn7u.js";
7
+ import { n as defaultRuntime, r as writeRuntimeJson } from "./runtime-E_A14BX_.js";
8
+ import { i as isLoopbackHost } from "./net-DCUMtgJy.js";
9
+ import { i as getRuntimeConfig } from "./io-Ct2JqgbR.js";
10
+ import { r as DEFAULT_PROVIDER } from "./defaults-mDjiWzE5.js";
11
+ import { p as normalizeThinkLevel } from "./thinking-DKvrUm8p.js";
12
+ import { _ as setRuntimeConfigSnapshot, s as getRuntimeConfigSourceSnapshot } from "./runtime-snapshot-DgdkBEdP.js";
13
+ import { t as getProviderEnvVars } from "./provider-env-vars-BbrhJD4E.js";
14
+ import "./config-CLrwLpl0.js";
15
+ import { i as GATEWAY_CLIENT_NAMES, r as GATEWAY_CLIENT_MODES } from "./client-info-B56HGdh-.js";
16
+ import { t as buildGatewayConnectionDetailsWithResolvers } from "./connection-details-DwZSGJDv.js";
17
+ import { t as ADMIN_SCOPE } from "./operator-scopes-DGvgHuOd.js";
18
+ import { r as callGateway, u as randomIdempotencyKey } from "./call-BFqofFc5.js";
19
+ import { i as listMemoryEmbeddingProviders, o as registerMemoryEmbeddingProvider } from "./memory-embedding-providers-B5o4DXj5.js";
20
+ import { n as detectMime, r as extensionForMime, u as normalizeMimeType } from "./mime-DppuT-pZ.js";
21
+ import { p as updateAuthProfileStoreWithLock, s as loadAuthProfileStoreForRuntime } from "./store-Bo7D4Hg4.js";
22
+ import { n as canonicalizeCaseOnlyCatalogModelRef } from "./model-selection-D1TyOrqK.js";
23
+ import { n as loadModelCatalog } from "./model-catalog-W4s3tp_Q.js";
24
+ import { c as getImageMetadata, s as convertHeicToJpeg } from "./media-services-C8kJ1LwP.js";
25
+ import "./auth-profiles-DJttKtDp.js";
26
+ import { n as listProfilesForProvider } from "./profile-list-CF9RJs7e.js";
27
+ import { n as listRuntimeImageGenerationProviders, t as generateImage } from "./runtime-D_QP_pnt.js";
28
+ import { u as saveMediaBuffer } from "./store-53qCOCD8.js";
29
+ import { t as buildExplicitSessionIdSessionKey } from "./session-CMmK5oT3.js";
30
+ import { u as buildMediaUnderstandingRegistry } from "./defaults.constants-DKWmIRMD.js";
31
+ import { a as getCapabilityWebSearchCommandSecretTargets, c as getMemoryEmbeddingCommandSecretTargetIds, l as getModelsCommandSecretTargetIds, m as getTtsCommandSecretTargetIds, r as getCapabilityWebFetchCommandSecretTargets } from "./command-secret-targets-HFIWeId5.js";
32
+ import { S as setTtsEnabled, T as setTtsProvider, _ as resolveTtsPrefsPath, a as getTtsPersona, d as listTtsPersonas, g as resolveTtsConfig, k as textToSpeech, m as resolveExplicitTtsOverrides, o as getTtsProvider, u as listSpeechVoices, w as setTtsPersona } from "./tts-runtime-xVEuik1Y.js";
33
+ import "./tts-53iqjiuM.js";
34
+ import { n as listRuntimeVideoGenerationProviders, t as generateVideo } from "./runtime-DCeoa1Hv.js";
35
+ import { i as runWebSearch, r as listWebSearchProviders, t as isWebSearchProviderConfigured } from "./runtime-BPlnOWaU.js";
36
+ import { i as listSpeechProviders, t as canonicalizeSpeechProviderId } from "./provider-registry-CrwRP6HV.js";
37
+ import { t as resolveMemorySearchConfig } from "./memory-search-CSGF3xvm.js";
38
+ import { i as resolveWebFetchDefinition, r as listWebFetchProviders, t as isWebFetchProviderConfigured } from "./runtime-BFzO948G.js";
39
+ import { r as prepareSimpleCompletionModelForAgent, t as completeWithPreparedSimpleCompletionModel } from "./simple-completion-runtime-CJFmCkYk.js";
40
+ import { n as runCommandWithRuntime } from "./cli-utils-BIL-oMVy.js";
41
+ import { t as removeCommandByName } from "./command-tree-vUuz1b4f.js";
42
+ import { t as collectOption } from "./helpers-BNXNWxTW.js";
43
+ import { n as describeImageFileWithModel, o as transcribeAudioFile, r as describeVideoFile, t as describeImageFile } from "./runtime-B9flDXGr.js";
44
+ import { a as registerBuiltInMemoryEmbeddingProviders, t as createEmbeddingProvider } from "./memory-core-bundled-runtime-DbJzonSb.js";
45
+ import { t as resolveCommandConfigWithSecrets } from "./command-config-resolution--CWFXpho.js";
46
+ import { createWriteStream } from "node:fs";
47
+ import path from "node:path";
48
+ import fs$1 from "node:fs/promises";
49
+ import { randomUUID } from "node:crypto";
50
+ import { pipeline } from "node:stream/promises";
51
+ import { Readable } from "node:stream";
52
+ //#region src/cli/capability-cli.ts
53
+ const IMAGE_OUTPUT_FORMATS = [
54
+ "png",
55
+ "jpeg",
56
+ "webp"
57
+ ];
58
+ const IMAGE_BACKGROUNDS = [
59
+ "transparent",
60
+ "opaque",
61
+ "auto"
62
+ ];
63
+ const LOCAL_MODEL_RUN_SYSTEM_PROMPT = "You are a personal assistant running inside DaoCore.";
64
+ const HEIC_MODEL_RUN_MIMES = new Set(["image/heic", "image/heif"]);
65
+ const CAPABILITY_METADATA = [
66
+ {
67
+ id: "model.run",
68
+ description: "Run a one-shot inference turn through the selected model provider.",
69
+ transports: ["local", "gateway"],
70
+ flags: [
71
+ "--prompt",
72
+ "--file",
73
+ "--model",
74
+ "--local",
75
+ "--gateway",
76
+ "--json"
77
+ ],
78
+ resultShape: "normalized payloads plus provider/model attribution"
79
+ },
80
+ {
81
+ id: "model.list",
82
+ description: "List known models from the model catalog.",
83
+ transports: ["local"],
84
+ flags: ["--json"],
85
+ resultShape: "catalog entries"
86
+ },
87
+ {
88
+ id: "model.inspect",
89
+ description: "Inspect one model catalog entry.",
90
+ transports: ["local"],
91
+ flags: ["--model", "--json"],
92
+ resultShape: "single catalog entry"
93
+ },
94
+ {
95
+ id: "model.providers",
96
+ description: "List model providers discovered from the catalog.",
97
+ transports: ["local"],
98
+ flags: ["--json"],
99
+ resultShape: "provider ids with counts and defaults"
100
+ },
101
+ {
102
+ id: "model.auth.login",
103
+ description: "Run the existing provider auth login flow.",
104
+ transports: ["local"],
105
+ flags: ["--provider"],
106
+ resultShape: "interactive auth result"
107
+ },
108
+ {
109
+ id: "model.auth.logout",
110
+ description: "Remove saved auth profiles for one provider.",
111
+ transports: ["local"],
112
+ flags: ["--provider", "--json"],
113
+ resultShape: "removed profile ids"
114
+ },
115
+ {
116
+ id: "model.auth.status",
117
+ description: "Show configured model auth state.",
118
+ transports: ["local"],
119
+ flags: ["--json"],
120
+ resultShape: "model status summary"
121
+ },
122
+ {
123
+ id: "image.generate",
124
+ description: "Generate raster images with configured image providers.",
125
+ transports: ["local"],
126
+ flags: [
127
+ "--prompt",
128
+ "--model",
129
+ "--count",
130
+ "--size",
131
+ "--aspect-ratio",
132
+ "--resolution",
133
+ "--output",
134
+ "--json"
135
+ ],
136
+ resultShape: "saved image files plus attempts"
137
+ },
138
+ {
139
+ id: "image.edit",
140
+ description: "Generate edited images from one or more input files.",
141
+ transports: ["local"],
142
+ flags: [
143
+ "--file",
144
+ "--prompt",
145
+ "--model",
146
+ "--size",
147
+ "--aspect-ratio",
148
+ "--resolution",
149
+ "--output-format",
150
+ "--background",
151
+ "--openai-background",
152
+ "--timeout-ms",
153
+ "--output",
154
+ "--json"
155
+ ],
156
+ resultShape: "saved image files plus attempts"
157
+ },
158
+ {
159
+ id: "image.describe",
160
+ description: "Describe one image file through media-understanding providers.",
161
+ transports: ["local"],
162
+ flags: [
163
+ "--file",
164
+ "--prompt",
165
+ "--model",
166
+ "--timeout-ms",
167
+ "--json"
168
+ ],
169
+ resultShape: "normalized text output"
170
+ },
171
+ {
172
+ id: "image.describe-many",
173
+ description: "Describe multiple image files independently.",
174
+ transports: ["local"],
175
+ flags: [
176
+ "--file",
177
+ "--prompt",
178
+ "--model",
179
+ "--timeout-ms",
180
+ "--json"
181
+ ],
182
+ resultShape: "one text output per file"
183
+ },
184
+ {
185
+ id: "image.providers",
186
+ description: "List image generation providers.",
187
+ transports: ["local"],
188
+ flags: ["--json"],
189
+ resultShape: "provider ids and defaults"
190
+ },
191
+ {
192
+ id: "audio.transcribe",
193
+ description: "Transcribe one audio file.",
194
+ transports: ["local"],
195
+ flags: [
196
+ "--file",
197
+ "--model",
198
+ "--json"
199
+ ],
200
+ resultShape: "normalized text output"
201
+ },
202
+ {
203
+ id: "audio.providers",
204
+ description: "List audio transcription providers.",
205
+ transports: ["local"],
206
+ flags: ["--json"],
207
+ resultShape: "provider ids and capabilities"
208
+ },
209
+ {
210
+ id: "tts.convert",
211
+ description: "Convert text to speech.",
212
+ transports: ["local", "gateway"],
213
+ flags: [
214
+ "--text",
215
+ "--channel",
216
+ "--voice",
217
+ "--model",
218
+ "--output",
219
+ "--local",
220
+ "--gateway",
221
+ "--json"
222
+ ],
223
+ resultShape: "saved audio file plus attempts"
224
+ },
225
+ {
226
+ id: "tts.voices",
227
+ description: "List voices for a speech provider.",
228
+ transports: ["local"],
229
+ flags: ["--provider", "--json"],
230
+ resultShape: "voice entries"
231
+ },
232
+ {
233
+ id: "tts.providers",
234
+ description: "List speech providers.",
235
+ transports: ["local", "gateway"],
236
+ flags: [
237
+ "--local",
238
+ "--gateway",
239
+ "--json"
240
+ ],
241
+ resultShape: "provider ids, configured state, models, voices"
242
+ },
243
+ {
244
+ id: "tts.personas",
245
+ description: "List TTS personas.",
246
+ transports: ["local", "gateway"],
247
+ flags: [
248
+ "--local",
249
+ "--gateway",
250
+ "--json"
251
+ ],
252
+ resultShape: "persona ids, labels, providers, active persona"
253
+ },
254
+ {
255
+ id: "tts.status",
256
+ description: "Show gateway-managed TTS state.",
257
+ transports: ["gateway"],
258
+ flags: ["--gateway", "--json"],
259
+ resultShape: "enabled/provider state"
260
+ },
261
+ {
262
+ id: "tts.enable",
263
+ description: "Enable TTS in prefs.",
264
+ transports: ["local", "gateway"],
265
+ flags: [
266
+ "--local",
267
+ "--gateway",
268
+ "--json"
269
+ ],
270
+ resultShape: "enabled state"
271
+ },
272
+ {
273
+ id: "tts.disable",
274
+ description: "Disable TTS in prefs.",
275
+ transports: ["local", "gateway"],
276
+ flags: [
277
+ "--local",
278
+ "--gateway",
279
+ "--json"
280
+ ],
281
+ resultShape: "enabled state"
282
+ },
283
+ {
284
+ id: "tts.set-provider",
285
+ description: "Set the active TTS provider.",
286
+ transports: ["local", "gateway"],
287
+ flags: [
288
+ "--provider",
289
+ "--local",
290
+ "--gateway",
291
+ "--json"
292
+ ],
293
+ resultShape: "selected provider"
294
+ },
295
+ {
296
+ id: "tts.set-persona",
297
+ description: "Set the active TTS persona.",
298
+ transports: ["local", "gateway"],
299
+ flags: [
300
+ "--persona",
301
+ "--off",
302
+ "--local",
303
+ "--gateway",
304
+ "--json"
305
+ ],
306
+ resultShape: "selected persona"
307
+ },
308
+ {
309
+ id: "video.generate",
310
+ description: "Generate video files with configured video providers.",
311
+ transports: ["local"],
312
+ flags: [
313
+ "--prompt",
314
+ "--model",
315
+ "--size",
316
+ "--aspect-ratio",
317
+ "--resolution",
318
+ "--duration",
319
+ "--audio",
320
+ "--watermark",
321
+ "--timeout-ms",
322
+ "--output",
323
+ "--json"
324
+ ],
325
+ resultShape: "saved video files plus attempts"
326
+ },
327
+ {
328
+ id: "video.describe",
329
+ description: "Describe one video file through media-understanding providers.",
330
+ transports: ["local"],
331
+ flags: [
332
+ "--file",
333
+ "--model",
334
+ "--json"
335
+ ],
336
+ resultShape: "normalized text output"
337
+ },
338
+ {
339
+ id: "video.providers",
340
+ description: "List video generation and description providers.",
341
+ transports: ["local"],
342
+ flags: ["--json"],
343
+ resultShape: "provider ids and defaults"
344
+ },
345
+ {
346
+ id: "web.search",
347
+ description: "Run provider-backed web search.",
348
+ transports: ["local"],
349
+ flags: [
350
+ "--query",
351
+ "--provider",
352
+ "--limit",
353
+ "--json"
354
+ ],
355
+ resultShape: "search provider result"
356
+ },
357
+ {
358
+ id: "web.fetch",
359
+ description: "Fetch URL content through configured web fetch providers.",
360
+ transports: ["local"],
361
+ flags: [
362
+ "--url",
363
+ "--provider",
364
+ "--format",
365
+ "--json"
366
+ ],
367
+ resultShape: "fetch provider result"
368
+ },
369
+ {
370
+ id: "web.providers",
371
+ description: "List web search and fetch providers.",
372
+ transports: ["local"],
373
+ flags: ["--json"],
374
+ resultShape: "provider ids grouped by family"
375
+ },
376
+ {
377
+ id: "embedding.create",
378
+ description: "Create embeddings through embedding providers.",
379
+ transports: ["local"],
380
+ flags: [
381
+ "--text",
382
+ "--provider",
383
+ "--model",
384
+ "--json"
385
+ ],
386
+ resultShape: "vectors with provider/model attribution"
387
+ },
388
+ {
389
+ id: "embedding.providers",
390
+ description: "List embedding providers.",
391
+ transports: ["local"],
392
+ flags: ["--json"],
393
+ resultShape: "provider ids and default models"
394
+ }
395
+ ];
396
+ function findCapabilityMetadata(id) {
397
+ return CAPABILITY_METADATA.find((entry) => entry.id === id);
398
+ }
399
+ function resolveTransport(opts) {
400
+ if (opts.local && opts.gateway) throw new Error("Pass only one of --local or --gateway.");
401
+ if (opts.local) {
402
+ if (!opts.supported.includes("local")) throw new Error("This command does not support --local.");
403
+ return "local";
404
+ }
405
+ if (opts.gateway) {
406
+ if (!opts.supported.includes("gateway")) throw new Error("This command does not support --gateway.");
407
+ return "gateway";
408
+ }
409
+ return opts.defaultTransport;
410
+ }
411
+ function emitJsonOrText(runtime, json, value, textFormatter) {
412
+ if (json) {
413
+ writeRuntimeJson(runtime, value);
414
+ return;
415
+ }
416
+ runtime.log(textFormatter(value));
417
+ }
418
+ function formatEnvelopeForText(value) {
419
+ const envelope = value;
420
+ if (!envelope.ok) return `${envelope.capability} failed: ${envelope.error ?? "unknown error"}`;
421
+ const lines = [
422
+ `${envelope.capability} via ${envelope.transport}`,
423
+ ...envelope.provider ? [`provider: ${envelope.provider}`] : [],
424
+ ...envelope.model ? [`model: ${envelope.model}`] : [],
425
+ ...envelope.ignoredOverrides && envelope.ignoredOverrides.length > 0 ? [`ignoredOverrides: ${JSON.stringify(envelope.ignoredOverrides)}`] : [],
426
+ `outputs: ${String(envelope.outputs.length)}`
427
+ ];
428
+ for (const output of envelope.outputs) {
429
+ const pathValue = typeof output.path === "string" ? output.path : void 0;
430
+ const textValue = typeof output.text === "string" ? output.text : void 0;
431
+ if (pathValue) lines.push(pathValue);
432
+ else if (textValue) lines.push(textValue);
433
+ else lines.push(JSON.stringify(output));
434
+ }
435
+ return lines.join("\n");
436
+ }
437
+ function providerSummaryText(value) {
438
+ return value.map((entry) => JSON.stringify(entry)).join("\n");
439
+ }
440
+ function hasOwnKeys(value) {
441
+ return Boolean(value && typeof value === "object" && Object.keys(value).length > 0);
442
+ }
443
+ function resolveSelectedProviderFromModelRef(modelRef) {
444
+ return resolveModelRefOverride(modelRef).provider;
445
+ }
446
+ function getAuthProfileIdsForProvider(cfg, providerId) {
447
+ return listProfilesForProvider(loadAuthProfileStoreForRuntime(resolveAgentDir(cfg, resolveDefaultAgentId(cfg))), providerId);
448
+ }
449
+ function providerHasGenericConfig(params) {
450
+ const modelsProviders = params.cfg.models?.providers ?? {};
451
+ const pluginEntries = params.cfg.plugins?.entries ?? {};
452
+ const ttsProviders = params.cfg.messages?.tts?.providers ?? {};
453
+ const envConfigured = (params.envVars ?? []).some((envVar) => Boolean(process.env[envVar]?.trim()));
454
+ return getAuthProfileIdsForProvider(params.cfg, params.providerId).length > 0 || hasOwnKeys(modelsProviders[params.providerId]) || hasOwnKeys(pluginEntries[params.providerId]?.config) || hasOwnKeys(ttsProviders[params.providerId]) || envConfigured;
455
+ }
456
+ async function writeOutputAsset(params) {
457
+ if (!params.outputPath) {
458
+ const saved = await saveMediaBuffer(params.buffer, params.mimeType, params.subdir, Number.MAX_SAFE_INTEGER, params.originalFilename);
459
+ return {
460
+ path: saved.path,
461
+ mimeType: saved.contentType,
462
+ size: saved.size
463
+ };
464
+ }
465
+ const resolvedOutput = path.resolve(params.outputPath);
466
+ const parsed = path.parse(resolvedOutput);
467
+ const detectedMime = await detectMime({
468
+ buffer: params.buffer,
469
+ headerMime: params.mimeType
470
+ }) ?? params.mimeType;
471
+ const requestedMime = normalizeMimeType(await detectMime({ filePath: resolvedOutput }));
472
+ const detectedNormalized = normalizeMimeType(detectedMime);
473
+ const canonicalDetectedExt = extensionForMime(detectedNormalized);
474
+ const fallbackExt = parsed.ext || path.extname(params.originalFilename ?? "") || "";
475
+ const ext = parsed.ext && requestedMime === detectedNormalized ? parsed.ext : canonicalDetectedExt ?? fallbackExt;
476
+ const filePath = params.outputCount <= 1 ? path.join(parsed.dir, `${parsed.name}${ext}`) : path.join(parsed.dir, `${parsed.name}-${String(params.outputIndex + 1)}${ext}`);
477
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
478
+ await fs$1.writeFile(filePath, params.buffer);
479
+ return {
480
+ path: filePath,
481
+ mimeType: detectedNormalized ?? params.mimeType,
482
+ size: params.buffer.byteLength
483
+ };
484
+ }
485
+ async function readInputFiles(files) {
486
+ return await Promise.all(files.map(async (filePath) => ({
487
+ path: path.resolve(filePath),
488
+ buffer: await fs$1.readFile(path.resolve(filePath))
489
+ })));
490
+ }
491
+ function resolveModelRefOverride(raw) {
492
+ const trimmed = raw?.trim();
493
+ if (!trimmed) return {};
494
+ const slash = trimmed.indexOf("/");
495
+ if (slash <= 0 || slash === trimmed.length - 1) return { model: trimmed };
496
+ return {
497
+ provider: trimmed.slice(0, slash),
498
+ model: trimmed.slice(slash + 1)
499
+ };
500
+ }
501
+ async function canonicalizeModelRunRef(params) {
502
+ return await canonicalizeCaseOnlyCatalogModelRef({
503
+ cfg: params.cfg,
504
+ raw: params.raw,
505
+ defaultProvider: DEFAULT_PROVIDER,
506
+ loadCatalog: () => loadModelCatalog({
507
+ config: params.cfg,
508
+ readOnly: true
509
+ }),
510
+ preserveAuthProfile: params.preserveAuthProfile
511
+ });
512
+ }
513
+ function requireProviderModelOverride(raw) {
514
+ const resolved = resolveModelRefOverride(raw);
515
+ if (!raw?.trim()) return;
516
+ if (!resolved.provider || !resolved.model) throw new Error("Model overrides must use the form <provider/model>.");
517
+ return {
518
+ provider: resolved.provider,
519
+ model: resolved.model
520
+ };
521
+ }
522
+ function collectModelRunText(content) {
523
+ return content.map((block) => block.type === "text" && typeof block.text === "string" ? block.text : "").join("").trim();
524
+ }
525
+ function requireModelRunPrompt(value) {
526
+ if (typeof value !== "string" || normalizeOptionalString(value) === void 0) throw new Error("--prompt cannot be empty or whitespace-only.");
527
+ return value;
528
+ }
529
+ async function readModelRunImageFiles(files) {
530
+ if (!files || files.length === 0) return [];
531
+ return await Promise.all(files.map(async (filePath) => {
532
+ const resolvedPath = path.resolve(filePath);
533
+ const buffer = await fs$1.readFile(resolvedPath);
534
+ const mimeType = normalizeMimeType(await detectMime({
535
+ buffer,
536
+ filePath: resolvedPath
537
+ }));
538
+ if (!mimeType?.startsWith("image/")) throw new Error(`Unsupported --file for model run: ${resolvedPath}. Only image files are supported; use infer audio transcribe for audio files.`);
539
+ if (HEIC_MODEL_RUN_MIMES.has(mimeType)) {
540
+ const converted = await convertHeicToJpeg(buffer);
541
+ return {
542
+ path: resolvedPath,
543
+ fileName: path.basename(resolvedPath),
544
+ mimeType: "image/jpeg",
545
+ data: converted.toString("base64")
546
+ };
547
+ }
548
+ return {
549
+ path: resolvedPath,
550
+ fileName: path.basename(resolvedPath),
551
+ mimeType,
552
+ data: buffer.toString("base64")
553
+ };
554
+ }));
555
+ }
556
+ function normalizeModelRunThinking(value) {
557
+ if (value === void 0) return;
558
+ if (typeof value !== "string") throw new Error("--thinking must be a string.");
559
+ const normalized = normalizeThinkLevel(value);
560
+ if (!normalized) throw new Error("Invalid thinking level. Use one of: off, minimal, low, medium, high, adaptive, xhigh, max.");
561
+ return normalized;
562
+ }
563
+ async function runModelRun(params) {
564
+ const cfg = params.transport === "local" ? await resolveLocalCapabilityRuntimeConfig({
565
+ commandName: "infer model run",
566
+ targetIds: getModelsCommandSecretTargetIds()
567
+ }) : getRuntimeConfig();
568
+ const agentId = resolveDefaultAgentId(cfg);
569
+ const modelRef = await canonicalizeModelRunRef({
570
+ raw: params.model,
571
+ cfg,
572
+ preserveAuthProfile: params.transport === "local"
573
+ });
574
+ const explicitModelOverride = resolveModelRefOverride(params.model);
575
+ const hasExplicitProviderModelOverride = Boolean(params.model?.trim() && explicitModelOverride.provider && explicitModelOverride.model);
576
+ const imageFiles = await readModelRunImageFiles(params.files);
577
+ const messageContent = imageFiles.length > 0 ? [{
578
+ type: "text",
579
+ text: params.prompt
580
+ }, ...imageFiles.map((image) => ({
581
+ type: "image",
582
+ data: image.data,
583
+ mimeType: image.mimeType
584
+ }))] : params.prompt;
585
+ if (params.transport === "local") {
586
+ const prepared = await prepareSimpleCompletionModelForAgent({
587
+ cfg,
588
+ agentId,
589
+ modelRef,
590
+ allowMissingApiKeyModes: ["aws-sdk"],
591
+ ...hasExplicitProviderModelOverride ? { allowBundledStaticCatalogFallback: true } : {},
592
+ skipPiDiscovery: true
593
+ });
594
+ if ("error" in prepared) throw new Error(prepared.error);
595
+ if (prepared.selection.provider === "codex") throw new Error("The codex provider is served by the Codex app-server agent runtime, not the local simple-completion transport. Use an openai/<model> ref with agents.defaults.agentRuntime.id: \"codex\", run through the gateway, or use /codex commands.");
596
+ const localModelRunSystemPrompt = prepared.selection.provider === "openai-codex" || prepared.model.api === "openai-codex-responses" ? LOCAL_MODEL_RUN_SYSTEM_PROMPT : void 0;
597
+ const result = await completeWithPreparedSimpleCompletionModel({
598
+ model: prepared.model,
599
+ auth: prepared.auth,
600
+ cfg,
601
+ context: {
602
+ ...localModelRunSystemPrompt ? { systemPrompt: localModelRunSystemPrompt } : {},
603
+ messages: [{
604
+ role: "user",
605
+ content: messageContent,
606
+ timestamp: Date.now()
607
+ }]
608
+ },
609
+ options: {
610
+ maxTokens: typeof prepared.model.maxTokens === "number" && Number.isFinite(prepared.model.maxTokens) ? prepared.model.maxTokens : void 0,
611
+ ...params.thinking ? { reasoning: params.thinking } : {}
612
+ }
613
+ });
614
+ const text = collectModelRunText(result.content);
615
+ if (!text) {
616
+ const providerErrorMessage = result.errorMessage;
617
+ const detail = typeof providerErrorMessage === "string" && providerErrorMessage.trim() ? `: ${providerErrorMessage.trim()}` : "";
618
+ throw new Error(`No text output returned for provider "${prepared.selection.provider}" model "${prepared.selection.modelId}"${detail}.`);
619
+ }
620
+ return {
621
+ ok: true,
622
+ capability: "model.run",
623
+ transport: "local",
624
+ provider: prepared.selection.provider,
625
+ model: prepared.selection.modelId,
626
+ attempts: [],
627
+ ...imageFiles.length > 0 ? { inputs: imageFiles.map((image) => ({
628
+ path: image.path,
629
+ mimeType: image.mimeType
630
+ })) } : {},
631
+ outputs: [{
632
+ text,
633
+ mediaUrl: null
634
+ }]
635
+ };
636
+ }
637
+ const { provider, model } = resolveModelRefOverride(modelRef);
638
+ const hasModelOverride = Boolean(provider || model);
639
+ const sessionId = `model-run-${randomUUID()}`;
640
+ const response = await callGateway({
641
+ method: "agent",
642
+ params: {
643
+ agentId,
644
+ sessionId,
645
+ sessionKey: buildExplicitSessionIdSessionKey({
646
+ agentId,
647
+ sessionId
648
+ }),
649
+ message: params.prompt,
650
+ attachments: imageFiles.length > 0 ? imageFiles.map((image) => ({
651
+ type: "image",
652
+ fileName: image.fileName,
653
+ mimeType: image.mimeType,
654
+ content: image.data
655
+ })) : void 0,
656
+ provider,
657
+ model,
658
+ ...params.thinking ? { thinking: params.thinking } : {},
659
+ modelRun: true,
660
+ promptMode: "none",
661
+ cleanupBundleMcpOnRunEnd: true,
662
+ idempotencyKey: randomIdempotencyKey()
663
+ },
664
+ expectFinal: true,
665
+ timeoutMs: 12e4,
666
+ clientName: hasModelOverride ? GATEWAY_CLIENT_NAMES.GATEWAY_CLIENT : GATEWAY_CLIENT_NAMES.CLI,
667
+ mode: hasModelOverride ? GATEWAY_CLIENT_MODES.BACKEND : GATEWAY_CLIENT_MODES.CLI,
668
+ ...hasModelOverride ? { scopes: [ADMIN_SCOPE] } : {}
669
+ });
670
+ return {
671
+ ok: true,
672
+ capability: "model.run",
673
+ transport: "gateway",
674
+ provider: response?.result?.meta?.agentMeta?.provider,
675
+ model: response?.result?.meta?.agentMeta?.model,
676
+ attempts: response?.result?.meta?.agentMeta?.fallbackAttempts ?? [],
677
+ outputs: (response?.result?.payloads ?? []).map((payload) => ({
678
+ text: payload.text,
679
+ mediaUrl: payload.mediaUrl,
680
+ mediaUrls: payload.mediaUrls
681
+ })),
682
+ ...imageFiles.length > 0 ? { inputs: imageFiles.map((image) => ({
683
+ path: image.path,
684
+ mimeType: image.mimeType
685
+ })) } : {}
686
+ };
687
+ }
688
+ async function buildModelProviders() {
689
+ const cfg = getRuntimeConfig();
690
+ const catalog = await loadModelCatalog({ config: cfg });
691
+ const selectedProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.model));
692
+ const grouped = /* @__PURE__ */ new Map();
693
+ for (const entry of catalog) {
694
+ const current = grouped.get(entry.provider) ?? {
695
+ provider: entry.provider,
696
+ count: 0,
697
+ defaults: [],
698
+ available: true,
699
+ configured: providerHasGenericConfig({
700
+ cfg,
701
+ providerId: entry.provider
702
+ }),
703
+ selected: selectedProvider === entry.provider
704
+ };
705
+ current.count += 1;
706
+ if (current.defaults.length < 3) current.defaults.push(entry.id);
707
+ grouped.set(entry.provider, current);
708
+ }
709
+ return [...grouped.values()].toSorted((a, b) => a.provider.localeCompare(b.provider));
710
+ }
711
+ async function runModelAuthStatus() {
712
+ const captured = [];
713
+ const { modelsStatusCommand } = await import("./list.status-command-C9FwGWNZ.js");
714
+ await modelsStatusCommand({ json: true }, {
715
+ log: (...args) => captured.push(args.join(" ")),
716
+ error: (message) => {
717
+ throw message instanceof Error ? message : new Error(String(message));
718
+ },
719
+ exit: (code) => {
720
+ throw new Error(`exit ${code}`);
721
+ }
722
+ });
723
+ const raw = captured.find((line) => line.trim().startsWith("{"));
724
+ return raw ? JSON.parse(raw) : {};
725
+ }
726
+ async function runModelAuthLogout(provider, agent) {
727
+ const cfg = getRuntimeConfig();
728
+ const agentDir = resolveAgentDir(cfg, agent?.trim() || resolveDefaultAgentId(cfg));
729
+ const profileIds = listProfilesForProvider(loadAuthProfileStoreForRuntime(agentDir), provider);
730
+ if (!await updateAuthProfileStoreWithLock({
731
+ agentDir,
732
+ updater: (nextStore) => {
733
+ let changed = false;
734
+ for (const profileId of profileIds) {
735
+ if (nextStore.profiles[profileId]) {
736
+ delete nextStore.profiles[profileId];
737
+ changed = true;
738
+ }
739
+ if (nextStore.usageStats?.[profileId]) {
740
+ delete nextStore.usageStats[profileId];
741
+ changed = true;
742
+ }
743
+ }
744
+ if (nextStore.order?.[provider]) {
745
+ delete nextStore.order[provider];
746
+ changed = true;
747
+ }
748
+ if (nextStore.lastGood?.[provider]) {
749
+ delete nextStore.lastGood[provider];
750
+ changed = true;
751
+ }
752
+ return changed;
753
+ }
754
+ })) throw new Error(`Failed to remove saved auth profiles for provider ${provider}.`);
755
+ return {
756
+ provider,
757
+ removedProfiles: profileIds
758
+ };
759
+ }
760
+ async function runImageGenerate(params) {
761
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
762
+ commandName: `infer ${params.capability}`,
763
+ targetIds: getModelsCommandSecretTargetIds()
764
+ });
765
+ const agentDir = resolveAgentDir(cfg, resolveDefaultAgentId(cfg));
766
+ const inputImages = params.file && params.file.length > 0 ? await Promise.all((await readInputFiles(params.file)).map(async (entry) => ({
767
+ buffer: entry.buffer,
768
+ fileName: path.basename(entry.path),
769
+ mimeType: await detectMime({
770
+ buffer: entry.buffer,
771
+ filePath: entry.path
772
+ }) ?? "image/png"
773
+ }))) : void 0;
774
+ const result = await generateImage({
775
+ cfg,
776
+ agentDir,
777
+ prompt: params.prompt,
778
+ modelOverride: params.model,
779
+ count: params.count,
780
+ size: params.size,
781
+ aspectRatio: params.aspectRatio,
782
+ resolution: params.resolution,
783
+ outputFormat: params.outputFormat,
784
+ background: params.background,
785
+ providerOptions: params.openaiBackground ? { openai: { background: params.openaiBackground } } : void 0,
786
+ timeoutMs: params.timeoutMs,
787
+ inputImages
788
+ });
789
+ const outputs = await Promise.all(result.images.map(async (image, index) => {
790
+ const written = await writeOutputAsset({
791
+ buffer: image.buffer,
792
+ mimeType: image.mimeType,
793
+ originalFilename: image.fileName,
794
+ outputPath: params.output,
795
+ outputIndex: index,
796
+ outputCount: result.images.length,
797
+ subdir: "generated"
798
+ });
799
+ const metadata = await getImageMetadata(image.buffer).catch(() => void 0);
800
+ return {
801
+ ...written,
802
+ width: metadata?.width,
803
+ height: metadata?.height,
804
+ revisedPrompt: image.revisedPrompt
805
+ };
806
+ }));
807
+ return {
808
+ ok: true,
809
+ capability: params.capability,
810
+ transport: "local",
811
+ provider: result.provider,
812
+ model: result.model,
813
+ attempts: result.attempts,
814
+ outputs,
815
+ ignoredOverrides: result.ignoredOverrides
816
+ };
817
+ }
818
+ async function runImageDescribe(params) {
819
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
820
+ commandName: `infer ${params.capability}`,
821
+ targetIds: getModelsCommandSecretTargetIds()
822
+ });
823
+ const agentDir = resolveAgentDir(cfg, resolveDefaultAgentId(cfg));
824
+ const activeModel = requireProviderModelOverride(params.model);
825
+ const prompt = normalizeOptionalString(params.prompt);
826
+ const outputs = await Promise.all(params.files.map(async (filePath) => {
827
+ const resolvedPath = resolveImageDescribeInput(filePath);
828
+ const isRemoteUrl = /^https?:\/\//i.test(resolvedPath);
829
+ const result = activeModel ? await describeImageFileWithModel({
830
+ filePath: resolvedPath,
831
+ ...isRemoteUrl ? { mediaUrl: resolvedPath } : {},
832
+ cfg,
833
+ agentDir,
834
+ provider: activeModel.provider,
835
+ model: activeModel.model,
836
+ prompt: prompt ?? "Describe the image.",
837
+ timeoutMs: params.timeoutMs
838
+ }) : await describeImageFile({
839
+ filePath: resolvedPath,
840
+ ...isRemoteUrl ? { mediaUrl: resolvedPath } : {},
841
+ cfg,
842
+ agentDir,
843
+ prompt,
844
+ timeoutMs: params.timeoutMs
845
+ });
846
+ if (!result.text) {
847
+ if (isMissingMediaUnderstandingProvider(result)) throw new Error("No image understanding provider is configured or ready. Configure tools.media.image.models or agents.defaults.imageModel.primary, or pass --model <provider/model> after configuring that provider's auth/API key.");
848
+ throw new Error(`No description returned for image: ${resolvedPath}`);
849
+ }
850
+ return {
851
+ path: resolvedPath,
852
+ text: result.text,
853
+ provider: activeModel?.provider ?? ("provider" in result ? result.provider : void 0),
854
+ model: result.model,
855
+ kind: "image.description"
856
+ };
857
+ }));
858
+ return {
859
+ ok: true,
860
+ capability: params.capability,
861
+ transport: "local",
862
+ provider: outputs[0]?.provider,
863
+ model: outputs[0]?.model,
864
+ attempts: [],
865
+ outputs
866
+ };
867
+ }
868
+ function isMissingMediaUnderstandingProvider(result) {
869
+ const decision = result.decision;
870
+ return decision?.outcome === "skipped" && decision.attachments.length > 0 && decision.attachments.every((attachment) => attachment.attempts.length === 0);
871
+ }
872
+ async function runAudioTranscribe(params) {
873
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
874
+ commandName: "infer audio transcribe",
875
+ targetIds: getModelsCommandSecretTargetIds()
876
+ });
877
+ const activeModel = requireProviderModelOverride(params.model);
878
+ const result = await transcribeAudioFile({
879
+ filePath: path.resolve(params.file),
880
+ cfg,
881
+ language: params.language,
882
+ activeModel,
883
+ prompt: params.prompt
884
+ });
885
+ if (!result.text) {
886
+ if (isMissingMediaUnderstandingProvider(result)) throw new Error("No audio transcription provider is configured or ready. Configure tools.media.audio.models, or pass --model <provider/model> after configuring that provider's auth/API key.");
887
+ throw new Error(`No transcript returned for audio: ${path.resolve(params.file)}`);
888
+ }
889
+ return {
890
+ ok: true,
891
+ capability: "audio.transcribe",
892
+ transport: "local",
893
+ attempts: [],
894
+ outputs: [{
895
+ path: path.resolve(params.file),
896
+ text: result.text,
897
+ kind: "audio.transcription"
898
+ }]
899
+ };
900
+ }
901
+ function parseOptionalFiniteNumber(raw, label) {
902
+ if (raw === void 0 || typeof raw === "string" && raw.trim() === "") return;
903
+ const value = Number(raw);
904
+ if (!Number.isFinite(value)) throw new Error(`${label} must be a finite number`);
905
+ return value;
906
+ }
907
+ function normalizeImageOutputFormat(raw) {
908
+ const normalized = normalizeLowercaseStringOrEmpty(raw);
909
+ if (!normalized) return;
910
+ if (IMAGE_OUTPUT_FORMATS.includes(normalized)) return normalized;
911
+ throw new Error("--output-format must be one of png, jpeg, or webp");
912
+ }
913
+ function normalizeImageBackground(raw, label = "--background") {
914
+ const normalized = normalizeLowercaseStringOrEmpty(raw);
915
+ if (!normalized) return;
916
+ if (IMAGE_BACKGROUNDS.includes(normalized)) return normalized;
917
+ throw new Error(`${label} must be one of transparent, opaque, or auto`);
918
+ }
919
+ function normalizeVideoResolution(raw) {
920
+ const normalized = raw?.trim().toUpperCase();
921
+ if (!normalized) return;
922
+ if (normalized === "480P" || normalized === "720P" || normalized === "768P" || normalized === "1080P") return normalized;
923
+ throw new Error("video resolution must be one of 480P, 720P, 768P, or 1080P");
924
+ }
925
+ async function runVideoGenerate(params) {
926
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
927
+ commandName: "infer video.generate",
928
+ targetIds: getModelsCommandSecretTargetIds()
929
+ });
930
+ const result = await generateVideo({
931
+ cfg,
932
+ agentDir: resolveAgentDir(cfg, resolveDefaultAgentId(cfg)),
933
+ prompt: params.prompt,
934
+ modelOverride: params.model,
935
+ size: params.size,
936
+ aspectRatio: params.aspectRatio,
937
+ resolution: params.resolution,
938
+ durationSeconds: params.durationSeconds,
939
+ audio: params.audio,
940
+ watermark: params.watermark,
941
+ timeoutMs: params.timeoutMs
942
+ });
943
+ const outputs = await Promise.all(result.videos.map(async (video, index) => {
944
+ if (!video.buffer && !video.url) throw new Error(`Video asset at index ${index} has neither buffer nor url`);
945
+ let videoBuffer = video.buffer;
946
+ if (!videoBuffer && video.url) {
947
+ const response = await fetch(video.url, { signal: AbortSignal.timeout(12e4) });
948
+ if (!response.ok) throw new Error(`Failed to download video from ${video.url}: ${response.status}`);
949
+ if (params.output && response.body) {
950
+ const ext = extensionForMime(normalizeMimeType(video.mimeType)) || path.extname(video.fileName ?? "") || path.extname(params.output ?? "");
951
+ const resolvedOutput = path.resolve(params.output);
952
+ const parsed = path.parse(resolvedOutput);
953
+ const filePath = result.videos.length <= 1 ? path.join(parsed.dir, `${parsed.name}${ext}`) : path.join(parsed.dir, `${parsed.name}-${String(index + 1)}${ext}`);
954
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
955
+ await pipeline(Readable.fromWeb(response.body), createWriteStream(filePath));
956
+ const stat = await fs$1.stat(filePath);
957
+ return {
958
+ path: filePath,
959
+ mimeType: video.mimeType,
960
+ size: stat.size
961
+ };
962
+ }
963
+ videoBuffer = Buffer.from(await response.arrayBuffer());
964
+ }
965
+ return { ...await writeOutputAsset({
966
+ buffer: videoBuffer,
967
+ mimeType: video.mimeType,
968
+ originalFilename: video.fileName,
969
+ outputPath: params.output,
970
+ outputIndex: index,
971
+ outputCount: result.videos.length,
972
+ subdir: "generated"
973
+ }) };
974
+ }));
975
+ return {
976
+ ok: true,
977
+ capability: "video.generate",
978
+ transport: "local",
979
+ provider: result.provider,
980
+ model: result.model,
981
+ attempts: result.attempts,
982
+ outputs
983
+ };
984
+ }
985
+ async function runVideoDescribe(params) {
986
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
987
+ commandName: "infer video.describe",
988
+ targetIds: getModelsCommandSecretTargetIds()
989
+ });
990
+ const activeModel = requireProviderModelOverride(params.model);
991
+ const result = await describeVideoFile({
992
+ filePath: path.resolve(params.file),
993
+ cfg,
994
+ activeModel
995
+ });
996
+ if (!result.text) throw new Error(`No description returned for video: ${path.resolve(params.file)}`);
997
+ return {
998
+ ok: true,
999
+ capability: "video.describe",
1000
+ transport: "local",
1001
+ provider: result.provider,
1002
+ model: result.model,
1003
+ attempts: [],
1004
+ outputs: [{
1005
+ path: path.resolve(params.file),
1006
+ text: result.text,
1007
+ kind: "video.description"
1008
+ }]
1009
+ };
1010
+ }
1011
+ async function runTtsConvert(params) {
1012
+ if (params.transport === "gateway") {
1013
+ const gatewayConnection = buildGatewayConnectionDetailsWithResolvers({ config: getRuntimeConfig() });
1014
+ const result = await callGateway({
1015
+ method: "tts.convert",
1016
+ params: {
1017
+ text: params.text,
1018
+ channel: params.channel,
1019
+ provider: normalizeOptionalString(params.provider),
1020
+ modelId: params.modelId,
1021
+ voiceId: params.voiceId
1022
+ },
1023
+ timeoutMs: 12e4
1024
+ });
1025
+ let outputPath = result.audioPath;
1026
+ if (params.output && result.audioPath) {
1027
+ const gatewayHost = new URL(gatewayConnection.url).hostname;
1028
+ if (!isLoopbackHost(gatewayHost)) throw new Error(`--output is not supported for remote gateway TTS yet (gateway target: ${gatewayConnection.url}).`);
1029
+ const target = path.resolve(params.output);
1030
+ await fs$1.mkdir(path.dirname(target), { recursive: true });
1031
+ await fs$1.copyFile(result.audioPath, target);
1032
+ outputPath = target;
1033
+ }
1034
+ return {
1035
+ ok: true,
1036
+ capability: "tts.convert",
1037
+ transport: "gateway",
1038
+ provider: result.provider,
1039
+ attempts: [],
1040
+ outputs: [{
1041
+ path: outputPath,
1042
+ format: result.outputFormat,
1043
+ voiceCompatible: result.voiceCompatible
1044
+ }]
1045
+ };
1046
+ }
1047
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
1048
+ commandName: "infer tts convert",
1049
+ targetIds: getTtsCommandSecretTargetIds()
1050
+ });
1051
+ const overrides = resolveExplicitTtsOverrides({
1052
+ cfg,
1053
+ provider: params.provider,
1054
+ modelId: params.modelId,
1055
+ voiceId: params.voiceId
1056
+ });
1057
+ const hasExplicitSelection = Boolean(overrides.provider || normalizeOptionalString(params.modelId) || normalizeOptionalString(params.voiceId));
1058
+ const result = await textToSpeech({
1059
+ text: params.text,
1060
+ cfg,
1061
+ channel: params.channel,
1062
+ overrides,
1063
+ disableFallback: hasExplicitSelection
1064
+ });
1065
+ if (!result.success || !result.audioPath) throw new Error(result.error ?? "TTS conversion failed");
1066
+ let outputPath = result.audioPath;
1067
+ if (params.output) {
1068
+ const target = path.resolve(params.output);
1069
+ await fs$1.mkdir(path.dirname(target), { recursive: true });
1070
+ await fs$1.copyFile(result.audioPath, target);
1071
+ outputPath = target;
1072
+ }
1073
+ return {
1074
+ ok: true,
1075
+ capability: "tts.convert",
1076
+ transport: "local",
1077
+ provider: result.provider,
1078
+ attempts: result.attempts ?? [],
1079
+ outputs: [{
1080
+ path: outputPath,
1081
+ format: result.outputFormat,
1082
+ voiceCompatible: result.voiceCompatible
1083
+ }]
1084
+ };
1085
+ }
1086
+ async function runTtsProviders(transport) {
1087
+ const cfg = getRuntimeConfig();
1088
+ if (transport === "gateway") {
1089
+ const payload = await callGateway({
1090
+ method: "tts.providers",
1091
+ timeoutMs: 3e4
1092
+ });
1093
+ return {
1094
+ ...payload,
1095
+ providers: (payload.providers ?? []).map((provider) => {
1096
+ const id = typeof provider.id === "string" ? provider.id : "";
1097
+ return Object.assign({
1098
+ available: true,
1099
+ configured: typeof provider.configured === `boolean` ? provider.configured : providerHasGenericConfig({
1100
+ cfg,
1101
+ providerId: id
1102
+ }),
1103
+ selected: Boolean(id && payload.active === id)
1104
+ }, provider);
1105
+ })
1106
+ };
1107
+ }
1108
+ const config = resolveTtsConfig(cfg);
1109
+ const active = getTtsProvider(config, resolveTtsPrefsPath(config));
1110
+ return {
1111
+ providers: listSpeechProviders(cfg).map((provider) => ({
1112
+ available: true,
1113
+ configured: active === provider.id || providerHasGenericConfig({
1114
+ cfg,
1115
+ providerId: provider.id
1116
+ }),
1117
+ selected: active === provider.id,
1118
+ id: provider.id,
1119
+ name: provider.label,
1120
+ models: [...provider.models ?? []],
1121
+ voices: [...provider.voices ?? []]
1122
+ })),
1123
+ active
1124
+ };
1125
+ }
1126
+ function resolveImageDescribeInput(filePath) {
1127
+ const trimmed = filePath.trim();
1128
+ return /^https?:\/\//i.test(trimmed) ? trimmed : path.resolve(filePath);
1129
+ }
1130
+ async function runTtsPersonas(transport) {
1131
+ if (transport === "gateway") return await callGateway({
1132
+ method: "tts.personas",
1133
+ timeoutMs: 3e4
1134
+ });
1135
+ const config = resolveTtsConfig(getRuntimeConfig());
1136
+ return {
1137
+ active: getTtsPersona(config, resolveTtsPrefsPath(config))?.id ?? null,
1138
+ personas: listTtsPersonas(config).map((persona) => ({
1139
+ id: persona.id,
1140
+ label: persona.label,
1141
+ description: persona.description,
1142
+ provider: persona.provider,
1143
+ fallbackPolicy: persona.fallbackPolicy,
1144
+ providers: Object.keys(persona.providers ?? {})
1145
+ }))
1146
+ };
1147
+ }
1148
+ async function runTtsVoices(providerRaw) {
1149
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
1150
+ commandName: "infer tts voices",
1151
+ targetIds: getTtsCommandSecretTargetIds()
1152
+ });
1153
+ const config = resolveTtsConfig(cfg);
1154
+ const prefsPath = resolveTtsPrefsPath(config);
1155
+ return await listSpeechVoices({
1156
+ provider: normalizeOptionalString(providerRaw) || getTtsProvider(config, prefsPath),
1157
+ cfg,
1158
+ config
1159
+ });
1160
+ }
1161
+ async function runTtsStateMutation(params) {
1162
+ if (params.transport === "gateway") return await callGateway({
1163
+ method: params.capability === "tts.enable" ? "tts.enable" : params.capability === "tts.disable" ? "tts.disable" : params.capability === "tts.set-provider" ? "tts.setProvider" : "tts.setPersona",
1164
+ params: params.capability === "tts.set-provider" ? { provider: params.provider } : params.capability === "tts.set-persona" ? { persona: params.persona ?? "off" } : void 0,
1165
+ timeoutMs: 3e4
1166
+ });
1167
+ const cfg = getRuntimeConfig();
1168
+ const config = resolveTtsConfig(cfg);
1169
+ const prefsPath = resolveTtsPrefsPath(config);
1170
+ if (params.capability === "tts.enable") {
1171
+ setTtsEnabled(prefsPath, true);
1172
+ return { enabled: true };
1173
+ }
1174
+ if (params.capability === "tts.disable") {
1175
+ setTtsEnabled(prefsPath, false);
1176
+ return { enabled: false };
1177
+ }
1178
+ if (params.capability === "tts.set-persona") {
1179
+ if (!params.persona) {
1180
+ setTtsPersona(prefsPath, null);
1181
+ return { persona: null };
1182
+ }
1183
+ const persona = listTtsPersonas(config).find((entry) => entry.id === normalizeLowercaseStringOrEmpty(params.persona ?? ""));
1184
+ if (!persona) throw new Error(`Unknown TTS persona: ${params.persona}`);
1185
+ setTtsPersona(prefsPath, persona.id);
1186
+ return { persona: persona.id };
1187
+ }
1188
+ if (!params.provider) throw new Error("--provider is required");
1189
+ const provider = canonicalizeSpeechProviderId(params.provider, cfg);
1190
+ if (!provider) throw new Error(`Unknown speech provider: ${params.provider}`);
1191
+ setTtsProvider(prefsPath, provider);
1192
+ return { provider };
1193
+ }
1194
+ async function resolveLocalCapabilityRuntimeConfig(params) {
1195
+ const cfg = params.config ?? getRuntimeConfig();
1196
+ const sourceConfig = getRuntimeConfigSourceSnapshot();
1197
+ const { effectiveConfig } = await resolveCommandConfigWithSecrets({
1198
+ config: cfg,
1199
+ commandName: params.commandName,
1200
+ targetIds: params.targetIds,
1201
+ ...params.allowedPaths ? { allowedPaths: params.allowedPaths } : {},
1202
+ ...params.forcedActivePaths ? { forcedActivePaths: params.forcedActivePaths } : {},
1203
+ ...params.optionalActivePaths ? { optionalActivePaths: params.optionalActivePaths } : {},
1204
+ runtime: defaultRuntime,
1205
+ autoEnable: true
1206
+ });
1207
+ if (sourceConfig) setRuntimeConfigSnapshot(effectiveConfig, sourceConfig);
1208
+ else setRuntimeConfigSnapshot(effectiveConfig);
1209
+ return effectiveConfig;
1210
+ }
1211
+ async function runWebSearchCommand(params) {
1212
+ const rawConfig = getRuntimeConfig();
1213
+ const scopedTargets = getCapabilityWebSearchCommandSecretTargets(rawConfig, { providerId: params.provider });
1214
+ const result = await runWebSearch({
1215
+ config: await resolveLocalCapabilityRuntimeConfig({
1216
+ commandName: "infer web search",
1217
+ targetIds: scopedTargets.targetIds,
1218
+ ...scopedTargets.allowedPaths ? { allowedPaths: scopedTargets.allowedPaths } : {},
1219
+ ...scopedTargets.forcedActivePaths ? { forcedActivePaths: scopedTargets.forcedActivePaths } : {},
1220
+ ...scopedTargets.optionalActivePaths ? { optionalActivePaths: scopedTargets.optionalActivePaths } : {},
1221
+ config: rawConfig
1222
+ }),
1223
+ providerId: params.provider,
1224
+ args: {
1225
+ query: params.query,
1226
+ count: params.limit,
1227
+ limit: params.limit
1228
+ }
1229
+ });
1230
+ return {
1231
+ ok: true,
1232
+ capability: "web.search",
1233
+ transport: "local",
1234
+ provider: result.provider,
1235
+ attempts: [],
1236
+ outputs: [{ result: result.result }]
1237
+ };
1238
+ }
1239
+ async function runWebFetchCommand(params) {
1240
+ const rawConfig = getRuntimeConfig();
1241
+ const scopedTargets = getCapabilityWebFetchCommandSecretTargets(rawConfig, { providerId: params.provider });
1242
+ const resolved = resolveWebFetchDefinition({
1243
+ config: await resolveLocalCapabilityRuntimeConfig({
1244
+ commandName: "infer web fetch",
1245
+ targetIds: scopedTargets.targetIds,
1246
+ ...scopedTargets.allowedPaths ? { allowedPaths: scopedTargets.allowedPaths } : {},
1247
+ ...scopedTargets.forcedActivePaths ? { forcedActivePaths: scopedTargets.forcedActivePaths } : {},
1248
+ ...scopedTargets.optionalActivePaths ? { optionalActivePaths: scopedTargets.optionalActivePaths } : {},
1249
+ config: rawConfig
1250
+ }),
1251
+ providerId: params.provider
1252
+ });
1253
+ if (!resolved) throw new Error("web.fetch is disabled or no provider is available.");
1254
+ const result = await resolved.definition.execute({
1255
+ url: params.url,
1256
+ format: params.format
1257
+ });
1258
+ return {
1259
+ ok: true,
1260
+ capability: "web.fetch",
1261
+ transport: "local",
1262
+ provider: resolved.provider.id,
1263
+ attempts: [],
1264
+ outputs: [{ result }]
1265
+ };
1266
+ }
1267
+ async function runMemoryEmbeddingCreate(params) {
1268
+ ensureMemoryEmbeddingProvidersRegistered();
1269
+ const cfg = await resolveLocalCapabilityRuntimeConfig({
1270
+ commandName: "infer embedding create",
1271
+ targetIds: getMemoryEmbeddingCommandSecretTargetIds()
1272
+ });
1273
+ const modelRef = resolveModelRefOverride(params.model);
1274
+ const requestedProvider = normalizeOptionalString(params.provider) || modelRef.provider || "auto";
1275
+ const result = await createEmbeddingProvider({
1276
+ config: cfg,
1277
+ agentDir: resolveAgentDir(cfg, resolveDefaultAgentId(cfg)),
1278
+ provider: requestedProvider,
1279
+ fallback: "none",
1280
+ model: modelRef.model ?? ""
1281
+ });
1282
+ if (!result.provider) throw new Error(result.providerUnavailableReason ?? "No embedding provider available.");
1283
+ const embeddings = await result.provider.embedBatch(params.texts);
1284
+ return {
1285
+ ok: true,
1286
+ capability: "embedding.create",
1287
+ transport: "local",
1288
+ provider: result.provider.id,
1289
+ model: result.provider.model,
1290
+ attempts: result.fallbackFrom ? [{
1291
+ provider: result.fallbackFrom,
1292
+ outcome: "failed",
1293
+ error: result.fallbackReason
1294
+ }] : [],
1295
+ outputs: embeddings.map((embedding, index) => ({
1296
+ text: params.texts[index],
1297
+ embedding,
1298
+ dimensions: embedding.length
1299
+ }))
1300
+ };
1301
+ }
1302
+ function ensureMemoryEmbeddingProvidersRegistered() {
1303
+ if (listMemoryEmbeddingProviders().length > 0) return;
1304
+ registerBuiltInMemoryEmbeddingProviders({ registerMemoryEmbeddingProvider });
1305
+ }
1306
+ function registerCapabilityListAndInspect(capability) {
1307
+ capability.command("list").description("List canonical capability ids and supported transports").option("--json", "Output JSON", false).action(async (opts) => {
1308
+ await runCommandWithRuntime(defaultRuntime, async () => {
1309
+ const result = CAPABILITY_METADATA.map((entry) => ({
1310
+ id: entry.id,
1311
+ transports: entry.transports,
1312
+ description: entry.description
1313
+ }));
1314
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1315
+ });
1316
+ });
1317
+ capability.command("inspect").description("Inspect one canonical capability id").requiredOption("--name <capability>", "Capability id").option("--json", "Output JSON", false).action(async (opts) => {
1318
+ await runCommandWithRuntime(defaultRuntime, async () => {
1319
+ const entry = findCapabilityMetadata(String(opts.name));
1320
+ if (!entry) throw new Error(`Unknown capability: ${String(opts.name)}`);
1321
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), entry, (value) => JSON.stringify(value, null, 2));
1322
+ });
1323
+ });
1324
+ }
1325
+ function registerCapabilityCli(program) {
1326
+ removeCommandByName(program, "infer");
1327
+ removeCommandByName(program, "capability");
1328
+ const capability = program.command("infer").alias("capability").description("Run provider-backed inference commands through a stable CLI surface").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/infer", "docs.openclaw.ai/cli/infer")}\n`);
1329
+ registerCapabilityListAndInspect(capability);
1330
+ const model = capability.command("model").description("Text inference and model catalog commands");
1331
+ model.command("run").description("Run a one-shot model turn").requiredOption("--prompt <text>", "Prompt text").option("--file <path>", "Image file", collectOption, []).option("--model <provider/model>", "Model override").option("--thinking <level>", "Thinking level override").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1332
+ await runCommandWithRuntime(defaultRuntime, async () => {
1333
+ const prompt = requireModelRunPrompt(opts.prompt);
1334
+ const thinking = normalizeModelRunThinking(opts.thinking);
1335
+ const transport = resolveTransport({
1336
+ local: Boolean(opts.local),
1337
+ gateway: Boolean(opts.gateway),
1338
+ supported: ["local", "gateway"],
1339
+ defaultTransport: "local"
1340
+ });
1341
+ const result = await runModelRun({
1342
+ prompt,
1343
+ files: opts.file,
1344
+ model: opts.model,
1345
+ thinking,
1346
+ transport
1347
+ });
1348
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1349
+ });
1350
+ });
1351
+ model.command("list").description("List known models").option("--json", "Output JSON", false).action(async (opts) => {
1352
+ await runCommandWithRuntime(defaultRuntime, async () => {
1353
+ const result = await loadModelCatalog({ config: getRuntimeConfig() });
1354
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1355
+ });
1356
+ });
1357
+ model.command("inspect").description("Inspect one model catalog entry").requiredOption("--model <provider/model>", "Model id").option("--json", "Output JSON", false).action(async (opts) => {
1358
+ await runCommandWithRuntime(defaultRuntime, async () => {
1359
+ const target = normalizeStringifiedOptionalString(opts.model) ?? "";
1360
+ const catalog = await loadModelCatalog({ config: getRuntimeConfig() });
1361
+ const entry = catalog.find((candidate) => `${candidate.provider}/${candidate.id}` === target) ?? catalog.find((candidate) => candidate.id === target);
1362
+ if (!entry) throw new Error(`Model not found: ${target}`);
1363
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), entry, (value) => JSON.stringify(value, null, 2));
1364
+ });
1365
+ });
1366
+ model.command("providers").description("List model providers from the catalog").option("--json", "Output JSON", false).action(async (opts) => {
1367
+ await runCommandWithRuntime(defaultRuntime, async () => {
1368
+ const result = await buildModelProviders();
1369
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1370
+ });
1371
+ });
1372
+ const modelAuth = model.command("auth").description("Provider auth helpers");
1373
+ modelAuth.command("login").description("Run provider auth login").requiredOption("--provider <id>", "Provider id").option("--method <id>", "Provider auth method id").action(async (opts) => {
1374
+ await runCommandWithRuntime(defaultRuntime, async () => {
1375
+ const { modelsAuthLoginCommand } = await import("./auth-DeO0v6eY.js");
1376
+ await modelsAuthLoginCommand({
1377
+ provider: String(opts.provider),
1378
+ method: opts.method ? String(opts.method) : void 0
1379
+ }, defaultRuntime);
1380
+ });
1381
+ });
1382
+ modelAuth.command("logout").description("Remove saved auth profiles for one provider").requiredOption("--provider <id>", "Provider id").option("--agent <id>", "Agent id (default: configured default agent)").option("--json", "Output JSON", false).action(async (opts) => {
1383
+ await runCommandWithRuntime(defaultRuntime, async () => {
1384
+ const result = await runModelAuthLogout(String(opts.provider), typeof opts.agent === "string" ? opts.agent : void 0);
1385
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1386
+ });
1387
+ });
1388
+ modelAuth.command("status").description("Show configured auth state").option("--json", "Output JSON", false).action(async (opts) => {
1389
+ await runCommandWithRuntime(defaultRuntime, async () => {
1390
+ const result = await runModelAuthStatus();
1391
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1392
+ });
1393
+ });
1394
+ const image = capability.command("image").description("Image generation and description");
1395
+ image.command("generate").description("Generate images").requiredOption("--prompt <text>", "Prompt text").option("--model <provider/model>", "Model override").option("--count <n>", "Number of images").option("--size <size>", "Size hint like 1024x1024").option("--aspect-ratio <ratio>", "Aspect ratio hint like 16:9").option("--resolution <value>", "Resolution hint: 1K, 2K, or 4K").option("--output-format <format>", "Output format hint: png, jpeg, or webp").option("--background <value>", "Background hint: transparent, opaque, or auto").option("--openai-background <value>", "OpenAI background hint: transparent, opaque, or auto").option("--timeout-ms <ms>", "Provider request timeout in milliseconds").option("--output <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1396
+ await runCommandWithRuntime(defaultRuntime, async () => {
1397
+ const result = await runImageGenerate({
1398
+ capability: "image.generate",
1399
+ prompt: String(opts.prompt),
1400
+ model: opts.model,
1401
+ count: opts.count ? Number.parseInt(String(opts.count), 10) : void 0,
1402
+ size: opts.size,
1403
+ aspectRatio: opts.aspectRatio,
1404
+ resolution: opts.resolution,
1405
+ outputFormat: normalizeImageOutputFormat(opts.outputFormat),
1406
+ background: normalizeImageBackground(opts.background),
1407
+ openaiBackground: normalizeImageBackground(opts.openaiBackground, "--openai-background"),
1408
+ timeoutMs: parseOptionalFiniteNumber(opts.timeoutMs, "--timeout-ms"),
1409
+ output: opts.output
1410
+ });
1411
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1412
+ });
1413
+ });
1414
+ image.command("edit").description("Edit images with one or more input files").requiredOption("--file <path>", "Input file", collectOption, []).requiredOption("--prompt <text>", "Prompt text").option("--model <provider/model>", "Model override").option("--size <size>", "Size hint like 1024x1024").option("--aspect-ratio <ratio>", "Aspect ratio hint like 16:9").option("--resolution <value>", "Resolution hint: 1K, 2K, or 4K").option("--output-format <format>", "Output format hint: png, jpeg, or webp").option("--background <value>", "Background hint: transparent, opaque, or auto").option("--openai-background <value>", "OpenAI background hint: transparent, opaque, or auto").option("--timeout-ms <ms>", "Provider request timeout in milliseconds").option("--output <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1415
+ await runCommandWithRuntime(defaultRuntime, async () => {
1416
+ const files = Array.isArray(opts.file) ? opts.file : [String(opts.file)];
1417
+ const result = await runImageGenerate({
1418
+ capability: "image.edit",
1419
+ prompt: String(opts.prompt),
1420
+ model: opts.model,
1421
+ size: opts.size,
1422
+ aspectRatio: opts.aspectRatio,
1423
+ resolution: opts.resolution,
1424
+ file: files,
1425
+ outputFormat: normalizeImageOutputFormat(opts.outputFormat),
1426
+ background: normalizeImageBackground(opts.background),
1427
+ openaiBackground: normalizeImageBackground(opts.openaiBackground, "--openai-background"),
1428
+ timeoutMs: parseOptionalFiniteNumber(opts.timeoutMs, "--timeout-ms"),
1429
+ output: opts.output
1430
+ });
1431
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1432
+ });
1433
+ });
1434
+ image.command("describe").description("Describe one image file").requiredOption("--file <path>", "Image file").option("--prompt <text>", "Prompt hint").option("--model <provider/model>", "Model override").option("--timeout-ms <ms>", "Provider request timeout in milliseconds").option("--json", "Output JSON", false).action(async (opts) => {
1435
+ await runCommandWithRuntime(defaultRuntime, async () => {
1436
+ const result = await runImageDescribe({
1437
+ capability: "image.describe",
1438
+ files: [String(opts.file)],
1439
+ model: opts.model,
1440
+ prompt: opts.prompt,
1441
+ timeoutMs: parseOptionalFiniteNumber(opts.timeoutMs, "--timeout-ms")
1442
+ });
1443
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1444
+ });
1445
+ });
1446
+ image.command("describe-many").description("Describe multiple image files").requiredOption("--file <path>", "Image file", collectOption, []).option("--prompt <text>", "Prompt hint").option("--model <provider/model>", "Model override").option("--timeout-ms <ms>", "Provider request timeout in milliseconds").option("--json", "Output JSON", false).action(async (opts) => {
1447
+ await runCommandWithRuntime(defaultRuntime, async () => {
1448
+ const result = await runImageDescribe({
1449
+ capability: "image.describe-many",
1450
+ files: opts.file,
1451
+ model: opts.model,
1452
+ prompt: opts.prompt,
1453
+ timeoutMs: parseOptionalFiniteNumber(opts.timeoutMs, "--timeout-ms")
1454
+ });
1455
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1456
+ });
1457
+ });
1458
+ image.command("providers").description("List image generation providers").option("--json", "Output JSON", false).action(async (opts) => {
1459
+ await runCommandWithRuntime(defaultRuntime, async () => {
1460
+ const cfg = getRuntimeConfig();
1461
+ const selectedProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.imageGenerationModel));
1462
+ const result = listRuntimeImageGenerationProviders({ config: cfg }).map((provider) => ({
1463
+ available: true,
1464
+ configured: selectedProvider === provider.id || providerHasGenericConfig({
1465
+ cfg,
1466
+ providerId: provider.id
1467
+ }),
1468
+ selected: selectedProvider === provider.id,
1469
+ id: provider.id,
1470
+ label: provider.label,
1471
+ defaultModel: provider.defaultModel,
1472
+ models: provider.models ?? [],
1473
+ capabilities: provider.capabilities
1474
+ }));
1475
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1476
+ });
1477
+ });
1478
+ const audio = capability.command("audio").description("Audio transcription");
1479
+ audio.command("transcribe").description("Transcribe one audio file").requiredOption("--file <path>", "Audio file").option("--language <code>", "Language hint").option("--prompt <text>", "Prompt hint").option("--model <provider/model>", "Model override").option("--json", "Output JSON", false).action(async (opts) => {
1480
+ await runCommandWithRuntime(defaultRuntime, async () => {
1481
+ const result = await runAudioTranscribe({
1482
+ file: String(opts.file),
1483
+ language: opts.language,
1484
+ model: opts.model,
1485
+ prompt: opts.prompt
1486
+ });
1487
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1488
+ });
1489
+ });
1490
+ audio.command("providers").description("List audio transcription providers").option("--json", "Output JSON", false).action(async (opts) => {
1491
+ await runCommandWithRuntime(defaultRuntime, async () => {
1492
+ const cfg = getRuntimeConfig();
1493
+ const providers = [...buildMediaUnderstandingRegistry(void 0, cfg).values()].filter((provider) => provider.capabilities?.includes("audio")).map((provider) => ({
1494
+ available: true,
1495
+ configured: providerHasGenericConfig({
1496
+ cfg,
1497
+ providerId: provider.id,
1498
+ envVars: getProviderEnvVars(provider.id, {
1499
+ config: cfg,
1500
+ includeUntrustedWorkspacePlugins: false
1501
+ })
1502
+ }),
1503
+ selected: false,
1504
+ id: provider.id,
1505
+ capabilities: provider.capabilities,
1506
+ defaultModels: provider.defaultModels
1507
+ }));
1508
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), providers, providerSummaryText);
1509
+ });
1510
+ });
1511
+ const tts = capability.command("tts").description("Text to speech");
1512
+ tts.command("convert").description("Convert text to speech").requiredOption("--text <text>", "Input text").option("--channel <id>", "Channel hint").option("--voice <id>", "Voice hint").option("--model <provider/model>", "Model override").option("--output <path>", "Output path").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1513
+ await runCommandWithRuntime(defaultRuntime, async () => {
1514
+ const transport = resolveTransport({
1515
+ local: Boolean(opts.local),
1516
+ gateway: Boolean(opts.gateway),
1517
+ supported: ["local", "gateway"],
1518
+ defaultTransport: "local"
1519
+ });
1520
+ const modelRef = resolveModelRefOverride(opts.model);
1521
+ if (opts.model && !modelRef.provider) throw new Error("TTS model overrides must use the form <provider/model>.");
1522
+ const result = await runTtsConvert({
1523
+ text: String(opts.text),
1524
+ channel: opts.channel,
1525
+ provider: modelRef.provider,
1526
+ modelId: modelRef.provider ? modelRef.model : void 0,
1527
+ voiceId: opts.voice,
1528
+ output: opts.output,
1529
+ transport
1530
+ });
1531
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1532
+ });
1533
+ });
1534
+ tts.command("voices").description("List voices for a TTS provider").option("--provider <id>", "Speech provider id").option("--json", "Output JSON", false).action(async (opts) => {
1535
+ await runCommandWithRuntime(defaultRuntime, async () => {
1536
+ const voices = await runTtsVoices(opts.provider);
1537
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), voices, providerSummaryText);
1538
+ });
1539
+ });
1540
+ tts.command("providers").description("List speech providers").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1541
+ await runCommandWithRuntime(defaultRuntime, async () => {
1542
+ const result = await runTtsProviders(resolveTransport({
1543
+ local: Boolean(opts.local),
1544
+ gateway: Boolean(opts.gateway),
1545
+ supported: ["local", "gateway"],
1546
+ defaultTransport: "local"
1547
+ }));
1548
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1549
+ });
1550
+ });
1551
+ tts.command("personas").description("List TTS personas").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1552
+ await runCommandWithRuntime(defaultRuntime, async () => {
1553
+ const result = await runTtsPersonas(resolveTransport({
1554
+ local: Boolean(opts.local),
1555
+ gateway: Boolean(opts.gateway),
1556
+ supported: ["local", "gateway"],
1557
+ defaultTransport: "local"
1558
+ }));
1559
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1560
+ });
1561
+ });
1562
+ tts.command("status").description("Show TTS status").option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1563
+ await runCommandWithRuntime(defaultRuntime, async () => {
1564
+ const transport = resolveTransport({
1565
+ gateway: Boolean(opts.gateway),
1566
+ supported: ["gateway"],
1567
+ defaultTransport: "gateway"
1568
+ });
1569
+ const result = await callGateway({
1570
+ method: "tts.status",
1571
+ timeoutMs: 3e4
1572
+ });
1573
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), {
1574
+ transport,
1575
+ ...result
1576
+ }, (value) => JSON.stringify(value, null, 2));
1577
+ });
1578
+ });
1579
+ for (const [commandName, capabilityId] of [["enable", "tts.enable"], ["disable", "tts.disable"]]) tts.command(commandName).description(`${commandName === "enable" ? "Enable" : "Disable"} TTS`).option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1580
+ await runCommandWithRuntime(defaultRuntime, async () => {
1581
+ const result = await runTtsStateMutation({
1582
+ capability: capabilityId,
1583
+ transport: resolveTransport({
1584
+ local: Boolean(opts.local),
1585
+ gateway: Boolean(opts.gateway),
1586
+ supported: ["local", "gateway"],
1587
+ defaultTransport: "gateway"
1588
+ })
1589
+ });
1590
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1591
+ });
1592
+ });
1593
+ tts.command("set-provider").description("Set the active TTS provider").requiredOption("--provider <id>", "Speech provider id").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1594
+ await runCommandWithRuntime(defaultRuntime, async () => {
1595
+ const transport = resolveTransport({
1596
+ local: Boolean(opts.local),
1597
+ gateway: Boolean(opts.gateway),
1598
+ supported: ["local", "gateway"],
1599
+ defaultTransport: "gateway"
1600
+ });
1601
+ const result = await runTtsStateMutation({
1602
+ capability: "tts.set-provider",
1603
+ provider: String(opts.provider),
1604
+ transport
1605
+ });
1606
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1607
+ });
1608
+ });
1609
+ tts.command("set-persona").description("Set the active TTS persona").option("--persona <id>", "TTS persona id").option("--off", "Disable the active TTS persona", false).option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1610
+ await runCommandWithRuntime(defaultRuntime, async () => {
1611
+ const transport = resolveTransport({
1612
+ local: Boolean(opts.local),
1613
+ gateway: Boolean(opts.gateway),
1614
+ supported: ["local", "gateway"],
1615
+ defaultTransport: "gateway"
1616
+ });
1617
+ if (!opts.off && !opts.persona) throw new Error("--persona is required unless --off is set");
1618
+ const result = await runTtsStateMutation({
1619
+ capability: "tts.set-persona",
1620
+ persona: opts.off ? null : String(opts.persona),
1621
+ transport
1622
+ });
1623
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1624
+ });
1625
+ });
1626
+ const video = capability.command("video").description("Video generation and description");
1627
+ video.command("generate").description("Generate video").requiredOption("--prompt <text>", "Prompt text").option("--model <provider/model>", "Model override").option("--size <size>", "Size hint like 1280x720").option("--aspect-ratio <ratio>", "Aspect ratio hint like 16:9").option("--resolution <value>", "Resolution hint: 480P, 720P, 768P, or 1080P").option("--duration <seconds>", "Target duration in seconds").option("--audio", "Enable generated audio when supported").option("--watermark", "Request provider watermark when supported").option("--timeout-ms <ms>", "Provider request timeout in milliseconds").option("--output <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1628
+ await runCommandWithRuntime(defaultRuntime, async () => {
1629
+ const result = await runVideoGenerate({
1630
+ prompt: String(opts.prompt),
1631
+ model: opts.model,
1632
+ output: opts.output,
1633
+ size: opts.size,
1634
+ aspectRatio: opts.aspectRatio,
1635
+ resolution: normalizeVideoResolution(opts.resolution),
1636
+ durationSeconds: parseOptionalFiniteNumber(opts.duration, "--duration"),
1637
+ audio: opts.audio === true ? true : void 0,
1638
+ watermark: opts.watermark === true ? true : void 0,
1639
+ timeoutMs: parseOptionalFiniteNumber(opts.timeoutMs, "--timeout-ms")
1640
+ });
1641
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1642
+ });
1643
+ });
1644
+ video.command("describe").description("Describe one video file").requiredOption("--file <path>", "Video file").option("--model <provider/model>", "Model override").option("--json", "Output JSON", false).action(async (opts) => {
1645
+ await runCommandWithRuntime(defaultRuntime, async () => {
1646
+ const result = await runVideoDescribe({
1647
+ file: String(opts.file),
1648
+ model: opts.model
1649
+ });
1650
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1651
+ });
1652
+ });
1653
+ video.command("providers").description("List video generation and description providers").option("--json", "Output JSON", false).action(async (opts) => {
1654
+ await runCommandWithRuntime(defaultRuntime, async () => {
1655
+ const cfg = getRuntimeConfig();
1656
+ const selectedGenerationProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.videoGenerationModel));
1657
+ const result = {
1658
+ generation: listRuntimeVideoGenerationProviders({ config: cfg }).map((provider) => ({
1659
+ available: true,
1660
+ configured: selectedGenerationProvider === provider.id || providerHasGenericConfig({
1661
+ cfg,
1662
+ providerId: provider.id
1663
+ }),
1664
+ selected: selectedGenerationProvider === provider.id,
1665
+ id: provider.id,
1666
+ label: provider.label,
1667
+ defaultModel: provider.defaultModel,
1668
+ models: provider.models ?? [],
1669
+ capabilities: provider.capabilities
1670
+ })),
1671
+ description: [...buildMediaUnderstandingRegistry(void 0, cfg).values()].filter((provider) => provider.capabilities?.includes("video")).map((provider) => ({
1672
+ available: true,
1673
+ configured: providerHasGenericConfig({
1674
+ cfg,
1675
+ providerId: provider.id
1676
+ }),
1677
+ selected: false,
1678
+ id: provider.id,
1679
+ capabilities: provider.capabilities,
1680
+ defaultModels: provider.defaultModels
1681
+ }))
1682
+ };
1683
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1684
+ });
1685
+ });
1686
+ const web = capability.command("web").description("Web capabilities");
1687
+ web.command("search").description("Run web search").requiredOption("--query <text>", "Search query").option("--provider <id>", "Provider id").option("--limit <n>", "Result limit").option("--json", "Output JSON", false).action(async (opts) => {
1688
+ await runCommandWithRuntime(defaultRuntime, async () => {
1689
+ const result = await runWebSearchCommand({
1690
+ query: String(opts.query),
1691
+ provider: opts.provider,
1692
+ limit: opts.limit ? Number.parseInt(String(opts.limit), 10) : void 0
1693
+ });
1694
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1695
+ });
1696
+ });
1697
+ web.command("fetch").description("Fetch one URL").requiredOption("--url <url>", "URL").option("--provider <id>", "Provider id").option("--format <format>", "Format hint").option("--json", "Output JSON", false).action(async (opts) => {
1698
+ await runCommandWithRuntime(defaultRuntime, async () => {
1699
+ const result = await runWebFetchCommand({
1700
+ url: String(opts.url),
1701
+ provider: opts.provider,
1702
+ format: opts.format
1703
+ });
1704
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1705
+ });
1706
+ });
1707
+ web.command("providers").description("List web providers").option("--json", "Output JSON", false).action(async (opts) => {
1708
+ await runCommandWithRuntime(defaultRuntime, async () => {
1709
+ const cfg = getRuntimeConfig();
1710
+ const selectedSearchProvider = typeof cfg.tools?.web?.search?.provider === "string" ? normalizeLowercaseStringOrEmpty(cfg.tools.web.search.provider) : "";
1711
+ const selectedFetchProvider = typeof cfg.tools?.web?.fetch?.provider === "string" ? normalizeLowercaseStringOrEmpty(cfg.tools.web.fetch.provider) : "";
1712
+ const result = {
1713
+ search: listWebSearchProviders({ config: cfg }).map((provider) => ({
1714
+ available: true,
1715
+ configured: isWebSearchProviderConfigured({
1716
+ provider,
1717
+ config: cfg
1718
+ }),
1719
+ selected: provider.id === selectedSearchProvider,
1720
+ id: provider.id,
1721
+ envVars: provider.envVars
1722
+ })),
1723
+ fetch: listWebFetchProviders({ config: cfg }).map((provider) => ({
1724
+ available: true,
1725
+ configured: isWebFetchProviderConfigured({
1726
+ provider,
1727
+ config: cfg
1728
+ }),
1729
+ selected: provider.id === selectedFetchProvider,
1730
+ id: provider.id,
1731
+ envVars: provider.envVars
1732
+ }))
1733
+ };
1734
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1735
+ });
1736
+ });
1737
+ const embedding = capability.command("embedding").description("Embedding providers");
1738
+ embedding.command("create").description("Create embeddings").requiredOption("--text <text>", "Input text", collectOption, []).option("--provider <id>", "Provider id").option("--model <provider/model>", "Model override").option("--json", "Output JSON", false).action(async (opts) => {
1739
+ await runCommandWithRuntime(defaultRuntime, async () => {
1740
+ const result = await runMemoryEmbeddingCreate({
1741
+ texts: opts.text,
1742
+ provider: opts.provider,
1743
+ model: opts.model
1744
+ });
1745
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1746
+ });
1747
+ });
1748
+ embedding.command("providers").description("List embedding providers").option("--json", "Output JSON", false).action(async (opts) => {
1749
+ await runCommandWithRuntime(defaultRuntime, async () => {
1750
+ ensureMemoryEmbeddingProvidersRegistered();
1751
+ const cfg = getRuntimeConfig();
1752
+ const agentId = resolveDefaultAgentId(cfg);
1753
+ const resolvedMemory = resolveMemorySearchConfig(cfg, agentId);
1754
+ const selectedProvider = resolvedMemory?.provider && resolvedMemory.provider !== "auto" ? resolvedMemory.provider : void 0;
1755
+ const autoSelectedProvider = resolvedMemory?.provider === "auto" ? (await createEmbeddingProvider({
1756
+ config: cfg,
1757
+ agentDir: resolveAgentDir(cfg, agentId),
1758
+ provider: "auto",
1759
+ fallback: "none",
1760
+ model: resolvedMemory.model,
1761
+ local: resolvedMemory.local,
1762
+ remote: resolvedMemory.remote,
1763
+ outputDimensionality: resolvedMemory.outputDimensionality
1764
+ }).catch(() => ({ provider: null })))?.provider?.id : void 0;
1765
+ const result = listMemoryEmbeddingProviders().map((provider) => ({
1766
+ available: true,
1767
+ configured: provider.id === selectedProvider || provider.id === autoSelectedProvider || providerHasGenericConfig({
1768
+ cfg,
1769
+ providerId: provider.id
1770
+ }),
1771
+ selected: provider.id === selectedProvider || provider.id === autoSelectedProvider,
1772
+ id: provider.id,
1773
+ defaultModel: provider.defaultModel,
1774
+ transport: provider.transport,
1775
+ autoSelectPriority: provider.autoSelectPriority
1776
+ }));
1777
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1778
+ });
1779
+ });
1780
+ }
1781
+ //#endregion
1782
+ export { registerCapabilityCli };