@pixelzx/genesis 2026.5.5-2 → 2026.5.5-3

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 (1017) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/dist/.buildstamp +1 -1
  3. package/dist/abort-Yw60gQ-C.js +201 -0
  4. package/dist/abort.runtime-DYQuut_O.js +2 -0
  5. package/dist/abort.runtime.js +1 -1
  6. package/dist/accounts-BSCHGPHp.js +107 -0
  7. package/dist/accounts-Bb0FqxV2.js +104 -0
  8. package/dist/accounts-BjGgx8lz.js +2 -0
  9. package/dist/acp-cli-emMnOaiO.js +2193 -0
  10. package/dist/acp-spawn-BmyUZuJX.js +1093 -0
  11. package/dist/acp-spawn-DPF5zmnN.js +2 -0
  12. package/dist/acp-stateful-target-driver-CJ4JyIHf.js +89 -0
  13. package/dist/action-agents-D1tXt8Kj.js +67 -0
  14. package/dist/action-focus-Bk6AJsNH.js +132 -0
  15. package/dist/action-help-4nFSAuVo.js +7 -0
  16. package/dist/action-info-D-byoefn.js +101 -0
  17. package/dist/action-kill-Bo-NwBVR.js +33 -0
  18. package/dist/action-list-lAa4rlzN.js +21 -0
  19. package/dist/action-log-BasoUC3L.js +30 -0
  20. package/dist/action-send-DwLkiz4x.js +39 -0
  21. package/dist/action-spawn-C70_iR8d.js +47 -0
  22. package/dist/action-unfocus-dUVMx5Fh.js +29 -0
  23. package/dist/actions.runtime-BdSo6rN8.js +18 -0
  24. package/dist/actions.runtime-BvY67XKu.js +5 -0
  25. package/dist/actions.runtime.js +1 -1
  26. package/dist/agent-DDBv3Vgl.js +2 -0
  27. package/dist/agent-command-DC7I_88W.js +874 -0
  28. package/dist/agent-harness-runtime-TA6YH7Ud.js +144 -0
  29. package/dist/agent-runner-utils-CMe-JIDq.js +239 -0
  30. package/dist/agent-runner.runtime-le6AmJRw.js +3455 -0
  31. package/dist/agent-runner.runtime.js +1 -1
  32. package/dist/agent-runtime-CONy4fDD.js +18 -0
  33. package/dist/agents-BlbOM4XW.js +953 -0
  34. package/dist/agents-Byj8CDAP.js +5 -0
  35. package/dist/aliases-C3Ks5x38.js +2 -0
  36. package/dist/aliases-CxBcx9gF.js +96 -0
  37. package/dist/api-CLoj7nYH.js +3 -0
  38. package/dist/api-DZiRkVPk.js +5 -0
  39. package/dist/api-_Y4nIHNo.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-Bh0onoHD.js +439 -0
  43. package/dist/approval-native-runtime-IYFyT8Hf.js +729 -0
  44. package/dist/attempt-execution.runtime-CpL2tsYd.js +509 -0
  45. package/dist/attempt-execution.runtime.js +1 -1
  46. package/dist/attempt.prompt-helpers-Gx9nGKbW.js +221 -0
  47. package/dist/attempt.tool-run-context-BmuljBMs.js +933 -0
  48. package/dist/audit-CsjqOEVE.js +939 -0
  49. package/dist/audit.runtime-BybEaYH4.js +7 -0
  50. package/dist/audit.runtime.js +1 -1
  51. package/dist/auth-BFbLz2gx.js +383 -0
  52. package/dist/auth-DdoNShRm.js +2 -0
  53. package/dist/auth-order-CtO2WQTH.js +2 -0
  54. package/dist/auth-order-zXIiW-Cn.js +96 -0
  55. package/dist/bash-tools-CnDYSbnX.js +2824 -0
  56. package/dist/bash-tools-DiOcKaak.js +3 -0
  57. package/dist/binding-routing-E9Gh_NqO.js +85 -0
  58. package/dist/binding-targets-C5PbBaZ6.js +121 -0
  59. package/dist/bridge-server-DragdaQD.js +113 -0
  60. package/dist/browser-control-auth-D_M31xJ1.js +2 -0
  61. package/dist/browser-node-runtime-Bgu82luB.js +12 -0
  62. package/dist/browser-profiles-C3ffkgOt.js +2 -0
  63. package/dist/browser-runtime-D84IBo4A.js +387 -0
  64. package/dist/browser-setup-tools-VC7rGCyn.js +13 -0
  65. package/dist/build-DeGDX_pJ.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-CbvF41H8.js +3 -0
  70. package/dist/call-DuDGOVT1.js +331 -0
  71. package/dist/call.runtime-DztWXjMr.js +2 -0
  72. package/dist/call.runtime.js +1 -1
  73. package/dist/capability-cli-DoJLi3eS.js +1401 -0
  74. package/dist/catchup-Dk-5hIwm.js +300 -0
  75. package/dist/channel-BJ9iEC4Y.js +595 -0
  76. package/dist/channel-BdvsbgZE.js +453 -0
  77. package/dist/channel-Bu-7KaIx.js +1802 -0
  78. package/dist/channel-C9vQNMK1.js +350 -0
  79. package/dist/channel-CZoVAZyW.js +491 -0
  80. package/dist/channel-Cr2KTwyo.js +840 -0
  81. package/dist/channel-DCeC6AEQ.js +297 -0
  82. package/dist/channel-DOGp2TfT.js +1320 -0
  83. package/dist/channel-Dfq1lxxI.js +226 -0
  84. package/dist/channel-core-DiltAzdr.js +5 -0
  85. package/dist/channel-hZDaTBpm.js +1100 -0
  86. package/dist/channel-inbound-DvOS-Z1s.js +31 -0
  87. package/dist/channel-plugin-runtime-PFRHQ61T.js +771 -0
  88. package/dist/channel-runtime-BAjxIEfQ.js +425 -0
  89. package/dist/channel-szBwbQZB.js +1174 -0
  90. package/dist/channel.runtime-B1Ry35gt.js +89 -0
  91. package/dist/channel.runtime-BNp6GxaQ.js +34702 -0
  92. package/dist/channel.runtime-BfjvNvbj.js +2364 -0
  93. package/dist/channel.runtime-BlGn4QYV.js +4 -0
  94. package/dist/channel.runtime-D7bv5rJl.js +576 -0
  95. package/dist/channel.runtime-DQ5gSgeW.js +109 -0
  96. package/dist/channel.runtime-IxClQMdT.js +430 -0
  97. package/dist/channel.setup-BsfyGPgV.js +10 -0
  98. package/dist/channels-Dn2VHRmZ.js +733 -0
  99. package/dist/channels-cli-l4xjPvDv.js +268 -0
  100. package/dist/chat-zUeX8mQw.js +2758 -0
  101. package/dist/clawbot-cli-C3BFdHJB.js +9 -0
  102. package/dist/cli/daemon-cli.js +4 -4
  103. package/dist/cli-BTnpFsj1.js +2 -0
  104. package/dist/cli-CAFQ6Cwy.js +72 -0
  105. package/dist/cli-CiqIbwtg.js +219 -0
  106. package/dist/cli-DL1ppK38.js +2 -0
  107. package/dist/cli-runner-DO6lEPJr.js +286 -0
  108. package/dist/cli-runner.runtime-B-Ic4DyC.js +3 -0
  109. package/dist/cli-runner.runtime-C4cAORcg.js +4 -0
  110. package/dist/cli-runner.runtime.js +1 -1
  111. package/dist/cli-startup-metadata.json +2 -2
  112. package/dist/cli.runtime-CYHctHVS.js +1261 -0
  113. package/dist/cli.runtime.js +1 -1
  114. package/dist/client-Bb_miREU.js +138 -0
  115. package/dist/client-CrPccv7a.js +713 -0
  116. package/dist/command-auth-B7P-1IeA.js +76 -0
  117. package/dist/command-config-resolution-BB-SsCob.js +23 -0
  118. package/dist/command-config-resolution-DMKYb0Kh.js +2 -0
  119. package/dist/command-config-resolution.runtime-Coeaa9lz.js +2 -0
  120. package/dist/command-config-resolution.runtime.js +1 -1
  121. package/dist/command-registry-B2JzWHqy.js +9 -0
  122. package/dist/command-registry-CNUpJUp8.js +4 -0
  123. package/dist/command-registry-core-BLap9aka.js +101 -0
  124. package/dist/command-secret-gateway-ChRXthnT.js +528 -0
  125. package/dist/command-status.runtime-D8VWyC3v.js +87 -0
  126. package/dist/command-status.runtime.js +1 -1
  127. package/dist/commands-acp-QLk1cU5f.js +77 -0
  128. package/dist/commands-compact.runtime-BIHG2RSY.js +10 -0
  129. package/dist/commands-compact.runtime.js +1 -1
  130. package/dist/commands-handlers.runtime-DjimbxSJ.js +4597 -0
  131. package/dist/commands-handlers.runtime.js +1 -1
  132. package/dist/commands-status-DiIQSYSt.js +16 -0
  133. package/dist/commands-status.runtime-DBRxICN6.js +3 -0
  134. package/dist/commands-status.runtime.js +1 -1
  135. package/dist/commands-subagents-control.runtime-BmqXiKHu.js +3 -0
  136. package/dist/commands-subagents-control.runtime-CVQSOd8H.js +2 -0
  137. package/dist/commands-subagents-control.runtime.js +1 -1
  138. package/dist/commands-system-prompt-2qwZc3xL.js +158 -0
  139. package/dist/commands-system-prompt-Clnn_Gct.js +2 -0
  140. package/dist/commands.runtime-DAqpiDPr.js +166 -0
  141. package/dist/commands.runtime.js +1 -1
  142. package/dist/compact-DqOkQZYr.js +1118 -0
  143. package/dist/compact.runtime-CC_l29j4.js +12 -0
  144. package/dist/compact.runtime.js +1 -1
  145. package/dist/completion-cli-DZFJPSiF.js +328 -0
  146. package/dist/config-D9XEe0Cd.js +251 -0
  147. package/dist/config-cli-DVDwIjKr.js +1078 -0
  148. package/dist/configure-39oQUHuK.js +1245 -0
  149. package/dist/configure-BGD8tViZ.js +2 -0
  150. package/dist/connect-options-Fpky6zuL.js +699 -0
  151. package/dist/control-auth-BlqH4IVx.js +125 -0
  152. package/dist/control-service-CaqDohiY.js +156 -0
  153. package/dist/conversation-id-BH9GFVB2.js +235 -0
  154. package/dist/conversation-id-UdIegcf4.js +38 -0
  155. package/dist/conversation-runtime-Bao0kIPf.js +31 -0
  156. package/dist/core-DXUh5Xbm.js +275 -0
  157. package/dist/cron-cli-B1mxHnGP.js +713 -0
  158. package/dist/daemon-cli-CaHBNwMy.js +12 -0
  159. package/dist/daemon-install-BBwOxf1q.js +64 -0
  160. package/dist/delegate-7G7R4C-C.js +64 -0
  161. package/dist/detached-task-runtime-BMdSrcuz.js +73 -0
  162. package/dist/devices-cli-DnEQH3R2.js +496 -0
  163. package/dist/diagnostics-C8VwSDtU.js +154 -0
  164. package/dist/direct-dm-BSEkIiOe.js +64 -0
  165. package/dist/dispatch-1gv6It-6.js +1131 -0
  166. package/dist/dispatch-acp-hbhR9aHr.js +981 -0
  167. package/dist/dispatch-acp-manager.runtime-BXQbK1cO.js +3 -0
  168. package/dist/dispatch-acp-manager.runtime.js +1 -1
  169. package/dist/dispatch-acp.runtime-Dhx090J2.js +19 -0
  170. package/dist/dispatch-acp.runtime.js +1 -1
  171. package/dist/doctor-device-pairing-1gf3tk3g.js +307 -0
  172. package/dist/doctor-gateway-daemon-flow-LEnN6pL-.js +250 -0
  173. package/dist/doctor-gateway-health-DwxLkTV4.js +60 -0
  174. package/dist/doctor-gateway-services-BhqUOY_e.js +316 -0
  175. package/dist/doctor-health-CdJkaUYf.js +59 -0
  176. package/dist/doctor-health-contributions-BaTnIzCT.js +486 -0
  177. package/dist/doctor-prompter-BZTb5rOn.js +56 -0
  178. package/dist/doctor-workspace-status-DnBARoPa.js +75 -0
  179. package/dist/dreaming-BAGFdUxh.js +1574 -0
  180. package/dist/dreaming-narrative-XoOfVb0x.js +595 -0
  181. package/dist/embedded-gateway-stub.runtime-xwZ-M7Ei.js +9 -0
  182. package/dist/embedded-gateway-stub.runtime.js +1 -1
  183. package/dist/entry.js +2 -2
  184. package/dist/exec-approvals-cli-CWVWSMk-.js +498 -0
  185. package/dist/extensionAPI.js +1 -1
  186. package/dist/extensions/active-memory/index.js +1 -1
  187. package/dist/extensions/bluebubbles/api.js +3 -3
  188. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  189. package/dist/extensions/browser/browser-bridge.js +1 -1
  190. package/dist/extensions/browser/browser-config.js +4 -4
  191. package/dist/extensions/browser/browser-control-auth.js +2 -2
  192. package/dist/extensions/browser/browser-doctor.js +2 -2
  193. package/dist/extensions/browser/browser-maintenance.js +2 -2
  194. package/dist/extensions/browser/browser-profiles.js +2 -2
  195. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  196. package/dist/extensions/browser/index.js +1 -1
  197. package/dist/extensions/browser/plugin-registration.js +1 -1
  198. package/dist/extensions/browser/register.runtime.js +3 -3
  199. package/dist/extensions/browser/runtime-api.js +11 -11
  200. package/dist/extensions/browser/test-support.js +1 -1
  201. package/dist/extensions/device-pair/api.js +1 -1
  202. package/dist/extensions/device-pair/index.js +3 -3
  203. package/dist/extensions/device-pair/notify.js +1 -1
  204. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  205. package/dist/extensions/google-meet/index.js +2 -2
  206. package/dist/extensions/imessage/api.js +3 -3
  207. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  208. package/dist/extensions/imessage/runtime-api.js +3 -3
  209. package/dist/extensions/irc/api.js +2 -2
  210. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  211. package/dist/extensions/line/api.js +2 -2
  212. package/dist/extensions/line/channel-plugin-api.js +1 -1
  213. package/dist/extensions/line/contract-api.js +1 -1
  214. package/dist/extensions/line/runtime-api.js +4 -4
  215. package/dist/extensions/line/setup-api.js +1 -1
  216. package/dist/extensions/llm-task/index.js +2 -2
  217. package/dist/extensions/lobster/index.js +3 -3
  218. package/dist/extensions/lobster/runtime-api.js +1 -1
  219. package/dist/extensions/mattermost/api.js +1 -1
  220. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  221. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  222. package/dist/extensions/mattermost/policy-api.js +1 -1
  223. package/dist/extensions/mattermost/runtime-api.js +4 -4
  224. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  225. package/dist/extensions/memory-core/api.js +1 -1
  226. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  227. package/dist/extensions/memory-core/index.js +3 -3
  228. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  229. package/dist/extensions/msteams/api.js +1 -1
  230. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  231. package/dist/extensions/msteams/runtime-api.js +3 -3
  232. package/dist/extensions/msteams/test-api.js +1 -1
  233. package/dist/extensions/nextcloud-talk/api.js +1 -1
  234. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  235. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  236. package/dist/extensions/openshell/index.js +2 -2
  237. package/dist/extensions/signal/api.js +6 -6
  238. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  239. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  240. package/dist/extensions/signal/runtime-api.js +7 -7
  241. package/dist/extensions/skill-workshop/api.js +1 -1
  242. package/dist/extensions/skill-workshop/index.js +1 -1
  243. package/dist/extensions/synology-chat/api.js +1 -1
  244. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  245. package/dist/extensions/tlon/api.js +2 -2
  246. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  247. package/dist/extensions/tlon/runtime-api.js +1 -1
  248. package/dist/extensions/tlon/test-api.js +1 -1
  249. package/dist/extensions/twitch/api.js +1 -1
  250. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  251. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  252. package/dist/extensions/zalo/api.js +3 -3
  253. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  254. package/dist/extensions/zalo/runtime-api.js +2 -2
  255. package/dist/extensions/zalo/setup-api.js +2 -2
  256. package/dist/extensions/zalouser/api.js +3 -3
  257. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  258. package/dist/extensions/zalouser/runtime-api.js +6 -6
  259. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  260. package/dist/extensions/zalouser/test-api.js +1 -1
  261. package/dist/fallbacks-BKA5XrxA.js +31 -0
  262. package/dist/fallbacks-QvezaDAr.js +2 -0
  263. package/dist/fallbacks-shared-DS-qTOLR.js +111 -0
  264. package/dist/gateway-C0YHaLXO.js +115 -0
  265. package/dist/gateway-cli-DJBCD8J5.js +1325 -0
  266. package/dist/gateway-rpc-CmJXd4SU.js +14 -0
  267. package/dist/gateway-rpc.runtime-C9Fs2mSx.js +23 -0
  268. package/dist/gateway-rpc.runtime.js +1 -1
  269. package/dist/gateway-runtime-Bm2_MhFn.js +15 -0
  270. package/dist/gateway-status-DXKMKFtB.js +584 -0
  271. package/dist/genesis-tools-AolFZ-0I.js +8999 -0
  272. package/dist/genesis-tools.runtime-CBWXJqzw.js +2 -0
  273. package/dist/genesis-tools.runtime.js +1 -1
  274. package/dist/get-reply-BpxjHQBp.js +3879 -0
  275. package/dist/get-reply-from-config.runtime-DJKEqLSi.js +2 -0
  276. package/dist/get-reply-from-config.runtime.js +1 -1
  277. package/dist/graph-users-D2Q5UTGQ.js +1337 -0
  278. package/dist/health-BNKpuAPB.js +469 -0
  279. package/dist/health-BkxZfKx8.js +3 -0
  280. package/dist/heartbeat-runner-Bdu2q6k3.js +5 -0
  281. package/dist/heartbeat-runner-C0B-c-fv.js +1292 -0
  282. package/dist/heartbeat-runner.runtime-Cic23eNy.js +4 -0
  283. package/dist/heartbeat-runner.runtime.js +1 -1
  284. package/dist/hooks-cli-BfCr2In5.js +433 -0
  285. package/dist/image-fallbacks-Dgy-LmDo.js +2 -0
  286. package/dist/image-fallbacks-RlfTqOne.js +31 -0
  287. package/dist/inbound-reply-dispatch-D4KJHWLG.js +73 -0
  288. package/dist/index.js +2 -2
  289. package/dist/infra-runtime-BTJv3KK8.js +39 -0
  290. package/dist/init-q4INH9uv.js +59 -0
  291. package/dist/install-BT4BNeMX.js +190 -0
  292. package/dist/install.runtime-BnqPyIyn.js +2 -0
  293. package/dist/launchd-BM_37PLv.js +698 -0
  294. package/dist/library-DGd4UZKC.js +45 -0
  295. package/dist/lifecycle-B_RLw4uY.js +229 -0
  296. package/dist/lifecycle-Bw01evSl.js +571 -0
  297. package/dist/lifecycle-core-CTjCo-k0.js +422 -0
  298. package/dist/lifecycle.runtime-BxpD2Ol7.js +2 -0
  299. package/dist/lifecycle.runtime.js +1 -1
  300. package/dist/list-BXa4zUF-.js +2 -0
  301. package/dist/list-BugTSXmQ.js +131 -0
  302. package/dist/list-CgC_rsta.js +1201 -0
  303. package/dist/list-D2sk1YPs.js +2 -0
  304. package/dist/list.probe-C6zfgLdG.js +419 -0
  305. package/dist/llm-slug-generator-DsWJvqNx.js +79 -0
  306. package/dist/llm-slug-generator.js +1 -1
  307. package/dist/load-config-D6ZKPY7I.js +35 -0
  308. package/dist/local-dispatch.runtime-MWMxyZKj.js +8 -0
  309. package/dist/local-dispatch.runtime.js +1 -1
  310. package/dist/logs-cli-Dn-8jl3z.js +265 -0
  311. package/dist/logs-cli.runtime-DwsccWUJ.js +2 -0
  312. package/dist/logs-cli.runtime.js +1 -1
  313. package/dist/main-session-restart-recovery-6Uh4W8ZJ.js +206 -0
  314. package/dist/managed-image-attachments-DHawPS1-.js +2 -0
  315. package/dist/managed-image-attachments-DjtxwZ9o.js +635 -0
  316. package/dist/manager-D0tkR46e.js +2057 -0
  317. package/dist/manager-g_P1RDky.js +2 -0
  318. package/dist/markdown-to-line-7AxR7QFo.js +790 -0
  319. package/dist/mcp/plugin-tools-serve.js +1 -1
  320. package/dist/mcp-cli-Cw2XQMOA.js +725 -0
  321. package/dist/mcp-http-DFKqya8U.js +529 -0
  322. package/dist/memory-core-host-runtime-cli-DaAsOXiU.js +9 -0
  323. package/dist/message-BDCG7eWj.js +232 -0
  324. package/dist/message-action-runner-6C7kXcC9.js +2 -0
  325. package/dist/message-action-runner-C2P3efhU.js +1407 -0
  326. package/dist/message-actions-BWQWt5gT.js +143 -0
  327. package/dist/message.gateway.runtime-BXChuYAf.js +2 -0
  328. package/dist/message.gateway.runtime.js +1 -1
  329. package/dist/models-auth-status-B8lnM1PS.js +201 -0
  330. package/dist/models-cli-DbUA18AN.js +219 -0
  331. package/dist/monitor-BEJe2ceJ.js +1237 -0
  332. package/dist/monitor-BO9i6U5R.js +1459 -0
  333. package/dist/monitor-BZLrxL_x.js +1661 -0
  334. package/dist/monitor-CDDxHGlD.js +788 -0
  335. package/dist/monitor-D779kLc0.js +671 -0
  336. package/dist/monitor-V5ZNCrQL.js +2 -0
  337. package/dist/monitor-auth-D2rCHNgr.js +207 -0
  338. package/dist/monitor-processing-BLbsNFVv.js +1974 -0
  339. package/dist/monitor.runtime-RrusGXVO.js +2 -0
  340. package/dist/monitor.runtime.js +1 -1
  341. package/dist/monitor.webhook-B0DuBNWa.js +180 -0
  342. package/dist/msteams-hh9nwLlZ.js +35 -0
  343. package/dist/native-hook-relay-BygYZoeR.js +519 -0
  344. package/dist/nextcloud-talk-AadRCqXn.js +17 -0
  345. package/dist/node-cli-FF1zz0JU.js +2506 -0
  346. package/dist/node-service-f8mmgM5L.js +68 -0
  347. package/dist/nodes-cli-tQ5dpecZ.js +1046 -0
  348. package/dist/nodes-utils-BfpGcUca.js +84 -0
  349. package/dist/nodes.helpers-CMXxavTs.js +34 -0
  350. package/dist/notify-DaNP5Zyh.js +315 -0
  351. package/dist/onboard-B9hx80Dm.js +632 -0
  352. package/dist/onboard-helpers-BlPrFJHK.js +204 -0
  353. package/dist/onboard-helpers-kL8mgUkl.js +6 -0
  354. package/dist/onboard-remote-ByHuQd1m.js +193 -0
  355. package/dist/onboard-remote-CRPXcrWy.js +2 -0
  356. package/dist/onboard-skills-ChtyNRCd.js +2 -0
  357. package/dist/onboard-skills-DROlYXya.js +134 -0
  358. package/dist/openai-http-2An5HAJU.js +500 -0
  359. package/dist/openresponses-http-DpbJXZP4.js +1128 -0
  360. package/dist/operator-approvals-client-BoN_VmkB.js +68 -0
  361. package/dist/outbound.runtime-D_aebUn6.js +2 -0
  362. package/dist/outbound.runtime.js +1 -1
  363. package/dist/pair-command-approve-i-1VECJx.js +44 -0
  364. package/dist/persistent-bindings.lifecycle-eZyKQ1D8.js +85 -0
  365. package/dist/persistent-bindings.lifecycle-mxY73TJR.js +2 -0
  366. package/dist/pi-embedded-0fErjTQ7.js +2905 -0
  367. package/dist/pi-embedded-Bc1jC2x0.js +4 -0
  368. package/dist/pi-embedded.runtime-Bn_RZ5z8.js +4 -0
  369. package/dist/pi-embedded.runtime.js +1 -1
  370. package/dist/pi-tool-definition-adapter-thh7LO1t.js +217 -0
  371. package/dist/pi-tools-BtlLDovQ.js +1057 -0
  372. package/dist/pi-tools.before-tool-call-BJ_X8Dq3.js +2 -0
  373. package/dist/pi-tools.before-tool-call-DdPCGWCs.js +433 -0
  374. package/dist/plugin-CdHHk4Xn.js +12195 -0
  375. package/dist/plugin-enabled-DybhbjKQ.js +140 -0
  376. package/dist/plugin-registration-Bgwpsokw.js +23 -0
  377. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  378. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  379. package/dist/plugin-sdk/acp-runtime.js +2 -2
  380. package/dist/plugin-sdk/agent-harness-runtime.js +5 -5
  381. package/dist/plugin-sdk/agent-harness.js +6 -6
  382. package/dist/plugin-sdk/agent-runtime.js +2 -2
  383. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  384. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  385. package/dist/plugin-sdk/approval-runtime.js +1 -1
  386. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  387. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  388. package/dist/plugin-sdk/browser-support.js +7 -7
  389. package/dist/plugin-sdk/channel-core.js +2 -2
  390. package/dist/plugin-sdk/channel-inbound.js +2 -2
  391. package/dist/plugin-sdk/command-auth.js +1 -1
  392. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  393. package/dist/plugin-sdk/compat.js +1 -1
  394. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  395. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  396. package/dist/plugin-sdk/core.js +2 -2
  397. package/dist/plugin-sdk/direct-dm.js +1 -1
  398. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  399. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  400. package/dist/plugin-sdk/index.js +1 -1
  401. package/dist/plugin-sdk/infra-runtime.js +2 -2
  402. package/dist/plugin-sdk/irc.js +2 -2
  403. package/dist/plugin-sdk/matrix.js +1 -1
  404. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  405. package/dist/plugin-sdk/memory-core.js +2 -2
  406. package/dist/plugin-sdk/msteams.js +2 -2
  407. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  408. package/dist/plugin-sdk/nostr.js +1 -1
  409. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  410. package/dist/plugin-sdk/reply-runtime.js +4 -4
  411. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  412. package/dist/plugin-sdk/runtime.js +2 -2
  413. package/dist/plugin-sdk/session-visibility.js +1 -1
  414. package/dist/plugin-sdk/testing.js +4 -4
  415. package/dist/plugin-sdk/tlon.js +1 -1
  416. package/dist/plugin-sdk/zalo.js +1 -1
  417. package/dist/plugin-sdk/zalouser.js +1 -1
  418. package/dist/plugin-service-ClhrJfT3.js +2890 -0
  419. package/dist/plugins/runtime/index.js +1 -1
  420. package/dist/policy-CoqHgREn.js +328 -0
  421. package/dist/postinstall-inventory.json +418 -418
  422. package/dist/prepare.runtime-CawO_32K.js +815 -0
  423. package/dist/prepare.runtime.js +1 -1
  424. package/dist/probe-BP3QS65i.js +74 -0
  425. package/dist/probe-BdCXAH_u.js +2 -0
  426. package/dist/probe-Cv5tXOMP.js +2205 -0
  427. package/dist/probe-D-D_1oc4.js +241 -0
  428. package/dist/probe-DO-gll0g.js +2 -0
  429. package/dist/probe-T6c0F73q.js +45 -0
  430. package/dist/probe-dxji7IxZ.js +1443 -0
  431. package/dist/program-GMPfHt5E.js +111 -0
  432. package/dist/prompt-select-styled-BvuJNEJG.js +20 -0
  433. package/dist/protocol-Batc2DmY.js +2234 -0
  434. package/dist/provider-dispatcher-CGYoOdKf.js +2 -0
  435. package/dist/provider-dispatcher-iTEDM88F.js +22 -0
  436. package/dist/qr-cli-6IxenO1C.js +349 -0
  437. package/dist/qr-cli-D63piSog.js +2 -0
  438. package/dist/reaction-runtime-api-DgwRXTz2.js +116 -0
  439. package/dist/reactions-Dnh7t4Zl.js +998 -0
  440. package/dist/register-service-commands-D7w01SKL.js +71 -0
  441. package/dist/register.agent-j1Eno4xr.js +248 -0
  442. package/dist/register.configure-ubwxTkGt.js +15 -0
  443. package/dist/register.maintenance-B7FuM_ZW.js +438 -0
  444. package/dist/register.message-QR3u9rBl.js +329 -0
  445. package/dist/register.onboard-Bdcf_lH0.js +81 -0
  446. package/dist/register.runtime-QDduc4yj.js +81 -0
  447. package/dist/register.runtime.js +1 -1
  448. package/dist/register.setup-DzVV6tdQ.js +150 -0
  449. package/dist/register.status-health-sessions-Brw3VcxG.js +1215 -0
  450. package/dist/register.subclis-B8qDbqPl.js +29 -0
  451. package/dist/register.subclis-DdoN3nZi.js +3 -0
  452. package/dist/register.subclis-core-CWHmnIoe.js +249 -0
  453. package/dist/reply-dispatch-runtime-BVLvCeJ0.js +13 -0
  454. package/dist/reply-runtime-BXkvfLv_.js +11 -0
  455. package/dist/reply.runtime-BTkpxI5R.js +2 -0
  456. package/dist/reply.runtime.js +1 -1
  457. package/dist/restart-health-6cjrRBpF.js +202 -0
  458. package/dist/restart-health-b6Qw43Tj.js +2 -0
  459. package/dist/root-help-DDa1oEtT.js +44 -0
  460. package/dist/routes-CoCMty69.js +2 -0
  461. package/dist/routes-D9uC_Zdy.js +3341 -0
  462. package/dist/rpc-DpLGM3FH.js +61 -0
  463. package/dist/rpc.runtime-B27EA5A0.js +21 -0
  464. package/dist/rpc.runtime.js +1 -1
  465. package/dist/run-delivery.runtime-OmILefLX.js +530 -0
  466. package/dist/run-delivery.runtime.js +1 -1
  467. package/dist/run-embedded.runtime-Dc43u_Z7.js +4 -0
  468. package/dist/run-embedded.runtime.js +1 -1
  469. package/dist/run-execution-cli.runtime-DL5w7Ac8.js +4 -0
  470. package/dist/run-execution-cli.runtime.js +1 -1
  471. package/dist/run-executor.runtime-Bzwt0zP-.js +277 -0
  472. package/dist/run-executor.runtime.js +1 -1
  473. package/dist/run-main-BLD1wTLU.js +516 -0
  474. package/dist/run-subagent-registry.runtime-CddCeg6W.js +2 -0
  475. package/dist/run-subagent-registry.runtime.js +1 -1
  476. package/dist/run-wait-D4Gxuyru.js +135 -0
  477. package/dist/runtime-8BuIPrSY.js +973 -0
  478. package/dist/runtime-Co8r21pw.js +9 -0
  479. package/dist/runtime-api-BG0XWkir.js +4 -0
  480. package/dist/runtime-api-BjBzlgns.js +9 -0
  481. package/dist/runtime-api-DlYbbA-n.js +14 -0
  482. package/dist/runtime-api-faT33SE2.js +9 -0
  483. package/dist/runtime-embedded-pi.runtime-QdJ7K4t0.js +2 -0
  484. package/dist/runtime-embedded-pi.runtime.js +1 -1
  485. package/dist/runtime-internal-C0xc_Zhf.js +2 -0
  486. package/dist/runtime-options-DLv7ygkO.js +275 -0
  487. package/dist/runtime-schema-CQK5R5Pl.js +27780 -0
  488. package/dist/scan-Yz6DoQn5.js +523 -0
  489. package/dist/scan-k38hL_6o.js +2 -0
  490. package/dist/secrets-cli-Bjvr0bOw.js +2101 -0
  491. package/dist/security-cli-C2gkMFcB.js +486 -0
  492. package/dist/selection-DC8EXnRg.js +7736 -0
  493. package/dist/selection-DmSFI5k4.js +2 -0
  494. package/dist/send-CT6EfHrc.js +102 -0
  495. package/dist/send-_ANvjE_C.js +156 -0
  496. package/dist/send.runtime-COIjG4BV.js +2 -0
  497. package/dist/send.runtime.js +1 -1
  498. package/dist/server-COkv9Si4.js +13 -0
  499. package/dist/server-DHLQZJL8.js +77 -0
  500. package/dist/server-context-6jnr-aAw.js +2 -0
  501. package/dist/server-context-DK1QsdLh.js +847 -0
  502. package/dist/server-node-events-q8H0odkq.js +481 -0
  503. package/dist/server-plugin-bootstrap-Bw4a88yA.js +2 -0
  504. package/dist/server-plugin-bootstrap-By_w9ngt.js +11333 -0
  505. package/dist/server-restart-sentinel-CGLYF3mk.js +697 -0
  506. package/dist/server.impl-8j4SImks.js +12735 -0
  507. package/dist/service-CNjb_qXC.js +2 -0
  508. package/dist/service-CyR3mZIU.js +120 -0
  509. package/dist/service-audit-DIL0OiMa.js +260 -0
  510. package/dist/service-audit-pwloDggS.js +2 -0
  511. package/dist/session-kill-http-Dek5w0Ee.js +110 -0
  512. package/dist/session-reset-service-B_9Ps0kr.js +471 -0
  513. package/dist/session-route-Cr6vOd9_.js +93 -0
  514. package/dist/session-status.runtime-C_x1MHH5.js +2 -0
  515. package/dist/session-status.runtime.js +1 -1
  516. package/dist/session-subagent-reactivation.runtime-BKWuNild.js +2 -0
  517. package/dist/session-subagent-reactivation.runtime.js +1 -1
  518. package/dist/session-tab-registry-C08V5jx6.js +491 -0
  519. package/dist/session-visibility-D4j8hN_B.js +147 -0
  520. package/dist/sessions-helpers-DmUVRk16.js +304 -0
  521. package/dist/sessions-history-http-DN3KzEnX.js +383 -0
  522. package/dist/sessions-patch-BPtlF0Lu.js +309 -0
  523. package/dist/sessions-resolve-D6KPfG_4.js +174 -0
  524. package/dist/sessions.runtime-DGL1-G20.js +2 -0
  525. package/dist/sessions.runtime.js +1 -1
  526. package/dist/setup-CkYiQoP0.js +495 -0
  527. package/dist/setup-api-CUGYqGNT.js +29 -0
  528. package/dist/setup-core-BmplfubJ.js +171 -0
  529. package/dist/setup-core-C5ddWpfy.js +176 -0
  530. package/dist/setup-surface-2JmEfowI.js +219 -0
  531. package/dist/setup-surface-BzHQx_GD.js +403 -0
  532. package/dist/setup-surface-DOH6kc6w.js +286 -0
  533. package/dist/setup.finalize-Ci2HBkDq.js +539 -0
  534. package/dist/setup.gateway-config-CyG_Fzaa.js +250 -0
  535. package/dist/shared-BItUH43s.js +121 -0
  536. package/dist/shared-D7diJkX6.js +198 -0
  537. package/dist/shared-DJU_HCJ1.js +76 -0
  538. package/dist/slash-state-C4YD-tLz.js +1911 -0
  539. package/dist/src-8HdytGc7.js +3974 -0
  540. package/dist/startup-context-CfcCyUU0.js +312 -0
  541. package/dist/status-B94yciC9.js +397 -0
  542. package/dist/status-BUkUYtFm.js +190 -0
  543. package/dist/status-BsHC-0MV.js +2 -0
  544. package/dist/status-D4jNATg0.js +209 -0
  545. package/dist/status-U8ut-X2Q.js +2 -0
  546. package/dist/status-all-CIzsXQnV.js +498 -0
  547. package/dist/status-json-alPkfWTd.js +14 -0
  548. package/dist/status-json-command-CAkzWzw7.js +84 -0
  549. package/dist/status-jxNdVQVZ.js +3 -0
  550. package/dist/status-runtime-shared-BSsA48i9.js +257 -0
  551. package/dist/status-subagents.runtime-hIKg6PXV.js +18 -0
  552. package/dist/status-subagents.runtime.js +1 -1
  553. package/dist/status-text-BmLJrLth.js +237 -0
  554. package/dist/status.gateway-connection.runtime-Dr7HJ1wZ.js +2 -0
  555. package/dist/status.gateway-connection.runtime.js +1 -1
  556. package/dist/status.gather-DFY0T97g.js +2 -0
  557. package/dist/status.gather-e6sfNh8I.js +292 -0
  558. package/dist/status.runtime-DBvapXQS.js +2 -0
  559. package/dist/status.runtime.js +1 -1
  560. package/dist/status.scan-DSpkE-Q-.js +65 -0
  561. package/dist/status.scan-overview-Dr72bkbi.js +379 -0
  562. package/dist/status.scan.fast-json-C7k_m46S.js +2 -0
  563. package/dist/status.scan.fast-json-KHh7R3wX.js +132 -0
  564. package/dist/status.summary-C4r9lkCH.js +214 -0
  565. package/dist/status.summary-D0EJwkmX.js +2 -0
  566. package/dist/subagent-announce-Bu5-8O3P.js +351 -0
  567. package/dist/subagent-announce-delivery-4hk9P48s.js +726 -0
  568. package/dist/subagent-announce-output-Csyi1-Kz.js +364 -0
  569. package/dist/subagent-control-DAeNsV_G.js +506 -0
  570. package/dist/subagent-followup.runtime-Bch92LIq.js +68 -0
  571. package/dist/subagent-followup.runtime.js +1 -1
  572. package/dist/subagent-orphan-recovery-mNzyr1b-.js +305 -0
  573. package/dist/subagent-registry-BMjQxBxi.js +3 -0
  574. package/dist/subagent-registry-D4DFKQCL.js +1753 -0
  575. package/dist/subagent-registry.runtime.js +1 -1
  576. package/dist/subagent-spawn-C13uUm47.js +1005 -0
  577. package/dist/system-cli-BU6GhJxG.js +59 -0
  578. package/dist/targets-eYkepVzz.js +67 -0
  579. package/dist/task-executor-DzJLcm4D.js +360 -0
  580. package/dist/task-owner-access-DW9EbhjP.js +74 -0
  581. package/dist/task-registry-DBJkAtFF.js +2366 -0
  582. package/dist/task-registry-delivery-runtime-BdkPeGC1.js +2 -0
  583. package/dist/task-registry-delivery-runtime-Ov88LGnv.js +3 -0
  584. package/dist/task-registry.maintenance-BU6Z4V_9.js +416 -0
  585. package/dist/task-registry.maintenance-sEo6eYdx.js +2 -0
  586. package/dist/telegram/token.js +1 -1
  587. package/dist/testing-B2jHeQft.js +575 -0
  588. package/dist/text-report-HYrgZP8-.js +587 -0
  589. package/dist/tool-resolution-BZxaDOKg.js +90 -0
  590. package/dist/tools-effective-inventory-BCvCprpD.js +152 -0
  591. package/dist/tools-invoke-http-Dt1rsx4a.js +206 -0
  592. package/dist/trash-F4tvjrKS.js +24 -0
  593. package/dist/tui-cli-DlQ1oejy.js +4575 -0
  594. package/dist/update-cli-DHMdwQWA.js +1759 -0
  595. package/dist/upgrade-UR-EI5pO.js +1226 -0
  596. package/dist/video-generation-task-status-qtHrIZLt.js +163 -0
  597. package/dist/wait-for-idle-before-flush-CYB_61O0.js +5986 -0
  598. package/dist/wizard-models-BKqMCaCm.js +161 -0
  599. package/package.json +1 -1
  600. package/dist/abort-BHSttDhY.js +0 -201
  601. package/dist/abort.runtime-VJ9lFsZS.js +0 -2
  602. package/dist/accounts-BNvagEOQ.js +0 -104
  603. package/dist/accounts-CPIuzenz.js +0 -107
  604. package/dist/accounts-r08DQWhZ.js +0 -2
  605. package/dist/acp-cli-i0L-eRs9.js +0 -2193
  606. package/dist/acp-spawn-CHzVLe9q.js +0 -1093
  607. package/dist/acp-spawn-CqvxDuBq.js +0 -2
  608. package/dist/acp-stateful-target-driver-CWRLc_NP.js +0 -89
  609. package/dist/action-agents-SNCscX_-.js +0 -67
  610. package/dist/action-focus-B2s0PF2E.js +0 -132
  611. package/dist/action-help-CXKbyaZ7.js +0 -7
  612. package/dist/action-info-B3IDKxWu.js +0 -101
  613. package/dist/action-kill-idGvCNhT.js +0 -33
  614. package/dist/action-list-Di7gO3qL.js +0 -21
  615. package/dist/action-log-BCsz-gFi.js +0 -30
  616. package/dist/action-send-DLsdZnVc.js +0 -39
  617. package/dist/action-spawn-DhKEOdL0.js +0 -47
  618. package/dist/action-unfocus-Dh7ti5UP.js +0 -29
  619. package/dist/actions.runtime-BPf03SN3.js +0 -18
  620. package/dist/actions.runtime-CJg_lweh.js +0 -5
  621. package/dist/agent-C3PLvvws.js +0 -2
  622. package/dist/agent-command-UroeNrV4.js +0 -874
  623. package/dist/agent-harness-runtime-MXvI9FlJ.js +0 -144
  624. package/dist/agent-runner-utils-CaVgLZrf.js +0 -239
  625. package/dist/agent-runner.runtime-Csqm3m09.js +0 -3455
  626. package/dist/agent-runtime-B9nUYDUz.js +0 -18
  627. package/dist/agents-BP4p-1q2.js +0 -5
  628. package/dist/agents-CDiXfrfc.js +0 -953
  629. package/dist/aliases-BBCtCq2A.js +0 -96
  630. package/dist/aliases-DrFtFq1p.js +0 -2
  631. package/dist/api-BH0oEwR1.js +0 -5
  632. package/dist/api-D-4gHdrl.js +0 -139
  633. package/dist/api-DE6RYTxv.js +0 -3
  634. package/dist/approval-gateway-resolver-URpDQMld.js +0 -29
  635. package/dist/approval-gateway-runtime-B087BMms.js +0 -2
  636. package/dist/approval-handler-runtime-BEl3ua8-.js +0 -439
  637. package/dist/approval-native-runtime-ghjYGufu.js +0 -729
  638. package/dist/attempt-execution.runtime-PCTFYqLh.js +0 -509
  639. package/dist/attempt.prompt-helpers-CkWEozQ2.js +0 -221
  640. package/dist/attempt.tool-run-context-DbqVgXFk.js +0 -933
  641. package/dist/audit-Lb1yNEwg.js +0 -939
  642. package/dist/audit.runtime-DOnixKE_.js +0 -7
  643. package/dist/auth-BrlJ7NM9.js +0 -2
  644. package/dist/auth-CJoP7Yst.js +0 -383
  645. package/dist/auth-order-D0KFgBib.js +0 -96
  646. package/dist/auth-order-_xlUHzCg.js +0 -2
  647. package/dist/bash-tools-BEVEHCl9.js +0 -2824
  648. package/dist/bash-tools-DJ0D8Wr5.js +0 -3
  649. package/dist/binding-routing-IfKqPcfO.js +0 -85
  650. package/dist/binding-targets-2huR0hTX.js +0 -121
  651. package/dist/bridge-server-D8Y8Fzdz.js +0 -113
  652. package/dist/browser-control-auth-Q6UpVLEj.js +0 -2
  653. package/dist/browser-node-runtime-C9KvsOyx.js +0 -12
  654. package/dist/browser-profiles-DFcwiMEf.js +0 -2
  655. package/dist/browser-runtime-sbZ3hKg6.js +0 -387
  656. package/dist/browser-setup-tools-CP4BkZ9z.js +0 -13
  657. package/dist/build-DzHX2LrH.js +0 -550
  658. package/dist/call-ORivR4Db.js +0 -331
  659. package/dist/call-qzfm6lro.js +0 -3
  660. package/dist/call.runtime-BkzJe07B.js +0 -2
  661. package/dist/capability-cli-BDCvm93o.js +0 -1401
  662. package/dist/catchup-CjZa2PrP.js +0 -300
  663. package/dist/channel-B3UAL9Pk.js +0 -840
  664. package/dist/channel-B5L9LJBF.js +0 -453
  665. package/dist/channel-BGXl6A-E.js +0 -297
  666. package/dist/channel-BNUblayu.js +0 -1320
  667. package/dist/channel-Bej-TN7f.js +0 -491
  668. package/dist/channel-BzOKSC4e.js +0 -350
  669. package/dist/channel-CY2xEOzR.js +0 -1802
  670. package/dist/channel-D2kKLWUA.js +0 -226
  671. package/dist/channel-DcjCe46M.js +0 -1100
  672. package/dist/channel-GqA96nmt.js +0 -595
  673. package/dist/channel-YI2aIJFQ.js +0 -1174
  674. package/dist/channel-core-DqPUhmTt.js +0 -5
  675. package/dist/channel-inbound-CzgMd2Xi.js +0 -31
  676. package/dist/channel-plugin-runtime-DI5uUbxx.js +0 -771
  677. package/dist/channel-runtime-BJqKQitD.js +0 -425
  678. package/dist/channel.runtime-BBn9mgbB.js +0 -89
  679. package/dist/channel.runtime-Bhj1b9gQ.js +0 -34702
  680. package/dist/channel.runtime-BzOVx90Z.js +0 -576
  681. package/dist/channel.runtime-CQkLKWlq.js +0 -109
  682. package/dist/channel.runtime-D8qT4A1x.js +0 -4
  683. package/dist/channel.runtime-DjK9Re1w.js +0 -2364
  684. package/dist/channel.runtime-tWwM8hFw.js +0 -430
  685. package/dist/channel.setup-gaiRZ-r8.js +0 -10
  686. package/dist/channels-BXIl3hBo.js +0 -733
  687. package/dist/channels-cli-CrmBqaul.js +0 -268
  688. package/dist/chat-C42usv-F.js +0 -2758
  689. package/dist/clawbot-cli-BGYO_ymZ.js +0 -9
  690. package/dist/cli-BbD25CFK.js +0 -2
  691. package/dist/cli-CYD4Wfcq.js +0 -219
  692. package/dist/cli-D-6ycHAw.js +0 -72
  693. package/dist/cli-DX4CK-bw.js +0 -2
  694. package/dist/cli-runner-C5_PBTxm.js +0 -286
  695. package/dist/cli-runner.runtime-DE7RpQ27.js +0 -3
  696. package/dist/cli-runner.runtime-ueVMICzY.js +0 -4
  697. package/dist/cli.runtime-DSO8Vfrh.js +0 -1261
  698. package/dist/client-BKro32pr.js +0 -138
  699. package/dist/client-Vx7pseEY.js +0 -713
  700. package/dist/command-auth-CvFUTCCJ.js +0 -76
  701. package/dist/command-config-resolution-BnW1XGnW.js +0 -23
  702. package/dist/command-config-resolution-BrlfYyiN.js +0 -2
  703. package/dist/command-config-resolution.runtime-DYMr8J0t.js +0 -2
  704. package/dist/command-registry-Bi9thw1b.js +0 -9
  705. package/dist/command-registry-D__zH4Fg.js +0 -4
  706. package/dist/command-registry-core-DQoNFQZT.js +0 -101
  707. package/dist/command-secret-gateway-B27Zpgo9.js +0 -528
  708. package/dist/command-status.runtime-fERQMzeI.js +0 -87
  709. package/dist/commands-acp-BmORmf3-.js +0 -77
  710. package/dist/commands-compact.runtime-BUaXIw-I.js +0 -10
  711. package/dist/commands-handlers.runtime-BxbkeuTc.js +0 -4597
  712. package/dist/commands-status-4OW5sqmg.js +0 -16
  713. package/dist/commands-status.runtime-Cl7nJp_7.js +0 -3
  714. package/dist/commands-subagents-control.runtime-BR4qBGkk.js +0 -2
  715. package/dist/commands-subagents-control.runtime-C8ufgKPI.js +0 -3
  716. package/dist/commands-system-prompt-BsimvjJt.js +0 -158
  717. package/dist/commands-system-prompt-CKrY0h7P.js +0 -2
  718. package/dist/commands.runtime-BHsDdaEU.js +0 -166
  719. package/dist/compact-BHYLQst3.js +0 -1118
  720. package/dist/compact.runtime-7-tZRdgw.js +0 -12
  721. package/dist/completion-cli-1sAiSIYc.js +0 -328
  722. package/dist/config-BZ3FuFjH.js +0 -251
  723. package/dist/config-cli-B_dNq5hD.js +0 -1078
  724. package/dist/configure-BOvmX2NJ.js +0 -2
  725. package/dist/configure-DR9NYN9e.js +0 -1245
  726. package/dist/connect-options-DlmPTyhG.js +0 -699
  727. package/dist/control-auth-C_zNiV10.js +0 -125
  728. package/dist/control-service-B1TL51jf.js +0 -156
  729. package/dist/conversation-id-B3lLiTfF.js +0 -235
  730. package/dist/conversation-id-DORmTZm_.js +0 -38
  731. package/dist/conversation-runtime-DDxZZZXE.js +0 -31
  732. package/dist/core-DbPzffGG.js +0 -275
  733. package/dist/cron-cli-AoH4jhFt.js +0 -713
  734. package/dist/daemon-cli-BOJdM3wT.js +0 -12
  735. package/dist/daemon-install-D8HPES4u.js +0 -64
  736. package/dist/delegate-Dmdda3kT.js +0 -64
  737. package/dist/detached-task-runtime-BB5az34R.js +0 -73
  738. package/dist/devices-cli-Cy9DF-DP.js +0 -496
  739. package/dist/diagnostics-CTE0TWR1.js +0 -154
  740. package/dist/direct-dm-9jzadx9u.js +0 -64
  741. package/dist/dispatch-DU7cqfv6.js +0 -1131
  742. package/dist/dispatch-acp-Cu_nUtKg.js +0 -981
  743. package/dist/dispatch-acp-manager.runtime-8MOQ5BRn.js +0 -3
  744. package/dist/dispatch-acp.runtime-DatcHNJq.js +0 -19
  745. package/dist/doctor-device-pairing-Qm-r7mwu.js +0 -307
  746. package/dist/doctor-gateway-daemon-flow-BN2uGhFJ.js +0 -250
  747. package/dist/doctor-gateway-health-CD7Vzth9.js +0 -60
  748. package/dist/doctor-gateway-services-CIypZgv_.js +0 -316
  749. package/dist/doctor-health-ByjG3620.js +0 -59
  750. package/dist/doctor-health-contributions-CxNByg_i.js +0 -486
  751. package/dist/doctor-prompter-BYIoKiZ8.js +0 -56
  752. package/dist/doctor-workspace-status-DL2fRPoT.js +0 -75
  753. package/dist/dreaming-CCctNgkQ.js +0 -1574
  754. package/dist/dreaming-narrative-BPtXKc2-.js +0 -595
  755. package/dist/embedded-gateway-stub.runtime-Hi36BeCq.js +0 -9
  756. package/dist/exec-approvals-cli-DyslUWtQ.js +0 -498
  757. package/dist/fallbacks-B3xZC-ms.js +0 -2
  758. package/dist/fallbacks-CWDz-tSa.js +0 -31
  759. package/dist/fallbacks-shared-BlZBjxHL.js +0 -111
  760. package/dist/gateway-NYBkUx5r.js +0 -115
  761. package/dist/gateway-cli-E5gYA0U1.js +0 -1325
  762. package/dist/gateway-rpc-BrG5Lkfm.js +0 -14
  763. package/dist/gateway-rpc.runtime-BrTGchr9.js +0 -23
  764. package/dist/gateway-runtime-DctMRv_p.js +0 -15
  765. package/dist/gateway-status-B6ol1agz.js +0 -584
  766. package/dist/genesis-tools-D_ah3Zek.js +0 -8999
  767. package/dist/genesis-tools.runtime-Cy7aTWEN.js +0 -2
  768. package/dist/get-reply-BvVkxYum.js +0 -3879
  769. package/dist/get-reply-from-config.runtime-DR3yiK1R.js +0 -2
  770. package/dist/graph-users-yBNugoFz.js +0 -1337
  771. package/dist/health-D_wk2s7j.js +0 -3
  772. package/dist/health-MRnjOx-_.js +0 -469
  773. package/dist/heartbeat-runner-NuhhYnxs.js +0 -5
  774. package/dist/heartbeat-runner-Y4NeUV3L.js +0 -1292
  775. package/dist/heartbeat-runner.runtime-eGfKtcpP.js +0 -4
  776. package/dist/hooks-cli-CtfN2vc-.js +0 -433
  777. package/dist/image-fallbacks-CgeDMYZo.js +0 -2
  778. package/dist/image-fallbacks-CzQ85Eo8.js +0 -31
  779. package/dist/inbound-reply-dispatch-jVlLaSqn.js +0 -73
  780. package/dist/infra-runtime-D2Pqjk-r.js +0 -39
  781. package/dist/init-D_MTYqrw.js +0 -59
  782. package/dist/install-X7wgrwQ1.js +0 -190
  783. package/dist/install.runtime-C4wO4Nr9.js +0 -2
  784. package/dist/launchd-lFgfiDrN.js +0 -688
  785. package/dist/library-DIykYIWD.js +0 -45
  786. package/dist/lifecycle-BNuFzffC.js +0 -571
  787. package/dist/lifecycle-IWN9qlwo.js +0 -229
  788. package/dist/lifecycle-core-CFv5qkS8.js +0 -422
  789. package/dist/lifecycle.runtime-9oo2JCI2.js +0 -2
  790. package/dist/list-BZ3mMSpA.js +0 -2
  791. package/dist/list-CzQs_k0U.js +0 -131
  792. package/dist/list-CzTJTFOH.js +0 -1201
  793. package/dist/list-qDXsgKhB.js +0 -2
  794. package/dist/list.probe-EOZR6ueo.js +0 -419
  795. package/dist/llm-slug-generator-DzWIx0nh.js +0 -79
  796. package/dist/load-config-C_8uUnXU.js +0 -35
  797. package/dist/local-dispatch.runtime-DLd10Xb1.js +0 -8
  798. package/dist/logs-cli-mnOTmC9R.js +0 -265
  799. package/dist/logs-cli.runtime-BvP3aise.js +0 -2
  800. package/dist/main-session-restart-recovery-D7Vxmu7e.js +0 -206
  801. package/dist/managed-image-attachments-BB5u0Zq8.js +0 -2
  802. package/dist/managed-image-attachments-BeRGNdL9.js +0 -635
  803. package/dist/manager-BhNWV4EC.js +0 -2
  804. package/dist/manager-CbZ9ncZs.js +0 -2057
  805. package/dist/markdown-to-line-DyB8w7ef.js +0 -790
  806. package/dist/mcp-cli-CWzLBrDF.js +0 -725
  807. package/dist/mcp-http-1jD7LE0a.js +0 -529
  808. package/dist/memory-core-host-runtime-cli-P80xoEfr.js +0 -9
  809. package/dist/message-BAhd_1ud.js +0 -232
  810. package/dist/message-action-runner-CH2jjT21.js +0 -1407
  811. package/dist/message-action-runner-DW7z_bMx.js +0 -2
  812. package/dist/message-actions-BjBGSsJB.js +0 -143
  813. package/dist/message.gateway.runtime-sUc85g7X.js +0 -2
  814. package/dist/models-auth-status-D6lrM56M.js +0 -201
  815. package/dist/models-cli-CmnbAk2M.js +0 -219
  816. package/dist/monitor-AyGe8vyk.js +0 -1237
  817. package/dist/monitor-DQuy2kx-.js +0 -671
  818. package/dist/monitor-DmtJiX5o.js +0 -788
  819. package/dist/monitor-GB8lcnal.js +0 -1459
  820. package/dist/monitor-IuVjATac.js +0 -1661
  821. package/dist/monitor-auth-rF7mr3Cm.js +0 -207
  822. package/dist/monitor-bnOvJyLN.js +0 -2
  823. package/dist/monitor-processing-B1ewr2qF.js +0 -1974
  824. package/dist/monitor.runtime-BrUD5_VN.js +0 -2
  825. package/dist/monitor.webhook-BvJG6Xbh.js +0 -180
  826. package/dist/msteams-DUDRy3xt.js +0 -35
  827. package/dist/native-hook-relay-CTpTLgCA.js +0 -519
  828. package/dist/nextcloud-talk-BH2uWRZ2.js +0 -17
  829. package/dist/node-cli-AWE1ZFfV.js +0 -2506
  830. package/dist/node-service-DCI-s3Mm.js +0 -68
  831. package/dist/nodes-cli-B7IWCrYq.js +0 -1046
  832. package/dist/nodes-utils-Dg2hrC3z.js +0 -84
  833. package/dist/nodes.helpers-CkJO5i0d.js +0 -34
  834. package/dist/notify-bsxfkOWp.js +0 -315
  835. package/dist/onboard-BQaZtwIU.js +0 -632
  836. package/dist/onboard-helpers-Cc2AnoIU.js +0 -6
  837. package/dist/onboard-helpers-DIxfEXNM.js +0 -204
  838. package/dist/onboard-remote-CYhQbOXH.js +0 -2
  839. package/dist/onboard-remote-DrH3yVxE.js +0 -193
  840. package/dist/onboard-skills-DCI3hVXa.js +0 -134
  841. package/dist/onboard-skills-i4KuFzS4.js +0 -2
  842. package/dist/openai-http-D_7Nk3iN.js +0 -500
  843. package/dist/openresponses-http-BITxvD4V.js +0 -1128
  844. package/dist/operator-approvals-client-C0t_-2xC.js +0 -68
  845. package/dist/outbound.runtime-C8_lBQcx.js +0 -2
  846. package/dist/pair-command-approve-D3s1W5go.js +0 -44
  847. package/dist/persistent-bindings.lifecycle-CCR6khHJ.js +0 -85
  848. package/dist/persistent-bindings.lifecycle-Dgoo5bpE.js +0 -2
  849. package/dist/pi-embedded-C2l80M7j.js +0 -4
  850. package/dist/pi-embedded-DMHGJgoQ.js +0 -2905
  851. package/dist/pi-embedded.runtime-fA0EsIue.js +0 -4
  852. package/dist/pi-tool-definition-adapter-B4hSYdYX.js +0 -217
  853. package/dist/pi-tools-YCHBvJG0.js +0 -1057
  854. package/dist/pi-tools.before-tool-call-BsyruRs4.js +0 -433
  855. package/dist/pi-tools.before-tool-call-D1maRTbl.js +0 -2
  856. package/dist/plugin-DmBZwzWQ.js +0 -12195
  857. package/dist/plugin-enabled-rr_Y1Kwh.js +0 -140
  858. package/dist/plugin-registration-J1JWqMZg.js +0 -23
  859. package/dist/plugin-service-CPY8FSW2.js +0 -2890
  860. package/dist/policy-DDUw681i.js +0 -328
  861. package/dist/prepare.runtime-BfnpyhHB.js +0 -815
  862. package/dist/probe-CCdD6_vN.js +0 -1443
  863. package/dist/probe-CakOsrSu.js +0 -241
  864. package/dist/probe-Ctrcd_Q7.js +0 -2205
  865. package/dist/probe-D9IFIte1.js +0 -2
  866. package/dist/probe-DXMI0QlZ.js +0 -74
  867. package/dist/probe-KtX2HjXM.js +0 -45
  868. package/dist/probe-OcOYm1bj.js +0 -2
  869. package/dist/program-DxZA1yAX.js +0 -111
  870. package/dist/prompt-select-styled-CATG4Xp5.js +0 -20
  871. package/dist/protocol-C40iRm9c.js +0 -2234
  872. package/dist/provider-dispatcher-BZp3Stzr.js +0 -2
  873. package/dist/provider-dispatcher-JJxN7BDL.js +0 -22
  874. package/dist/qr-cli-IMKzycXh.js +0 -349
  875. package/dist/qr-cli-W8X3Ha5T.js +0 -2
  876. package/dist/reaction-runtime-api-D7i4oMn9.js +0 -116
  877. package/dist/reactions-D9eRHeXM.js +0 -998
  878. package/dist/register-service-commands-D37K4_BJ.js +0 -71
  879. package/dist/register.agent-p1q6ZWSs.js +0 -248
  880. package/dist/register.configure-tgXCoIHv.js +0 -15
  881. package/dist/register.maintenance-BtBgu8zC.js +0 -438
  882. package/dist/register.message-B5msOUKt.js +0 -329
  883. package/dist/register.onboard-BO11PDUs.js +0 -81
  884. package/dist/register.runtime-D8XvwfoZ.js +0 -81
  885. package/dist/register.setup-Ba19XSJi.js +0 -150
  886. package/dist/register.status-health-sessions-Bne0mmgw.js +0 -1215
  887. package/dist/register.subclis--mdYCZZM.js +0 -3
  888. package/dist/register.subclis-_kuyreQm.js +0 -29
  889. package/dist/register.subclis-core-UkVTqwB1.js +0 -249
  890. package/dist/reply-dispatch-runtime-DcxOLr7n.js +0 -13
  891. package/dist/reply-runtime-B4VQJnqi.js +0 -11
  892. package/dist/reply.runtime-B990ty9C.js +0 -2
  893. package/dist/restart-health-BWUPc4R-.js +0 -202
  894. package/dist/restart-health-CWvsjHVN.js +0 -2
  895. package/dist/root-help-D9aeVXNr.js +0 -44
  896. package/dist/routes-BSmEgP46.js +0 -2
  897. package/dist/routes-Z67chkN5.js +0 -3341
  898. package/dist/rpc-CBQZvJME.js +0 -61
  899. package/dist/rpc.runtime-ClhNVRer.js +0 -21
  900. package/dist/run-delivery.runtime-Bj566BTH.js +0 -530
  901. package/dist/run-embedded.runtime-DuB-mQh2.js +0 -4
  902. package/dist/run-execution-cli.runtime-Oy4FGfj5.js +0 -4
  903. package/dist/run-executor.runtime-B7-lfFh3.js +0 -277
  904. package/dist/run-main-1Fvwazhp.js +0 -516
  905. package/dist/run-subagent-registry.runtime-Bx9Wga3d.js +0 -2
  906. package/dist/run-wait-C-VgbefQ.js +0 -135
  907. package/dist/runtime-BV7JmOaE.js +0 -9
  908. package/dist/runtime-D7npxl4G.js +0 -973
  909. package/dist/runtime-api-BkVIoPU9.js +0 -4
  910. package/dist/runtime-api-CdhgyHMB.js +0 -9
  911. package/dist/runtime-api-CmlBBCCY.js +0 -9
  912. package/dist/runtime-api-DnhXPE_z.js +0 -14
  913. package/dist/runtime-embedded-pi.runtime-DpKqDUrl.js +0 -2
  914. package/dist/runtime-internal-Bu1n9i4P.js +0 -2
  915. package/dist/runtime-options-CN4g8VJE.js +0 -275
  916. package/dist/runtime-schema-Jjsquqvq.js +0 -27780
  917. package/dist/scan-C8jthyct.js +0 -523
  918. package/dist/scan-DEd4q4aN.js +0 -2
  919. package/dist/secrets-cli-iBL8NBAq.js +0 -2101
  920. package/dist/security-cli-CzYBRa4n.js +0 -486
  921. package/dist/selection-BOalx5uy.js +0 -2
  922. package/dist/selection-BZFVKdFz.js +0 -7736
  923. package/dist/send-C4mKkkWW.js +0 -156
  924. package/dist/send-C_36w3lb.js +0 -102
  925. package/dist/send.runtime-vJT5TzDj.js +0 -2
  926. package/dist/server-BTmWWR_9.js +0 -13
  927. package/dist/server-CBQVrNY0.js +0 -77
  928. package/dist/server-context-Dq2VA7I4.js +0 -2
  929. package/dist/server-context-O_WUP8OV.js +0 -847
  930. package/dist/server-node-events-B8PLg0eQ.js +0 -481
  931. package/dist/server-plugin-bootstrap-ChIvqLMw.js +0 -2
  932. package/dist/server-plugin-bootstrap-Rbxd2g6a.js +0 -11333
  933. package/dist/server-restart-sentinel-BCd6AqrQ.js +0 -697
  934. package/dist/server.impl-CEOWGKN5.js +0 -12735
  935. package/dist/service-ChLFBF7Q.js +0 -120
  936. package/dist/service-XI052xiT.js +0 -2
  937. package/dist/service-audit-BFxGImYM.js +0 -254
  938. package/dist/service-audit-cqHyD5gB.js +0 -2
  939. package/dist/session-kill-http-ChCr5CQ3.js +0 -110
  940. package/dist/session-reset-service-DsYIDYdh.js +0 -471
  941. package/dist/session-route-rem428sJ.js +0 -93
  942. package/dist/session-status.runtime-CFmGwoCm.js +0 -2
  943. package/dist/session-subagent-reactivation.runtime-DLkpnURC.js +0 -2
  944. package/dist/session-tab-registry-DWyzIez5.js +0 -491
  945. package/dist/session-visibility-CJocpWP0.js +0 -147
  946. package/dist/sessions-helpers-CMf9gVTZ.js +0 -304
  947. package/dist/sessions-history-http-C5iZkW8x.js +0 -383
  948. package/dist/sessions-patch-2sBcHc9a.js +0 -309
  949. package/dist/sessions-resolve-D1hmolC-.js +0 -174
  950. package/dist/sessions.runtime-DMPmzLE0.js +0 -2
  951. package/dist/setup-D1ekkhVk.js +0 -495
  952. package/dist/setup-api-DilgjV01.js +0 -29
  953. package/dist/setup-core-CFAiauCt.js +0 -171
  954. package/dist/setup-core-RgJfQc-C.js +0 -176
  955. package/dist/setup-surface-C0l9bHY3.js +0 -286
  956. package/dist/setup-surface-CfcFHZln.js +0 -403
  957. package/dist/setup-surface-CyDRXq_1.js +0 -219
  958. package/dist/setup.finalize-JPqhcPh5.js +0 -539
  959. package/dist/setup.gateway-config-Df6Jm4vX.js +0 -250
  960. package/dist/shared-3gP_6DZV.js +0 -76
  961. package/dist/shared-C9fN-WCy.js +0 -198
  962. package/dist/shared-Cz9c46Aj.js +0 -121
  963. package/dist/slash-state-C7nXXf23.js +0 -1911
  964. package/dist/src-LnF0REtW.js +0 -3974
  965. package/dist/startup-context-CxTy7OzN.js +0 -312
  966. package/dist/status-4n9xL7HY.js +0 -2
  967. package/dist/status-B4kD5cCF.js +0 -2
  968. package/dist/status-CARBoVql.js +0 -209
  969. package/dist/status-COK71LP_.js +0 -3
  970. package/dist/status-DxcqzXtf.js +0 -397
  971. package/dist/status-all-r7zyk41X.js +0 -498
  972. package/dist/status-f2DLmjOF.js +0 -190
  973. package/dist/status-json-C_wESP21.js +0 -14
  974. package/dist/status-json-command-C6w9ZAHp.js +0 -84
  975. package/dist/status-runtime-shared-Bq_SUJpC.js +0 -257
  976. package/dist/status-subagents.runtime-03fp3eBE.js +0 -18
  977. package/dist/status-text-CNvz374U.js +0 -237
  978. package/dist/status.gateway-connection.runtime-zjQmormq.js +0 -2
  979. package/dist/status.gather-BhjoJVEs.js +0 -2
  980. package/dist/status.gather-zdywRvBb.js +0 -292
  981. package/dist/status.runtime-DB31ZRnK.js +0 -2
  982. package/dist/status.scan-DjhdTOWP.js +0 -65
  983. package/dist/status.scan-overview-BYxTBsOw.js +0 -379
  984. package/dist/status.scan.fast-json-Dz0JcORG.js +0 -2
  985. package/dist/status.scan.fast-json-FroEIZ9d.js +0 -132
  986. package/dist/status.summary-3UVa_X5B.js +0 -214
  987. package/dist/status.summary-BGzGsyZB.js +0 -2
  988. package/dist/subagent-announce-BvRFZ87M.js +0 -351
  989. package/dist/subagent-announce-delivery-QvuOM46S.js +0 -726
  990. package/dist/subagent-announce-output-fOtzkOiP.js +0 -364
  991. package/dist/subagent-control-DwnzmG6T.js +0 -506
  992. package/dist/subagent-followup.runtime-DxR1eP_x.js +0 -68
  993. package/dist/subagent-orphan-recovery-CiBbDxX3.js +0 -305
  994. package/dist/subagent-registry-D5FrT_tn.js +0 -3
  995. package/dist/subagent-registry-DbPekx8d.js +0 -1753
  996. package/dist/subagent-spawn-W-bTaU9l.js +0 -1005
  997. package/dist/system-cli-B443uVHG.js +0 -59
  998. package/dist/targets-3Lcm8HoL.js +0 -67
  999. package/dist/task-executor-B5e9_Hmt.js +0 -360
  1000. package/dist/task-owner-access-CIEssJ78.js +0 -74
  1001. package/dist/task-registry-M1bHrFvP.js +0 -2366
  1002. package/dist/task-registry-delivery-runtime-CiHBC7sJ.js +0 -3
  1003. package/dist/task-registry-delivery-runtime-M4O7ffju.js +0 -2
  1004. package/dist/task-registry.maintenance-BURvMU0r.js +0 -2
  1005. package/dist/task-registry.maintenance-CgrLoBqi.js +0 -416
  1006. package/dist/testing-CRy_6-wt.js +0 -575
  1007. package/dist/text-report-B3-4Dvfb.js +0 -587
  1008. package/dist/tool-resolution-C52y5Qtc.js +0 -90
  1009. package/dist/tools-effective-inventory-WlIlqM7G.js +0 -152
  1010. package/dist/tools-invoke-http-B04Rc8tG.js +0 -206
  1011. package/dist/trash-BV5Gcx3a.js +0 -24
  1012. package/dist/tui-cli-DMZ07qRK.js +0 -4575
  1013. package/dist/update-cli-DeBm7b4g.js +0 -1759
  1014. package/dist/upgrade-C9ke1SCc.js +0 -1226
  1015. package/dist/video-generation-task-status-I3jvAjUL.js +0 -163
  1016. package/dist/wait-for-idle-before-flush-BZhF2ejZ.js +0 -5986
  1017. package/dist/wizard-models-CMKeAr_M.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-DNd8mbjy.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-3He3LWHw.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-zVJHt5-N.js";
13
+ import { a as registerMemoryEmbeddingProvider, r as listMemoryEmbeddingProviders } from "./memory-embedding-providers-e8411EgH.js";
14
+ import { r as loadModelCatalog } from "./model-catalog-1XlBrFEV.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-qkJp8etH.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-DuDGOVT1.js";
22
+ import { n as listRuntimeImageGenerationProviders, t as generateImage } from "./runtime-_-L5ftbu.js";
23
+ import { l as saveMediaBuffer } from "./store-Fge4lGwN.js";
24
+ import { C as buildMediaUnderstandingRegistry } from "./resolve-IXqG_vKU.js";
25
+ import { n as listRuntimeVideoGenerationProviders, t as generateVideo } from "./runtime-B3upjFki.js";
26
+ import { a as runWebSearch, r as listWebSearchProviders, t as isWebSearchProviderConfigured } from "./runtime-CsaTxb99.js";
27
+ import { t as resolveMemorySearchConfig } from "./memory-search-CKSa1HgN.js";
28
+ import { n as agentCommand } from "./agent-command-DC7I_88W.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-Dlvh7_uU.js";
32
+ import "./provider-auth-login-wF4aEfCh.js";
33
+ import { t as createDefaultDeps } from "./deps-D3gqpOra.js";
34
+ import "./aliases-CxBcx9gF.js";
35
+ import { n as modelsAuthLoginCommand } from "./auth-BFbLz2gx.js";
36
+ import "./auth-order-zXIiW-Cn.js";
37
+ import "./fallbacks-BKA5XrxA.js";
38
+ import "./image-fallbacks-RlfTqOne.js";
39
+ import { t as modelsStatusCommand } from "./list-CgC_rsta.js";
40
+ import "./scan-Yz6DoQn5.js";
41
+ import "./set-BraQD5KU.js";
42
+ import "./set-image-CsCPBHZC.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-BuEvshdw.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 };