@pixelzx/genesis 2026.5.3-5 → 2026.5.5

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 (996) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/.buildstamp +1 -1
  3. package/dist/abort-t5XiT6Yl.js +201 -0
  4. package/dist/abort.runtime-C_xk0DkL.js +2 -0
  5. package/dist/abort.runtime.js +1 -1
  6. package/dist/accounts-B7yDKwxi.js +104 -0
  7. package/dist/accounts-CS7VL356.js +107 -0
  8. package/dist/accounts-XvHcAtMf.js +2 -0
  9. package/dist/acp-cli-B5H0nvID.js +2193 -0
  10. package/dist/acp-spawn-BRTMqPlq.js +2 -0
  11. package/dist/acp-spawn-Dsw3dzWY.js +1093 -0
  12. package/dist/acp-stateful-target-driver-BYhkJnyh.js +89 -0
  13. package/dist/action-agents-Ca9kTFvv.js +67 -0
  14. package/dist/action-focus-D4pT0hra.js +132 -0
  15. package/dist/action-help-DMzMxFEQ.js +7 -0
  16. package/dist/action-info-Dzn_fn6G.js +101 -0
  17. package/dist/action-kill-2AQuhnLy.js +33 -0
  18. package/dist/action-list-DI1M2pKU.js +21 -0
  19. package/dist/action-log-BVKGgOki.js +30 -0
  20. package/dist/action-send-CZ2wciMW.js +39 -0
  21. package/dist/action-spawn-BdclQLrK.js +47 -0
  22. package/dist/action-unfocus-DfQuRf8d.js +29 -0
  23. package/dist/actions.runtime-B2-oz_B6.js +5 -0
  24. package/dist/actions.runtime-BoUxrcw3.js +18 -0
  25. package/dist/actions.runtime.js +1 -1
  26. package/dist/agent-CnQ3yCIw.js +2 -0
  27. package/dist/agent-command-C4H_9c2N.js +874 -0
  28. package/dist/agent-harness-runtime-D2oXzgyL.js +144 -0
  29. package/dist/agent-runner-utils-CWgPcOYn.js +239 -0
  30. package/dist/agent-runner.runtime-DvK-HQhq.js +3455 -0
  31. package/dist/agent-runner.runtime.js +1 -1
  32. package/dist/agent-runtime-BDslXtCf.js +18 -0
  33. package/dist/agents-4T7YaeKy.js +953 -0
  34. package/dist/agents-C_Gty_RK.js +5 -0
  35. package/dist/aliases-BkVpehd-.js +96 -0
  36. package/dist/aliases-DWkJWJ5A.js +2 -0
  37. package/dist/api-CgW6fcU2.js +3 -0
  38. package/dist/api-DYPaGKUj.js +5 -0
  39. package/dist/api-DdoV90Cn.js +139 -0
  40. package/dist/approval-gateway-resolver-Ba_2kb3B.js +29 -0
  41. package/dist/approval-gateway-runtime-7VMivk0A.js +2 -0
  42. package/dist/approval-handler-runtime-DUDpOwG7.js +439 -0
  43. package/dist/approval-native-runtime-KkmX9gwQ.js +729 -0
  44. package/dist/attempt-execution.runtime-CQkeVpDx.js +509 -0
  45. package/dist/attempt-execution.runtime.js +1 -1
  46. package/dist/attempt.prompt-helpers-MoT6VaD0.js +221 -0
  47. package/dist/attempt.tool-run-context-B53GhX-d.js +933 -0
  48. package/dist/audit-CvHcVVb-.js +939 -0
  49. package/dist/audit.runtime-C7n442Rc.js +7 -0
  50. package/dist/audit.runtime.js +1 -1
  51. package/dist/auth-CAnSldtM.js +2 -0
  52. package/dist/auth-Czf_o5iE.js +383 -0
  53. package/dist/auth-order-Cu9Vj7lA.js +96 -0
  54. package/dist/auth-order-q1IFw7L3.js +2 -0
  55. package/dist/bash-tools-BS4TrA4X.js +2824 -0
  56. package/dist/bash-tools-DbHYuk8O.js +3 -0
  57. package/dist/binding-routing-CnNQE65Q.js +85 -0
  58. package/dist/binding-targets-DW0ScIRI.js +121 -0
  59. package/dist/bridge-server-BGS08n2f.js +113 -0
  60. package/dist/browser-control-auth-DMlQOsyN.js +2 -0
  61. package/dist/browser-node-runtime-CF32scUO.js +12 -0
  62. package/dist/browser-profiles-CmER65eh.js +2 -0
  63. package/dist/browser-runtime-D73M9fg3.js +387 -0
  64. package/dist/browser-setup-tools-Cr0UI1rf.js +13 -0
  65. package/dist/build-BL7WirDF.js +550 -0
  66. package/dist/build-info.json +3 -3
  67. package/dist/bundled/boot-md/handler.js +2 -2
  68. package/dist/bundled/session-memory/handler.js +1 -1
  69. package/dist/call-Ckws4Nlw.js +3 -0
  70. package/dist/call-DkGNVvLy.js +331 -0
  71. package/dist/call.runtime-DfLBtAIr.js +2 -0
  72. package/dist/call.runtime.js +1 -1
  73. package/dist/capability-cli-tSqSJf2o.js +1401 -0
  74. package/dist/catchup-Dp2L1RcY.js +300 -0
  75. package/dist/channel-BIFp1GJd.js +1320 -0
  76. package/dist/channel-BZMzoXhw.js +840 -0
  77. package/dist/channel-BtPZ0i4g.js +297 -0
  78. package/dist/channel-DDd7xwLG.js +226 -0
  79. package/dist/channel-DLezQPqR.js +350 -0
  80. package/dist/channel-DcYHXn_7.js +1100 -0
  81. package/dist/channel-DzKtLfJj.js +1802 -0
  82. package/dist/channel-LlY18tI5.js +595 -0
  83. package/dist/channel-NjZviHcJ.js +1174 -0
  84. package/dist/channel-core-Cg1mFpva.js +5 -0
  85. package/dist/channel-inbound-CZpi-vp5.js +31 -0
  86. package/dist/channel-pDXIWFS4.js +453 -0
  87. package/dist/channel-plugin-runtime-DHl81Ror.js +771 -0
  88. package/dist/channel-runtime-CtYrrwow.js +425 -0
  89. package/dist/channel-wMkGGyIY.js +491 -0
  90. package/dist/channel.runtime-B1n0hvUI.js +430 -0
  91. package/dist/channel.runtime-B9iR26l_.js +576 -0
  92. package/dist/channel.runtime-C8eBQk67.js +4 -0
  93. package/dist/channel.runtime-Db8g8JCg.js +89 -0
  94. package/dist/channel.runtime-DfRfisV2.js +34702 -0
  95. package/dist/channel.runtime-gPdBMu3V.js +109 -0
  96. package/dist/channel.runtime-rG9pJ5NO.js +2364 -0
  97. package/dist/channel.runtime.js +1 -1
  98. package/dist/channel.setup-CWblUOhD.js +10 -0
  99. package/dist/channels-B4dYRKsI.js +733 -0
  100. package/dist/channels-cli-GMAOUYU3.js +268 -0
  101. package/dist/chat-D2XaZNiP.js +2758 -0
  102. package/dist/clawbot-cli-CSmdcIMT.js +9 -0
  103. package/dist/cli/daemon-cli.js +3 -3
  104. package/dist/cli-2u5IZTMS.js +219 -0
  105. package/dist/cli-Bk8uXnyc.js +72 -0
  106. package/dist/cli-DBfw9jCz.js +2 -0
  107. package/dist/cli-runner-BEqvX1ky.js +286 -0
  108. package/dist/cli-runner.runtime-BIUcUGDa.js +4 -0
  109. package/dist/cli-runner.runtime-D2u3Yw0W.js +3 -0
  110. package/dist/cli-runner.runtime.js +1 -1
  111. package/dist/cli-startup-metadata.json +2 -2
  112. package/dist/cli-waH8839u.js +2 -0
  113. package/dist/cli.runtime-mKvJpLwI.js +1261 -0
  114. package/dist/cli.runtime.js +1 -1
  115. package/dist/client-CKizOsGp.js +138 -0
  116. package/dist/client-CrPccv7a.js +713 -0
  117. package/dist/command-auth-DPkjKHdv.js +76 -0
  118. package/dist/command-config-resolution-BTjtnAp2.js +2 -0
  119. package/dist/command-config-resolution-Be3KZA_l.js +23 -0
  120. package/dist/command-config-resolution.runtime-DXgL8cm7.js +2 -0
  121. package/dist/command-config-resolution.runtime.js +1 -1
  122. package/dist/command-registry-BL1Z4Cen.js +4 -0
  123. package/dist/command-registry-BMePAw9w.js +9 -0
  124. package/dist/command-registry-core-CAay55-n.js +104 -0
  125. package/dist/command-secret-gateway-jj1Qmk9L.js +528 -0
  126. package/dist/command-status.runtime-BVcCm9_0.js +87 -0
  127. package/dist/command-status.runtime.js +1 -1
  128. package/dist/commands-acp-COdUW69f.js +77 -0
  129. package/dist/commands-compact.runtime-C0Fedews.js +10 -0
  130. package/dist/commands-compact.runtime.js +1 -1
  131. package/dist/commands-handlers.runtime-BXVM3PWG.js +4597 -0
  132. package/dist/commands-handlers.runtime.js +1 -1
  133. package/dist/commands-status-DaApOLoQ.js +16 -0
  134. package/dist/commands-status.runtime-CxSjrKne.js +3 -0
  135. package/dist/commands-status.runtime.js +1 -1
  136. package/dist/commands-subagents-control.runtime-BEfW44br.js +2 -0
  137. package/dist/commands-subagents-control.runtime-DB3AROHI.js +3 -0
  138. package/dist/commands-subagents-control.runtime.js +1 -1
  139. package/dist/commands-system-prompt-CCrUy7xq.js +158 -0
  140. package/dist/commands-system-prompt-CN56TtaC.js +2 -0
  141. package/dist/commands.runtime-Bee6dM3V.js +166 -0
  142. package/dist/commands.runtime.js +1 -1
  143. package/dist/compact-7YtEe1kG.js +1118 -0
  144. package/dist/compact.runtime-4gW_cs7D.js +12 -0
  145. package/dist/compact.runtime.js +1 -1
  146. package/dist/completion-cli-COv-r8_h.js +313 -0
  147. package/dist/config-DSsLlg8J.js +251 -0
  148. package/dist/config-cli-C9oGe9gl.js +1078 -0
  149. package/dist/configure-Bfy9tVmS.js +2 -0
  150. package/dist/configure-DpIFRaAD.js +1245 -0
  151. package/dist/connect-options-CPixzqP_.js +699 -0
  152. package/dist/control-auth-L7U2ivRJ.js +125 -0
  153. package/dist/control-service-CbUz8qU5.js +156 -0
  154. package/dist/conversation-id-BroDIGeT.js +38 -0
  155. package/dist/conversation-id-CuVi0tWe.js +235 -0
  156. package/dist/conversation-runtime-weaahZQN.js +31 -0
  157. package/dist/core-PXv1nsc-.js +275 -0
  158. package/dist/cron-cli-DZNSQBuA.js +713 -0
  159. package/dist/daemon-cli-C_9CNoZA.js +12 -0
  160. package/dist/delegate-B8wh-jjf.js +64 -0
  161. package/dist/detached-task-runtime-BTq-jIGw.js +73 -0
  162. package/dist/devices-cli-C_amY-AS.js +496 -0
  163. package/dist/diagnostics-Bw-fd0ug.js +154 -0
  164. package/dist/direct-dm-Dvqjch3O.js +64 -0
  165. package/dist/dispatch-DHPQS49Q.js +1131 -0
  166. package/dist/dispatch-acp-manager.runtime-y-oykPUz.js +3 -0
  167. package/dist/dispatch-acp-manager.runtime.js +1 -1
  168. package/dist/dispatch-acp-taSuJD5W.js +981 -0
  169. package/dist/dispatch-acp.runtime-DgyaFFNX.js +19 -0
  170. package/dist/dispatch-acp.runtime.js +1 -1
  171. package/dist/doctor-device-pairing-rxwogzYF.js +307 -0
  172. package/dist/doctor-gateway-daemon-flow-Dm4wxnTt.js +250 -0
  173. package/dist/doctor-gateway-health-wJVW5xUW.js +60 -0
  174. package/dist/doctor-health-DaodspKU.js +59 -0
  175. package/dist/doctor-health-contributions-CBVyN6ju.js +486 -0
  176. package/dist/doctor-prompter-vO6LPeXZ.js +56 -0
  177. package/dist/doctor-workspace-status-BnXA04-6.js +75 -0
  178. package/dist/dreaming-1RLie1iF.js +1574 -0
  179. package/dist/dreaming-narrative-BRtTdpbt.js +595 -0
  180. package/dist/embedded-gateway-stub.runtime-GMix51Tf.js +9 -0
  181. package/dist/embedded-gateway-stub.runtime.js +1 -1
  182. package/dist/entry.js +2 -2
  183. package/dist/exec-approvals-cli-R6jgupQH.js +498 -0
  184. package/dist/extensionAPI.js +1 -1
  185. package/dist/extensions/active-memory/index.js +1 -1
  186. package/dist/extensions/bluebubbles/api.js +3 -3
  187. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  188. package/dist/extensions/browser/browser-bridge.js +1 -1
  189. package/dist/extensions/browser/browser-config.js +4 -4
  190. package/dist/extensions/browser/browser-control-auth.js +2 -2
  191. package/dist/extensions/browser/browser-doctor.js +2 -2
  192. package/dist/extensions/browser/browser-maintenance.js +2 -2
  193. package/dist/extensions/browser/browser-profiles.js +2 -2
  194. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  195. package/dist/extensions/browser/index.js +1 -1
  196. package/dist/extensions/browser/plugin-registration.js +1 -1
  197. package/dist/extensions/browser/register.runtime.js +3 -3
  198. package/dist/extensions/browser/runtime-api.js +11 -11
  199. package/dist/extensions/browser/test-support.js +1 -1
  200. package/dist/extensions/device-pair/api.js +1 -1
  201. package/dist/extensions/device-pair/index.js +3 -3
  202. package/dist/extensions/device-pair/notify.js +1 -1
  203. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  204. package/dist/extensions/google-meet/index.js +2 -2
  205. package/dist/extensions/imessage/api.js +3 -3
  206. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  207. package/dist/extensions/imessage/runtime-api.js +3 -3
  208. package/dist/extensions/irc/api.js +2 -2
  209. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  210. package/dist/extensions/line/api.js +2 -2
  211. package/dist/extensions/line/channel-plugin-api.js +1 -1
  212. package/dist/extensions/line/contract-api.js +1 -1
  213. package/dist/extensions/line/runtime-api.js +4 -4
  214. package/dist/extensions/line/setup-api.js +1 -1
  215. package/dist/extensions/llm-task/index.js +2 -2
  216. package/dist/extensions/lobster/index.js +3 -3
  217. package/dist/extensions/lobster/runtime-api.js +1 -1
  218. package/dist/extensions/mattermost/api.js +1 -1
  219. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  220. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  221. package/dist/extensions/mattermost/policy-api.js +1 -1
  222. package/dist/extensions/mattermost/runtime-api.js +4 -4
  223. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  224. package/dist/extensions/memory-core/api.js +1 -1
  225. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  226. package/dist/extensions/memory-core/index.js +3 -3
  227. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  228. package/dist/extensions/msteams/api.js +1 -1
  229. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  230. package/dist/extensions/msteams/runtime-api.js +3 -3
  231. package/dist/extensions/msteams/test-api.js +1 -1
  232. package/dist/extensions/nextcloud-talk/api.js +1 -1
  233. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  234. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  235. package/dist/extensions/openshell/index.js +2 -2
  236. package/dist/extensions/signal/api.js +6 -6
  237. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  238. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  239. package/dist/extensions/signal/runtime-api.js +7 -7
  240. package/dist/extensions/skill-workshop/api.js +1 -1
  241. package/dist/extensions/skill-workshop/index.js +1 -1
  242. package/dist/extensions/synology-chat/api.js +1 -1
  243. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  244. package/dist/extensions/tlon/api.js +2 -2
  245. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  246. package/dist/extensions/tlon/runtime-api.js +1 -1
  247. package/dist/extensions/tlon/test-api.js +1 -1
  248. package/dist/extensions/twitch/api.js +1 -1
  249. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  250. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  251. package/dist/extensions/zalo/api.js +3 -3
  252. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  253. package/dist/extensions/zalo/runtime-api.js +2 -2
  254. package/dist/extensions/zalo/setup-api.js +2 -2
  255. package/dist/extensions/zalouser/api.js +3 -3
  256. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  257. package/dist/extensions/zalouser/runtime-api.js +6 -6
  258. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  259. package/dist/extensions/zalouser/test-api.js +1 -1
  260. package/dist/fallbacks-Cckv3nng.js +2 -0
  261. package/dist/fallbacks-Y_nNY8_a.js +31 -0
  262. package/dist/fallbacks-shared-DZiG1Gr_.js +111 -0
  263. package/dist/gateway-CDfn0J87.js +115 -0
  264. package/dist/gateway-cli-D197U6l0.js +1325 -0
  265. package/dist/gateway-rpc-Bomz8HKq.js +14 -0
  266. package/dist/gateway-rpc.runtime-597tksmo.js +23 -0
  267. package/dist/gateway-rpc.runtime.js +1 -1
  268. package/dist/gateway-runtime-Bm2_MhFn.js +15 -0
  269. package/dist/gateway-status-Cr4UJKUx.js +584 -0
  270. package/dist/genesis-tools-DCRaVVjY.js +8999 -0
  271. package/dist/genesis-tools.runtime-idgd5fjy.js +2 -0
  272. package/dist/genesis-tools.runtime.js +1 -1
  273. package/dist/get-reply-BF_7bR5f.js +3879 -0
  274. package/dist/get-reply-from-config.runtime-DEq5XM_s.js +2 -0
  275. package/dist/get-reply-from-config.runtime.js +1 -1
  276. package/dist/graph-users-Bhlw-_4i.js +1337 -0
  277. package/dist/health-9ifMvGZN.js +3 -0
  278. package/dist/health-CzOJa6SX.js +469 -0
  279. package/dist/heartbeat-runner-B2Tkbj5e.js +5 -0
  280. package/dist/heartbeat-runner-B63G8dbO.js +1292 -0
  281. package/dist/heartbeat-runner.runtime-QJ_2AMjN.js +4 -0
  282. package/dist/heartbeat-runner.runtime.js +1 -1
  283. package/dist/hooks-cli-ZWI1iJnh.js +433 -0
  284. package/dist/image-fallbacks-BpTfBvbi.js +2 -0
  285. package/dist/image-fallbacks-DpVwnB41.js +31 -0
  286. package/dist/inbound-reply-dispatch-mKybIcNA.js +73 -0
  287. package/dist/index.js +2 -2
  288. package/dist/infra-runtime-CvwvzUfM.js +39 -0
  289. package/dist/init-CWeM0DfJ.js +59 -0
  290. package/dist/library-ClQalZ3x.js +45 -0
  291. package/dist/lifecycle-CgV7Cgt-.js +571 -0
  292. package/dist/lifecycle-DVWaxj-A.js +229 -0
  293. package/dist/lifecycle.runtime-DErLwVJ_.js +2 -0
  294. package/dist/lifecycle.runtime.js +1 -1
  295. package/dist/list-5RIS3LMG.js +2 -0
  296. package/dist/list-BNesYDN2.js +2 -0
  297. package/dist/list-Dk1hCKis.js +1201 -0
  298. package/dist/list-eUjt_6__.js +131 -0
  299. package/dist/list.probe-C51ceJSY.js +419 -0
  300. package/dist/llm-slug-generator-D64IMUoy.js +79 -0
  301. package/dist/llm-slug-generator.js +1 -1
  302. package/dist/load-config-Ccss2uTi.js +35 -0
  303. package/dist/local-dispatch.runtime-u7Ir1N07.js +8 -0
  304. package/dist/local-dispatch.runtime.js +1 -1
  305. package/dist/logs-cli-BYHTboPa.js +265 -0
  306. package/dist/logs-cli.runtime-CQwNptr-.js +2 -0
  307. package/dist/logs-cli.runtime.js +1 -1
  308. package/dist/main-session-restart-recovery-CA9bvC1W.js +206 -0
  309. package/dist/managed-image-attachments-B_gpkI1u.js +635 -0
  310. package/dist/managed-image-attachments-C0Y6nAP2.js +2 -0
  311. package/dist/manager-DZGFArgz.js +2 -0
  312. package/dist/manager-Df8TC4rX.js +2057 -0
  313. package/dist/markdown-to-line-xXLdnzcE.js +790 -0
  314. package/dist/mcp/plugin-tools-serve.js +1 -1
  315. package/dist/mcp-cli-B50W9Pkc.js +725 -0
  316. package/dist/mcp-http-BiUGVpJ4.js +529 -0
  317. package/dist/memory-core-host-runtime-cli-UgLo6ezC.js +9 -0
  318. package/dist/message-C95gttLd.js +232 -0
  319. package/dist/message-action-runner-0KAp6ccG.js +1407 -0
  320. package/dist/message-action-runner-BSUDvECO.js +2 -0
  321. package/dist/message-actions-Be4Ob151.js +143 -0
  322. package/dist/message.gateway.runtime-DMMRMIln.js +2 -0
  323. package/dist/message.gateway.runtime.js +1 -1
  324. package/dist/models-auth-status-DhYxBz7G.js +201 -0
  325. package/dist/models-cli-C2prinXb.js +219 -0
  326. package/dist/monitor-BEI21vNQ.js +1661 -0
  327. package/dist/monitor-BUgTAJvZ.js +1237 -0
  328. package/dist/monitor-BdJRIhi1.js +2 -0
  329. package/dist/monitor-C7wuttQJ.js +1459 -0
  330. package/dist/monitor-DMumiWnt.js +788 -0
  331. package/dist/monitor-IQo2ExmV.js +671 -0
  332. package/dist/monitor-auth-DW0lvfm3.js +207 -0
  333. package/dist/monitor-processing-DTrsRdyz.js +1974 -0
  334. package/dist/monitor.runtime-DwqyCQcb.js +2 -0
  335. package/dist/monitor.runtime.js +1 -1
  336. package/dist/monitor.webhook-D11nrUh9.js +180 -0
  337. package/dist/msteams-DO-PW98M.js +35 -0
  338. package/dist/native-hook-relay-CNZrcPIw.js +519 -0
  339. package/dist/nextcloud-talk-BeYFnATY.js +17 -0
  340. package/dist/node-cli-BFrdTPdH.js +2506 -0
  341. package/dist/nodes-cli-B3Wj_MvP.js +1046 -0
  342. package/dist/nodes-utils-AsgrCa7K.js +84 -0
  343. package/dist/nodes.helpers-CMXxavTs.js +34 -0
  344. package/dist/notify-CNS0kRWM.js +315 -0
  345. package/dist/onboard-D4ehf66t.js +632 -0
  346. package/dist/onboard-helpers-DWxdMyCs.js +6 -0
  347. package/dist/onboard-helpers-o78s0lR1.js +204 -0
  348. package/dist/onboard-remote-Cc1XlRzr.js +193 -0
  349. package/dist/onboard-remote-D8THwo3P.js +2 -0
  350. package/dist/onboard-skills-B2VoCq7v.js +134 -0
  351. package/dist/onboard-skills-DtOgSJZo.js +2 -0
  352. package/dist/openai-http-DKQZWsqY.js +500 -0
  353. package/dist/openresponses-http-C4kol41X.js +1128 -0
  354. package/dist/operator-approvals-client-BoN_VmkB.js +68 -0
  355. package/dist/outbound.runtime-D-L8FN8E.js +2 -0
  356. package/dist/outbound.runtime.js +1 -1
  357. package/dist/pair-command-approve-DMeQ6uD4.js +44 -0
  358. package/dist/persistent-bindings.lifecycle-O-RnoTW4.js +2 -0
  359. package/dist/persistent-bindings.lifecycle-bptWQEFT.js +85 -0
  360. package/dist/pi-embedded-BM79sXqb.js +2905 -0
  361. package/dist/pi-embedded-BUDWcDt8.js +4 -0
  362. package/dist/pi-embedded.runtime-D53bCPOr.js +4 -0
  363. package/dist/pi-embedded.runtime.js +1 -1
  364. package/dist/pi-tool-definition-adapter-DdYQtumi.js +217 -0
  365. package/dist/pi-tools-ihbjTP0K.js +1057 -0
  366. package/dist/pi-tools.before-tool-call-DrEqr96j.js +433 -0
  367. package/dist/pi-tools.before-tool-call-VB9YEPOv.js +2 -0
  368. package/dist/plugin-DwNULpmw.js +12195 -0
  369. package/dist/plugin-enabled-DbO9GyRJ.js +140 -0
  370. package/dist/plugin-registration-Du6hgUkp.js +23 -0
  371. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  372. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  373. package/dist/plugin-sdk/acp-runtime.js +2 -2
  374. package/dist/plugin-sdk/agent-harness-runtime.js +5 -5
  375. package/dist/plugin-sdk/agent-harness.js +6 -6
  376. package/dist/plugin-sdk/agent-runtime.js +2 -2
  377. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  378. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  379. package/dist/plugin-sdk/approval-runtime.js +1 -1
  380. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  381. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  382. package/dist/plugin-sdk/browser-support.js +7 -7
  383. package/dist/plugin-sdk/channel-core.js +2 -2
  384. package/dist/plugin-sdk/channel-inbound.js +2 -2
  385. package/dist/plugin-sdk/command-auth.js +1 -1
  386. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  387. package/dist/plugin-sdk/compat.js +1 -1
  388. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  389. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  390. package/dist/plugin-sdk/core.js +2 -2
  391. package/dist/plugin-sdk/direct-dm.js +1 -1
  392. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  393. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  394. package/dist/plugin-sdk/index.js +1 -1
  395. package/dist/plugin-sdk/infra-runtime.js +2 -2
  396. package/dist/plugin-sdk/irc.js +2 -2
  397. package/dist/plugin-sdk/matrix.js +1 -1
  398. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  399. package/dist/plugin-sdk/memory-core.js +2 -2
  400. package/dist/plugin-sdk/msteams.js +2 -2
  401. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  402. package/dist/plugin-sdk/nostr.js +1 -1
  403. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  404. package/dist/plugin-sdk/reply-runtime.js +4 -4
  405. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  406. package/dist/plugin-sdk/runtime.js +2 -2
  407. package/dist/plugin-sdk/session-visibility.js +1 -1
  408. package/dist/plugin-sdk/testing.js +4 -4
  409. package/dist/plugin-sdk/tlon.js +1 -1
  410. package/dist/plugin-sdk/zalo.js +1 -1
  411. package/dist/plugin-sdk/zalouser.js +1 -1
  412. package/dist/plugin-service-DcSnRF5x.js +2890 -0
  413. package/dist/plugins/runtime/index.js +1 -1
  414. package/dist/policy-uc224usV.js +328 -0
  415. package/dist/postinstall-inventory.json +407 -407
  416. package/dist/prepare.runtime-BPA6jMiM.js +815 -0
  417. package/dist/prepare.runtime.js +1 -1
  418. package/dist/probe-5ToseFjd.js +1443 -0
  419. package/dist/probe-BdCXAH_u.js +2 -0
  420. package/dist/probe-ByVoZEdq.js +45 -0
  421. package/dist/probe-D-D_1oc4.js +241 -0
  422. package/dist/probe-D6s_1Z5k.js +2 -0
  423. package/dist/probe-DIMAmSsO.js +74 -0
  424. package/dist/probe-DYuL-s4A.js +2205 -0
  425. package/dist/program-DDTWTh6g.js +111 -0
  426. package/dist/prompt-select-styled-kf1dPqNa.js +20 -0
  427. package/dist/protocol-Batc2DmY.js +2234 -0
  428. package/dist/provider-dispatcher-DdUqCa6H.js +2 -0
  429. package/dist/provider-dispatcher-uioW38XW.js +22 -0
  430. package/dist/qr-cli-B1WUe8Eb.js +2 -0
  431. package/dist/qr-cli-DmPti3xe.js +349 -0
  432. package/dist/reaction-runtime-api-5G3e9J0C.js +116 -0
  433. package/dist/reactions-x7VH-B95.js +998 -0
  434. package/dist/register-service-commands-DcW5qPTu.js +71 -0
  435. package/dist/register.agent-Dtj4HC7R.js +248 -0
  436. package/dist/register.configure-CJHb84Ce.js +15 -0
  437. package/dist/register.maintenance-BUkPfMcX.js +438 -0
  438. package/dist/register.message-DGFpyYBl.js +329 -0
  439. package/dist/register.onboard-D3v3xIfF.js +81 -0
  440. package/dist/register.runtime-DI4QxYdj.js +81 -0
  441. package/dist/register.runtime.js +1 -1
  442. package/dist/register.setup-CXTyuIFM.js +150 -0
  443. package/dist/register.status-health-sessions-CYUnRi97.js +1215 -0
  444. package/dist/register.subclis-DKMVrwRc.js +3 -0
  445. package/dist/register.subclis-NWRi2XKp.js +29 -0
  446. package/dist/register.subclis-core-De6qmQkr.js +243 -0
  447. package/dist/reply-dispatch-runtime-B8_j6pJi.js +13 -0
  448. package/dist/reply-runtime-DGHQDC9d.js +11 -0
  449. package/dist/reply.runtime-BCfqw2Co.js +2 -0
  450. package/dist/reply.runtime.js +1 -1
  451. package/dist/restart-health-6cjrRBpF.js +202 -0
  452. package/dist/restart-health-b6Qw43Tj.js +2 -0
  453. package/dist/root-help-BTIH_eUe.js +44 -0
  454. package/dist/routes-C3J2GfHR.js +3341 -0
  455. package/dist/routes-SMmfW6k8.js +2 -0
  456. package/dist/rpc-DQbAcIKu.js +61 -0
  457. package/dist/rpc.runtime-Q3qyofLf.js +21 -0
  458. package/dist/rpc.runtime.js +1 -1
  459. package/dist/run-delivery.runtime-BsLouK3f.js +530 -0
  460. package/dist/run-delivery.runtime.js +1 -1
  461. package/dist/run-embedded.runtime-CXd0oZQP.js +4 -0
  462. package/dist/run-embedded.runtime.js +1 -1
  463. package/dist/run-execution-cli.runtime-D-MKbq8r.js +4 -0
  464. package/dist/run-execution-cli.runtime.js +1 -1
  465. package/dist/run-executor.runtime-Cz0I8mDt.js +277 -0
  466. package/dist/run-executor.runtime.js +1 -1
  467. package/dist/run-main-CkXBTQut.js +516 -0
  468. package/dist/run-subagent-registry.runtime-Cyb8amrH.js +2 -0
  469. package/dist/run-subagent-registry.runtime.js +1 -1
  470. package/dist/run-wait-KlS0pdIK.js +135 -0
  471. package/dist/runtime-3niXLiFY.js +9 -0
  472. package/dist/runtime-api-B79e2jL2.js +4 -0
  473. package/dist/runtime-api-CM2c2bSC.js +9 -0
  474. package/dist/runtime-api-CnOFFN5q.js +14 -0
  475. package/dist/runtime-api-TnwM-EZH.js +9 -0
  476. package/dist/runtime-embedded-pi.runtime-9csGjukF.js +2 -0
  477. package/dist/runtime-embedded-pi.runtime.js +1 -1
  478. package/dist/runtime-internal-CQX4Zehn.js +2 -0
  479. package/dist/runtime-options-C0qP2VlT.js +275 -0
  480. package/dist/runtime-schema-DanWbDoL.js +27780 -0
  481. package/dist/runtime-vycfMfew.js +973 -0
  482. package/dist/scan-Bs5zROOQ.js +2 -0
  483. package/dist/scan-CP2zJb_w.js +523 -0
  484. package/dist/secrets-cli-YFTlIMmq.js +2101 -0
  485. package/dist/security-cli-B2WBRU9C.js +486 -0
  486. package/dist/selection-DSZGsU6m.js +2 -0
  487. package/dist/selection-hUGDnCgX.js +7736 -0
  488. package/dist/send-B3Ygb3r3.js +156 -0
  489. package/dist/send-DMwqnu6K.js +102 -0
  490. package/dist/send.runtime-D86atcfW.js +2 -0
  491. package/dist/send.runtime.js +1 -1
  492. package/dist/server-4gQCBM3M.js +77 -0
  493. package/dist/server-CK9eCPCG.js +13 -0
  494. package/dist/server-context-ih3GaGaI.js +847 -0
  495. package/dist/server-context-kZ_QADic.js +2 -0
  496. package/dist/server-node-events-CMlHOIKa.js +481 -0
  497. package/dist/server-plugin-bootstrap-B0XitldT.js +11333 -0
  498. package/dist/server-plugin-bootstrap-CHlVF8XB.js +2 -0
  499. package/dist/server-restart-sentinel-TpXCoiYX.js +697 -0
  500. package/dist/server.impl-B6at3Orl.js +12734 -0
  501. package/dist/session-kill-http-DvYp5h-j.js +110 -0
  502. package/dist/session-reset-service-C9rIVqF7.js +471 -0
  503. package/dist/session-route-FaMcEc7I.js +93 -0
  504. package/dist/session-status.runtime-BfPn8qA8.js +2 -0
  505. package/dist/session-status.runtime.js +1 -1
  506. package/dist/session-subagent-reactivation.runtime-C1fGNaiM.js +2 -0
  507. package/dist/session-subagent-reactivation.runtime.js +1 -1
  508. package/dist/session-tab-registry-BDK2AlxL.js +491 -0
  509. package/dist/session-visibility-BkrL2kFF.js +147 -0
  510. package/dist/sessions-helpers-YOu_5tl0.js +304 -0
  511. package/dist/sessions-history-http-DxNaoDfb.js +383 -0
  512. package/dist/sessions-patch-BPtlF0Lu.js +309 -0
  513. package/dist/sessions-resolve-B2rpvSka.js +174 -0
  514. package/dist/sessions.runtime-DEk_x65_.js +2 -0
  515. package/dist/sessions.runtime.js +1 -1
  516. package/dist/setup-DZJZF2R6.js +495 -0
  517. package/dist/setup-api-BkYWhB-B.js +29 -0
  518. package/dist/setup-core-BXBabSEx.js +171 -0
  519. package/dist/setup-core-eahC1DXh.js +176 -0
  520. package/dist/setup-surface-BEf8reey.js +286 -0
  521. package/dist/setup-surface-DAOKJ-ai.js +219 -0
  522. package/dist/setup-surface-b6gu0S8l.js +403 -0
  523. package/dist/setup.finalize-DXUCLT5O.js +539 -0
  524. package/dist/setup.gateway-config-BH4xbjcX.js +250 -0
  525. package/dist/shared-BhHdyXun.js +198 -0
  526. package/dist/shared-CKv38qsN.js +121 -0
  527. package/dist/shared-DUw9Q4Lf.js +76 -0
  528. package/dist/slash-state-BQgmhum1.js +1911 -0
  529. package/dist/src-C1B3uJMu.js +3974 -0
  530. package/dist/startup-context-DTpThe3H.js +312 -0
  531. package/dist/status-63GZxfe4.js +2 -0
  532. package/dist/status-C6qTe-QQ.js +397 -0
  533. package/dist/status-CSIGAUly.js +190 -0
  534. package/dist/status-DOW91Kcx.js +2 -0
  535. package/dist/status-all-7hqTcvxr.js +498 -0
  536. package/dist/status-json-CUzzv8An.js +14 -0
  537. package/dist/status-json-command-DwWlqvoV.js +84 -0
  538. package/dist/status-p4yx6E3C.js +209 -0
  539. package/dist/status-runtime-shared-yrzbsOR8.js +257 -0
  540. package/dist/status-subagents.runtime-CuRGoNNn.js +18 -0
  541. package/dist/status-subagents.runtime.js +1 -1
  542. package/dist/status-text-BrcRsCFE.js +237 -0
  543. package/dist/status-zV1BflCE.js +3 -0
  544. package/dist/status.gateway-connection.runtime-BKd4Zivg.js +2 -0
  545. package/dist/status.gateway-connection.runtime.js +1 -1
  546. package/dist/status.gather-B7WlHpIR.js +292 -0
  547. package/dist/status.gather-Ccewg4ce.js +2 -0
  548. package/dist/status.runtime-BFru2C4v.js +2 -0
  549. package/dist/status.runtime.js +1 -1
  550. package/dist/status.scan-mEKnAmP3.js +65 -0
  551. package/dist/status.scan-overview-B0qQVJd0.js +379 -0
  552. package/dist/status.scan.fast-json-CsU-fWhj.js +132 -0
  553. package/dist/status.scan.fast-json-tEc36TAC.js +2 -0
  554. package/dist/status.summary-Bvgry977.js +214 -0
  555. package/dist/status.summary-DRolowE_.js +2 -0
  556. package/dist/subagent-announce-Bhe55Ktf.js +351 -0
  557. package/dist/subagent-announce-delivery-NDBIRwuZ.js +726 -0
  558. package/dist/subagent-announce-output-DsmGO7Oi.js +364 -0
  559. package/dist/subagent-control-Bn8n-535.js +506 -0
  560. package/dist/subagent-followup.runtime-C7s-lOGN.js +68 -0
  561. package/dist/subagent-followup.runtime.js +1 -1
  562. package/dist/subagent-orphan-recovery-CJEhSvFZ.js +305 -0
  563. package/dist/subagent-registry-BgQA8eP1.js +1753 -0
  564. package/dist/subagent-registry-DAm-N9-O.js +3 -0
  565. package/dist/subagent-registry.runtime.js +1 -1
  566. package/dist/subagent-spawn-EXtecXVT.js +1005 -0
  567. package/dist/system-cli-CFS_PN8R.js +59 -0
  568. package/dist/targets-BXWH2MfM.js +67 -0
  569. package/dist/task-executor-DfugjJEq.js +360 -0
  570. package/dist/task-owner-access-CSwIy-v-.js +74 -0
  571. package/dist/task-registry-B-kQGKt_.js +2366 -0
  572. package/dist/task-registry-delivery-runtime-DD1_7xUF.js +3 -0
  573. package/dist/task-registry-delivery-runtime-DIsasFa1.js +2 -0
  574. package/dist/task-registry.maintenance-CxAx195T.js +2 -0
  575. package/dist/task-registry.maintenance-DIFuNnzy.js +416 -0
  576. package/dist/telegram/token.js +1 -1
  577. package/dist/testing-C7oUBiZL.js +575 -0
  578. package/dist/text-report-hYiQ_Kcv.js +587 -0
  579. package/dist/tool-resolution-CnnOHyxg.js +90 -0
  580. package/dist/tools-effective-inventory-DqYXIS6R.js +152 -0
  581. package/dist/tools-invoke-http-zop5qWa_.js +206 -0
  582. package/dist/trash-DZRlsk_R.js +24 -0
  583. package/dist/tui-cli-2cKXF0J8.js +4575 -0
  584. package/dist/update-cli-DP1KXasM.js +1759 -0
  585. package/dist/upgrade-DPFxH2YB.js +1226 -0
  586. package/dist/video-generation-task-status-BEgeadFu.js +163 -0
  587. package/dist/wait-for-idle-before-flush-CmSNfAco.js +5986 -0
  588. package/dist/wizard-models-BJGn0RnU.js +161 -0
  589. package/package.json +1 -1
  590. package/dist/abort-ca8hDmJr.js +0 -201
  591. package/dist/abort.runtime-BrChEuUS.js +0 -2
  592. package/dist/accounts-C1ECKXaw.js +0 -107
  593. package/dist/accounts-DH8HU_Fu.js +0 -104
  594. package/dist/accounts-DWQpG06j.js +0 -2
  595. package/dist/acp-cli-BLpWVnc7.js +0 -2193
  596. package/dist/acp-spawn-D1p6b1gk.js +0 -2
  597. package/dist/acp-spawn-qoyl9NiU.js +0 -1093
  598. package/dist/acp-stateful-target-driver-NL9txhIM.js +0 -89
  599. package/dist/action-agents-C729fJ_P.js +0 -67
  600. package/dist/action-focus-53k9XP4K.js +0 -132
  601. package/dist/action-help-bIJZBYLz.js +0 -7
  602. package/dist/action-info-BBzvYFX_.js +0 -101
  603. package/dist/action-kill-C4fa3E9I.js +0 -33
  604. package/dist/action-list-BEiIbwP1.js +0 -21
  605. package/dist/action-log-Cq7RLW2T.js +0 -30
  606. package/dist/action-send-DyiHgRwh.js +0 -39
  607. package/dist/action-spawn-CEZfDvXU.js +0 -47
  608. package/dist/action-unfocus-CpAw3JOi.js +0 -29
  609. package/dist/actions.runtime-BKEwPyo7.js +0 -18
  610. package/dist/actions.runtime-Bp0UusIf.js +0 -5
  611. package/dist/agent-C2hwJefQ.js +0 -2
  612. package/dist/agent-command-BAAeGRql.js +0 -874
  613. package/dist/agent-harness-runtime-Czrx53YL.js +0 -144
  614. package/dist/agent-runner-utils-DzShckNa.js +0 -239
  615. package/dist/agent-runner.runtime-d_EtNxBK.js +0 -3455
  616. package/dist/agent-runtime-DNgz7AOP.js +0 -18
  617. package/dist/agents-CZmpon7q.js +0 -5
  618. package/dist/agents-Cs9je_gQ.js +0 -953
  619. package/dist/aliases-CZemdpTj.js +0 -2
  620. package/dist/aliases-KefnmoaT.js +0 -96
  621. package/dist/api-CO05iXNH.js +0 -139
  622. package/dist/api-CyjlApHT.js +0 -3
  623. package/dist/api-DArm1ECd.js +0 -5
  624. package/dist/approval-gateway-resolver-URpDQMld.js +0 -29
  625. package/dist/approval-gateway-runtime-B087BMms.js +0 -2
  626. package/dist/approval-handler-runtime-BgRQnG4g.js +0 -439
  627. package/dist/approval-native-runtime-DAsraihr.js +0 -729
  628. package/dist/attempt-execution.runtime-D_FGkDQz.js +0 -509
  629. package/dist/attempt.prompt-helpers-CDzDUi1C.js +0 -221
  630. package/dist/attempt.tool-run-context-DitxaTPJ.js +0 -933
  631. package/dist/audit-Bq8vlxok.js +0 -939
  632. package/dist/audit.runtime-CU42yh1v.js +0 -7
  633. package/dist/auth-CQfwC-AH.js +0 -383
  634. package/dist/auth-DyWcaG4X.js +0 -2
  635. package/dist/auth-order-C3zGI0s9.js +0 -96
  636. package/dist/auth-order-XQ9ZGPd9.js +0 -2
  637. package/dist/bash-tools-BBRtIa6j.js +0 -2824
  638. package/dist/bash-tools-BI0d1TdC.js +0 -3
  639. package/dist/binding-routing-Cvm5c1IV.js +0 -85
  640. package/dist/binding-targets-DSs4NXbd.js +0 -121
  641. package/dist/bridge-server-CwWzSgv8.js +0 -113
  642. package/dist/browser-control-auth-y1f-9HRI.js +0 -2
  643. package/dist/browser-node-runtime-3UAeP8a6.js +0 -12
  644. package/dist/browser-profiles-BzzxphNW.js +0 -2
  645. package/dist/browser-runtime-jj11LR-E.js +0 -387
  646. package/dist/browser-setup-tools-CFB52yQc.js +0 -13
  647. package/dist/build-TlobwpQW.js +0 -550
  648. package/dist/call-Bx8lENb2.js +0 -3
  649. package/dist/call-jYRpeAWm.js +0 -331
  650. package/dist/call.runtime-BRluUZbD.js +0 -2
  651. package/dist/capability-cli-Iyj9Zi3g.js +0 -1401
  652. package/dist/catchup-CtxTwzY8.js +0 -300
  653. package/dist/channel-BJKHBfnq.js +0 -491
  654. package/dist/channel-BNNnYzwK.js +0 -1100
  655. package/dist/channel-BXS-Hd8p.js +0 -226
  656. package/dist/channel-C4XWpowe.js +0 -1174
  657. package/dist/channel-CJQdQgPr.js +0 -840
  658. package/dist/channel-C_zWAu4D.js +0 -595
  659. package/dist/channel-CtGzrF-K.js +0 -1802
  660. package/dist/channel-O9DE4IIq.js +0 -350
  661. package/dist/channel-WHUOtJme.js +0 -297
  662. package/dist/channel-WoDWDxqx.js +0 -1320
  663. package/dist/channel-core-BJjq9SOq.js +0 -5
  664. package/dist/channel-inbound-DLs-YfUs.js +0 -31
  665. package/dist/channel-plugin-runtime-CMG8ac2K.js +0 -771
  666. package/dist/channel-runtime-4UjeDmDI.js +0 -425
  667. package/dist/channel-ys2FFqi1.js +0 -453
  668. package/dist/channel.runtime-B38Ky3R9.js +0 -109
  669. package/dist/channel.runtime-Bl8WYZvF.js +0 -576
  670. package/dist/channel.runtime-D3kAsCsR.js +0 -89
  671. package/dist/channel.runtime-DEQ-anMf.js +0 -2364
  672. package/dist/channel.runtime-DG-EUnSC.js +0 -4
  673. package/dist/channel.runtime-IfV1Md6p.js +0 -430
  674. package/dist/channel.runtime-w1tHjTOa.js +0 -34702
  675. package/dist/channel.setup-dXwiMlyi.js +0 -10
  676. package/dist/channels-B2G1Y-iD.js +0 -733
  677. package/dist/channels-cli-YintLKAt.js +0 -268
  678. package/dist/chat-DdKbu8CA.js +0 -2758
  679. package/dist/clawbot-cli-CnHERFYk.js +0 -9
  680. package/dist/cli-CSNAd6Sz.js +0 -72
  681. package/dist/cli-CdRioBfN.js +0 -2
  682. package/dist/cli-DMPwqYqc.js +0 -219
  683. package/dist/cli-ctyAqh0j.js +0 -2
  684. package/dist/cli-runner-CNlk7xmx.js +0 -286
  685. package/dist/cli-runner.runtime-BK4sQk1m.js +0 -3
  686. package/dist/cli-runner.runtime-BT8ZZn-R.js +0 -4
  687. package/dist/cli.runtime-DU7swpBI.js +0 -1261
  688. package/dist/client-CQdcTPUf.js +0 -138
  689. package/dist/client-Vx7pseEY.js +0 -713
  690. package/dist/command-auth-DkJWb2HE.js +0 -76
  691. package/dist/command-config-resolution-CIRWRfR8.js +0 -23
  692. package/dist/command-config-resolution-DYZWj6Zm.js +0 -2
  693. package/dist/command-config-resolution.runtime-CUtVJOf0.js +0 -2
  694. package/dist/command-registry-CHy5EH0v.js +0 -4
  695. package/dist/command-registry-CyKgELQP.js +0 -9
  696. package/dist/command-registry-core-DQeRIuot.js +0 -104
  697. package/dist/command-secret-gateway-BNnWdAlq.js +0 -528
  698. package/dist/command-status.runtime-CKgimR6Y.js +0 -87
  699. package/dist/commands-acp-DSm97O5v.js +0 -77
  700. package/dist/commands-compact.runtime-BXhP6WJ6.js +0 -10
  701. package/dist/commands-handlers.runtime-FzK-n0L8.js +0 -4597
  702. package/dist/commands-status-BQnB5OSX.js +0 -16
  703. package/dist/commands-status.runtime-B6GcfEDm.js +0 -3
  704. package/dist/commands-subagents-control.runtime-CByd528A.js +0 -2
  705. package/dist/commands-subagents-control.runtime-CqI4LMYa.js +0 -3
  706. package/dist/commands-system-prompt-BD_LeeZk.js +0 -2
  707. package/dist/commands-system-prompt-C2Md_Ia1.js +0 -158
  708. package/dist/commands.runtime-CwiPf7Cc.js +0 -166
  709. package/dist/compact-B_4bMVpw.js +0 -1118
  710. package/dist/compact.runtime-BhRqiBXG.js +0 -12
  711. package/dist/completion-cli-D07hGGMI.js +0 -313
  712. package/dist/config-B1lvYOd7.js +0 -251
  713. package/dist/config-cli-BgepNwob.js +0 -1078
  714. package/dist/configure-CEfl0ORM.js +0 -2
  715. package/dist/configure-TsykzQqM.js +0 -1245
  716. package/dist/connect-options-zqTIEl6K.js +0 -699
  717. package/dist/control-auth-CNa_KHpo.js +0 -125
  718. package/dist/control-service-CZl5wFdZ.js +0 -156
  719. package/dist/conversation-id-BLY9ffjm.js +0 -38
  720. package/dist/conversation-id-DVeOM5Jh.js +0 -235
  721. package/dist/conversation-runtime-gJt7AAg2.js +0 -31
  722. package/dist/core-BtmNtOpS.js +0 -275
  723. package/dist/cron-cli-s9SF4__G.js +0 -713
  724. package/dist/daemon-cli-TCubZfI_.js +0 -12
  725. package/dist/delegate-DyITI93V.js +0 -64
  726. package/dist/detached-task-runtime-CTUQj84i.js +0 -73
  727. package/dist/devices-cli-SXcLjGmh.js +0 -496
  728. package/dist/diagnostics-waSemGnZ.js +0 -154
  729. package/dist/direct-dm-CiSjkmkL.js +0 -64
  730. package/dist/dispatch-BnQSIx2G.js +0 -1131
  731. package/dist/dispatch-acp-CaNQyl2L.js +0 -981
  732. package/dist/dispatch-acp-manager.runtime-DJK1eHYX.js +0 -3
  733. package/dist/dispatch-acp.runtime-Bl5cvtX4.js +0 -19
  734. package/dist/doctor-device-pairing-DBhEA-8G.js +0 -307
  735. package/dist/doctor-gateway-daemon-flow-Ds47Er3Y.js +0 -250
  736. package/dist/doctor-gateway-health-EWwTw5JR.js +0 -60
  737. package/dist/doctor-health-C6muRn7t.js +0 -59
  738. package/dist/doctor-health-contributions-B984415a.js +0 -486
  739. package/dist/doctor-prompter-BpOi4ndi.js +0 -56
  740. package/dist/doctor-workspace-status-CiEWZXrx.js +0 -75
  741. package/dist/dreaming-DFPenC85.js +0 -1574
  742. package/dist/dreaming-narrative-6A27_Gft.js +0 -595
  743. package/dist/embedded-gateway-stub.runtime-UVgfXZzk.js +0 -9
  744. package/dist/exec-approvals-cli-Cc_GG9ZT.js +0 -498
  745. package/dist/fallbacks-DX4YcmAx.js +0 -2
  746. package/dist/fallbacks-inTaaG-m.js +0 -31
  747. package/dist/fallbacks-shared-ow1la-U2.js +0 -111
  748. package/dist/gateway-D4iWwu3_.js +0 -115
  749. package/dist/gateway-cli-D6j0Aj3R.js +0 -1325
  750. package/dist/gateway-rpc-Dd_x2GX5.js +0 -14
  751. package/dist/gateway-rpc.runtime-Btnvsv-7.js +0 -23
  752. package/dist/gateway-runtime-DctMRv_p.js +0 -15
  753. package/dist/gateway-status-DJCtvUVn.js +0 -584
  754. package/dist/genesis-tools-CvMcpUvH.js +0 -8999
  755. package/dist/genesis-tools.runtime-Ch3NDEDq.js +0 -2
  756. package/dist/get-reply-Cm39MCyU.js +0 -3879
  757. package/dist/get-reply-from-config.runtime-CSqCYatb.js +0 -2
  758. package/dist/graph-users-BJxYqA3A.js +0 -1337
  759. package/dist/health-C14jIilQ.js +0 -469
  760. package/dist/health-C6yJSCMc.js +0 -3
  761. package/dist/heartbeat-runner-C6-gFnyC.js +0 -5
  762. package/dist/heartbeat-runner-yUYjgzIM.js +0 -1292
  763. package/dist/heartbeat-runner.runtime-DZzyrUNB.js +0 -4
  764. package/dist/hooks-cli-CCRaHheu.js +0 -433
  765. package/dist/image-fallbacks-BH9qLbBG.js +0 -31
  766. package/dist/image-fallbacks-DUOPO1ic.js +0 -2
  767. package/dist/inbound-reply-dispatch-DPf_IrbV.js +0 -73
  768. package/dist/infra-runtime-CLND6LJ0.js +0 -39
  769. package/dist/init-CzWob-9v.js +0 -59
  770. package/dist/library-C0a9Bz2M.js +0 -45
  771. package/dist/lifecycle-B_B_jt3r.js +0 -571
  772. package/dist/lifecycle-DuqKKZop.js +0 -229
  773. package/dist/lifecycle.runtime-DoosWTnK.js +0 -2
  774. package/dist/list-Bly8XeOF.js +0 -2
  775. package/dist/list-C5HvtbwZ.js +0 -2
  776. package/dist/list-CHIiamt1.js +0 -131
  777. package/dist/list-CMmJiacX.js +0 -1201
  778. package/dist/list.probe-kmHRFlrP.js +0 -419
  779. package/dist/llm-slug-generator-C3u6Ptgq.js +0 -79
  780. package/dist/load-config-CXvIGI7N.js +0 -35
  781. package/dist/local-dispatch.runtime-BNQF4rqW.js +0 -8
  782. package/dist/logs-cli-DEy1GPk2.js +0 -265
  783. package/dist/logs-cli.runtime-jWShKzQC.js +0 -2
  784. package/dist/main-session-restart-recovery-CzfY6Cd8.js +0 -206
  785. package/dist/managed-image-attachments-BGPKA7Mn.js +0 -2
  786. package/dist/managed-image-attachments-CTrq9ym-.js +0 -635
  787. package/dist/manager-C_ZGa9x8.js +0 -2057
  788. package/dist/manager-DIHLRzYF.js +0 -2
  789. package/dist/markdown-to-line-CRbbXtJK.js +0 -790
  790. package/dist/mcp-cli-FMJb3T4k.js +0 -725
  791. package/dist/mcp-http-b6UMoE_J.js +0 -529
  792. package/dist/memory-core-host-runtime-cli-CquxELNj.js +0 -9
  793. package/dist/message-CmjuvIFf.js +0 -232
  794. package/dist/message-action-runner-CiY3rhqt.js +0 -1407
  795. package/dist/message-action-runner-Do4P0h5i.js +0 -2
  796. package/dist/message-actions-BYREqFJA.js +0 -143
  797. package/dist/message.gateway.runtime-gkoWzaYV.js +0 -2
  798. package/dist/models-auth-status-B_Pcr0tl.js +0 -201
  799. package/dist/models-cli-BZSuW2gw.js +0 -219
  800. package/dist/monitor-22LY8y6z.js +0 -788
  801. package/dist/monitor-BZdf_CEm.js +0 -1237
  802. package/dist/monitor-CTVDlTs2.js +0 -671
  803. package/dist/monitor-Cfv-KGAl.js +0 -1661
  804. package/dist/monitor-DuA69-8E.js +0 -2
  805. package/dist/monitor-auth-BNDlfcw7.js +0 -207
  806. package/dist/monitor-cmWeDVxf.js +0 -1459
  807. package/dist/monitor-processing-D9Xcsagt.js +0 -1974
  808. package/dist/monitor.runtime-zWvcbNim.js +0 -2
  809. package/dist/monitor.webhook-BYWQa5lY.js +0 -180
  810. package/dist/msteams-n9HDT4O-.js +0 -35
  811. package/dist/native-hook-relay-CKyIfLOm.js +0 -519
  812. package/dist/nextcloud-talk-BuJVVP0J.js +0 -17
  813. package/dist/node-cli-DBK2TIEH.js +0 -2506
  814. package/dist/nodes-cli-D5Y1_ZVD.js +0 -1046
  815. package/dist/nodes-utils-C6IKaTjm.js +0 -84
  816. package/dist/nodes.helpers-CkJO5i0d.js +0 -34
  817. package/dist/notify-v0zoiI-O.js +0 -315
  818. package/dist/onboard-BCaLBJor.js +0 -632
  819. package/dist/onboard-helpers-Ba7ES7kB.js +0 -204
  820. package/dist/onboard-helpers-D5qdyBIj.js +0 -6
  821. package/dist/onboard-remote-BaHm_VrY.js +0 -2
  822. package/dist/onboard-remote-DbGAo_Ad.js +0 -193
  823. package/dist/onboard-skills-BA7c4li1.js +0 -2
  824. package/dist/onboard-skills-upyHp6T9.js +0 -134
  825. package/dist/openai-http-DwCqhEcX.js +0 -500
  826. package/dist/openresponses-http-tJr67vC1.js +0 -1128
  827. package/dist/operator-approvals-client-C0t_-2xC.js +0 -68
  828. package/dist/outbound.runtime-nXA4k1xA.js +0 -2
  829. package/dist/pair-command-approve-G5y-rKn9.js +0 -44
  830. package/dist/persistent-bindings.lifecycle-C56aKBVc.js +0 -2
  831. package/dist/persistent-bindings.lifecycle-CfBqvz9L.js +0 -85
  832. package/dist/pi-embedded-B1wvxHXL.js +0 -2905
  833. package/dist/pi-embedded-DmDb-oUB.js +0 -4
  834. package/dist/pi-embedded.runtime-D5xqw9Ko.js +0 -4
  835. package/dist/pi-tool-definition-adapter-CAxlo-Va.js +0 -217
  836. package/dist/pi-tools-C69yvznf.js +0 -1057
  837. package/dist/pi-tools.before-tool-call-BDeCmoAy.js +0 -2
  838. package/dist/pi-tools.before-tool-call-DG7VVNBn.js +0 -433
  839. package/dist/plugin-B9Ld0CUs.js +0 -12195
  840. package/dist/plugin-enabled-BguUplCN.js +0 -140
  841. package/dist/plugin-registration-DPBnSoak.js +0 -23
  842. package/dist/plugin-service-CdNFnRyN.js +0 -2890
  843. package/dist/policy-DgfegT_Y.js +0 -328
  844. package/dist/prepare.runtime-C_sRmuFC.js +0 -815
  845. package/dist/probe-8vb_Ssot.js +0 -45
  846. package/dist/probe-BjmKFiz1.js +0 -2205
  847. package/dist/probe-CVlOo8Hr.js +0 -74
  848. package/dist/probe-CakOsrSu.js +0 -241
  849. package/dist/probe-CbOoVumf.js +0 -2
  850. package/dist/probe-D6yFcZpK.js +0 -1443
  851. package/dist/probe-OcOYm1bj.js +0 -2
  852. package/dist/program-BJnTb7UE.js +0 -111
  853. package/dist/prompt-select-styled-C8kGHNpY.js +0 -20
  854. package/dist/protocol-C40iRm9c.js +0 -2234
  855. package/dist/provider-dispatcher-BIOPYzb9.js +0 -2
  856. package/dist/provider-dispatcher-CpwviX0O.js +0 -22
  857. package/dist/qr-cli-CJXKCj0L.js +0 -2
  858. package/dist/qr-cli-kSU9X-N0.js +0 -349
  859. package/dist/reaction-runtime-api-3XFmruJA.js +0 -116
  860. package/dist/reactions-By-nqZC6.js +0 -998
  861. package/dist/register-service-commands-fwB-T6mW.js +0 -71
  862. package/dist/register.agent-CpScU3CV.js +0 -248
  863. package/dist/register.configure-DpD3_BCK.js +0 -15
  864. package/dist/register.maintenance-ByoQXpk9.js +0 -438
  865. package/dist/register.message-BTXNOZMD.js +0 -329
  866. package/dist/register.onboard-B83CAOYy.js +0 -81
  867. package/dist/register.runtime-Doz01zcH.js +0 -81
  868. package/dist/register.setup-BKI5rwWy.js +0 -150
  869. package/dist/register.status-health-sessions-DRPszDQ-.js +0 -1215
  870. package/dist/register.subclis-DeXklyQL.js +0 -3
  871. package/dist/register.subclis-YkmoZoxl.js +0 -29
  872. package/dist/register.subclis-core-BPo4hV1Q.js +0 -243
  873. package/dist/reply-dispatch-runtime-DjIuN_dr.js +0 -13
  874. package/dist/reply-runtime-5TFidLR3.js +0 -11
  875. package/dist/reply.runtime-6d1e0INl.js +0 -2
  876. package/dist/restart-health-BWUPc4R-.js +0 -202
  877. package/dist/restart-health-CWvsjHVN.js +0 -2
  878. package/dist/root-help-D2YiFpS6.js +0 -44
  879. package/dist/routes-BdYdVpe7.js +0 -3341
  880. package/dist/routes-jYoN_qOU.js +0 -2
  881. package/dist/rpc-5tMjebZH.js +0 -61
  882. package/dist/rpc.runtime-BzAHjcm4.js +0 -21
  883. package/dist/run-delivery.runtime-qZIB76oE.js +0 -530
  884. package/dist/run-embedded.runtime-nHunVmCv.js +0 -4
  885. package/dist/run-execution-cli.runtime-CMT7La6D.js +0 -4
  886. package/dist/run-executor.runtime-BG6SDi3f.js +0 -277
  887. package/dist/run-main-CNf_LLX7.js +0 -516
  888. package/dist/run-subagent-registry.runtime-D0RcqcJr.js +0 -2
  889. package/dist/run-wait--kou3jZ7.js +0 -135
  890. package/dist/runtime-BvxkGJm2.js +0 -9
  891. package/dist/runtime-DgQ5oUKq.js +0 -973
  892. package/dist/runtime-api-6SzMK-FZ.js +0 -4
  893. package/dist/runtime-api-BAMrcB-5.js +0 -9
  894. package/dist/runtime-api-DLSrxS5O.js +0 -9
  895. package/dist/runtime-api-DsPleWQg.js +0 -14
  896. package/dist/runtime-embedded-pi.runtime-eyjaJfAz.js +0 -2
  897. package/dist/runtime-internal-BTfGDlHi.js +0 -2
  898. package/dist/runtime-options-B5_eZxMV.js +0 -275
  899. package/dist/runtime-schema-BB3QzGXJ.js +0 -27780
  900. package/dist/scan-D0fsxqed.js +0 -2
  901. package/dist/scan-DrjjN66Z.js +0 -523
  902. package/dist/secrets-cli-B7-qbfn-.js +0 -2101
  903. package/dist/security-cli-CYTPgL67.js +0 -486
  904. package/dist/selection-DEAdLh1Q.js +0 -2
  905. package/dist/selection-zPPyzfBX.js +0 -7736
  906. package/dist/send-CYKfZTCJ.js +0 -156
  907. package/dist/send-Di1tRwJD.js +0 -102
  908. package/dist/send.runtime-Bw22DBkL.js +0 -2
  909. package/dist/server-BIF5dPI_.js +0 -13
  910. package/dist/server-BJK0Q4xw.js +0 -77
  911. package/dist/server-context-CiVVCQNp.js +0 -847
  912. package/dist/server-context-DXvk5Tdy.js +0 -2
  913. package/dist/server-node-events-CdZP3Kok.js +0 -481
  914. package/dist/server-plugin-bootstrap-Di15EOt4.js +0 -11333
  915. package/dist/server-plugin-bootstrap-dboO44LL.js +0 -2
  916. package/dist/server-restart-sentinel-BWiOzljY.js +0 -697
  917. package/dist/server.impl-Ph8YCQpT.js +0 -12734
  918. package/dist/session-kill-http-B_J1fJ4-.js +0 -110
  919. package/dist/session-reset-service-DPgw70iw.js +0 -471
  920. package/dist/session-route-B0h6MEyB.js +0 -93
  921. package/dist/session-status.runtime-DCvgI1pG.js +0 -2
  922. package/dist/session-subagent-reactivation.runtime-BgsCnI-h.js +0 -2
  923. package/dist/session-tab-registry-FyN6CWh5.js +0 -491
  924. package/dist/session-visibility-CZjMA1SL.js +0 -147
  925. package/dist/sessions-helpers-B3W7MdIb.js +0 -304
  926. package/dist/sessions-history-http-Bw5J6HQ-.js +0 -383
  927. package/dist/sessions-patch-2sBcHc9a.js +0 -309
  928. package/dist/sessions-resolve-C-VZh_56.js +0 -174
  929. package/dist/sessions.runtime-cLuc67tJ.js +0 -2
  930. package/dist/setup-FW8xH-S-.js +0 -495
  931. package/dist/setup-api-Culp0Usf.js +0 -29
  932. package/dist/setup-core-CaTBS6Tz.js +0 -171
  933. package/dist/setup-core-youmXvW_.js +0 -176
  934. package/dist/setup-surface-BeMn-9hU.js +0 -403
  935. package/dist/setup-surface-CUd-s0wh.js +0 -286
  936. package/dist/setup-surface-DtscjAY3.js +0 -219
  937. package/dist/setup.finalize-BWyA4f4q.js +0 -539
  938. package/dist/setup.gateway-config-CvzMdftA.js +0 -250
  939. package/dist/shared-B3Pz1Xcr.js +0 -121
  940. package/dist/shared-Bc3x3THS.js +0 -76
  941. package/dist/shared-CxbLx0Ww.js +0 -198
  942. package/dist/slash-state-XfeMEeuI.js +0 -1911
  943. package/dist/src-BiDxQvtV.js +0 -3974
  944. package/dist/startup-context-CXQi-7YB.js +0 -312
  945. package/dist/status-Ch3bm70K.js +0 -2
  946. package/dist/status-CiQSxvY-.js +0 -3
  947. package/dist/status-DY0DlWlw.js +0 -190
  948. package/dist/status-DjdByQv-.js +0 -209
  949. package/dist/status-MT62_Jgw.js +0 -2
  950. package/dist/status-all-BD2viQD9.js +0 -498
  951. package/dist/status-json-CWS2oYON.js +0 -14
  952. package/dist/status-json-command-B6lZefoe.js +0 -84
  953. package/dist/status-pujDHwRb.js +0 -397
  954. package/dist/status-runtime-shared-Bu9Zhd7x.js +0 -257
  955. package/dist/status-subagents.runtime-B4UXD0lL.js +0 -18
  956. package/dist/status-text-myqmk4OL.js +0 -237
  957. package/dist/status.gateway-connection.runtime-B0Iwl2iZ.js +0 -2
  958. package/dist/status.gather-C51Ja0wP.js +0 -292
  959. package/dist/status.gather-DQ7WZp3H.js +0 -2
  960. package/dist/status.runtime-Cxyb3wHZ.js +0 -2
  961. package/dist/status.scan-C1aqDsy2.js +0 -65
  962. package/dist/status.scan-overview-BerlJz2l.js +0 -379
  963. package/dist/status.scan.fast-json-BXY82vu2.js +0 -2
  964. package/dist/status.scan.fast-json-DJqgEbzZ.js +0 -132
  965. package/dist/status.summary-CCdLUph8.js +0 -214
  966. package/dist/status.summary-CHAn0_FS.js +0 -2
  967. package/dist/subagent-announce-D4jG75Ub.js +0 -351
  968. package/dist/subagent-announce-delivery-BkQYzDcy.js +0 -726
  969. package/dist/subagent-announce-output-C3pkuu-t.js +0 -364
  970. package/dist/subagent-control-DVVK8du2.js +0 -506
  971. package/dist/subagent-followup.runtime-CdeweG-S.js +0 -68
  972. package/dist/subagent-orphan-recovery-ZQanOHb4.js +0 -305
  973. package/dist/subagent-registry-BcPa3ho0.js +0 -3
  974. package/dist/subagent-registry-hJUso5eL.js +0 -1753
  975. package/dist/subagent-spawn-DTaeQc9q.js +0 -1005
  976. package/dist/system-cli-CT8VaSDY.js +0 -59
  977. package/dist/targets-BPdSjnQH.js +0 -67
  978. package/dist/task-executor-B62Qzfi-.js +0 -360
  979. package/dist/task-owner-access-BBMrMOlN.js +0 -74
  980. package/dist/task-registry-BD-ew2bT.js +0 -2366
  981. package/dist/task-registry-delivery-runtime-B2WyGY0d.js +0 -3
  982. package/dist/task-registry-delivery-runtime-MFJszOHI.js +0 -2
  983. package/dist/task-registry.maintenance-0D2Yxl49.js +0 -416
  984. package/dist/task-registry.maintenance-OPlfB5W9.js +0 -2
  985. package/dist/testing-DmxZ16UC.js +0 -575
  986. package/dist/text-report-BwIpU54R.js +0 -587
  987. package/dist/tool-resolution-vn72hwMo.js +0 -90
  988. package/dist/tools-effective-inventory-DII_pOSr.js +0 -152
  989. package/dist/tools-invoke-http-DdthGR52.js +0 -206
  990. package/dist/trash-BVZu6rU7.js +0 -24
  991. package/dist/tui-cli-Bz51WCAi.js +0 -4575
  992. package/dist/update-cli-DkH8vHQP.js +0 -1759
  993. package/dist/upgrade-Dvj8K4WB.js +0 -1226
  994. package/dist/video-generation-task-status-CHYB_IeZ.js +0 -163
  995. package/dist/wait-for-idle-before-flush-DJMxeE2X.js +0 -5986
  996. package/dist/wizard-models-BNQQ7fvr.js +0 -161
@@ -0,0 +1,1401 @@
1
+ import { a as normalizeLowercaseStringOrEmpty, c as normalizeOptionalString, d as normalizeStringifiedOptionalString } from "./string-coerce-C1IzJjqi.js";
2
+ import { n as defaultRuntime, r as writeRuntimeJson } from "./runtime-CQ7eH0le.js";
3
+ import { t as formatDocsLink } from "./links-DmsJCU7L.js";
4
+ import { r as theme } from "./theme-BrRleVfL.js";
5
+ import { a as isLoopbackHost } from "./net-AycWGi8-.js";
6
+ import { a as loadConfig } from "./io-h8M_Z0Lj.js";
7
+ import { t as getProviderEnvVars } from "./provider-env-vars-CEaBLk-N.js";
8
+ import { n as resolveAgentModelPrimaryValue } from "./model-input-BkKFdMSQ.js";
9
+ import { x as resolveDefaultAgentId, y as resolveAgentDir } from "./agent-scope-CDjZLqNk.js";
10
+ import "./config-B3ZoZd5V.js";
11
+ import { i as GATEWAY_CLIENT_NAMES, r as GATEWAY_CLIENT_MODES } from "./client-info-CfESmEX1.js";
12
+ import { f as updateAuthProfileStoreWithLock, s as loadAuthProfileStoreForRuntime } from "./store-DPPUFKL4.js";
13
+ import { a as registerMemoryEmbeddingProvider, r as listMemoryEmbeddingProviders } from "./memory-embedding-providers-e8411EgH.js";
14
+ import { r as loadModelCatalog } from "./model-catalog-DXtA4U6p.js";
15
+ import { l as normalizeMimeType, n as extensionForMime, t as detectMime } from "./mime-dYER0fWW.js";
16
+ import { S as setTtsProvider, b as setTtsEnabled, f as resolveExplicitTtsOverrides, h as resolveTtsPrefsPath, m as resolveTtsConfig, o as getTtsProvider, u as listSpeechVoices, w as textToSpeech } from "./tts-Dp_lVFqh.js";
17
+ import { a as getImageMetadata } from "./image-ops-DXau4yMa.js";
18
+ import "./auth-profiles-Bn8y2hqR.js";
19
+ import { n as listProfilesForProvider } from "./profile-list-DxD5kVCL.js";
20
+ import { t as buildGatewayConnectionDetailsWithResolvers } from "./connection-details-BhUgrSY-.js";
21
+ import { c as randomIdempotencyKey, r as callGateway } from "./call-DkGNVvLy.js";
22
+ import { n as listRuntimeImageGenerationProviders, t as generateImage } from "./runtime-WH7zKxDh.js";
23
+ import { l as saveMediaBuffer } from "./store-Fge4lGwN.js";
24
+ import { C as buildMediaUnderstandingRegistry } from "./resolve-CmlJ4Qe6.js";
25
+ import { n as listRuntimeVideoGenerationProviders, t as generateVideo } from "./runtime-tx7lDmPU.js";
26
+ import { a as runWebSearch, r as listWebSearchProviders, t as isWebSearchProviderConfigured } from "./runtime-BMTh1o_4.js";
27
+ import { t as resolveMemorySearchConfig } from "./memory-search-CKSa1HgN.js";
28
+ import { n as agentCommand } from "./agent-command-C4H_9c2N.js";
29
+ import { r as listSpeechProviders, t as canonicalizeSpeechProviderId } from "./provider-registry-ChCcnRHr.js";
30
+ import { n as runCommandWithRuntime } from "./cli-utils-YUNt0MVZ.js";
31
+ import { a as transcribeAudioFile, n as describeImageFileWithModel, r as describeVideoFile, t as describeImageFile } from "./runtime-BBdZI0T9.js";
32
+ import "./provider-auth-login-wF4aEfCh.js";
33
+ import { t as createDefaultDeps } from "./deps-BMuC_6j0.js";
34
+ import "./aliases-BkVpehd-.js";
35
+ import { n as modelsAuthLoginCommand } from "./auth-Czf_o5iE.js";
36
+ import "./auth-order-Cu9Vj7lA.js";
37
+ import "./fallbacks-Y_nNY8_a.js";
38
+ import "./image-fallbacks-DpVwnB41.js";
39
+ import { t as modelsStatusCommand } from "./list-Dk1hCKis.js";
40
+ import "./scan-CP2zJb_w.js";
41
+ import "./set-COJp56WQ.js";
42
+ import "./set-image-Wy-bkC3Q.js";
43
+ import { i as registerBuiltInMemoryEmbeddingProviders, t as createEmbeddingProvider } from "./memory-core-bundled-runtime-AwlL6fbf.js";
44
+ import { i as resolveWebFetchDefinition, r as listWebFetchProviders, t as isWebFetchProviderConfigured } from "./runtime-DhFt71Dh.js";
45
+ import { t as removeCommandByName } from "./command-tree-C8f0hpKp.js";
46
+ import { t as collectOption } from "./helpers-DWsKOjxm.js";
47
+ import { createWriteStream } from "node:fs";
48
+ import path from "node:path";
49
+ import fs$1 from "node:fs/promises";
50
+ import { Readable } from "node:stream";
51
+ import { pipeline } from "node:stream/promises";
52
+ //#region src/cli/capability-cli.ts
53
+ const CAPABILITY_METADATA = [
54
+ {
55
+ id: "model.run",
56
+ description: "Run a one-shot text inference turn through the agent runtime.",
57
+ transports: ["local", "gateway"],
58
+ flags: [
59
+ "--prompt",
60
+ "--model",
61
+ "--local",
62
+ "--gateway",
63
+ "--json"
64
+ ],
65
+ resultShape: "normalized payloads plus provider/model attribution"
66
+ },
67
+ {
68
+ id: "model.list",
69
+ description: "List known models from the model catalog.",
70
+ transports: ["local"],
71
+ flags: ["--json"],
72
+ resultShape: "catalog entries"
73
+ },
74
+ {
75
+ id: "model.inspect",
76
+ description: "Inspect one model catalog entry.",
77
+ transports: ["local"],
78
+ flags: ["--model", "--json"],
79
+ resultShape: "single catalog entry"
80
+ },
81
+ {
82
+ id: "model.providers",
83
+ description: "List model providers discovered from the catalog.",
84
+ transports: ["local"],
85
+ flags: ["--json"],
86
+ resultShape: "provider ids with counts and defaults"
87
+ },
88
+ {
89
+ id: "model.auth.login",
90
+ description: "Run the existing provider auth login flow.",
91
+ transports: ["local"],
92
+ flags: ["--provider"],
93
+ resultShape: "interactive auth result"
94
+ },
95
+ {
96
+ id: "model.auth.logout",
97
+ description: "Remove saved auth profiles for one provider.",
98
+ transports: ["local"],
99
+ flags: ["--provider", "--json"],
100
+ resultShape: "removed profile ids"
101
+ },
102
+ {
103
+ id: "model.auth.status",
104
+ description: "Show configured model auth state.",
105
+ transports: ["local"],
106
+ flags: ["--json"],
107
+ resultShape: "model status summary"
108
+ },
109
+ {
110
+ id: "image.generate",
111
+ description: "Generate raster images with configured image providers.",
112
+ transports: ["local"],
113
+ flags: [
114
+ "--prompt",
115
+ "--model",
116
+ "--count",
117
+ "--size",
118
+ "--aspect-ratio",
119
+ "--resolution",
120
+ "--output",
121
+ "--json"
122
+ ],
123
+ resultShape: "saved image files plus attempts"
124
+ },
125
+ {
126
+ id: "image.edit",
127
+ description: "Generate edited images from one or more input files.",
128
+ transports: ["local"],
129
+ flags: [
130
+ "--file",
131
+ "--prompt",
132
+ "--model",
133
+ "--output",
134
+ "--json"
135
+ ],
136
+ resultShape: "saved image files plus attempts"
137
+ },
138
+ {
139
+ id: "image.describe",
140
+ description: "Describe one image file through media-understanding providers.",
141
+ transports: ["local"],
142
+ flags: [
143
+ "--file",
144
+ "--prompt",
145
+ "--model",
146
+ "--json"
147
+ ],
148
+ resultShape: "normalized text output"
149
+ },
150
+ {
151
+ id: "image.describe-many",
152
+ description: "Describe multiple image files independently.",
153
+ transports: ["local"],
154
+ flags: [
155
+ "--file",
156
+ "--prompt",
157
+ "--model",
158
+ "--json"
159
+ ],
160
+ resultShape: "one text output per file"
161
+ },
162
+ {
163
+ id: "image.providers",
164
+ description: "List image generation providers.",
165
+ transports: ["local"],
166
+ flags: ["--json"],
167
+ resultShape: "provider ids and defaults"
168
+ },
169
+ {
170
+ id: "audio.transcribe",
171
+ description: "Transcribe one audio file.",
172
+ transports: ["local"],
173
+ flags: [
174
+ "--file",
175
+ "--model",
176
+ "--json"
177
+ ],
178
+ resultShape: "normalized text output"
179
+ },
180
+ {
181
+ id: "audio.providers",
182
+ description: "List audio transcription providers.",
183
+ transports: ["local"],
184
+ flags: ["--json"],
185
+ resultShape: "provider ids and capabilities"
186
+ },
187
+ {
188
+ id: "tts.convert",
189
+ description: "Convert text to speech.",
190
+ transports: ["local", "gateway"],
191
+ flags: [
192
+ "--text",
193
+ "--channel",
194
+ "--voice",
195
+ "--model",
196
+ "--output",
197
+ "--local",
198
+ "--gateway",
199
+ "--json"
200
+ ],
201
+ resultShape: "saved audio file plus attempts"
202
+ },
203
+ {
204
+ id: "tts.voices",
205
+ description: "List voices for a speech provider.",
206
+ transports: ["local"],
207
+ flags: ["--provider", "--json"],
208
+ resultShape: "voice entries"
209
+ },
210
+ {
211
+ id: "tts.providers",
212
+ description: "List speech providers.",
213
+ transports: ["local", "gateway"],
214
+ flags: [
215
+ "--local",
216
+ "--gateway",
217
+ "--json"
218
+ ],
219
+ resultShape: "provider ids, configured state, models, voices"
220
+ },
221
+ {
222
+ id: "tts.status",
223
+ description: "Show gateway-managed TTS state.",
224
+ transports: ["gateway"],
225
+ flags: ["--gateway", "--json"],
226
+ resultShape: "enabled/provider state"
227
+ },
228
+ {
229
+ id: "tts.enable",
230
+ description: "Enable TTS in prefs.",
231
+ transports: ["local", "gateway"],
232
+ flags: [
233
+ "--local",
234
+ "--gateway",
235
+ "--json"
236
+ ],
237
+ resultShape: "enabled state"
238
+ },
239
+ {
240
+ id: "tts.disable",
241
+ description: "Disable TTS in prefs.",
242
+ transports: ["local", "gateway"],
243
+ flags: [
244
+ "--local",
245
+ "--gateway",
246
+ "--json"
247
+ ],
248
+ resultShape: "enabled state"
249
+ },
250
+ {
251
+ id: "tts.set-provider",
252
+ description: "Set the active TTS provider.",
253
+ transports: ["local", "gateway"],
254
+ flags: [
255
+ "--provider",
256
+ "--local",
257
+ "--gateway",
258
+ "--json"
259
+ ],
260
+ resultShape: "selected provider"
261
+ },
262
+ {
263
+ id: "video.generate",
264
+ description: "Generate video files with configured video providers.",
265
+ transports: ["local"],
266
+ flags: [
267
+ "--prompt",
268
+ "--model",
269
+ "--output",
270
+ "--json"
271
+ ],
272
+ resultShape: "saved video files plus attempts"
273
+ },
274
+ {
275
+ id: "video.describe",
276
+ description: "Describe one video file through media-understanding providers.",
277
+ transports: ["local"],
278
+ flags: [
279
+ "--file",
280
+ "--model",
281
+ "--json"
282
+ ],
283
+ resultShape: "normalized text output"
284
+ },
285
+ {
286
+ id: "video.providers",
287
+ description: "List video generation and description providers.",
288
+ transports: ["local"],
289
+ flags: ["--json"],
290
+ resultShape: "provider ids and defaults"
291
+ },
292
+ {
293
+ id: "web.search",
294
+ description: "Run provider-backed web search.",
295
+ transports: ["local"],
296
+ flags: [
297
+ "--query",
298
+ "--provider",
299
+ "--limit",
300
+ "--json"
301
+ ],
302
+ resultShape: "search provider result"
303
+ },
304
+ {
305
+ id: "web.fetch",
306
+ description: "Fetch URL content through configured web fetch providers.",
307
+ transports: ["local"],
308
+ flags: [
309
+ "--url",
310
+ "--provider",
311
+ "--format",
312
+ "--json"
313
+ ],
314
+ resultShape: "fetch provider result"
315
+ },
316
+ {
317
+ id: "web.providers",
318
+ description: "List web search and fetch providers.",
319
+ transports: ["local"],
320
+ flags: ["--json"],
321
+ resultShape: "provider ids grouped by family"
322
+ },
323
+ {
324
+ id: "embedding.create",
325
+ description: "Create embeddings through embedding providers.",
326
+ transports: ["local"],
327
+ flags: [
328
+ "--text",
329
+ "--provider",
330
+ "--model",
331
+ "--json"
332
+ ],
333
+ resultShape: "vectors with provider/model attribution"
334
+ },
335
+ {
336
+ id: "embedding.providers",
337
+ description: "List embedding providers.",
338
+ transports: ["local"],
339
+ flags: ["--json"],
340
+ resultShape: "provider ids and default models"
341
+ }
342
+ ];
343
+ function findCapabilityMetadata(id) {
344
+ return CAPABILITY_METADATA.find((entry) => entry.id === id);
345
+ }
346
+ function resolveTransport(opts) {
347
+ if (opts.local && opts.gateway) throw new Error("Pass only one of --local or --gateway.");
348
+ if (opts.local) {
349
+ if (!opts.supported.includes("local")) throw new Error("This command does not support --local.");
350
+ return "local";
351
+ }
352
+ if (opts.gateway) {
353
+ if (!opts.supported.includes("gateway")) throw new Error("This command does not support --gateway.");
354
+ return "gateway";
355
+ }
356
+ return opts.defaultTransport;
357
+ }
358
+ function emitJsonOrText(runtime, json, value, textFormatter) {
359
+ if (json) {
360
+ writeRuntimeJson(runtime, value);
361
+ return;
362
+ }
363
+ runtime.log(textFormatter(value));
364
+ }
365
+ function formatEnvelopeForText(value) {
366
+ const envelope = value;
367
+ if (!envelope.ok) return `${envelope.capability} failed: ${envelope.error ?? "unknown error"}`;
368
+ const lines = [
369
+ `${envelope.capability} via ${envelope.transport}`,
370
+ ...envelope.provider ? [`provider: ${envelope.provider}`] : [],
371
+ ...envelope.model ? [`model: ${envelope.model}`] : [],
372
+ `outputs: ${String(envelope.outputs.length)}`
373
+ ];
374
+ for (const output of envelope.outputs) {
375
+ const pathValue = typeof output.path === "string" ? output.path : void 0;
376
+ const textValue = typeof output.text === "string" ? output.text : void 0;
377
+ if (pathValue) lines.push(pathValue);
378
+ else if (textValue) lines.push(textValue);
379
+ else lines.push(JSON.stringify(output));
380
+ }
381
+ return lines.join("\n");
382
+ }
383
+ function providerSummaryText(value) {
384
+ return value.map((entry) => JSON.stringify(entry)).join("\n");
385
+ }
386
+ function hasOwnKeys(value) {
387
+ return Boolean(value && typeof value === "object" && Object.keys(value).length > 0);
388
+ }
389
+ function resolveSelectedProviderFromModelRef(modelRef) {
390
+ return resolveModelRefOverride(modelRef).provider;
391
+ }
392
+ function getAuthProfileIdsForProvider(cfg, providerId) {
393
+ return listProfilesForProvider(loadAuthProfileStoreForRuntime(resolveAgentDir(cfg, resolveDefaultAgentId(cfg))), providerId);
394
+ }
395
+ function providerHasGenericConfig(params) {
396
+ const modelsProviders = params.cfg.models?.providers ?? {};
397
+ const pluginEntries = params.cfg.plugins?.entries ?? {};
398
+ const ttsProviders = params.cfg.messages?.tts?.providers ?? {};
399
+ const envConfigured = (params.envVars ?? []).some((envVar) => Boolean(process.env[envVar]?.trim()));
400
+ return getAuthProfileIdsForProvider(params.cfg, params.providerId).length > 0 || hasOwnKeys(modelsProviders[params.providerId]) || hasOwnKeys(pluginEntries[params.providerId]?.config) || hasOwnKeys(ttsProviders[params.providerId]) || envConfigured;
401
+ }
402
+ async function writeOutputAsset(params) {
403
+ if (!params.outputPath) {
404
+ const saved = await saveMediaBuffer(params.buffer, params.mimeType, params.subdir, Number.MAX_SAFE_INTEGER, params.originalFilename);
405
+ return {
406
+ path: saved.path,
407
+ mimeType: saved.contentType,
408
+ size: saved.size
409
+ };
410
+ }
411
+ const resolvedOutput = path.resolve(params.outputPath);
412
+ const parsed = path.parse(resolvedOutput);
413
+ const detectedMime = await detectMime({
414
+ buffer: params.buffer,
415
+ headerMime: params.mimeType
416
+ }) ?? params.mimeType;
417
+ const requestedMime = normalizeMimeType(await detectMime({ filePath: resolvedOutput }));
418
+ const detectedNormalized = normalizeMimeType(detectedMime);
419
+ const canonicalDetectedExt = extensionForMime(detectedNormalized);
420
+ const fallbackExt = parsed.ext || path.extname(params.originalFilename ?? "") || "";
421
+ const ext = parsed.ext && requestedMime === detectedNormalized ? parsed.ext : canonicalDetectedExt ?? fallbackExt;
422
+ const filePath = params.outputCount <= 1 ? path.join(parsed.dir, `${parsed.name}${ext}`) : path.join(parsed.dir, `${parsed.name}-${String(params.outputIndex + 1)}${ext}`);
423
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
424
+ await fs$1.writeFile(filePath, params.buffer);
425
+ return {
426
+ path: filePath,
427
+ mimeType: detectedNormalized ?? params.mimeType,
428
+ size: params.buffer.byteLength
429
+ };
430
+ }
431
+ async function readInputFiles(files) {
432
+ return await Promise.all(files.map(async (filePath) => ({
433
+ path: path.resolve(filePath),
434
+ buffer: await fs$1.readFile(path.resolve(filePath))
435
+ })));
436
+ }
437
+ function resolveModelRefOverride(raw) {
438
+ const trimmed = raw?.trim();
439
+ if (!trimmed) return {};
440
+ const slash = trimmed.indexOf("/");
441
+ if (slash <= 0 || slash === trimmed.length - 1) return { model: trimmed };
442
+ return {
443
+ provider: trimmed.slice(0, slash),
444
+ model: trimmed.slice(slash + 1)
445
+ };
446
+ }
447
+ function requireProviderModelOverride(raw) {
448
+ const resolved = resolveModelRefOverride(raw);
449
+ if (!raw?.trim()) return;
450
+ if (!resolved.provider || !resolved.model) throw new Error("Model overrides must use the form <provider/model>.");
451
+ return {
452
+ provider: resolved.provider,
453
+ model: resolved.model
454
+ };
455
+ }
456
+ async function runModelRun(params) {
457
+ const agentId = resolveDefaultAgentId(loadConfig());
458
+ if (params.transport === "local") {
459
+ const result = await agentCommand({
460
+ message: params.prompt,
461
+ agentId,
462
+ model: params.model,
463
+ json: false
464
+ }, {
465
+ ...defaultRuntime,
466
+ log: () => {}
467
+ }, createDefaultDeps());
468
+ return {
469
+ ok: true,
470
+ capability: "model.run",
471
+ transport: "local",
472
+ provider: result?.meta?.agentMeta?.provider,
473
+ model: result?.meta?.agentMeta?.model,
474
+ attempts: [],
475
+ outputs: (result?.payloads ?? []).map((payload) => ({
476
+ text: payload.text,
477
+ mediaUrl: payload.mediaUrl,
478
+ mediaUrls: payload.mediaUrls
479
+ }))
480
+ };
481
+ }
482
+ const { provider, model } = resolveModelRefOverride(params.model);
483
+ const response = await callGateway({
484
+ method: "agent",
485
+ params: {
486
+ agentId,
487
+ message: params.prompt,
488
+ provider,
489
+ model,
490
+ idempotencyKey: randomIdempotencyKey()
491
+ },
492
+ expectFinal: true,
493
+ timeoutMs: 12e4,
494
+ clientName: GATEWAY_CLIENT_NAMES.CLI,
495
+ mode: GATEWAY_CLIENT_MODES.CLI
496
+ });
497
+ return {
498
+ ok: true,
499
+ capability: "model.run",
500
+ transport: "gateway",
501
+ provider: response?.result?.meta?.agentMeta?.provider,
502
+ model: response?.result?.meta?.agentMeta?.model,
503
+ attempts: [],
504
+ outputs: (response?.result?.payloads ?? []).map((payload) => ({
505
+ text: payload.text,
506
+ mediaUrl: payload.mediaUrl,
507
+ mediaUrls: payload.mediaUrls
508
+ }))
509
+ };
510
+ }
511
+ async function buildModelProviders() {
512
+ const cfg = loadConfig();
513
+ const catalog = await loadModelCatalog({ config: cfg });
514
+ const selectedProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.model));
515
+ const grouped = /* @__PURE__ */ new Map();
516
+ for (const entry of catalog) {
517
+ const current = grouped.get(entry.provider) ?? {
518
+ provider: entry.provider,
519
+ count: 0,
520
+ defaults: [],
521
+ available: true,
522
+ configured: providerHasGenericConfig({
523
+ cfg,
524
+ providerId: entry.provider
525
+ }),
526
+ selected: selectedProvider === entry.provider
527
+ };
528
+ current.count += 1;
529
+ if (current.defaults.length < 3) current.defaults.push(entry.id);
530
+ grouped.set(entry.provider, current);
531
+ }
532
+ return [...grouped.values()].toSorted((a, b) => a.provider.localeCompare(b.provider));
533
+ }
534
+ async function runModelAuthStatus() {
535
+ const captured = [];
536
+ await modelsStatusCommand({ json: true }, {
537
+ log: (...args) => captured.push(args.join(" ")),
538
+ error: (message) => {
539
+ throw message instanceof Error ? message : new Error(String(message));
540
+ },
541
+ exit: (code) => {
542
+ throw new Error(`exit ${code}`);
543
+ }
544
+ });
545
+ const raw = captured.find((line) => line.trim().startsWith("{"));
546
+ return raw ? JSON.parse(raw) : {};
547
+ }
548
+ async function runModelAuthLogout(provider) {
549
+ const cfg = loadConfig();
550
+ const agentDir = resolveAgentDir(cfg, resolveDefaultAgentId(cfg));
551
+ const profileIds = listProfilesForProvider(loadAuthProfileStoreForRuntime(agentDir), provider);
552
+ if (!await updateAuthProfileStoreWithLock({
553
+ agentDir,
554
+ updater: (nextStore) => {
555
+ let changed = false;
556
+ for (const profileId of profileIds) {
557
+ if (nextStore.profiles[profileId]) {
558
+ delete nextStore.profiles[profileId];
559
+ changed = true;
560
+ }
561
+ if (nextStore.usageStats?.[profileId]) {
562
+ delete nextStore.usageStats[profileId];
563
+ changed = true;
564
+ }
565
+ }
566
+ if (nextStore.order?.[provider]) {
567
+ delete nextStore.order[provider];
568
+ changed = true;
569
+ }
570
+ if (nextStore.lastGood?.[provider]) {
571
+ delete nextStore.lastGood[provider];
572
+ changed = true;
573
+ }
574
+ return changed;
575
+ }
576
+ })) throw new Error(`Failed to remove saved auth profiles for provider ${provider}.`);
577
+ return {
578
+ provider,
579
+ removedProfiles: profileIds
580
+ };
581
+ }
582
+ async function runImageGenerate(params) {
583
+ const cfg = loadConfig();
584
+ const agentDir = resolveAgentDir(cfg, resolveDefaultAgentId(cfg));
585
+ const inputImages = params.file && params.file.length > 0 ? await Promise.all((await readInputFiles(params.file)).map(async (entry) => ({
586
+ buffer: entry.buffer,
587
+ fileName: path.basename(entry.path),
588
+ mimeType: await detectMime({
589
+ buffer: entry.buffer,
590
+ filePath: entry.path
591
+ }) ?? "image/png"
592
+ }))) : void 0;
593
+ const result = await generateImage({
594
+ cfg,
595
+ agentDir,
596
+ prompt: params.prompt,
597
+ modelOverride: params.model,
598
+ count: params.count,
599
+ size: params.size,
600
+ aspectRatio: params.aspectRatio,
601
+ resolution: params.resolution,
602
+ inputImages
603
+ });
604
+ const outputs = await Promise.all(result.images.map(async (image, index) => {
605
+ const written = await writeOutputAsset({
606
+ buffer: image.buffer,
607
+ mimeType: image.mimeType,
608
+ originalFilename: image.fileName,
609
+ outputPath: params.output,
610
+ outputIndex: index,
611
+ outputCount: result.images.length,
612
+ subdir: "generated"
613
+ });
614
+ const metadata = await getImageMetadata(image.buffer).catch(() => void 0);
615
+ return {
616
+ ...written,
617
+ width: metadata?.width,
618
+ height: metadata?.height,
619
+ revisedPrompt: image.revisedPrompt
620
+ };
621
+ }));
622
+ return {
623
+ ok: true,
624
+ capability: params.capability,
625
+ transport: "local",
626
+ provider: result.provider,
627
+ model: result.model,
628
+ attempts: result.attempts,
629
+ outputs
630
+ };
631
+ }
632
+ async function runImageDescribe(params) {
633
+ const cfg = loadConfig();
634
+ const agentDir = resolveAgentDir(cfg, resolveDefaultAgentId(cfg));
635
+ const activeModel = requireProviderModelOverride(params.model);
636
+ const outputs = await Promise.all(params.files.map(async (filePath) => {
637
+ const resolvedPath = path.resolve(filePath);
638
+ const result = activeModel ? await describeImageFileWithModel({
639
+ filePath: resolvedPath,
640
+ cfg,
641
+ agentDir,
642
+ provider: activeModel.provider,
643
+ model: activeModel.model,
644
+ prompt: "Describe the image."
645
+ }) : await describeImageFile({
646
+ filePath: resolvedPath,
647
+ cfg,
648
+ agentDir
649
+ });
650
+ if (!result.text) throw new Error(`No description returned for image: ${resolvedPath}`);
651
+ return {
652
+ path: resolvedPath,
653
+ text: result.text,
654
+ provider: activeModel?.provider ?? ("provider" in result ? result.provider : void 0),
655
+ model: result.model,
656
+ kind: "image.description"
657
+ };
658
+ }));
659
+ return {
660
+ ok: true,
661
+ capability: params.capability,
662
+ transport: "local",
663
+ provider: outputs[0]?.provider,
664
+ model: outputs[0]?.model,
665
+ attempts: [],
666
+ outputs
667
+ };
668
+ }
669
+ async function runAudioTranscribe(params) {
670
+ const cfg = loadConfig();
671
+ const activeModel = requireProviderModelOverride(params.model);
672
+ const result = await transcribeAudioFile({
673
+ filePath: path.resolve(params.file),
674
+ cfg,
675
+ language: params.language,
676
+ activeModel,
677
+ prompt: params.prompt
678
+ });
679
+ if (!result.text) throw new Error(`No transcript returned for audio: ${path.resolve(params.file)}`);
680
+ return {
681
+ ok: true,
682
+ capability: "audio.transcribe",
683
+ transport: "local",
684
+ attempts: [],
685
+ outputs: [{
686
+ path: path.resolve(params.file),
687
+ text: result.text,
688
+ kind: "audio.transcription"
689
+ }]
690
+ };
691
+ }
692
+ async function runVideoGenerate(params) {
693
+ const cfg = loadConfig();
694
+ const result = await generateVideo({
695
+ cfg,
696
+ agentDir: resolveAgentDir(cfg, resolveDefaultAgentId(cfg)),
697
+ prompt: params.prompt,
698
+ modelOverride: params.model
699
+ });
700
+ const outputs = await Promise.all(result.videos.map(async (video, index) => {
701
+ if (!video.buffer && !video.url) throw new Error(`Video asset at index ${index} has neither buffer nor url`);
702
+ let videoBuffer = video.buffer;
703
+ if (!videoBuffer && video.url) {
704
+ const response = await fetch(video.url, { signal: AbortSignal.timeout(12e4) });
705
+ if (!response.ok) throw new Error(`Failed to download video from ${video.url}: ${response.status}`);
706
+ if (params.output && response.body) {
707
+ const ext = extensionForMime(normalizeMimeType(video.mimeType)) || path.extname(video.fileName ?? "") || path.extname(params.output ?? "");
708
+ const resolvedOutput = path.resolve(params.output);
709
+ const parsed = path.parse(resolvedOutput);
710
+ const filePath = result.videos.length <= 1 ? path.join(parsed.dir, `${parsed.name}${ext}`) : path.join(parsed.dir, `${parsed.name}-${String(index + 1)}${ext}`);
711
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
712
+ await pipeline(Readable.fromWeb(response.body), createWriteStream(filePath));
713
+ const stat = await fs$1.stat(filePath);
714
+ return {
715
+ path: filePath,
716
+ mimeType: video.mimeType,
717
+ size: stat.size
718
+ };
719
+ }
720
+ videoBuffer = Buffer.from(await response.arrayBuffer());
721
+ }
722
+ return { ...await writeOutputAsset({
723
+ buffer: videoBuffer,
724
+ mimeType: video.mimeType,
725
+ originalFilename: video.fileName,
726
+ outputPath: params.output,
727
+ outputIndex: index,
728
+ outputCount: result.videos.length,
729
+ subdir: "generated"
730
+ }) };
731
+ }));
732
+ return {
733
+ ok: true,
734
+ capability: "video.generate",
735
+ transport: "local",
736
+ provider: result.provider,
737
+ model: result.model,
738
+ attempts: result.attempts,
739
+ outputs
740
+ };
741
+ }
742
+ async function runVideoDescribe(params) {
743
+ const cfg = loadConfig();
744
+ const activeModel = requireProviderModelOverride(params.model);
745
+ const result = await describeVideoFile({
746
+ filePath: path.resolve(params.file),
747
+ cfg,
748
+ activeModel
749
+ });
750
+ if (!result.text) throw new Error(`No description returned for video: ${path.resolve(params.file)}`);
751
+ return {
752
+ ok: true,
753
+ capability: "video.describe",
754
+ transport: "local",
755
+ provider: result.provider,
756
+ model: result.model,
757
+ attempts: [],
758
+ outputs: [{
759
+ path: path.resolve(params.file),
760
+ text: result.text,
761
+ kind: "video.description"
762
+ }]
763
+ };
764
+ }
765
+ async function runTtsConvert(params) {
766
+ if (params.transport === "gateway") {
767
+ const gatewayConnection = buildGatewayConnectionDetailsWithResolvers({ config: loadConfig() });
768
+ const result = await callGateway({
769
+ method: "tts.convert",
770
+ params: {
771
+ text: params.text,
772
+ channel: params.channel,
773
+ provider: normalizeOptionalString(params.provider),
774
+ modelId: params.modelId,
775
+ voiceId: params.voiceId
776
+ },
777
+ timeoutMs: 12e4
778
+ });
779
+ let outputPath = result.audioPath;
780
+ if (params.output && result.audioPath) {
781
+ const gatewayHost = new URL(gatewayConnection.url).hostname;
782
+ if (!isLoopbackHost(gatewayHost)) throw new Error(`--output is not supported for remote gateway TTS yet (gateway target: ${gatewayConnection.url}).`);
783
+ const target = path.resolve(params.output);
784
+ await fs$1.mkdir(path.dirname(target), { recursive: true });
785
+ await fs$1.copyFile(result.audioPath, target);
786
+ outputPath = target;
787
+ }
788
+ return {
789
+ ok: true,
790
+ capability: "tts.convert",
791
+ transport: "gateway",
792
+ provider: result.provider,
793
+ attempts: [],
794
+ outputs: [{
795
+ path: outputPath,
796
+ format: result.outputFormat,
797
+ voiceCompatible: result.voiceCompatible
798
+ }]
799
+ };
800
+ }
801
+ const cfg = loadConfig();
802
+ const overrides = resolveExplicitTtsOverrides({
803
+ cfg,
804
+ provider: params.provider,
805
+ modelId: params.modelId,
806
+ voiceId: params.voiceId
807
+ });
808
+ const hasExplicitSelection = Boolean(overrides.provider || normalizeOptionalString(params.modelId) || normalizeOptionalString(params.voiceId));
809
+ const result = await textToSpeech({
810
+ text: params.text,
811
+ cfg,
812
+ channel: params.channel,
813
+ overrides,
814
+ disableFallback: hasExplicitSelection
815
+ });
816
+ if (!result.success || !result.audioPath) throw new Error(result.error ?? "TTS conversion failed");
817
+ let outputPath = result.audioPath;
818
+ if (params.output) {
819
+ const target = path.resolve(params.output);
820
+ await fs$1.mkdir(path.dirname(target), { recursive: true });
821
+ await fs$1.copyFile(result.audioPath, target);
822
+ outputPath = target;
823
+ }
824
+ return {
825
+ ok: true,
826
+ capability: "tts.convert",
827
+ transport: "local",
828
+ provider: result.provider,
829
+ attempts: result.attempts ?? [],
830
+ outputs: [{
831
+ path: outputPath,
832
+ format: result.outputFormat,
833
+ voiceCompatible: result.voiceCompatible
834
+ }]
835
+ };
836
+ }
837
+ async function runTtsProviders(transport) {
838
+ const cfg = loadConfig();
839
+ if (transport === "gateway") {
840
+ const payload = await callGateway({
841
+ method: "tts.providers",
842
+ timeoutMs: 3e4
843
+ });
844
+ return {
845
+ ...payload,
846
+ providers: (payload.providers ?? []).map((provider) => {
847
+ const id = typeof provider.id === "string" ? provider.id : "";
848
+ return Object.assign({
849
+ available: true,
850
+ configured: typeof provider.configured === `boolean` ? provider.configured : providerHasGenericConfig({
851
+ cfg,
852
+ providerId: id
853
+ }),
854
+ selected: Boolean(id && payload.active === id)
855
+ }, provider);
856
+ })
857
+ };
858
+ }
859
+ const config = resolveTtsConfig(cfg);
860
+ const active = getTtsProvider(config, resolveTtsPrefsPath(config));
861
+ return {
862
+ providers: listSpeechProviders(cfg).map((provider) => ({
863
+ available: true,
864
+ configured: active === provider.id || providerHasGenericConfig({
865
+ cfg,
866
+ providerId: provider.id
867
+ }),
868
+ selected: active === provider.id,
869
+ id: provider.id,
870
+ name: provider.label,
871
+ models: [...provider.models ?? []],
872
+ voices: [...provider.voices ?? []]
873
+ })),
874
+ active
875
+ };
876
+ }
877
+ async function runTtsVoices(providerRaw) {
878
+ const cfg = loadConfig();
879
+ const config = resolveTtsConfig(cfg);
880
+ const prefsPath = resolveTtsPrefsPath(config);
881
+ return await listSpeechVoices({
882
+ provider: normalizeOptionalString(providerRaw) || getTtsProvider(config, prefsPath),
883
+ cfg,
884
+ config
885
+ });
886
+ }
887
+ async function runTtsStateMutation(params) {
888
+ if (params.transport === "gateway") return await callGateway({
889
+ method: params.capability === "tts.enable" ? "tts.enable" : params.capability === "tts.disable" ? "tts.disable" : "tts.setProvider",
890
+ params: params.provider ? { provider: params.provider } : void 0,
891
+ timeoutMs: 3e4
892
+ });
893
+ const cfg = loadConfig();
894
+ const prefsPath = resolveTtsPrefsPath(resolveTtsConfig(cfg));
895
+ if (params.capability === "tts.enable") {
896
+ setTtsEnabled(prefsPath, true);
897
+ return { enabled: true };
898
+ }
899
+ if (params.capability === "tts.disable") {
900
+ setTtsEnabled(prefsPath, false);
901
+ return { enabled: false };
902
+ }
903
+ if (!params.provider) throw new Error("--provider is required");
904
+ const provider = canonicalizeSpeechProviderId(params.provider, cfg);
905
+ if (!provider) throw new Error(`Unknown speech provider: ${params.provider}`);
906
+ setTtsProvider(prefsPath, provider);
907
+ return { provider };
908
+ }
909
+ async function runWebSearchCommand(params) {
910
+ const result = await runWebSearch({
911
+ config: loadConfig(),
912
+ providerId: params.provider,
913
+ args: {
914
+ query: params.query,
915
+ count: params.limit,
916
+ limit: params.limit
917
+ }
918
+ });
919
+ return {
920
+ ok: true,
921
+ capability: "web.search",
922
+ transport: "local",
923
+ provider: result.provider,
924
+ attempts: [],
925
+ outputs: [{ result: result.result }]
926
+ };
927
+ }
928
+ async function runWebFetchCommand(params) {
929
+ const resolved = resolveWebFetchDefinition({
930
+ config: loadConfig(),
931
+ providerId: params.provider
932
+ });
933
+ if (!resolved) throw new Error("web.fetch is disabled or no provider is available.");
934
+ const result = await resolved.definition.execute({
935
+ url: params.url,
936
+ format: params.format
937
+ });
938
+ return {
939
+ ok: true,
940
+ capability: "web.fetch",
941
+ transport: "local",
942
+ provider: resolved.provider.id,
943
+ attempts: [],
944
+ outputs: [{ result }]
945
+ };
946
+ }
947
+ async function runMemoryEmbeddingCreate(params) {
948
+ ensureMemoryEmbeddingProvidersRegistered();
949
+ const cfg = loadConfig();
950
+ const modelRef = resolveModelRefOverride(params.model);
951
+ const requestedProvider = normalizeOptionalString(params.provider) || modelRef.provider || "auto";
952
+ const result = await createEmbeddingProvider({
953
+ config: cfg,
954
+ agentDir: resolveAgentDir(cfg, resolveDefaultAgentId(cfg)),
955
+ provider: requestedProvider,
956
+ fallback: "none",
957
+ model: modelRef.model ?? ""
958
+ });
959
+ if (!result.provider) throw new Error(result.providerUnavailableReason ?? "No embedding provider available.");
960
+ const embeddings = await result.provider.embedBatch(params.texts);
961
+ return {
962
+ ok: true,
963
+ capability: "embedding.create",
964
+ transport: "local",
965
+ provider: result.provider.id,
966
+ model: result.provider.model,
967
+ attempts: result.fallbackFrom ? [{
968
+ provider: result.fallbackFrom,
969
+ outcome: "failed",
970
+ error: result.fallbackReason
971
+ }] : [],
972
+ outputs: embeddings.map((embedding, index) => ({
973
+ text: params.texts[index],
974
+ embedding,
975
+ dimensions: embedding.length
976
+ }))
977
+ };
978
+ }
979
+ function ensureMemoryEmbeddingProvidersRegistered() {
980
+ if (listMemoryEmbeddingProviders().length > 0) return;
981
+ registerBuiltInMemoryEmbeddingProviders({ registerMemoryEmbeddingProvider });
982
+ }
983
+ function registerCapabilityListAndInspect(capability) {
984
+ capability.command("list").description("List canonical capability ids and supported transports").option("--json", "Output JSON", false).action(async (opts) => {
985
+ await runCommandWithRuntime(defaultRuntime, async () => {
986
+ const result = CAPABILITY_METADATA.map((entry) => ({
987
+ id: entry.id,
988
+ transports: entry.transports,
989
+ description: entry.description
990
+ }));
991
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
992
+ });
993
+ });
994
+ capability.command("inspect").description("Inspect one canonical capability id").requiredOption("--name <capability>", "Capability id").option("--json", "Output JSON", false).action(async (opts) => {
995
+ await runCommandWithRuntime(defaultRuntime, async () => {
996
+ const entry = findCapabilityMetadata(String(opts.name));
997
+ if (!entry) throw new Error(`Unknown capability: ${String(opts.name)}`);
998
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), entry, (value) => JSON.stringify(value, null, 2));
999
+ });
1000
+ });
1001
+ }
1002
+ function registerCapabilityCli(program) {
1003
+ removeCommandByName(program, "infer");
1004
+ removeCommandByName(program, "capability");
1005
+ 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.genesis.ai/cli/infer")}\n`);
1006
+ registerCapabilityListAndInspect(capability);
1007
+ const model = capability.command("model").description("Text inference and model catalog commands");
1008
+ model.command("run").description("Run a one-shot model turn").requiredOption("--prompt <text>", "Prompt text").option("--model <provider/model>", "Model override").option("--local", "Force local execution", false).option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1009
+ await runCommandWithRuntime(defaultRuntime, async () => {
1010
+ const transport = resolveTransport({
1011
+ local: Boolean(opts.local),
1012
+ gateway: Boolean(opts.gateway),
1013
+ supported: ["local", "gateway"],
1014
+ defaultTransport: "local"
1015
+ });
1016
+ const result = await runModelRun({
1017
+ prompt: String(opts.prompt),
1018
+ model: opts.model,
1019
+ transport
1020
+ });
1021
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1022
+ });
1023
+ });
1024
+ model.command("list").description("List known models").option("--json", "Output JSON", false).action(async (opts) => {
1025
+ await runCommandWithRuntime(defaultRuntime, async () => {
1026
+ const result = await loadModelCatalog({ config: loadConfig() });
1027
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1028
+ });
1029
+ });
1030
+ model.command("inspect").description("Inspect one model catalog entry").requiredOption("--model <provider/model>", "Model id").option("--json", "Output JSON", false).action(async (opts) => {
1031
+ await runCommandWithRuntime(defaultRuntime, async () => {
1032
+ const target = normalizeStringifiedOptionalString(opts.model) ?? "";
1033
+ const catalog = await loadModelCatalog({ config: loadConfig() });
1034
+ const entry = catalog.find((candidate) => `${candidate.provider}/${candidate.id}` === target) ?? catalog.find((candidate) => candidate.id === target);
1035
+ if (!entry) throw new Error(`Model not found: ${target}`);
1036
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), entry, (value) => JSON.stringify(value, null, 2));
1037
+ });
1038
+ });
1039
+ model.command("providers").description("List model providers from the catalog").option("--json", "Output JSON", false).action(async (opts) => {
1040
+ await runCommandWithRuntime(defaultRuntime, async () => {
1041
+ const result = await buildModelProviders();
1042
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1043
+ });
1044
+ });
1045
+ const modelAuth = model.command("auth").description("Provider auth helpers");
1046
+ modelAuth.command("login").description("Run provider auth login").requiredOption("--provider <id>", "Provider id").action(async (opts) => {
1047
+ await runCommandWithRuntime(defaultRuntime, async () => {
1048
+ await modelsAuthLoginCommand({ provider: String(opts.provider) }, defaultRuntime);
1049
+ });
1050
+ });
1051
+ modelAuth.command("logout").description("Remove saved auth profiles for one provider").requiredOption("--provider <id>", "Provider id").option("--json", "Output JSON", false).action(async (opts) => {
1052
+ await runCommandWithRuntime(defaultRuntime, async () => {
1053
+ const result = await runModelAuthLogout(String(opts.provider));
1054
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1055
+ });
1056
+ });
1057
+ modelAuth.command("status").description("Show configured auth state").option("--json", "Output JSON", false).action(async (opts) => {
1058
+ await runCommandWithRuntime(defaultRuntime, async () => {
1059
+ const result = await runModelAuthStatus();
1060
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1061
+ });
1062
+ });
1063
+ const image = capability.command("image").description("Image generation and description");
1064
+ 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 <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1065
+ await runCommandWithRuntime(defaultRuntime, async () => {
1066
+ const result = await runImageGenerate({
1067
+ capability: "image.generate",
1068
+ prompt: String(opts.prompt),
1069
+ model: opts.model,
1070
+ count: opts.count ? Number.parseInt(String(opts.count), 10) : void 0,
1071
+ size: opts.size,
1072
+ aspectRatio: opts.aspectRatio,
1073
+ resolution: opts.resolution,
1074
+ output: opts.output
1075
+ });
1076
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1077
+ });
1078
+ });
1079
+ 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("--output <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1080
+ await runCommandWithRuntime(defaultRuntime, async () => {
1081
+ const files = Array.isArray(opts.file) ? opts.file : [String(opts.file)];
1082
+ const result = await runImageGenerate({
1083
+ capability: "image.edit",
1084
+ prompt: String(opts.prompt),
1085
+ model: opts.model,
1086
+ file: files,
1087
+ output: opts.output
1088
+ });
1089
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1090
+ });
1091
+ });
1092
+ image.command("describe").description("Describe one image file").requiredOption("--file <path>", "Image file").option("--model <provider/model>", "Model override").option("--json", "Output JSON", false).action(async (opts) => {
1093
+ await runCommandWithRuntime(defaultRuntime, async () => {
1094
+ const result = await runImageDescribe({
1095
+ capability: "image.describe",
1096
+ files: [String(opts.file)],
1097
+ model: opts.model
1098
+ });
1099
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1100
+ });
1101
+ });
1102
+ image.command("describe-many").description("Describe multiple image files").requiredOption("--file <path>", "Image file", collectOption, []).option("--model <provider/model>", "Model override").option("--json", "Output JSON", false).action(async (opts) => {
1103
+ await runCommandWithRuntime(defaultRuntime, async () => {
1104
+ const result = await runImageDescribe({
1105
+ capability: "image.describe-many",
1106
+ files: opts.file,
1107
+ model: opts.model
1108
+ });
1109
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1110
+ });
1111
+ });
1112
+ image.command("providers").description("List image generation providers").option("--json", "Output JSON", false).action(async (opts) => {
1113
+ await runCommandWithRuntime(defaultRuntime, async () => {
1114
+ const cfg = loadConfig();
1115
+ const selectedProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.imageGenerationModel));
1116
+ const result = listRuntimeImageGenerationProviders({ config: cfg }).map((provider) => ({
1117
+ available: true,
1118
+ configured: selectedProvider === provider.id || providerHasGenericConfig({
1119
+ cfg,
1120
+ providerId: provider.id
1121
+ }),
1122
+ selected: selectedProvider === provider.id,
1123
+ id: provider.id,
1124
+ label: provider.label,
1125
+ defaultModel: provider.defaultModel,
1126
+ models: provider.models ?? [],
1127
+ capabilities: provider.capabilities
1128
+ }));
1129
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1130
+ });
1131
+ });
1132
+ const audio = capability.command("audio").description("Audio transcription");
1133
+ 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) => {
1134
+ await runCommandWithRuntime(defaultRuntime, async () => {
1135
+ const result = await runAudioTranscribe({
1136
+ file: String(opts.file),
1137
+ language: opts.language,
1138
+ model: opts.model,
1139
+ prompt: opts.prompt
1140
+ });
1141
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1142
+ });
1143
+ });
1144
+ audio.command("providers").description("List audio transcription providers").option("--json", "Output JSON", false).action(async (opts) => {
1145
+ await runCommandWithRuntime(defaultRuntime, async () => {
1146
+ const cfg = loadConfig();
1147
+ const providers = [...buildMediaUnderstandingRegistry(void 0, cfg).values()].filter((provider) => provider.capabilities?.includes("audio")).map((provider) => ({
1148
+ available: true,
1149
+ configured: providerHasGenericConfig({
1150
+ cfg,
1151
+ providerId: provider.id,
1152
+ envVars: getProviderEnvVars(provider.id, {
1153
+ config: cfg,
1154
+ includeUntrustedWorkspacePlugins: false
1155
+ })
1156
+ }),
1157
+ selected: false,
1158
+ id: provider.id,
1159
+ capabilities: provider.capabilities,
1160
+ defaultModels: provider.defaultModels
1161
+ }));
1162
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), providers, providerSummaryText);
1163
+ });
1164
+ });
1165
+ const tts = capability.command("tts").description("Text to speech");
1166
+ 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) => {
1167
+ await runCommandWithRuntime(defaultRuntime, async () => {
1168
+ const transport = resolveTransport({
1169
+ local: Boolean(opts.local),
1170
+ gateway: Boolean(opts.gateway),
1171
+ supported: ["local", "gateway"],
1172
+ defaultTransport: "local"
1173
+ });
1174
+ const modelRef = resolveModelRefOverride(opts.model);
1175
+ if (opts.model && !modelRef.provider) throw new Error("TTS model overrides must use the form <provider/model>.");
1176
+ const result = await runTtsConvert({
1177
+ text: String(opts.text),
1178
+ channel: opts.channel,
1179
+ provider: modelRef.provider,
1180
+ modelId: modelRef.provider ? modelRef.model : void 0,
1181
+ voiceId: opts.voice,
1182
+ output: opts.output,
1183
+ transport
1184
+ });
1185
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1186
+ });
1187
+ });
1188
+ tts.command("voices").description("List voices for a TTS provider").option("--provider <id>", "Speech provider id").option("--json", "Output JSON", false).action(async (opts) => {
1189
+ await runCommandWithRuntime(defaultRuntime, async () => {
1190
+ const voices = await runTtsVoices(opts.provider);
1191
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), voices, providerSummaryText);
1192
+ });
1193
+ });
1194
+ 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) => {
1195
+ await runCommandWithRuntime(defaultRuntime, async () => {
1196
+ const result = await runTtsProviders(resolveTransport({
1197
+ local: Boolean(opts.local),
1198
+ gateway: Boolean(opts.gateway),
1199
+ supported: ["local", "gateway"],
1200
+ defaultTransport: "local"
1201
+ }));
1202
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1203
+ });
1204
+ });
1205
+ tts.command("status").description("Show TTS status").option("--gateway", "Force gateway execution", false).option("--json", "Output JSON", false).action(async (opts) => {
1206
+ await runCommandWithRuntime(defaultRuntime, async () => {
1207
+ const transport = resolveTransport({
1208
+ gateway: Boolean(opts.gateway),
1209
+ supported: ["gateway"],
1210
+ defaultTransport: "gateway"
1211
+ });
1212
+ const result = await callGateway({
1213
+ method: "tts.status",
1214
+ timeoutMs: 3e4
1215
+ });
1216
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), {
1217
+ transport,
1218
+ ...result
1219
+ }, (value) => JSON.stringify(value, null, 2));
1220
+ });
1221
+ });
1222
+ 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) => {
1223
+ await runCommandWithRuntime(defaultRuntime, async () => {
1224
+ const result = await runTtsStateMutation({
1225
+ capability: capabilityId,
1226
+ transport: resolveTransport({
1227
+ local: Boolean(opts.local),
1228
+ gateway: Boolean(opts.gateway),
1229
+ supported: ["local", "gateway"],
1230
+ defaultTransport: "gateway"
1231
+ })
1232
+ });
1233
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1234
+ });
1235
+ });
1236
+ 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) => {
1237
+ await runCommandWithRuntime(defaultRuntime, async () => {
1238
+ const transport = resolveTransport({
1239
+ local: Boolean(opts.local),
1240
+ gateway: Boolean(opts.gateway),
1241
+ supported: ["local", "gateway"],
1242
+ defaultTransport: "gateway"
1243
+ });
1244
+ const result = await runTtsStateMutation({
1245
+ capability: "tts.set-provider",
1246
+ provider: String(opts.provider),
1247
+ transport
1248
+ });
1249
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1250
+ });
1251
+ });
1252
+ const video = capability.command("video").description("Video generation and description");
1253
+ video.command("generate").description("Generate video").requiredOption("--prompt <text>", "Prompt text").option("--model <provider/model>", "Model override").option("--output <path>", "Output path").option("--json", "Output JSON", false).action(async (opts) => {
1254
+ await runCommandWithRuntime(defaultRuntime, async () => {
1255
+ const result = await runVideoGenerate({
1256
+ prompt: String(opts.prompt),
1257
+ model: opts.model,
1258
+ output: opts.output
1259
+ });
1260
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1261
+ });
1262
+ });
1263
+ 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) => {
1264
+ await runCommandWithRuntime(defaultRuntime, async () => {
1265
+ const result = await runVideoDescribe({
1266
+ file: String(opts.file),
1267
+ model: opts.model
1268
+ });
1269
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1270
+ });
1271
+ });
1272
+ video.command("providers").description("List video generation and description providers").option("--json", "Output JSON", false).action(async (opts) => {
1273
+ await runCommandWithRuntime(defaultRuntime, async () => {
1274
+ const cfg = loadConfig();
1275
+ const selectedGenerationProvider = resolveSelectedProviderFromModelRef(resolveAgentModelPrimaryValue(cfg.agents?.defaults?.videoGenerationModel));
1276
+ const result = {
1277
+ generation: listRuntimeVideoGenerationProviders({ config: cfg }).map((provider) => ({
1278
+ available: true,
1279
+ configured: selectedGenerationProvider === provider.id || providerHasGenericConfig({
1280
+ cfg,
1281
+ providerId: provider.id
1282
+ }),
1283
+ selected: selectedGenerationProvider === provider.id,
1284
+ id: provider.id,
1285
+ label: provider.label,
1286
+ defaultModel: provider.defaultModel,
1287
+ models: provider.models ?? [],
1288
+ capabilities: provider.capabilities
1289
+ })),
1290
+ description: [...buildMediaUnderstandingRegistry(void 0, cfg).values()].filter((provider) => provider.capabilities?.includes("video")).map((provider) => ({
1291
+ available: true,
1292
+ configured: providerHasGenericConfig({
1293
+ cfg,
1294
+ providerId: provider.id
1295
+ }),
1296
+ selected: false,
1297
+ id: provider.id,
1298
+ capabilities: provider.capabilities,
1299
+ defaultModels: provider.defaultModels
1300
+ }))
1301
+ };
1302
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1303
+ });
1304
+ });
1305
+ const web = capability.command("web").description("Web capabilities");
1306
+ 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) => {
1307
+ await runCommandWithRuntime(defaultRuntime, async () => {
1308
+ const result = await runWebSearchCommand({
1309
+ query: String(opts.query),
1310
+ provider: opts.provider,
1311
+ limit: opts.limit ? Number.parseInt(String(opts.limit), 10) : void 0
1312
+ });
1313
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1314
+ });
1315
+ });
1316
+ 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) => {
1317
+ await runCommandWithRuntime(defaultRuntime, async () => {
1318
+ const result = await runWebFetchCommand({
1319
+ url: String(opts.url),
1320
+ provider: opts.provider,
1321
+ format: opts.format
1322
+ });
1323
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1324
+ });
1325
+ });
1326
+ web.command("providers").description("List web providers").option("--json", "Output JSON", false).action(async (opts) => {
1327
+ await runCommandWithRuntime(defaultRuntime, async () => {
1328
+ const cfg = loadConfig();
1329
+ const selectedSearchProvider = typeof cfg.tools?.web?.search?.provider === "string" ? normalizeLowercaseStringOrEmpty(cfg.tools.web.search.provider) : "";
1330
+ const selectedFetchProvider = typeof cfg.tools?.web?.fetch?.provider === "string" ? normalizeLowercaseStringOrEmpty(cfg.tools.web.fetch.provider) : "";
1331
+ const result = {
1332
+ search: listWebSearchProviders({ config: cfg }).map((provider) => ({
1333
+ available: true,
1334
+ configured: isWebSearchProviderConfigured({
1335
+ provider,
1336
+ config: cfg
1337
+ }),
1338
+ selected: provider.id === selectedSearchProvider,
1339
+ id: provider.id,
1340
+ envVars: provider.envVars
1341
+ })),
1342
+ fetch: listWebFetchProviders({ config: cfg }).map((provider) => ({
1343
+ available: true,
1344
+ configured: isWebFetchProviderConfigured({
1345
+ provider,
1346
+ config: cfg
1347
+ }),
1348
+ selected: provider.id === selectedFetchProvider,
1349
+ id: provider.id,
1350
+ envVars: provider.envVars
1351
+ }))
1352
+ };
1353
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, (value) => JSON.stringify(value, null, 2));
1354
+ });
1355
+ });
1356
+ const embedding = capability.command("embedding").description("Embedding providers");
1357
+ 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) => {
1358
+ await runCommandWithRuntime(defaultRuntime, async () => {
1359
+ const result = await runMemoryEmbeddingCreate({
1360
+ texts: opts.text,
1361
+ provider: opts.provider,
1362
+ model: opts.model
1363
+ });
1364
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, formatEnvelopeForText);
1365
+ });
1366
+ });
1367
+ embedding.command("providers").description("List embedding providers").option("--json", "Output JSON", false).action(async (opts) => {
1368
+ await runCommandWithRuntime(defaultRuntime, async () => {
1369
+ ensureMemoryEmbeddingProvidersRegistered();
1370
+ const cfg = loadConfig();
1371
+ const agentId = resolveDefaultAgentId(cfg);
1372
+ const resolvedMemory = resolveMemorySearchConfig(cfg, agentId);
1373
+ const selectedProvider = resolvedMemory?.provider && resolvedMemory.provider !== "auto" ? resolvedMemory.provider : void 0;
1374
+ const autoSelectedProvider = resolvedMemory?.provider === "auto" ? (await createEmbeddingProvider({
1375
+ config: cfg,
1376
+ agentDir: resolveAgentDir(cfg, agentId),
1377
+ provider: "auto",
1378
+ fallback: "none",
1379
+ model: resolvedMemory.model,
1380
+ local: resolvedMemory.local,
1381
+ remote: resolvedMemory.remote,
1382
+ outputDimensionality: resolvedMemory.outputDimensionality
1383
+ }).catch(() => ({ provider: null })))?.provider?.id : void 0;
1384
+ const result = listMemoryEmbeddingProviders().map((provider) => ({
1385
+ available: true,
1386
+ configured: provider.id === selectedProvider || provider.id === autoSelectedProvider || providerHasGenericConfig({
1387
+ cfg,
1388
+ providerId: provider.id
1389
+ }),
1390
+ selected: provider.id === selectedProvider || provider.id === autoSelectedProvider,
1391
+ id: provider.id,
1392
+ defaultModel: provider.defaultModel,
1393
+ transport: provider.transport,
1394
+ autoSelectPriority: provider.autoSelectPriority
1395
+ }));
1396
+ emitJsonOrText(defaultRuntime, Boolean(opts.json), result, providerSummaryText);
1397
+ });
1398
+ });
1399
+ }
1400
+ //#endregion
1401
+ export { registerCapabilityCli };