@pixelzx/genesis 2026.5.10-2 → 2026.5.10-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 +7 -0
  2. package/dist/.buildstamp +1 -1
  3. package/dist/abort-o_hg2xtq.js +201 -0
  4. package/dist/abort.runtime-C8y_LD66.js +2 -0
  5. package/dist/abort.runtime.js +1 -1
  6. package/dist/accounts-BaxyfsNG.js +107 -0
  7. package/dist/accounts-CBI-56kp.js +104 -0
  8. package/dist/accounts-m2xbhdqn.js +2 -0
  9. package/dist/acp-cli-BOlwnmxd.js +2193 -0
  10. package/dist/acp-spawn-BrI6X9SH.js +2 -0
  11. package/dist/acp-spawn-xahA0x4e.js +1093 -0
  12. package/dist/acp-stateful-target-driver-B0_0BB8d.js +89 -0
  13. package/dist/action-agents-BLXVAHpm.js +67 -0
  14. package/dist/action-focus-Bl80EFqG.js +132 -0
  15. package/dist/action-help-CBbcn9Xo.js +7 -0
  16. package/dist/action-info-DrggqbpC.js +101 -0
  17. package/dist/action-kill-p6a-p_Wl.js +33 -0
  18. package/dist/action-list-4o0eiRPy.js +21 -0
  19. package/dist/action-log-C2VTzCV-.js +30 -0
  20. package/dist/action-send-DQE2YhZv.js +39 -0
  21. package/dist/action-spawn-DeTOlrlr.js +47 -0
  22. package/dist/action-unfocus-CUJ_-To0.js +29 -0
  23. package/dist/actions.runtime-BME76tM1.js +18 -0
  24. package/dist/actions.runtime-DgFQtpdt.js +5 -0
  25. package/dist/actions.runtime.js +1 -1
  26. package/dist/agent-DvPQGyLY.js +2 -0
  27. package/dist/agent-command-Dv8Kifbw.js +874 -0
  28. package/dist/agent-harness-runtime-rPtHDzbH.js +144 -0
  29. package/dist/agent-runner-utils-Cwcsq2Vg.js +239 -0
  30. package/dist/agent-runner.runtime-EDmsi-tw.js +3455 -0
  31. package/dist/agent-runner.runtime.js +1 -1
  32. package/dist/agent-runtime-BZ7qw7Go.js +18 -0
  33. package/dist/agents-BmdK7DYn.js +954 -0
  34. package/dist/agents-ojp3yzuP.js +5 -0
  35. package/dist/aliases-B-xkGRWv.js +2 -0
  36. package/dist/aliases-CeyLk8gs.js +96 -0
  37. package/dist/api-7RMNrU--.js +139 -0
  38. package/dist/api-DuTxAbzX.js +5 -0
  39. package/dist/api-S68mLw4i.js +3 -0
  40. package/dist/approval-gateway-resolver-D6GUSzWU.js +29 -0
  41. package/dist/approval-gateway-runtime-CLSx2pjl.js +2 -0
  42. package/dist/approval-handler-runtime-D_pDErDf.js +439 -0
  43. package/dist/approval-native-runtime-DMmho8f_.js +729 -0
  44. package/dist/attempt-execution.runtime-BiBQNA9X.js +509 -0
  45. package/dist/attempt-execution.runtime.js +1 -1
  46. package/dist/attempt.prompt-helpers-NLkGfNY6.js +221 -0
  47. package/dist/attempt.tool-run-context-DWlgJ-_O.js +933 -0
  48. package/dist/audit-UgEtgbwZ.js +939 -0
  49. package/dist/audit.runtime--guvdA_A.js +7 -0
  50. package/dist/audit.runtime.js +1 -1
  51. package/dist/auth-C50R0MRq.js +2 -0
  52. package/dist/auth-D0-jQ58t.js +383 -0
  53. package/dist/auth-order-BFJrCRu5.js +96 -0
  54. package/dist/auth-order-DSgYrJ_p.js +2 -0
  55. package/dist/bash-tools-DHuwAZ58.js +2824 -0
  56. package/dist/bash-tools-D_feNjoF.js +3 -0
  57. package/dist/binding-routing-CY1eMDau.js +85 -0
  58. package/dist/binding-targets-WwNSyphm.js +121 -0
  59. package/dist/bridge-server-D6UfpfpG.js +113 -0
  60. package/dist/browser-control-auth-D68lDX1S.js +2 -0
  61. package/dist/browser-node-runtime-CY1lVQqq.js +12 -0
  62. package/dist/browser-profiles-B49YcSoc.js +2 -0
  63. package/dist/browser-runtime-BDL147Ka.js +387 -0
  64. package/dist/browser-setup-tools-C03RsiTe.js +13 -0
  65. package/dist/build-DLN8Lh14.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-BNALogg6.js +331 -0
  70. package/dist/call-PW7UP-CK.js +3 -0
  71. package/dist/call.runtime-CYfH8MdC.js +2 -0
  72. package/dist/call.runtime.js +1 -1
  73. package/dist/capability-cli-B4UpH1T0.js +1401 -0
  74. package/dist/catchup-CXQzIWv3.js +300 -0
  75. package/dist/channel-BiZSvVcj.js +297 -0
  76. package/dist/channel-BkI_5MRp.js +453 -0
  77. package/dist/channel-BnG-E5UX.js +595 -0
  78. package/dist/channel-CNZdJ8HY.js +1174 -0
  79. package/dist/channel-COcBdBbn.js +1100 -0
  80. package/dist/channel-CQI0hLJk.js +350 -0
  81. package/dist/channel-CkoM-a7d.js +226 -0
  82. package/dist/channel-CrHTdcH4.js +840 -0
  83. package/dist/channel-DvgX6dVj.js +1320 -0
  84. package/dist/channel-HtE-iRkv.js +491 -0
  85. package/dist/channel-OequV7Gf.js +1802 -0
  86. package/dist/channel-core-ChdqmAmk.js +5 -0
  87. package/dist/channel-inbound-Q2rVZZUs.js +31 -0
  88. package/dist/channel-plugin-runtime-DaijXHro.js +771 -0
  89. package/dist/channel-runtime-y4XUEoQY.js +425 -0
  90. package/dist/channel.runtime-BrEbVLLQ.js +576 -0
  91. package/dist/channel.runtime-C9UaDpbO.js +2364 -0
  92. package/dist/channel.runtime-Ccnjrmpx.js +109 -0
  93. package/dist/channel.runtime-CerUOlEZ.js +430 -0
  94. package/dist/channel.runtime-Du87a5jR.js +89 -0
  95. package/dist/channel.runtime-FklQos16.js +4 -0
  96. package/dist/channel.runtime-pynPO2Q-.js +34702 -0
  97. package/dist/channel.runtime.js +1 -1
  98. package/dist/channel.setup-D2BshGlh.js +10 -0
  99. package/dist/channels-DXbWBAhP.js +733 -0
  100. package/dist/channels-cli-DowVHylc.js +268 -0
  101. package/dist/chat-BMLW9p0d.js +2830 -0
  102. package/dist/clawbot-cli-DYF742Fr.js +9 -0
  103. package/dist/cli/daemon-cli.js +3 -3
  104. package/dist/cli-BebcHCJY.js +219 -0
  105. package/dist/cli-BnQ5RUbX.js +2 -0
  106. package/dist/cli-CsJTitwJ.js +72 -0
  107. package/dist/cli-D1z_Lra2.js +2 -0
  108. package/dist/cli-runner-DCfEJ3Dl.js +286 -0
  109. package/dist/cli-runner.runtime-1YoJduVc.js +3 -0
  110. package/dist/cli-runner.runtime-DaIWshs8.js +4 -0
  111. package/dist/cli-runner.runtime.js +1 -1
  112. package/dist/cli-startup-metadata.json +2 -2
  113. package/dist/cli.runtime-0QJWPe0Y.js +1261 -0
  114. package/dist/cli.runtime.js +1 -1
  115. package/dist/client-BR4n6hNI.js +713 -0
  116. package/dist/client-hrT_8w_f.js +138 -0
  117. package/dist/command-auth-BI6iswCp.js +76 -0
  118. package/dist/command-config-resolution-BvDykKQ0.js +23 -0
  119. package/dist/command-config-resolution-CJz3dmjF.js +2 -0
  120. package/dist/command-config-resolution.runtime-C1xIzrMA.js +2 -0
  121. package/dist/command-config-resolution.runtime.js +1 -1
  122. package/dist/command-registry-BQh49BOI.js +9 -0
  123. package/dist/command-registry-COW3Dwow.js +4 -0
  124. package/dist/command-registry-core-Bq5tHbQ5.js +106 -0
  125. package/dist/command-secret-gateway-CWH-56qF.js +528 -0
  126. package/dist/command-status.runtime-BUceIW-k.js +87 -0
  127. package/dist/command-status.runtime.js +1 -1
  128. package/dist/commands-acp-CDM0_szW.js +77 -0
  129. package/dist/commands-compact.runtime-BpuJhNyp.js +10 -0
  130. package/dist/commands-compact.runtime.js +1 -1
  131. package/dist/commands-handlers.runtime-DikW0yB0.js +4597 -0
  132. package/dist/commands-handlers.runtime.js +1 -1
  133. package/dist/commands-status-DgbzuFLf.js +16 -0
  134. package/dist/commands-status.runtime-BtoVY07x.js +3 -0
  135. package/dist/commands-status.runtime.js +1 -1
  136. package/dist/commands-subagents-control.runtime-B1MwVPHf.js +2 -0
  137. package/dist/commands-subagents-control.runtime-CPSMKJqB.js +3 -0
  138. package/dist/commands-subagents-control.runtime.js +1 -1
  139. package/dist/commands-system-prompt-DNA0qsTv.js +2 -0
  140. package/dist/commands-system-prompt-DdoBQ8ad.js +158 -0
  141. package/dist/commands.runtime-B8F59wvr.js +166 -0
  142. package/dist/commands.runtime.js +1 -1
  143. package/dist/compact-DevuFvwc.js +1118 -0
  144. package/dist/compact.runtime-DFxdJbZX.js +12 -0
  145. package/dist/compact.runtime.js +1 -1
  146. package/dist/completion-cli-94LY3Cno.js +328 -0
  147. package/dist/config-cli-3wKyVoWG.js +1078 -0
  148. package/dist/config-x0GQmd_p.js +252 -0
  149. package/dist/configure-DXBHXi9E.js +1252 -0
  150. package/dist/configure-iqDkqwpX.js +2 -0
  151. package/dist/connect-options-pZ4TVfhD.js +699 -0
  152. package/dist/control-auth-C0_VWbFV.js +125 -0
  153. package/dist/control-service-DKz9pgNJ.js +156 -0
  154. package/dist/conversation-id-C1ZMSaUv.js +235 -0
  155. package/dist/conversation-id-Cn8LoNiS.js +38 -0
  156. package/dist/conversation-runtime-PeJkl-ts.js +31 -0
  157. package/dist/core-BXR05azh.js +275 -0
  158. package/dist/cron-cli-C9SgQQXV.js +713 -0
  159. package/dist/daemon-cli-CJ8VUS9L.js +12 -0
  160. package/dist/dashboard-B7cbYfiK.js +81 -0
  161. package/dist/dashboard-SJJ1gpY7.js +2 -0
  162. package/dist/delegate-Bb6bHoIc.js +64 -0
  163. package/dist/detached-task-runtime-DUb2_Az9.js +73 -0
  164. package/dist/devices-cli-CZLTVAzc.js +498 -0
  165. package/dist/diagnostics-CElgAkJx.js +154 -0
  166. package/dist/direct-dm-B-q3BnYs.js +64 -0
  167. package/dist/dispatch-D6RvPlwP.js +1131 -0
  168. package/dist/dispatch-acp-Bit9gfDS.js +981 -0
  169. package/dist/dispatch-acp-manager.runtime-BDYoaEzk.js +3 -0
  170. package/dist/dispatch-acp-manager.runtime.js +1 -1
  171. package/dist/dispatch-acp.runtime-9yBydATu.js +19 -0
  172. package/dist/dispatch-acp.runtime.js +1 -1
  173. package/dist/doctor-device-pairing-CALw5gAh.js +307 -0
  174. package/dist/doctor-gateway-daemon-flow-DH90Xuwv.js +250 -0
  175. package/dist/doctor-gateway-health-DLTQr7oR.js +63 -0
  176. package/dist/doctor-health-UickjAEG.js +59 -0
  177. package/dist/doctor-health-contributions-CT2_osp-.js +493 -0
  178. package/dist/doctor-prompter-CmsL_aNs.js +56 -0
  179. package/dist/doctor-workspace-status-DrfJ_CMh.js +75 -0
  180. package/dist/dreaming-BjlelMwS.js +1574 -0
  181. package/dist/dreaming-narrative-Cioh4-iE.js +595 -0
  182. package/dist/embedded-gateway-stub.runtime-D3axE_Gz.js +9 -0
  183. package/dist/embedded-gateway-stub.runtime.js +1 -1
  184. package/dist/entry.js +2 -2
  185. package/dist/exec-approvals-cli-C61OIas5.js +498 -0
  186. package/dist/execute.runtime-Dh2PQVjB.js +1363 -0
  187. package/dist/execute.runtime.js +1 -1
  188. package/dist/extensionAPI.js +1 -1
  189. package/dist/extensions/active-memory/index.js +1 -1
  190. package/dist/extensions/bluebubbles/api.js +3 -3
  191. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  192. package/dist/extensions/browser/browser-bridge.js +1 -1
  193. package/dist/extensions/browser/browser-config.js +4 -4
  194. package/dist/extensions/browser/browser-control-auth.js +2 -2
  195. package/dist/extensions/browser/browser-doctor.js +2 -2
  196. package/dist/extensions/browser/browser-maintenance.js +2 -2
  197. package/dist/extensions/browser/browser-profiles.js +2 -2
  198. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  199. package/dist/extensions/browser/index.js +1 -1
  200. package/dist/extensions/browser/plugin-registration.js +1 -1
  201. package/dist/extensions/browser/register.runtime.js +3 -3
  202. package/dist/extensions/browser/runtime-api.js +11 -11
  203. package/dist/extensions/browser/test-support.js +1 -1
  204. package/dist/extensions/device-pair/api.js +1 -1
  205. package/dist/extensions/device-pair/index.js +3 -3
  206. package/dist/extensions/device-pair/notify.js +1 -1
  207. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  208. package/dist/extensions/google-meet/index.js +2 -2
  209. package/dist/extensions/imessage/api.js +3 -3
  210. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  211. package/dist/extensions/imessage/runtime-api.js +3 -3
  212. package/dist/extensions/irc/api.js +2 -2
  213. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  214. package/dist/extensions/line/api.js +2 -2
  215. package/dist/extensions/line/channel-plugin-api.js +1 -1
  216. package/dist/extensions/line/contract-api.js +1 -1
  217. package/dist/extensions/line/runtime-api.js +4 -4
  218. package/dist/extensions/line/setup-api.js +1 -1
  219. package/dist/extensions/llm-task/index.js +2 -2
  220. package/dist/extensions/lobster/index.js +3 -3
  221. package/dist/extensions/lobster/runtime-api.js +1 -1
  222. package/dist/extensions/mattermost/api.js +1 -1
  223. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  224. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  225. package/dist/extensions/mattermost/policy-api.js +1 -1
  226. package/dist/extensions/mattermost/runtime-api.js +4 -4
  227. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  228. package/dist/extensions/memory-core/api.js +1 -1
  229. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  230. package/dist/extensions/memory-core/index.js +3 -3
  231. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  232. package/dist/extensions/msteams/api.js +1 -1
  233. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  234. package/dist/extensions/msteams/runtime-api.js +3 -3
  235. package/dist/extensions/msteams/test-api.js +1 -1
  236. package/dist/extensions/nextcloud-talk/api.js +1 -1
  237. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  238. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  239. package/dist/extensions/openshell/index.js +2 -2
  240. package/dist/extensions/signal/api.js +6 -6
  241. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  242. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  243. package/dist/extensions/signal/runtime-api.js +7 -7
  244. package/dist/extensions/skill-workshop/api.js +1 -1
  245. package/dist/extensions/skill-workshop/index.js +1 -1
  246. package/dist/extensions/synology-chat/api.js +1 -1
  247. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  248. package/dist/extensions/tlon/api.js +2 -2
  249. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  250. package/dist/extensions/tlon/runtime-api.js +1 -1
  251. package/dist/extensions/tlon/test-api.js +1 -1
  252. package/dist/extensions/twitch/api.js +1 -1
  253. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  254. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  255. package/dist/extensions/zalo/api.js +3 -3
  256. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  257. package/dist/extensions/zalo/runtime-api.js +2 -2
  258. package/dist/extensions/zalo/setup-api.js +2 -2
  259. package/dist/extensions/zalouser/api.js +3 -3
  260. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  261. package/dist/extensions/zalouser/runtime-api.js +6 -6
  262. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  263. package/dist/extensions/zalouser/test-api.js +1 -1
  264. package/dist/fallbacks-7WaQrL4w.js +2 -0
  265. package/dist/fallbacks-D030WgeJ.js +31 -0
  266. package/dist/fallbacks-shared-D0Irg6Dc.js +111 -0
  267. package/dist/gateway-Drmf7aeu.js +115 -0
  268. package/dist/gateway-cli-DzsJzCar.js +1283 -0
  269. package/dist/gateway-rpc-ByhpcN5x.js +14 -0
  270. package/dist/gateway-rpc.runtime-4zXMZEZA.js +23 -0
  271. package/dist/gateway-rpc.runtime.js +1 -1
  272. package/dist/gateway-runtime-BGIrLVc5.js +15 -0
  273. package/dist/gateway-status-Dcpg0Z1K.js +584 -0
  274. package/dist/genesis-tools-ZNGlG9Ij.js +9144 -0
  275. package/dist/genesis-tools.runtime-CSl_w_fx.js +2 -0
  276. package/dist/genesis-tools.runtime.js +1 -1
  277. package/dist/get-reply-BG-YgQgk.js +3879 -0
  278. package/dist/get-reply-from-config.runtime-CTTbEqgi.js +2 -0
  279. package/dist/get-reply-from-config.runtime.js +1 -1
  280. package/dist/graph-users-DBkBwndc.js +1337 -0
  281. package/dist/health-DP9-SUDF.js +3 -0
  282. package/dist/health-Dn4lrkX0.js +469 -0
  283. package/dist/health-route-BOUp8_1m.js +2 -0
  284. package/dist/health-route-BhuLVeKt.js +41 -0
  285. package/dist/heartbeat-runner-B5ZUS0Zj.js +1292 -0
  286. package/dist/heartbeat-runner-BIlNfweM.js +5 -0
  287. package/dist/heartbeat-runner.runtime-YmoU6ZZ3.js +4 -0
  288. package/dist/heartbeat-runner.runtime.js +1 -1
  289. package/dist/hooks-cli-hN5FtPX4.js +433 -0
  290. package/dist/image-fallbacks-Cq3R8m7Y.js +2 -0
  291. package/dist/image-fallbacks-Dd4BCf1D.js +31 -0
  292. package/dist/inbound-reply-dispatch-Be4j__jx.js +73 -0
  293. package/dist/index.js +2 -2
  294. package/dist/infra-runtime-dEG-SNc-.js +39 -0
  295. package/dist/init-C1wrook_.js +59 -0
  296. package/dist/library-B6SYgaHj.js +45 -0
  297. package/dist/lifecycle-BJuODKPo.js +229 -0
  298. package/dist/lifecycle-Dhj0KywB.js +571 -0
  299. package/dist/lifecycle.runtime-CwSjoTkX.js +2 -0
  300. package/dist/lifecycle.runtime.js +1 -1
  301. package/dist/list-Bj2cpmBs.js +1212 -0
  302. package/dist/list-CBe1cOSo.js +2 -0
  303. package/dist/list-CktR5l_P.js +2 -0
  304. package/dist/list-ydeAMfpS.js +131 -0
  305. package/dist/list.probe-0SQPzjrW.js +419 -0
  306. package/dist/llm-slug-generator-CyQx7U_Q.js +79 -0
  307. package/dist/llm-slug-generator.js +1 -1
  308. package/dist/load-config-BHd00lHp.js +35 -0
  309. package/dist/local-dispatch.runtime-CqTNOXfw.js +8 -0
  310. package/dist/local-dispatch.runtime.js +1 -1
  311. package/dist/logs-cli-BWOEA5qi.js +265 -0
  312. package/dist/logs-cli.runtime-DSIEK1BE.js +2 -0
  313. package/dist/logs-cli.runtime.js +1 -1
  314. package/dist/main-session-restart-recovery-Cfc3B2Uj.js +206 -0
  315. package/dist/managed-image-attachments-BZbPdPC8.js +2 -0
  316. package/dist/managed-image-attachments-CxLohd8A.js +635 -0
  317. package/dist/manager-Cg7vl9NG.js +2057 -0
  318. package/dist/manager-CiI4zE-D.js +2 -0
  319. package/dist/markdown-to-line-B8FYeJdD.js +790 -0
  320. package/dist/mcp/plugin-tools-serve.js +1 -1
  321. package/dist/mcp-cli-BS4_9Zoo.js +725 -0
  322. package/dist/mcp-http-wF9LvDEz.js +529 -0
  323. package/dist/memory-core-host-runtime-cli-06ivr1qR.js +9 -0
  324. package/dist/message-BzaLYgSG.js +232 -0
  325. package/dist/message-action-runner-BazMarN6.js +1407 -0
  326. package/dist/message-action-runner-Bq7rUhnL.js +2 -0
  327. package/dist/message-actions-DcnuU8Sm.js +143 -0
  328. package/dist/message.gateway.runtime-BCFg5opz.js +2 -0
  329. package/dist/message.gateway.runtime.js +1 -1
  330. package/dist/models-auth-status-6d3I6qIv.js +201 -0
  331. package/dist/models-cli-DZPcli0C.js +219 -0
  332. package/dist/monitor-BYFZsGcy.js +2 -0
  333. package/dist/monitor-C2nxTIum.js +1459 -0
  334. package/dist/monitor-CD5DZfT0.js +1237 -0
  335. package/dist/monitor-C_5rnpcO.js +1661 -0
  336. package/dist/monitor-CxPzN2U-.js +671 -0
  337. package/dist/monitor-G_A80TYD.js +788 -0
  338. package/dist/monitor-auth-Bjr6pzE-.js +207 -0
  339. package/dist/monitor-processing-Du6MiEEU.js +1974 -0
  340. package/dist/monitor.runtime-BHjQO73F.js +2 -0
  341. package/dist/monitor.runtime.js +1 -1
  342. package/dist/monitor.webhook-BU61VqG-.js +180 -0
  343. package/dist/msteams-HKEY9u2h.js +35 -0
  344. package/dist/native-hook-relay-DcIfpN38.js +519 -0
  345. package/dist/nextcloud-talk-BAwtzO7T.js +17 -0
  346. package/dist/node-cli-BM5NVTG7.js +2506 -0
  347. package/dist/nodes-cli-BAuBgmem.js +1046 -0
  348. package/dist/nodes-utils-Bs6GofNl.js +84 -0
  349. package/dist/nodes.helpers-9SdaPWam.js +34 -0
  350. package/dist/notify-bMIvLU57.js +315 -0
  351. package/dist/onboard-DZRCsQKI.js +70 -0
  352. package/dist/onboard-WrvK1ncB.js +2 -0
  353. package/dist/onboard-helpers-iMWEmZ9M.js +204 -0
  354. package/dist/onboard-helpers-nf1FCDx1.js +6 -0
  355. package/dist/onboard-interactive-BqvHTpjq.js +24 -0
  356. package/dist/onboard-non-interactive-QqRYgGmh.js +548 -0
  357. package/dist/onboard-remote-Btb7Elo9.js +2 -0
  358. package/dist/onboard-remote-YLLAXD5a.js +193 -0
  359. package/dist/onboard-skills-CbVEWgXS.js +134 -0
  360. package/dist/onboard-skills-Dlrodw-j.js +2 -0
  361. package/dist/openai-http-D9C2CUw5.js +500 -0
  362. package/dist/openresponses-http-Cm1pNnoN.js +1128 -0
  363. package/dist/operator-approvals-client-Crk-kZWE.js +68 -0
  364. package/dist/outbound.runtime-EJrjRipL.js +2 -0
  365. package/dist/outbound.runtime.js +1 -1
  366. package/dist/pair-command-approve-BEGwU4IB.js +44 -0
  367. package/dist/persistent-bindings.lifecycle-DQF-e-Qa.js +85 -0
  368. package/dist/persistent-bindings.lifecycle-lkGrqLnW.js +2 -0
  369. package/dist/pi-embedded-BDlMkZq9.js +2905 -0
  370. package/dist/pi-embedded-Duzz1mtI.js +4 -0
  371. package/dist/pi-embedded.runtime-Ct_Aa3c5.js +4 -0
  372. package/dist/pi-embedded.runtime.js +1 -1
  373. package/dist/pi-tool-definition-adapter-CZw0LtV5.js +229 -0
  374. package/dist/pi-tools-C6B-SOzB.js +1057 -0
  375. package/dist/pi-tools.before-tool-call-9joq1aHl.js +2 -0
  376. package/dist/pi-tools.before-tool-call-DNnie5TY.js +433 -0
  377. package/dist/plugin-BCPNJxM9.js +12195 -0
  378. package/dist/plugin-enabled-BjLKAsAC.js +140 -0
  379. package/dist/plugin-registration-BId8vb01.js +23 -0
  380. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  381. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  382. package/dist/plugin-sdk/acp-runtime.js +2 -2
  383. package/dist/plugin-sdk/agent-harness-runtime.js +5 -5
  384. package/dist/plugin-sdk/agent-harness.js +6 -6
  385. package/dist/plugin-sdk/agent-runtime.js +2 -2
  386. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  387. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  388. package/dist/plugin-sdk/approval-runtime.js +1 -1
  389. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  390. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  391. package/dist/plugin-sdk/browser-support.js +7 -7
  392. package/dist/plugin-sdk/channel-core.js +2 -2
  393. package/dist/plugin-sdk/channel-inbound.js +2 -2
  394. package/dist/plugin-sdk/command-auth.js +1 -1
  395. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  396. package/dist/plugin-sdk/compat.js +1 -1
  397. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  398. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  399. package/dist/plugin-sdk/core.js +2 -2
  400. package/dist/plugin-sdk/direct-dm.js +1 -1
  401. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  402. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  403. package/dist/plugin-sdk/index.js +1 -1
  404. package/dist/plugin-sdk/infra-runtime.js +2 -2
  405. package/dist/plugin-sdk/irc.js +2 -2
  406. package/dist/plugin-sdk/matrix.js +1 -1
  407. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  408. package/dist/plugin-sdk/memory-core.js +2 -2
  409. package/dist/plugin-sdk/msteams.js +2 -2
  410. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  411. package/dist/plugin-sdk/nostr.js +1 -1
  412. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  413. package/dist/plugin-sdk/reply-runtime.js +4 -4
  414. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  415. package/dist/plugin-sdk/runtime.js +2 -2
  416. package/dist/plugin-sdk/session-visibility.js +1 -1
  417. package/dist/plugin-sdk/testing.js +4 -4
  418. package/dist/plugin-sdk/tlon.js +1 -1
  419. package/dist/plugin-sdk/zalo.js +1 -1
  420. package/dist/plugin-sdk/zalouser.js +1 -1
  421. package/dist/plugin-service-q43trexG.js +2892 -0
  422. package/dist/plugins/runtime/index.js +1 -1
  423. package/dist/policy-B4NUBI6t.js +328 -0
  424. package/dist/postinstall-inventory.json +417 -417
  425. package/dist/prepare.runtime-_zemfjv3.js +815 -0
  426. package/dist/prepare.runtime.js +1 -1
  427. package/dist/probe-BY3B9tTH.js +2205 -0
  428. package/dist/probe-BvnxVXPF.js +2 -0
  429. package/dist/probe-BxfJkCo7.js +1443 -0
  430. package/dist/probe-CVdSkKEj.js +241 -0
  431. package/dist/probe-HJKXZScl.js +74 -0
  432. package/dist/probe-cSkWLlnk.js +45 -0
  433. package/dist/probe-mvSMIO0q.js +2 -0
  434. package/dist/program-B59QlcJQ.js +111 -0
  435. package/dist/prompt-select-styled-4Jq2F-H9.js +20 -0
  436. package/dist/protocol-AGt54mci.js +2335 -0
  437. package/dist/provider-dispatcher-CP48ghhH.js +2 -0
  438. package/dist/provider-dispatcher-DEGzYrP8.js +22 -0
  439. package/dist/qr-cli-l0w87b13.js +349 -0
  440. package/dist/qr-cli-rJZ8om76.js +2 -0
  441. package/dist/reaction-runtime-api-Bkt3VyFC.js +116 -0
  442. package/dist/reactions-m2szYDeb.js +998 -0
  443. package/dist/register-service-commands-BW-5D4CL.js +71 -0
  444. package/dist/register.agent-0oONdLoj.js +248 -0
  445. package/dist/register.configure-DJgbhQEd.js +15 -0
  446. package/dist/register.maintenance-qDzsg7Rx.js +363 -0
  447. package/dist/register.message-D3IcSeh2.js +329 -0
  448. package/dist/register.onboard-712D2YIY.js +88 -0
  449. package/dist/register.runtime-9LgalpKP.js +81 -0
  450. package/dist/register.runtime.js +1 -1
  451. package/dist/register.setup-olmzCf4M.js +150 -0
  452. package/dist/register.status-health-sessions-BcSscPyw.js +1215 -0
  453. package/dist/register.subclis-Cb_7jF2M.js +29 -0
  454. package/dist/register.subclis-DohysWLE.js +3 -0
  455. package/dist/register.subclis-core-Db1skJ4w.js +249 -0
  456. package/dist/register.wallet-WGlu7P0C.js +271 -0
  457. package/dist/reply-dispatch-runtime-C6kPvDIT.js +13 -0
  458. package/dist/reply-runtime-m8R8imuO.js +11 -0
  459. package/dist/reply.runtime-yz20DuV3.js +2 -0
  460. package/dist/reply.runtime.js +1 -1
  461. package/dist/restart-health-B3BG9cWC.js +2 -0
  462. package/dist/restart-health-Blxs74k_.js +202 -0
  463. package/dist/root-help-CtdC-lhj.js +44 -0
  464. package/dist/routes-DlHk_d4H.js +2 -0
  465. package/dist/routes-vuPJqxDc.js +3341 -0
  466. package/dist/rpc-CvdOvi6M.js +61 -0
  467. package/dist/rpc.runtime-BTkO-5N6.js +21 -0
  468. package/dist/rpc.runtime.js +1 -1
  469. package/dist/run-delivery.runtime-Bu0IyFs-.js +530 -0
  470. package/dist/run-delivery.runtime.js +1 -1
  471. package/dist/run-embedded.runtime-Bptomyr6.js +4 -0
  472. package/dist/run-embedded.runtime.js +1 -1
  473. package/dist/run-execution-cli.runtime-DVoDazG0.js +4 -0
  474. package/dist/run-execution-cli.runtime.js +1 -1
  475. package/dist/run-executor.runtime-LRWKlZ-B.js +277 -0
  476. package/dist/run-executor.runtime.js +1 -1
  477. package/dist/run-main-C-5waIfA.js +567 -0
  478. package/dist/run-subagent-registry.runtime-eNmO4Ulf.js +2 -0
  479. package/dist/run-subagent-registry.runtime.js +1 -1
  480. package/dist/run-wait-CYFrtm-o.js +135 -0
  481. package/dist/runtime-BRPRR2hE.js +973 -0
  482. package/dist/runtime-CokulBmy.js +9 -0
  483. package/dist/runtime-api-BJ2r-OR5.js +14 -0
  484. package/dist/runtime-api-BfGhe369.js +9 -0
  485. package/dist/runtime-api-Bfjma1I2.js +9 -0
  486. package/dist/runtime-api-CxY0DKnr.js +4 -0
  487. package/dist/runtime-embedded-pi.runtime-BvnxDutF.js +2 -0
  488. package/dist/runtime-embedded-pi.runtime.js +1 -1
  489. package/dist/runtime-internal-BIVfP__L.js +2 -0
  490. package/dist/runtime-options-BljbnMxi.js +275 -0
  491. package/dist/runtime-schema-Dyv3hS1d.js +27938 -0
  492. package/dist/scan-D9X5Lj0l.js +523 -0
  493. package/dist/scan-M3OixEI7.js +2 -0
  494. package/dist/secrets-cli-fpxI67tT.js +2101 -0
  495. package/dist/security-cli-B9FOJsn-.js +486 -0
  496. package/dist/selection-CFlY2XMr.js +2 -0
  497. package/dist/selection-CdRMYsTR.js +7736 -0
  498. package/dist/send-BHKn9mJM.js +156 -0
  499. package/dist/send-CSAuufSI.js +102 -0
  500. package/dist/send.runtime-Csjbw0LF.js +2 -0
  501. package/dist/send.runtime.js +1 -1
  502. package/dist/server-CtGKkNXK.js +77 -0
  503. package/dist/server-QZSxYkIl.js +13 -0
  504. package/dist/server-context-CCzwJPYE.js +847 -0
  505. package/dist/server-context-SQimgHbw.js +2 -0
  506. package/dist/server-node-events-Bw07_egU.js +481 -0
  507. package/dist/server-plugin-bootstrap-BxVzrft3.js +2 -0
  508. package/dist/server-plugin-bootstrap-Ma9J_GSY.js +11652 -0
  509. package/dist/server-restart-sentinel-n_4jiXSF.js +697 -0
  510. package/dist/server.impl-CY_ZY-Mq.js +12822 -0
  511. package/dist/service-CPRBqblN.js +1446 -0
  512. package/dist/session-kill-http-bilLl8tM.js +110 -0
  513. package/dist/session-reset-service-DHbmMELT.js +471 -0
  514. package/dist/session-route-CHPZxwZH.js +93 -0
  515. package/dist/session-status.runtime-Cco6tPQ0.js +2 -0
  516. package/dist/session-status.runtime.js +1 -1
  517. package/dist/session-subagent-reactivation.runtime-D8SYYjgF.js +2 -0
  518. package/dist/session-subagent-reactivation.runtime.js +1 -1
  519. package/dist/session-tab-registry-9W3qSiwY.js +581 -0
  520. package/dist/session-visibility-Csvz8y2g.js +147 -0
  521. package/dist/sessions-helpers-DJtsPRok.js +304 -0
  522. package/dist/sessions-history-http-BwN8qdVu.js +383 -0
  523. package/dist/sessions-patch-Cn6ICCbl.js +309 -0
  524. package/dist/sessions-resolve-DkokaXLV.js +174 -0
  525. package/dist/sessions.runtime-CUhGDDdQ.js +2 -0
  526. package/dist/sessions.runtime.js +1 -1
  527. package/dist/setup-CXrByuF0.js +505 -0
  528. package/dist/setup-api-CAUnAQYK.js +29 -0
  529. package/dist/setup-core-0kUhQgXj.js +171 -0
  530. package/dist/setup-core-CgIvNnqV.js +176 -0
  531. package/dist/setup-surface-BICUCTSY.js +219 -0
  532. package/dist/setup-surface-CWN6fRnj.js +286 -0
  533. package/dist/setup-surface-DAO84q-l.js +403 -0
  534. package/dist/setup.finalize-Cz-xAyXq.js +547 -0
  535. package/dist/setup.gateway-config-B_6xO6qg.js +250 -0
  536. package/dist/shared-54WHS6Zf.js +198 -0
  537. package/dist/shared-BM7A3tRo.js +121 -0
  538. package/dist/shared-ZX79gVvR.js +76 -0
  539. package/dist/slash-state-D9XJzIhC.js +1911 -0
  540. package/dist/src-CeLenBVS.js +3974 -0
  541. package/dist/startup-context-ExpfHx39.js +312 -0
  542. package/dist/status-B3pfZ-ob.js +2 -0
  543. package/dist/status-BxtYUkFv.js +209 -0
  544. package/dist/status-CBKaYlp2.js +397 -0
  545. package/dist/status-DXMGfco1.js +3 -0
  546. package/dist/status-Dveq2FJA.js +190 -0
  547. package/dist/status-all-C0Rv7_MK.js +498 -0
  548. package/dist/status-json-command-FP5kOrjW.js +84 -0
  549. package/dist/status-json-jAko1YQ3.js +14 -0
  550. package/dist/status-ooCzELGj.js +2 -0
  551. package/dist/status-runtime-shared-t7ZNH_at.js +257 -0
  552. package/dist/status-subagents.runtime-B0-FFd7k.js +18 -0
  553. package/dist/status-subagents.runtime.js +1 -1
  554. package/dist/status-text-D5Wb2Eyv.js +237 -0
  555. package/dist/status.gateway-connection.runtime-DX3GFQOy.js +2 -0
  556. package/dist/status.gateway-connection.runtime.js +1 -1
  557. package/dist/status.gather-BLaJs7JK.js +292 -0
  558. package/dist/status.gather-DXcgE-uZ.js +2 -0
  559. package/dist/status.runtime-BW8lvcAk.js +2 -0
  560. package/dist/status.runtime.js +1 -1
  561. package/dist/status.scan-CqSxwChE.js +65 -0
  562. package/dist/status.scan-overview-C50E8dW7.js +379 -0
  563. package/dist/status.scan.fast-json-DZD93o5C.js +132 -0
  564. package/dist/status.scan.fast-json-aLbUp_Zj.js +2 -0
  565. package/dist/status.summary-CSXp0VuE.js +2 -0
  566. package/dist/status.summary-CZhlDozR.js +214 -0
  567. package/dist/subagent-announce-DQNhTREe.js +351 -0
  568. package/dist/subagent-announce-delivery-DzexQBXL.js +726 -0
  569. package/dist/subagent-announce-output-DHdUIOLb.js +364 -0
  570. package/dist/subagent-control-BIHPVfEC.js +506 -0
  571. package/dist/subagent-followup.runtime-B2vIi_N7.js +68 -0
  572. package/dist/subagent-followup.runtime.js +1 -1
  573. package/dist/subagent-orphan-recovery-acE2Akzk.js +305 -0
  574. package/dist/subagent-registry-DscgS64s.js +1753 -0
  575. package/dist/subagent-registry-VBEsKIg8.js +3 -0
  576. package/dist/subagent-registry.runtime.js +1 -1
  577. package/dist/subagent-spawn-ClpDxVim.js +1005 -0
  578. package/dist/system-cli-Cwoirti-.js +59 -0
  579. package/dist/targets-Du7kf5pU.js +67 -0
  580. package/dist/task-executor-Cex7gyKp.js +360 -0
  581. package/dist/task-owner-access-CfZCzFm8.js +74 -0
  582. package/dist/task-registry-delivery-runtime-7UMu_ADx.js +3 -0
  583. package/dist/task-registry-delivery-runtime-anQhKoeF.js +2 -0
  584. package/dist/task-registry-dsUR7cO8.js +2366 -0
  585. package/dist/task-registry.maintenance-8t06izZG.js +416 -0
  586. package/dist/task-registry.maintenance-BKCkUElL.js +2 -0
  587. package/dist/telegram/token.js +1 -1
  588. package/dist/testing-XS9mU0gy.js +575 -0
  589. package/dist/text-report-CW3trTAs.js +587 -0
  590. package/dist/tool-resolution-CbhdQ1Hc.js +90 -0
  591. package/dist/tools-effective-inventory-C-fhTbL3.js +152 -0
  592. package/dist/tools-invoke-http-DwLDiTC-.js +206 -0
  593. package/dist/trash-BPfwuXw1.js +24 -0
  594. package/dist/tui-cli-CwcpeUI3.js +4575 -0
  595. package/dist/update-cli-C7wZCVxw.js +1759 -0
  596. package/dist/upgrade-I1DlWIOT.js +1226 -0
  597. package/dist/video-generation-task-status-BTNgjS3Y.js +163 -0
  598. package/dist/wait-for-idle-before-flush-jA-mGgw_.js +5986 -0
  599. package/dist/wizard-models-CJ9pSHsX.js +334 -0
  600. package/package.json +1 -1
  601. package/dist/abort-CFK2Nhip.js +0 -201
  602. package/dist/abort.runtime-BuAaxnKL.js +0 -2
  603. package/dist/accounts-CHbim_qS.js +0 -107
  604. package/dist/accounts-DtkNyn-Q.js +0 -2
  605. package/dist/accounts-J3zyVXXx.js +0 -104
  606. package/dist/acp-cli-C3I6FHf2.js +0 -2193
  607. package/dist/acp-spawn-D3xu_-rE.js +0 -1093
  608. package/dist/acp-spawn-vcfww9lP.js +0 -2
  609. package/dist/acp-stateful-target-driver-CiSxPJNY.js +0 -89
  610. package/dist/action-agents-CIlhSgnP.js +0 -67
  611. package/dist/action-focus-Cf5CQqOj.js +0 -132
  612. package/dist/action-help-B0yl4Pe2.js +0 -7
  613. package/dist/action-info-CFUHIn0u.js +0 -101
  614. package/dist/action-kill-C95CsdAp.js +0 -33
  615. package/dist/action-list-BX3RIjsZ.js +0 -21
  616. package/dist/action-log-BOalIOnb.js +0 -30
  617. package/dist/action-send-Bw-K12vK.js +0 -39
  618. package/dist/action-spawn-DSTqN3n1.js +0 -47
  619. package/dist/action-unfocus-BRGuE47t.js +0 -29
  620. package/dist/actions.runtime-5qLo-JvI.js +0 -5
  621. package/dist/actions.runtime-CB7fr1mE.js +0 -18
  622. package/dist/agent-4OUfop4W.js +0 -2
  623. package/dist/agent-command-9KZKjUCs.js +0 -874
  624. package/dist/agent-harness-runtime-Dn6m6FbT.js +0 -144
  625. package/dist/agent-runner-utils-I_WM4CKu.js +0 -239
  626. package/dist/agent-runner.runtime-CXepXPjv.js +0 -3455
  627. package/dist/agent-runtime-DPkZZoYt.js +0 -18
  628. package/dist/agents-3DAP4x-2.js +0 -954
  629. package/dist/agents-DkjDVIbt.js +0 -5
  630. package/dist/aliases-83bfbKwd.js +0 -96
  631. package/dist/aliases-CNWj4VYC.js +0 -2
  632. package/dist/api-BEjdCEtU.js +0 -5
  633. package/dist/api-CkjarVLC.js +0 -139
  634. package/dist/api-Dn4kHUcI.js +0 -3
  635. package/dist/approval-gateway-resolver-CC1SlTbX.js +0 -29
  636. package/dist/approval-gateway-runtime-d2TZtKpe.js +0 -2
  637. package/dist/approval-handler-runtime-COVHjwvD.js +0 -439
  638. package/dist/approval-native-runtime-BVIV224X.js +0 -729
  639. package/dist/attempt-execution.runtime-CszeM4rO.js +0 -509
  640. package/dist/attempt.prompt-helpers-CJwtdWVk.js +0 -221
  641. package/dist/attempt.tool-run-context-D3pOtNpQ.js +0 -933
  642. package/dist/audit-CI0PTe8o.js +0 -939
  643. package/dist/audit.runtime-CVT0pKNw.js +0 -7
  644. package/dist/auth-B6BvjceY.js +0 -383
  645. package/dist/auth-C24A8Bdb.js +0 -2
  646. package/dist/auth-order--2Z2RfgO.js +0 -2
  647. package/dist/auth-order-Cab5pbli.js +0 -96
  648. package/dist/bash-tools-D4Ow1Dnu.js +0 -3
  649. package/dist/bash-tools-N8ycn0zw.js +0 -2824
  650. package/dist/binding-routing-IdC_J5YZ.js +0 -85
  651. package/dist/binding-targets-BD3JnlsK.js +0 -121
  652. package/dist/bridge-server-DReQkRlc.js +0 -113
  653. package/dist/browser-control-auth-BDpXA4Fa.js +0 -2
  654. package/dist/browser-node-runtime-CUEWaMPj.js +0 -12
  655. package/dist/browser-profiles-CKoK0REq.js +0 -2
  656. package/dist/browser-runtime-DctmCqop.js +0 -387
  657. package/dist/browser-setup-tools-D_hWDm_d.js +0 -13
  658. package/dist/build-00dHETnB.js +0 -550
  659. package/dist/call-BEBMfrmf.js +0 -331
  660. package/dist/call-J1xym_da.js +0 -3
  661. package/dist/call.runtime-DpiL_m7V.js +0 -2
  662. package/dist/capability-cli-Dcgy6e0s.js +0 -1401
  663. package/dist/catchup-BIWAuu8n.js +0 -300
  664. package/dist/channel-1CgTIJaH.js +0 -595
  665. package/dist/channel-471U1pny.js +0 -1100
  666. package/dist/channel-B-pPhXQ4.js +0 -453
  667. package/dist/channel-BYutJYNS.js +0 -297
  668. package/dist/channel-C2g916cY.js +0 -491
  669. package/dist/channel-C5JVIEYG.js +0 -226
  670. package/dist/channel-C6PLBfBu.js +0 -1320
  671. package/dist/channel-DFhzKEOr.js +0 -1802
  672. package/dist/channel-DaaKYb-X.js +0 -350
  673. package/dist/channel-LS_UWVN6.js +0 -840
  674. package/dist/channel-UwrUqsgJ.js +0 -1174
  675. package/dist/channel-core-u67ncUuJ.js +0 -5
  676. package/dist/channel-inbound-CZj1nuJ5.js +0 -31
  677. package/dist/channel-plugin-runtime-DbjaJmEm.js +0 -771
  678. package/dist/channel-runtime-o1M6R948.js +0 -425
  679. package/dist/channel.runtime-BBqx6vVj.js +0 -430
  680. package/dist/channel.runtime-ChXnhf2V.js +0 -2364
  681. package/dist/channel.runtime-CiZ5wg5-.js +0 -89
  682. package/dist/channel.runtime-DOIkahiZ.js +0 -109
  683. package/dist/channel.runtime-DUe0Bv9U.js +0 -4
  684. package/dist/channel.runtime-DwICmfFu.js +0 -576
  685. package/dist/channel.runtime-EBX0cQWh.js +0 -34702
  686. package/dist/channel.setup-DtHhxlgN.js +0 -10
  687. package/dist/channels-ChLA3Mda.js +0 -733
  688. package/dist/channels-cli-BqXA071P.js +0 -268
  689. package/dist/chat-B0vA8pOW.js +0 -2830
  690. package/dist/clawbot-cli-BkpkeI6b.js +0 -9
  691. package/dist/cli-DLD4HPRd.js +0 -72
  692. package/dist/cli-ME5Ufp83.js +0 -219
  693. package/dist/cli-ZcCIz0qL.js +0 -2
  694. package/dist/cli-eAgnabrD.js +0 -2
  695. package/dist/cli-runner-BBu8Rh95.js +0 -286
  696. package/dist/cli-runner.runtime-VDLuf97Y.js +0 -4
  697. package/dist/cli-runner.runtime-jK2bwGDS.js +0 -3
  698. package/dist/cli.runtime-BquKQJFI.js +0 -1261
  699. package/dist/client-CDLetywx.js +0 -713
  700. package/dist/client-CvwHGzRM.js +0 -138
  701. package/dist/command-auth-BavEEGzq.js +0 -76
  702. package/dist/command-config-resolution-CgnDlwiW.js +0 -2
  703. package/dist/command-config-resolution-M1sLQtCC.js +0 -23
  704. package/dist/command-config-resolution.runtime-BjVMJcFa.js +0 -2
  705. package/dist/command-registry-BuZbFhmG.js +0 -4
  706. package/dist/command-registry-DugzbSDU.js +0 -9
  707. package/dist/command-registry-core-BF-C6kEk.js +0 -106
  708. package/dist/command-secret-gateway-DJUQmmqr.js +0 -528
  709. package/dist/command-status.runtime-Ws0MIfwY.js +0 -87
  710. package/dist/commands-acp-COM5kx3I.js +0 -77
  711. package/dist/commands-compact.runtime-ZKLATU16.js +0 -10
  712. package/dist/commands-handlers.runtime-BonxJuOb.js +0 -4597
  713. package/dist/commands-status-fYAnTzxd.js +0 -16
  714. package/dist/commands-status.runtime-NM9_L71Y.js +0 -3
  715. package/dist/commands-subagents-control.runtime-C7DNjqgK.js +0 -2
  716. package/dist/commands-subagents-control.runtime-DrvwTszJ.js +0 -3
  717. package/dist/commands-system-prompt-CF7mFq3s.js +0 -158
  718. package/dist/commands-system-prompt-DAynyctS.js +0 -2
  719. package/dist/commands.runtime-CdVSeunO.js +0 -166
  720. package/dist/compact-CQZ7fcfj.js +0 -1118
  721. package/dist/compact.runtime-QhgOP3dH.js +0 -12
  722. package/dist/completion-cli-CkA79Zyd.js +0 -328
  723. package/dist/config-B0nwYGOq.js +0 -252
  724. package/dist/config-cli-DQy3aiyu.js +0 -1078
  725. package/dist/configure-D9182v2z.js +0 -1252
  726. package/dist/configure-DFK_gG4o.js +0 -2
  727. package/dist/connect-options-ClIicH76.js +0 -699
  728. package/dist/control-auth-C9KfGTux.js +0 -125
  729. package/dist/control-service-BNB3JMwD.js +0 -156
  730. package/dist/conversation-id-BfPCu1Wm.js +0 -235
  731. package/dist/conversation-id-Btjce0dU.js +0 -38
  732. package/dist/conversation-runtime-nC5e5AUD.js +0 -31
  733. package/dist/core-cKYNneLh.js +0 -275
  734. package/dist/cron-cli-B61Ct4d1.js +0 -713
  735. package/dist/daemon-cli-BDUJ0J9c.js +0 -12
  736. package/dist/dashboard-BY0SQ1Xk.js +0 -81
  737. package/dist/dashboard-BfFLhcnp.js +0 -2
  738. package/dist/delegate-C5l7xFfl.js +0 -64
  739. package/dist/detached-task-runtime-jUnU2hI1.js +0 -73
  740. package/dist/devices-cli-C2Yk5InD.js +0 -498
  741. package/dist/diagnostics-vLNGss4R.js +0 -154
  742. package/dist/direct-dm-CY7NvWjO.js +0 -64
  743. package/dist/dispatch-acp-D7us-JIr.js +0 -981
  744. package/dist/dispatch-acp-manager.runtime-CvUvPlIu.js +0 -3
  745. package/dist/dispatch-acp.runtime-BD04s8Zg.js +0 -19
  746. package/dist/dispatch-dxndBjvg.js +0 -1131
  747. package/dist/doctor-device-pairing-BWOuDvCO.js +0 -307
  748. package/dist/doctor-gateway-daemon-flow-CfcG9HqL.js +0 -250
  749. package/dist/doctor-gateway-health-CgtIAXiV.js +0 -63
  750. package/dist/doctor-health-Dl8qTbf0.js +0 -59
  751. package/dist/doctor-health-contributions-7VvQGU8Z.js +0 -493
  752. package/dist/doctor-prompter-C1E_9epq.js +0 -56
  753. package/dist/doctor-workspace-status-D_hKwgSB.js +0 -75
  754. package/dist/dreaming-narrative-CGIhjB7J.js +0 -595
  755. package/dist/dreaming-zER_6Edx.js +0 -1574
  756. package/dist/embedded-gateway-stub.runtime-DW85g-TS.js +0 -9
  757. package/dist/exec-approvals-cli-Cw---PEd.js +0 -498
  758. package/dist/execute.runtime-g2ckBHQo.js +0 -1366
  759. package/dist/fallbacks-pV2ELjMN.js +0 -31
  760. package/dist/fallbacks-shared-w3hzF-a3.js +0 -111
  761. package/dist/fallbacks-w-04P5Ca.js +0 -2
  762. package/dist/gateway-D6iHe5yM.js +0 -115
  763. package/dist/gateway-cli-DA66EGkc.js +0 -1283
  764. package/dist/gateway-rpc-C-wnj8-r.js +0 -14
  765. package/dist/gateway-rpc.runtime-UIPl38ru.js +0 -23
  766. package/dist/gateway-runtime-4_MNp5Fb.js +0 -15
  767. package/dist/gateway-status-qhNQ0-uT.js +0 -584
  768. package/dist/genesis-tools-Zt9xVisn.js +0 -9144
  769. package/dist/genesis-tools.runtime-DOqh6dkQ.js +0 -2
  770. package/dist/get-reply-DQ0O9TtJ.js +0 -3879
  771. package/dist/get-reply-from-config.runtime-BuatHlOY.js +0 -2
  772. package/dist/graph-users-wwfIkVlV.js +0 -1337
  773. package/dist/health-Be7drwbn.js +0 -3
  774. package/dist/health-DJnGvMzg.js +0 -469
  775. package/dist/health-route-Du-tYbyy.js +0 -41
  776. package/dist/health-route-yas5DRN8.js +0 -2
  777. package/dist/heartbeat-runner-CgkBGYmZ.js +0 -1292
  778. package/dist/heartbeat-runner-DGh3rGv3.js +0 -5
  779. package/dist/heartbeat-runner.runtime-Cx_T3Yrs.js +0 -4
  780. package/dist/hooks-cli-BMwaAVjB.js +0 -433
  781. package/dist/image-fallbacks-NW-B8h53.js +0 -31
  782. package/dist/image-fallbacks-twUg-Ew1.js +0 -2
  783. package/dist/inbound-reply-dispatch-B3xJheBv.js +0 -73
  784. package/dist/infra-runtime-D0KgiuPR.js +0 -39
  785. package/dist/init-Bw8qk4Lv.js +0 -59
  786. package/dist/library-BNl9tYJG.js +0 -45
  787. package/dist/lifecycle-8ptHb58U.js +0 -571
  788. package/dist/lifecycle-CRrSobXZ.js +0 -229
  789. package/dist/lifecycle.runtime-BDtzaxrU.js +0 -2
  790. package/dist/list-C-ACwyIs.js +0 -131
  791. package/dist/list-CJ6S9iAc.js +0 -1212
  792. package/dist/list-DYwQ_Gfw.js +0 -2
  793. package/dist/list-kHLQDpvt.js +0 -2
  794. package/dist/list.probe-CBJUHqju.js +0 -419
  795. package/dist/llm-slug-generator-DLZt8Bt6.js +0 -79
  796. package/dist/load-config-D_5019M3.js +0 -35
  797. package/dist/local-dispatch.runtime-Dau5kHVW.js +0 -8
  798. package/dist/logs-cli-B1tDn7oN.js +0 -265
  799. package/dist/logs-cli.runtime-Cx4fMzWz.js +0 -2
  800. package/dist/main-session-restart-recovery-CK0sXd7f.js +0 -206
  801. package/dist/managed-image-attachments-97PVDeFD.js +0 -635
  802. package/dist/managed-image-attachments-CC4KLL8v.js +0 -2
  803. package/dist/manager-BQ31y7iX.js +0 -2057
  804. package/dist/manager-CFkV693Y.js +0 -2
  805. package/dist/markdown-to-line-zHVHdZSu.js +0 -790
  806. package/dist/mcp-cli-DJlict1A.js +0 -725
  807. package/dist/mcp-http-BARh68Sy.js +0 -529
  808. package/dist/memory-core-host-runtime-cli-BoZwOAnU.js +0 -9
  809. package/dist/message-BlYpA3Rj.js +0 -232
  810. package/dist/message-action-runner-l7HQgRsA.js +0 -2
  811. package/dist/message-action-runner-xpyTSTjc.js +0 -1407
  812. package/dist/message-actions-BYCdd6QG.js +0 -143
  813. package/dist/message.gateway.runtime-Cb8XMFan.js +0 -2
  814. package/dist/models-auth-status-D3gt082v.js +0 -201
  815. package/dist/models-cli-9FhzxcFw.js +0 -219
  816. package/dist/monitor-B0WA83w1.js +0 -788
  817. package/dist/monitor-B6-pdSFR.js +0 -671
  818. package/dist/monitor-BX1yfW2U.js +0 -2
  819. package/dist/monitor-DKv9iSX7.js +0 -1459
  820. package/dist/monitor-DNDx4gOO.js +0 -1237
  821. package/dist/monitor-DpAuHTne.js +0 -1661
  822. package/dist/monitor-auth-B42F9dgo.js +0 -207
  823. package/dist/monitor-processing-DyP1l7Er.js +0 -1974
  824. package/dist/monitor.runtime-DbcwE5XS.js +0 -2
  825. package/dist/monitor.webhook-Dthw-aQB.js +0 -180
  826. package/dist/msteams-D2mb7FnE.js +0 -35
  827. package/dist/native-hook-relay-CdaoEdNX.js +0 -519
  828. package/dist/nextcloud-talk-B18eVVV7.js +0 -17
  829. package/dist/node-cli-Ck0VwYwV.js +0 -2506
  830. package/dist/nodes-cli-DC-DcHIP.js +0 -1046
  831. package/dist/nodes-utils-BWIRDyv_.js +0 -84
  832. package/dist/nodes.helpers-BEHH7X2_.js +0 -34
  833. package/dist/notify-JkL7xdrB.js +0 -315
  834. package/dist/onboard-C5BIoHo2.js +0 -70
  835. package/dist/onboard-helpers-C2zyBKT7.js +0 -204
  836. package/dist/onboard-helpers-CaQKQFzC.js +0 -6
  837. package/dist/onboard-interactive-Bq6kHQx1.js +0 -24
  838. package/dist/onboard-non-interactive-DQFp1nqn.js +0 -548
  839. package/dist/onboard-qYbyvbbw.js +0 -2
  840. package/dist/onboard-remote-BrlKFoRp.js +0 -193
  841. package/dist/onboard-remote-CGK4Eovr.js +0 -2
  842. package/dist/onboard-skills-BOatQ3qu.js +0 -2
  843. package/dist/onboard-skills-MIp5L4Bg.js +0 -134
  844. package/dist/openai-http-BzR_snW0.js +0 -500
  845. package/dist/openresponses-http-D_qmLKbV.js +0 -1128
  846. package/dist/operator-approvals-client-BMXsikiI.js +0 -68
  847. package/dist/outbound.runtime-sBaP-y4C.js +0 -2
  848. package/dist/pair-command-approve-DJLjxT6x.js +0 -44
  849. package/dist/persistent-bindings.lifecycle-DzeMqt76.js +0 -85
  850. package/dist/persistent-bindings.lifecycle-zRaTKjMh.js +0 -2
  851. package/dist/pi-embedded-CeDhWvgx.js +0 -4
  852. package/dist/pi-embedded-DUpRXfJO.js +0 -2905
  853. package/dist/pi-embedded.runtime-DtYM7NdD.js +0 -4
  854. package/dist/pi-tool-definition-adapter-CB0HS-nc.js +0 -229
  855. package/dist/pi-tools-Bj9D94l1.js +0 -1057
  856. package/dist/pi-tools.before-tool-call-BbQkYemc.js +0 -2
  857. package/dist/pi-tools.before-tool-call-DgbBDh3b.js +0 -433
  858. package/dist/plugin-PC7i4gKf.js +0 -12195
  859. package/dist/plugin-enabled-CfTRDw44.js +0 -140
  860. package/dist/plugin-registration-B-k3D6sT.js +0 -23
  861. package/dist/plugin-service-BK8-VUTt.js +0 -2892
  862. package/dist/policy-BW0acqi4.js +0 -328
  863. package/dist/prepare.runtime-_AbiM89x.js +0 -815
  864. package/dist/probe-BMLDcZ32.js +0 -241
  865. package/dist/probe-Ba3TRP2B.js +0 -45
  866. package/dist/probe-CUiwktQB.js +0 -74
  867. package/dist/probe-DebEe8F0.js +0 -2
  868. package/dist/probe-DezLtnJj.js +0 -2
  869. package/dist/probe-V8OIWFIZ.js +0 -1443
  870. package/dist/probe-dGp0-neY.js +0 -2205
  871. package/dist/program-DW7m0H8i.js +0 -111
  872. package/dist/prompt-select-styled-jplnVzKe.js +0 -20
  873. package/dist/protocol-C83jsm03.js +0 -2335
  874. package/dist/provider-dispatcher-CE-8HFJ3.js +0 -22
  875. package/dist/provider-dispatcher-CvSHrBCK.js +0 -2
  876. package/dist/qr-cli-N0rKzCLa.js +0 -349
  877. package/dist/qr-cli-anaRAjRO.js +0 -2
  878. package/dist/reaction-runtime-api-D0RKf7dw.js +0 -116
  879. package/dist/reactions-D5tTqX43.js +0 -998
  880. package/dist/register-service-commands-DR8PFCDH.js +0 -71
  881. package/dist/register.agent-C0S6Qd9d.js +0 -248
  882. package/dist/register.configure-Syn4zjBT.js +0 -15
  883. package/dist/register.maintenance-DlWVxmgp.js +0 -363
  884. package/dist/register.message-Ca0UvwH3.js +0 -329
  885. package/dist/register.onboard-BrPnofu3.js +0 -88
  886. package/dist/register.runtime-DrxUrGzO.js +0 -81
  887. package/dist/register.setup-DgnkDiBO.js +0 -150
  888. package/dist/register.status-health-sessions-BvccPkCF.js +0 -1215
  889. package/dist/register.subclis-BybdnCZ1.js +0 -29
  890. package/dist/register.subclis-CmiGzm_7.js +0 -3
  891. package/dist/register.subclis-core-CdzVfdg9.js +0 -249
  892. package/dist/register.wallet-CY_R6-2U.js +0 -271
  893. package/dist/reply-dispatch-runtime-C1FpfnAM.js +0 -13
  894. package/dist/reply-runtime-s43-M8Jj.js +0 -11
  895. package/dist/reply.runtime-7wnQxEUw.js +0 -2
  896. package/dist/restart-health-COnZzsKp.js +0 -202
  897. package/dist/restart-health-eI6OqLsK.js +0 -2
  898. package/dist/root-help-DeQ9PX0j.js +0 -44
  899. package/dist/routes-BWEN5YAF.js +0 -2
  900. package/dist/routes-C672_WKa.js +0 -3341
  901. package/dist/rpc-B426srGJ.js +0 -61
  902. package/dist/rpc.runtime-DUM1XyRX.js +0 -21
  903. package/dist/run-delivery.runtime-CXw2jVkt.js +0 -530
  904. package/dist/run-embedded.runtime-xS-1mmyO.js +0 -4
  905. package/dist/run-execution-cli.runtime-aDPMKzJX.js +0 -4
  906. package/dist/run-executor.runtime-C4ZFsj8q.js +0 -277
  907. package/dist/run-main-4Rq8UxLR.js +0 -567
  908. package/dist/run-subagent-registry.runtime-DzAf7j8r.js +0 -2
  909. package/dist/run-wait-T_9raRki.js +0 -135
  910. package/dist/runtime-Bi-FG7ze.js +0 -973
  911. package/dist/runtime-DTEEU-FQ.js +0 -9
  912. package/dist/runtime-api-CD1uwpvJ.js +0 -4
  913. package/dist/runtime-api-CuUMmc6o.js +0 -9
  914. package/dist/runtime-api-D1I8x3ZK.js +0 -9
  915. package/dist/runtime-api-N4ICzHSN.js +0 -14
  916. package/dist/runtime-embedded-pi.runtime-TzUSObio.js +0 -2
  917. package/dist/runtime-internal-BpmmUWVj.js +0 -2
  918. package/dist/runtime-options-lwiANMrp.js +0 -275
  919. package/dist/runtime-schema-DyZs3Hqj.js +0 -27938
  920. package/dist/scan-KAzO-hG8.js +0 -523
  921. package/dist/scan-WYNB2yvG.js +0 -2
  922. package/dist/secrets-cli-V8e9noRa.js +0 -2101
  923. package/dist/security-cli-DQAHIStH.js +0 -486
  924. package/dist/selection-B1sx7E0M.js +0 -2
  925. package/dist/selection-CdYrfYRk.js +0 -7736
  926. package/dist/send-CS2Grx1T.js +0 -102
  927. package/dist/send-DD9fqnsS.js +0 -156
  928. package/dist/send.runtime-UBa9b0KL.js +0 -2
  929. package/dist/server-DTBpPcSJ.js +0 -77
  930. package/dist/server-LnjMkCwG.js +0 -13
  931. package/dist/server-context-CgUkot1S.js +0 -2
  932. package/dist/server-context-e5qiFYb9.js +0 -847
  933. package/dist/server-node-events-DGbm1S0O.js +0 -481
  934. package/dist/server-plugin-bootstrap-BAb2yBlZ.js +0 -11652
  935. package/dist/server-plugin-bootstrap-QC6Ie4eo.js +0 -2
  936. package/dist/server-restart-sentinel-CHIEkMav.js +0 -697
  937. package/dist/server.impl-smIsMGyM.js +0 -12822
  938. package/dist/service-CzJ-5DK_.js +0 -1415
  939. package/dist/session-kill-http-J_6Qu28L.js +0 -110
  940. package/dist/session-reset-service-BpBipveT.js +0 -471
  941. package/dist/session-route-CpYl3T8Y.js +0 -93
  942. package/dist/session-status.runtime-UUa0VU0y.js +0 -2
  943. package/dist/session-subagent-reactivation.runtime-L2O0yOy4.js +0 -2
  944. package/dist/session-tab-registry-DxPANUw6.js +0 -581
  945. package/dist/session-visibility-CPIadgvQ.js +0 -147
  946. package/dist/sessions-helpers-DdEWQ3o2.js +0 -304
  947. package/dist/sessions-history-http-B9AS9VFQ.js +0 -383
  948. package/dist/sessions-patch-DRBy0uu3.js +0 -309
  949. package/dist/sessions-resolve-DM6s9pot.js +0 -174
  950. package/dist/sessions.runtime-ixcVUViJ.js +0 -2
  951. package/dist/setup-BKyIGRRk.js +0 -505
  952. package/dist/setup-api-D3Djxtka.js +0 -29
  953. package/dist/setup-core-C5ITyKzA.js +0 -171
  954. package/dist/setup-core-Nm6km7jp.js +0 -176
  955. package/dist/setup-surface-BEpfVHSH.js +0 -403
  956. package/dist/setup-surface-D4gEPCHR.js +0 -219
  957. package/dist/setup-surface-DdkjjhYB.js +0 -286
  958. package/dist/setup.finalize-BOnrhqzV.js +0 -547
  959. package/dist/setup.gateway-config-CmRGTkaE.js +0 -250
  960. package/dist/shared-Bb4YCXx6.js +0 -198
  961. package/dist/shared-CZCh0WCN.js +0 -121
  962. package/dist/shared-Df0CbtUw.js +0 -76
  963. package/dist/slash-state-BQJu5tOn.js +0 -1911
  964. package/dist/src-C4ImkbSW.js +0 -3974
  965. package/dist/startup-context-nffy5sQU.js +0 -312
  966. package/dist/status-0QDxMlFq.js +0 -2
  967. package/dist/status-5OjwhqkA.js +0 -209
  968. package/dist/status-C306d1iE.js +0 -2
  969. package/dist/status-Crg2u6MB.js +0 -397
  970. package/dist/status-DMLvl7RU.js +0 -190
  971. package/dist/status-N59cRl1N.js +0 -3
  972. package/dist/status-all-WKQtyBf9.js +0 -498
  973. package/dist/status-json-C2DgeCRG.js +0 -14
  974. package/dist/status-json-command-B2k_1ZuR.js +0 -84
  975. package/dist/status-runtime-shared-ZCbKKj-y.js +0 -257
  976. package/dist/status-subagents.runtime-CmaY9hZm.js +0 -18
  977. package/dist/status-text-NR1x0nMa.js +0 -237
  978. package/dist/status.gateway-connection.runtime-DBlvpSWB.js +0 -2
  979. package/dist/status.gather-BkL7J_y1.js +0 -292
  980. package/dist/status.gather-CWbs5-z2.js +0 -2
  981. package/dist/status.runtime-BOc5e8DI.js +0 -2
  982. package/dist/status.scan-DY4x5vdB.js +0 -65
  983. package/dist/status.scan-overview-CF96KtOa.js +0 -379
  984. package/dist/status.scan.fast-json-CUQQXpr8.js +0 -2
  985. package/dist/status.scan.fast-json-Dd2Q4LW7.js +0 -132
  986. package/dist/status.summary-CfGo54T4.js +0 -214
  987. package/dist/status.summary-CyG5QMo9.js +0 -2
  988. package/dist/subagent-announce-DW816JCC.js +0 -351
  989. package/dist/subagent-announce-delivery-DgKXtDWV.js +0 -726
  990. package/dist/subagent-announce-output-BrJdNBlx.js +0 -364
  991. package/dist/subagent-control-xz3ZcUrb.js +0 -506
  992. package/dist/subagent-followup.runtime-DQS6ipTt.js +0 -68
  993. package/dist/subagent-orphan-recovery-CzwjvW_o.js +0 -305
  994. package/dist/subagent-registry-88vWnDP5.js +0 -1753
  995. package/dist/subagent-registry-B_JB7WyN.js +0 -3
  996. package/dist/subagent-spawn-ChRpfSX6.js +0 -1005
  997. package/dist/system-cli-BiYfWkTS.js +0 -59
  998. package/dist/targets-TpH8-6iR.js +0 -67
  999. package/dist/task-executor-Chx2YFYp.js +0 -360
  1000. package/dist/task-owner-access-CPMM8lVh.js +0 -74
  1001. package/dist/task-registry-Cb_XGvuS.js +0 -2366
  1002. package/dist/task-registry-delivery-runtime-6z8W4up9.js +0 -2
  1003. package/dist/task-registry-delivery-runtime-OqkDQtLj.js +0 -3
  1004. package/dist/task-registry.maintenance-Ci6oLcFg.js +0 -2
  1005. package/dist/task-registry.maintenance-i69b0iH7.js +0 -416
  1006. package/dist/testing-BmGGzr14.js +0 -575
  1007. package/dist/text-report-WpPbFau5.js +0 -587
  1008. package/dist/tool-resolution-DCK5whNz.js +0 -90
  1009. package/dist/tools-effective-inventory-CkymEUkf.js +0 -152
  1010. package/dist/tools-invoke-http-BECDcy94.js +0 -206
  1011. package/dist/trash-Cz555AtH.js +0 -24
  1012. package/dist/tui-cli-BTNsU35D.js +0 -4575
  1013. package/dist/update-cli-CEi34S-K.js +0 -1759
  1014. package/dist/upgrade-CeMGojsg.js +0 -1226
  1015. package/dist/video-generation-task-status-BGbHX8xJ.js +0 -163
  1016. package/dist/wait-for-idle-before-flush-CUNJdPz7.js +0 -5986
  1017. package/dist/wizard-models-DGVbHDnh.js +0 -334
@@ -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-BEkyPF5u.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-Cfk0h3C3.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-BOgqPsbl.js";
13
+ import { a as registerMemoryEmbeddingProvider, r as listMemoryEmbeddingProviders } from "./memory-embedding-providers-e8411EgH.js";
14
+ import { r as loadModelCatalog } from "./model-catalog-D3HP87pe.js";
15
+ import { l as normalizeMimeType, n as extensionForMime, t as detectMime } from "./mime-DucH9KF3.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-p-W2ZLtK.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-BNALogg6.js";
22
+ import { n as listRuntimeImageGenerationProviders, t as generateImage } from "./runtime-DE2NHUg5.js";
23
+ import { l as saveMediaBuffer } from "./store-BLvGOOM1.js";
24
+ import { C as buildMediaUnderstandingRegistry } from "./resolve-DDtHjO7D.js";
25
+ import { n as listRuntimeVideoGenerationProviders, t as generateVideo } from "./runtime-DR2X58Kn.js";
26
+ import { r as listWebSearchProviders, s as runWebSearch, t as isWebSearchProviderConfigured } from "./runtime-i4VA7SlX.js";
27
+ import { t as resolveMemorySearchConfig } from "./memory-search-Bkxze6ZQ.js";
28
+ import { n as agentCommand } from "./agent-command-Dv8Kifbw.js";
29
+ import { r as listSpeechProviders, t as canonicalizeSpeechProviderId } from "./provider-registry-D6f_MjlJ.js";
30
+ import { n as runCommandWithRuntime } from "./cli-utils-D3GqJh_O.js";
31
+ import { a as transcribeAudioFile, n as describeImageFileWithModel, r as describeVideoFile, t as describeImageFile } from "./runtime-Cn7Gx3hV.js";
32
+ import "./provider-auth-login-fFIK8JcK.js";
33
+ import { t as createDefaultDeps } from "./deps-DGev-vWD.js";
34
+ import "./aliases-CeyLk8gs.js";
35
+ import { n as modelsAuthLoginCommand } from "./auth-D0-jQ58t.js";
36
+ import "./auth-order-BFJrCRu5.js";
37
+ import "./fallbacks-D030WgeJ.js";
38
+ import "./image-fallbacks-Dd4BCf1D.js";
39
+ import { t as modelsStatusCommand } from "./list-Bj2cpmBs.js";
40
+ import "./scan-D9X5Lj0l.js";
41
+ import "./set-DWGMwX2Q.js";
42
+ import "./set-image-B2wn3K73.js";
43
+ import { i as registerBuiltInMemoryEmbeddingProviders, t as createEmbeddingProvider } from "./memory-core-bundled-runtime-BqcQ1Ofv.js";
44
+ import { i as resolveWebFetchDefinition, r as listWebFetchProviders, t as isWebFetchProviderConfigured } from "./runtime-CFvxeTRc.js";
45
+ import { t as removeCommandByName } from "./command-tree-C-50HueU.js";
46
+ import { t as collectOption } from "./helpers-sTiPmt53.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 };