@pixelzx/genesis 2026.6.13-beta.3 → 2026.6.13

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 (1009) hide show
  1. package/dist/.buildstamp +1 -1
  2. package/dist/abort-CUEXCdsZ.js +201 -0
  3. package/dist/abort.runtime-pbOgDldP.js +2 -0
  4. package/dist/abort.runtime.js +1 -1
  5. package/dist/accounts-BtjI3Z72.js +2 -0
  6. package/dist/accounts-CgGxrOwS.js +107 -0
  7. package/dist/accounts-Ddm5_DS5.js +104 -0
  8. package/dist/acp-cli-Llxb5ymk.js +2217 -0
  9. package/dist/acp-spawn-BTb-KXxB.js +1093 -0
  10. package/dist/acp-spawn-DHriTNXb.js +2 -0
  11. package/dist/acp-stateful-target-driver-DBVhWBrt.js +89 -0
  12. package/dist/action-agents-CGlVq0bn.js +67 -0
  13. package/dist/action-focus-X9cJX3UC.js +132 -0
  14. package/dist/action-help-D1M6mIWb.js +7 -0
  15. package/dist/action-info-fCoEt-Rn.js +101 -0
  16. package/dist/action-kill-DP4EEnxt.js +33 -0
  17. package/dist/action-list-CcjpvN9N.js +21 -0
  18. package/dist/action-log-YUvfBfxP.js +30 -0
  19. package/dist/action-send-B92BNjlE.js +39 -0
  20. package/dist/action-spawn-CTVbxHB8.js +47 -0
  21. package/dist/action-unfocus-CCvrRtpz.js +29 -0
  22. package/dist/actions.runtime-CoSzf-df.js +5 -0
  23. package/dist/actions.runtime-DcqD6Le-.js +18 -0
  24. package/dist/actions.runtime.js +1 -1
  25. package/dist/agent-CQEBS9pS.js +2 -0
  26. package/dist/agent-command-KS0kk4R_.js +874 -0
  27. package/dist/agent-harness-runtime-DpgQTWHS.js +144 -0
  28. package/dist/agent-runner-utils-Bfjw1bSj.js +239 -0
  29. package/dist/agent-runner.runtime-BmWGZi8Z.js +3455 -0
  30. package/dist/agent-runner.runtime.js +1 -1
  31. package/dist/agent-runtime-Cju2h7Dd.js +18 -0
  32. package/dist/agents-6HPmn29e.js +5 -0
  33. package/dist/agents-ZkvxBcii.js +954 -0
  34. package/dist/aliases-BpgQEAi2.js +2 -0
  35. package/dist/aliases-CK0aIskI.js +96 -0
  36. package/dist/api-BxjlJBf7.js +3 -0
  37. package/dist/api-CalF94xg.js +5 -0
  38. package/dist/api-D_GKjzfN.js +139 -0
  39. package/dist/approval-gateway-resolver-Dxycea4Z.js +29 -0
  40. package/dist/approval-gateway-runtime-D3X-ZiqD.js +2 -0
  41. package/dist/approval-handler-runtime-CRqE_cXp.js +439 -0
  42. package/dist/approval-native-runtime-zR041zyJ.js +729 -0
  43. package/dist/attempt-execution.runtime-1Wa08yf1.js +509 -0
  44. package/dist/attempt-execution.runtime.js +1 -1
  45. package/dist/attempt.prompt-helpers-z-6VGwRW.js +221 -0
  46. package/dist/attempt.tool-run-context-C70C_cPM.js +933 -0
  47. package/dist/audit-DfIX2KwE.js +939 -0
  48. package/dist/audit.runtime-BNH37U5T.js +7 -0
  49. package/dist/audit.runtime.js +1 -1
  50. package/dist/auth-DkcLHjkF.js +2 -0
  51. package/dist/auth-order-B9P_KybB.js +2 -0
  52. package/dist/auth-order-ozs0zLmu.js +139 -0
  53. package/dist/auth-vKHIBjC8.js +550 -0
  54. package/dist/bash-tools-CLGCvCUP.js +2824 -0
  55. package/dist/bash-tools-CaBEBURe.js +3 -0
  56. package/dist/binding-routing-D4HA2ved.js +85 -0
  57. package/dist/binding-targets-DA9ecVsr.js +121 -0
  58. package/dist/bridge-server-gnPeACBa.js +113 -0
  59. package/dist/browser-control-auth-CM8pNt8J.js +2 -0
  60. package/dist/browser-node-runtime-C-mstNpu.js +12 -0
  61. package/dist/browser-profiles-Dg-k95aL.js +2 -0
  62. package/dist/browser-runtime-DirlsYmK.js +387 -0
  63. package/dist/browser-setup-tools-BXWUuJ6m.js +13 -0
  64. package/dist/build-CijTB8Fi.js +550 -0
  65. package/dist/build-info.json +3 -3
  66. package/dist/bundled/boot-md/handler.js +2 -2
  67. package/dist/bundled/session-memory/handler.js +1 -1
  68. package/dist/call-85RWmQAH.js +3 -0
  69. package/dist/call-CL7Keh1p.js +331 -0
  70. package/dist/call.runtime-xbzyWzEi.js +2 -0
  71. package/dist/call.runtime.js +1 -1
  72. package/dist/capability-cli-DLY0EugY.js +1401 -0
  73. package/dist/catchup-pqyBQ6UZ.js +300 -0
  74. package/dist/channel-B-_yLOuX.js +1320 -0
  75. package/dist/channel-BMRnqh3W.js +840 -0
  76. package/dist/channel-BrrfXNkf.js +297 -0
  77. package/dist/channel-C1VXF6vY.js +595 -0
  78. package/dist/channel-C6MisWnA.js +350 -0
  79. package/dist/channel-C7Y0GD7W.js +1100 -0
  80. package/dist/channel-C9Kr__RL.js +226 -0
  81. package/dist/channel-CJFK3uRJ.js +1802 -0
  82. package/dist/channel-Crm7UunT.js +453 -0
  83. package/dist/channel-M5ZFW6rv.js +491 -0
  84. package/dist/channel-VL7FJNyb.js +1174 -0
  85. package/dist/channel-core-DB2nzAkT.js +5 -0
  86. package/dist/channel-inbound-CATPKMen.js +31 -0
  87. package/dist/channel-plugin-runtime-DhEHiW41.js +771 -0
  88. package/dist/channel-runtime-CE1xTvWZ.js +425 -0
  89. package/dist/channel.runtime-3APLcE-1.js +42398 -0
  90. package/dist/channel.runtime-B8slMR61.js +89 -0
  91. package/dist/channel.runtime-BKjTINZH.js +4 -0
  92. package/dist/channel.runtime-DHfGxcjG.js +2364 -0
  93. package/dist/channel.runtime-DVnkA8AL.js +576 -0
  94. package/dist/channel.runtime-DaFfPWdI.js +430 -0
  95. package/dist/channel.setup-C3Ag76tq.js +10 -0
  96. package/dist/channel2.runtime-DUB2QEK1.js +109 -0
  97. package/dist/channel2.runtime.js +1 -1
  98. package/dist/channels-CBvXY2t_.js +733 -0
  99. package/dist/channels-cli-CkoeG5y5.js +268 -0
  100. package/dist/chat-DbvGOpf-.js +2830 -0
  101. package/dist/clawbot-cli-CLuaKcyW.js +9 -0
  102. package/dist/cli/daemon-cli.js +3 -3
  103. package/dist/cli-B5Ub8Cgn.js +2 -0
  104. package/dist/cli-BDH4ZbeI.js +2 -0
  105. package/dist/cli-CWOy2CsV.js +219 -0
  106. package/dist/cli-DyG2YLBa.js +72 -0
  107. package/dist/cli-runner-D8mL6FWu.js +286 -0
  108. package/dist/cli-runner.runtime-BCrZn2CL.js +4 -0
  109. package/dist/cli-runner.runtime-ChQ6WYTw.js +3 -0
  110. package/dist/cli-runner.runtime.js +1 -1
  111. package/dist/cli-startup-metadata.json +2 -2
  112. package/dist/cli.runtime-c5SW-DVR.js +1261 -0
  113. package/dist/cli.runtime.js +1 -1
  114. package/dist/client-BdWZGAKV.js +713 -0
  115. package/dist/client-G9bp9IBR.js +138 -0
  116. package/dist/command-auth-C6emi1Rr.js +76 -0
  117. package/dist/command-config-resolution-CY8Uap6U.js +2 -0
  118. package/dist/command-config-resolution-Dkkd_zz7.js +23 -0
  119. package/dist/command-config-resolution.runtime-B03wRV-i.js +2 -0
  120. package/dist/command-config-resolution.runtime.js +1 -1
  121. package/dist/command-registry-BdXEbnVK.js +9 -0
  122. package/dist/command-registry-BwJ8YzAH.js +4 -0
  123. package/dist/command-registry-core-X1IeFtlC.js +106 -0
  124. package/dist/command-secret-gateway-BxGIG8ny.js +528 -0
  125. package/dist/command-status.runtime-5QfAs_4U.js +87 -0
  126. package/dist/command-status.runtime.js +1 -1
  127. package/dist/commands-acp-15kfWcgC.js +77 -0
  128. package/dist/commands-compact.runtime-GdDN_EbV.js +10 -0
  129. package/dist/commands-compact.runtime.js +1 -1
  130. package/dist/commands-handlers.runtime-Cb8uy-yp.js +4599 -0
  131. package/dist/commands-handlers.runtime.js +1 -1
  132. package/dist/commands-status-BfvtgMfw.js +16 -0
  133. package/dist/commands-status.runtime-C4UOWuC1.js +3 -0
  134. package/dist/commands-status.runtime.js +1 -1
  135. package/dist/commands-subagents-control.runtime-CU9SGNdt.js +3 -0
  136. package/dist/commands-subagents-control.runtime-DnTa6bzF.js +2 -0
  137. package/dist/commands-subagents-control.runtime.js +1 -1
  138. package/dist/commands-system-prompt-B1VTjT7j.js +2 -0
  139. package/dist/commands-system-prompt-BpBKEr8Y.js +158 -0
  140. package/dist/commands.runtime-Dpj2M0X6.js +167 -0
  141. package/dist/commands.runtime.js +1 -1
  142. package/dist/compact-CW1IbeBL.js +1118 -0
  143. package/dist/compact.runtime-BML0MjKx.js +12 -0
  144. package/dist/compact.runtime.js +1 -1
  145. package/dist/completion-cli-DfjmvVEd.js +328 -0
  146. package/dist/config-Cs1RBMvI.js +252 -0
  147. package/dist/config-cli-B4sSTkyr.js +1078 -0
  148. package/dist/configure-DR8rchLE.js +1252 -0
  149. package/dist/configure-arK50J-8.js +2 -0
  150. package/dist/connect-options-eEG6omnx.js +699 -0
  151. package/dist/control-auth-D6O4ILiF.js +125 -0
  152. package/dist/control-service-DtnOpS8v.js +156 -0
  153. package/dist/conversation-id-CF4M7Rh_.js +38 -0
  154. package/dist/conversation-id-lrCRurjf.js +235 -0
  155. package/dist/conversation-runtime-CmrgJq5s.js +31 -0
  156. package/dist/core-cFPca6I1.js +275 -0
  157. package/dist/cron-cli-BZw_Pb_X.js +713 -0
  158. package/dist/daemon-cli-CBs3tlnX.js +12 -0
  159. package/dist/dashboard-DOnBYDVr.js +2 -0
  160. package/dist/dashboard-Xsq0BOfY.js +81 -0
  161. package/dist/delegate-YTxameSy.js +64 -0
  162. package/dist/detached-task-runtime-DG_5Cqxs.js +73 -0
  163. package/dist/devices-cli-DkhwpYb8.js +498 -0
  164. package/dist/diagnostics-C_w66y4V.js +154 -0
  165. package/dist/direct-dm-DIod6mar.js +64 -0
  166. package/dist/dispatch-BDQe80zG.js +1131 -0
  167. package/dist/dispatch-acp-jOkMwRPa.js +981 -0
  168. package/dist/dispatch-acp-manager.runtime-Cys6AkDd.js +3 -0
  169. package/dist/dispatch-acp-manager.runtime.js +1 -1
  170. package/dist/dispatch-acp.runtime-BCFY7UOj.js +19 -0
  171. package/dist/dispatch-acp.runtime.js +1 -1
  172. package/dist/doctor-device-pairing-CpGyVqbv.js +307 -0
  173. package/dist/doctor-gateway-daemon-flow-Dt447a03.js +250 -0
  174. package/dist/doctor-gateway-health-BOgr3ZTP.js +63 -0
  175. package/dist/doctor-health-CM9WRrKn.js +59 -0
  176. package/dist/doctor-health-contributions-Dp96BnoL.js +493 -0
  177. package/dist/doctor-prompter-DSrAf0qq.js +56 -0
  178. package/dist/doctor-workspace-status-BcV9YZTP.js +75 -0
  179. package/dist/dreaming-DzWUr8i3.js +1582 -0
  180. package/dist/dreaming-narrative-BFfAvouy.js +596 -0
  181. package/dist/embedded-gateway-stub.runtime-BwG8b1xF.js +9 -0
  182. package/dist/embedded-gateway-stub.runtime.js +1 -1
  183. package/dist/entry.js +2 -2
  184. package/dist/exec-approvals-cli-WT6PMw5I.js +498 -0
  185. package/dist/extensionAPI.js +1 -1
  186. package/dist/extensions/active-memory/index.js +1 -1
  187. package/dist/extensions/bluebubbles/api.js +3 -3
  188. package/dist/extensions/bluebubbles/channel-plugin-api.js +1 -1
  189. package/dist/extensions/browser/browser-bridge.js +1 -1
  190. package/dist/extensions/browser/browser-config.js +4 -4
  191. package/dist/extensions/browser/browser-control-auth.js +2 -2
  192. package/dist/extensions/browser/browser-doctor.js +2 -2
  193. package/dist/extensions/browser/browser-maintenance.js +2 -2
  194. package/dist/extensions/browser/browser-profiles.js +2 -2
  195. package/dist/extensions/browser/browser-runtime-api.js +10 -10
  196. package/dist/extensions/browser/index.js +1 -1
  197. package/dist/extensions/browser/plugin-registration.js +1 -1
  198. package/dist/extensions/browser/register.runtime.js +3 -3
  199. package/dist/extensions/browser/runtime-api.js +11 -11
  200. package/dist/extensions/browser/test-support.js +1 -1
  201. package/dist/extensions/device-pair/api.js +1 -1
  202. package/dist/extensions/device-pair/index.js +3 -3
  203. package/dist/extensions/device-pair/notify.js +1 -1
  204. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  205. package/dist/extensions/google-meet/index.js +2 -2
  206. package/dist/extensions/imessage/api.js +3 -3
  207. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  208. package/dist/extensions/imessage/runtime-api.js +3 -3
  209. package/dist/extensions/irc/api.js +2 -2
  210. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  211. package/dist/extensions/line/api.js +2 -2
  212. package/dist/extensions/line/channel-plugin-api.js +1 -1
  213. package/dist/extensions/line/contract-api.js +1 -1
  214. package/dist/extensions/line/runtime-api.js +4 -4
  215. package/dist/extensions/line/setup-api.js +1 -1
  216. package/dist/extensions/llm-task/index.js +2 -2
  217. package/dist/extensions/lobster/index.js +3 -3
  218. package/dist/extensions/lobster/runtime-api.js +1 -1
  219. package/dist/extensions/mattermost/api.js +1 -1
  220. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  221. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  222. package/dist/extensions/mattermost/policy-api.js +1 -1
  223. package/dist/extensions/mattermost/runtime-api.js +4 -4
  224. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  225. package/dist/extensions/memory-core/api.js +1 -1
  226. package/dist/extensions/memory-core/cli-metadata.js +2 -2
  227. package/dist/extensions/memory-core/index.js +3 -3
  228. package/dist/extensions/memory-lancedb/cli-metadata.js +1 -1
  229. package/dist/extensions/msteams/api.js +1 -1
  230. package/dist/extensions/msteams/channel-plugin-api.js +1 -1
  231. package/dist/extensions/msteams/runtime-api.js +3 -3
  232. package/dist/extensions/msteams/test-api.js +1 -1
  233. package/dist/extensions/nextcloud-talk/api.js +1 -1
  234. package/dist/extensions/nextcloud-talk/channel-plugin-api.js +1 -1
  235. package/dist/extensions/nextcloud-talk/runtime-api.js +2 -2
  236. package/dist/extensions/openshell/index.js +2 -2
  237. package/dist/extensions/signal/api.js +6 -6
  238. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  239. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  240. package/dist/extensions/signal/runtime-api.js +7 -7
  241. package/dist/extensions/skill-workshop/api.js +1 -1
  242. package/dist/extensions/skill-workshop/index.js +1 -1
  243. package/dist/extensions/synology-chat/api.js +1 -1
  244. package/dist/extensions/synology-chat/channel-plugin-api.js +1 -1
  245. package/dist/extensions/tlon/api.js +2 -2
  246. package/dist/extensions/tlon/channel-plugin-api.js +1 -1
  247. package/dist/extensions/tlon/runtime-api.js +1 -1
  248. package/dist/extensions/tlon/test-api.js +1 -1
  249. package/dist/extensions/twitch/api.js +1 -1
  250. package/dist/extensions/twitch/channel-plugin-api.js +1 -1
  251. package/dist/extensions/twitch/setup-plugin-api.js +1 -1
  252. package/dist/extensions/zalo/api.js +3 -3
  253. package/dist/extensions/zalo/channel-plugin-api.js +1 -1
  254. package/dist/extensions/zalo/runtime-api.js +2 -2
  255. package/dist/extensions/zalo/setup-api.js +2 -2
  256. package/dist/extensions/zalouser/api.js +3 -3
  257. package/dist/extensions/zalouser/channel-plugin-api.js +1 -1
  258. package/dist/extensions/zalouser/runtime-api.js +6 -6
  259. package/dist/extensions/zalouser/setup-plugin-api.js +1 -1
  260. package/dist/extensions/zalouser/test-api.js +1 -1
  261. package/dist/fallbacks-BVWn3y-0.js +31 -0
  262. package/dist/fallbacks-Dw_bkoWB.js +2 -0
  263. package/dist/fallbacks-shared-BEsBzsm3.js +111 -0
  264. package/dist/gateway-cli-BUxyZoGn.js +1283 -0
  265. package/dist/gateway-p2LteXL8.js +115 -0
  266. package/dist/gateway-rpc-D8q7ZQDi.js +14 -0
  267. package/dist/gateway-rpc.runtime-D_0TNej1.js +23 -0
  268. package/dist/gateway-rpc.runtime.js +1 -1
  269. package/dist/gateway-runtime-DYUdOqYz.js +15 -0
  270. package/dist/gateway-status-ZBWKhThd.js +584 -0
  271. package/dist/genesis-tools-oUxtX0O2.js +9166 -0
  272. package/dist/genesis-tools.runtime-Cx-FIdJQ.js +2 -0
  273. package/dist/genesis-tools.runtime.js +1 -1
  274. package/dist/get-reply-BPIG7KcY.js +3897 -0
  275. package/dist/get-reply-from-config.runtime-CnHudoiv.js +2 -0
  276. package/dist/get-reply-from-config.runtime.js +1 -1
  277. package/dist/graph-users-DwHoVTRw.js +1337 -0
  278. package/dist/health-B2JkLr-g.js +3 -0
  279. package/dist/health-Db30zfNX.js +469 -0
  280. package/dist/health-route--Oa3RIgW.js +2 -0
  281. package/dist/health-route-CUCmtqv5.js +41 -0
  282. package/dist/heartbeat-runner-BZp7aZ2w.js +5 -0
  283. package/dist/heartbeat-runner-C1VMkjRh.js +1292 -0
  284. package/dist/heartbeat-runner.runtime-ChAITmTa.js +4 -0
  285. package/dist/heartbeat-runner.runtime.js +1 -1
  286. package/dist/hooks-cli-NPBiUXrV.js +433 -0
  287. package/dist/image-fallbacks-CgnkUGl-.js +31 -0
  288. package/dist/image-fallbacks-CkcfrgGr.js +2 -0
  289. package/dist/inbound-reply-dispatch-DatqwKdH.js +73 -0
  290. package/dist/index.js +2 -2
  291. package/dist/infra-runtime-DF5DBM7E.js +39 -0
  292. package/dist/init-H9ZKfvws.js +59 -0
  293. package/dist/library-B7YkN7SI.js +45 -0
  294. package/dist/lifecycle-BclPLGGp.js +229 -0
  295. package/dist/lifecycle-C_3bV3nu.js +571 -0
  296. package/dist/lifecycle.runtime-WNsFm3uq.js +2 -0
  297. package/dist/lifecycle.runtime.js +1 -1
  298. package/dist/list-C4LkHj9E.js +2 -0
  299. package/dist/list-Co85YbCS.js +2 -0
  300. package/dist/list-D8pfqTNx.js +131 -0
  301. package/dist/list-oJMN_3OD.js +1212 -0
  302. package/dist/list.probe-DZjGof7G.js +419 -0
  303. package/dist/llm-slug-generator-knfnn0mT.js +79 -0
  304. package/dist/llm-slug-generator.js +1 -1
  305. package/dist/load-config-BPbDzvCY.js +35 -0
  306. package/dist/local-dispatch.runtime-BtylNF8x.js +8 -0
  307. package/dist/local-dispatch.runtime.js +1 -1
  308. package/dist/logs-cli-BWGb1in_.js +265 -0
  309. package/dist/logs-cli.runtime-DBp3UCcP.js +2 -0
  310. package/dist/logs-cli.runtime.js +1 -1
  311. package/dist/main-session-restart-recovery-BJt-saEI.js +206 -0
  312. package/dist/managed-image-attachments-BuO0SCpc.js +635 -0
  313. package/dist/managed-image-attachments-C4QYz3yC.js +2 -0
  314. package/dist/manager-C0c4DxXa.js +2 -0
  315. package/dist/manager-DmLckyN1.js +2057 -0
  316. package/dist/markdown-to-line-BVs9RDRe.js +790 -0
  317. package/dist/mcp/plugin-tools-serve.js +1 -1
  318. package/dist/mcp-cli-Cq3kJYFy.js +725 -0
  319. package/dist/mcp-http-C8sBBMH1.js +529 -0
  320. package/dist/memory-core-host-runtime-cli-DYW7bPF_.js +9 -0
  321. package/dist/message-Bec0oyM4.js +232 -0
  322. package/dist/message-action-runner-BIvqB_FI.js +2 -0
  323. package/dist/message-action-runner-D66_Fo-V.js +1407 -0
  324. package/dist/message-actions-BJs-Awr8.js +143 -0
  325. package/dist/message.gateway.runtime-BxKiFLPu.js +2 -0
  326. package/dist/message.gateway.runtime.js +1 -1
  327. package/dist/models-auth-status-BKHvtTwP.js +217 -0
  328. package/dist/models-cli-CoqcvJz5.js +271 -0
  329. package/dist/monitor-BO_gZrgs.js +1459 -0
  330. package/dist/monitor-C_4tbG4E.js +671 -0
  331. package/dist/monitor-DVTKLiFb.js +2 -0
  332. package/dist/monitor-P35vmooh.js +1237 -0
  333. package/dist/monitor-auth-DkTEAzy7.js +207 -0
  334. package/dist/monitor-gaiYvZ-I.js +788 -0
  335. package/dist/monitor-processing-BpjusT5o.js +1974 -0
  336. package/dist/monitor-uCqIYno8.js +1661 -0
  337. package/dist/monitor.runtime-CbMSQBgz.js +2 -0
  338. package/dist/monitor.runtime.js +1 -1
  339. package/dist/monitor.webhook-z4zhNHYy.js +180 -0
  340. package/dist/msteams-ChjqyPxy.js +35 -0
  341. package/dist/native-hook-relay-hOpMhOTR.js +519 -0
  342. package/dist/nextcloud-talk-BfJltkau.js +17 -0
  343. package/dist/node-cli-NXEXoWYg.js +2276 -0
  344. package/dist/nodes-cli-Dlq3ORXy.js +1046 -0
  345. package/dist/nodes-utils-o8KC_0Ci.js +84 -0
  346. package/dist/nodes.helpers-B2jPrnEd.js +34 -0
  347. package/dist/notify-VSv6I2dB.js +315 -0
  348. package/dist/onboard-I72X1v1y.js +70 -0
  349. package/dist/onboard-WRT3rbQo.js +2 -0
  350. package/dist/onboard-helpers-BnbqaUN2.js +6 -0
  351. package/dist/onboard-helpers-Kt5u4yMJ.js +204 -0
  352. package/dist/onboard-interactive-CIhTNhiD.js +24 -0
  353. package/dist/onboard-non-interactive-Hk6vLQCB.js +635 -0
  354. package/dist/onboard-remote-CQo_tQNa.js +193 -0
  355. package/dist/onboard-remote-DyRv7tdE.js +2 -0
  356. package/dist/onboard-skills-BRv5-6Ke.js +2 -0
  357. package/dist/onboard-skills-CeXPYTFg.js +134 -0
  358. package/dist/openai-http-kgzRj9Fg.js +500 -0
  359. package/dist/openresponses-http-DnJSiUa4.js +1128 -0
  360. package/dist/operator-approvals-client-B8dLxxFu.js +68 -0
  361. package/dist/outbound.runtime-CDrYtbmY.js +2 -0
  362. package/dist/outbound.runtime.js +1 -1
  363. package/dist/pair-command-approve-CFU4_I15.js +44 -0
  364. package/dist/persistent-bindings.lifecycle-5_yxfyfG.js +85 -0
  365. package/dist/persistent-bindings.lifecycle-DtFnl1yI.js +2 -0
  366. package/dist/pi-embedded-DPKqHoG9.js +2905 -0
  367. package/dist/pi-embedded-YM1PXjPH.js +4 -0
  368. package/dist/pi-embedded.runtime-FRv5dWIr.js +4 -0
  369. package/dist/pi-embedded.runtime.js +1 -1
  370. package/dist/pi-tool-definition-adapter-DAVcmPPg.js +229 -0
  371. package/dist/pi-tools-pgCF9tvm.js +1057 -0
  372. package/dist/pi-tools.before-tool-call-Blvjro7X.js +2 -0
  373. package/dist/pi-tools.before-tool-call-CMEGGnv-.js +433 -0
  374. package/dist/plugin-DoJ_IM72.js +12195 -0
  375. package/dist/plugin-enabled-C9PNEsMB.js +140 -0
  376. package/dist/plugin-registration-CPGTZRDF.js +23 -0
  377. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  378. package/dist/plugin-sdk/acp-binding-runtime.js +1 -1
  379. package/dist/plugin-sdk/acp-runtime.js +2 -2
  380. package/dist/plugin-sdk/agent-harness-runtime.js +5 -5
  381. package/dist/plugin-sdk/agent-harness.js +6 -6
  382. package/dist/plugin-sdk/agent-runtime.js +2 -2
  383. package/dist/plugin-sdk/approval-gateway-runtime.js +2 -2
  384. package/dist/plugin-sdk/approval-handler-runtime.js +3 -3
  385. package/dist/plugin-sdk/approval-runtime.js +1 -1
  386. package/dist/plugin-sdk/browser-node-runtime.js +4 -4
  387. package/dist/plugin-sdk/browser-setup-tools.js +3 -3
  388. package/dist/plugin-sdk/browser-support.js +7 -7
  389. package/dist/plugin-sdk/channel-core.js +2 -2
  390. package/dist/plugin-sdk/channel-inbound.js +2 -2
  391. package/dist/plugin-sdk/command-auth.js +1 -1
  392. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  393. package/dist/plugin-sdk/compat.js +1 -1
  394. package/dist/plugin-sdk/conversation-binding-runtime.js +1 -1
  395. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  396. package/dist/plugin-sdk/core.js +2 -2
  397. package/dist/plugin-sdk/direct-dm.js +1 -1
  398. package/dist/plugin-sdk/gateway-runtime.js +3 -3
  399. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  400. package/dist/plugin-sdk/index.js +1 -1
  401. package/dist/plugin-sdk/infra-runtime.js +2 -2
  402. package/dist/plugin-sdk/irc.js +2 -2
  403. package/dist/plugin-sdk/matrix.js +1 -1
  404. package/dist/plugin-sdk/memory-core-host-runtime-cli.js +2 -2
  405. package/dist/plugin-sdk/memory-core.js +2 -2
  406. package/dist/plugin-sdk/msteams.js +2 -2
  407. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  408. package/dist/plugin-sdk/nostr.js +1 -1
  409. package/dist/plugin-sdk/reply-dispatch-runtime.js +1 -1
  410. package/dist/plugin-sdk/reply-runtime.js +4 -4
  411. package/dist/plugin-sdk/runtime-secret-resolution.js +1 -1
  412. package/dist/plugin-sdk/runtime.js +2 -2
  413. package/dist/plugin-sdk/session-visibility.js +1 -1
  414. package/dist/plugin-sdk/testing.js +4 -4
  415. package/dist/plugin-sdk/tlon.js +1 -1
  416. package/dist/plugin-sdk/zalo.js +1 -1
  417. package/dist/plugin-sdk/zalouser.js +1 -1
  418. package/dist/plugin-service-c09KhFRA.js +2893 -0
  419. package/dist/plugins/runtime/index.js +1 -1
  420. package/dist/policy-DxSwu86T.js +328 -0
  421. package/dist/postinstall-inventory.json +414 -414
  422. package/dist/prepare.runtime-BIEQIV8L.js +815 -0
  423. package/dist/prepare.runtime.js +1 -1
  424. package/dist/probe-6HwDlk5s.js +2 -0
  425. package/dist/probe-BbvEHYyJ.js +2 -0
  426. package/dist/probe-COR7fP_v.js +2205 -0
  427. package/dist/probe-DE9JjGqN.js +241 -0
  428. package/dist/probe-DLS0a8fK.js +74 -0
  429. package/dist/probe-D_l_otos.js +45 -0
  430. package/dist/probe-ZtUbt8f-.js +1443 -0
  431. package/dist/program-DfQvGH1d.js +111 -0
  432. package/dist/prompt-select-styled-DM6haaKV.js +20 -0
  433. package/dist/protocol-CqddCqi8.js +2479 -0
  434. package/dist/provider-dispatcher-BR6UQE4t.js +22 -0
  435. package/dist/provider-dispatcher-CbwCRQ43.js +2 -0
  436. package/dist/qr-cli-D51XKVJW.js +349 -0
  437. package/dist/qr-cli-i4TjyLtW.js +2 -0
  438. package/dist/reaction-runtime-api-DDV-gubE.js +116 -0
  439. package/dist/reactions-BvXn-qBP.js +998 -0
  440. package/dist/register-service-commands-B6ZQumi9.js +71 -0
  441. package/dist/register.agent-CtzP54VE.js +248 -0
  442. package/dist/register.configure-BLcph6ME.js +15 -0
  443. package/dist/register.maintenance-CPYg-yEz.js +363 -0
  444. package/dist/register.message-CficlkIg.js +329 -0
  445. package/dist/register.onboard-1xQPe7tH.js +88 -0
  446. package/dist/register.runtime-CCeTiEB_.js +81 -0
  447. package/dist/register.runtime.js +1 -1
  448. package/dist/register.setup-DAoIkDtN.js +150 -0
  449. package/dist/register.status-health-sessions-0WKthgEo.js +1215 -0
  450. package/dist/register.subclis-DLvpHAI3.js +29 -0
  451. package/dist/register.subclis-JxfqEla5.js +3 -0
  452. package/dist/register.subclis-core-DuiCves5.js +249 -0
  453. package/dist/reply-dispatch-runtime-C9_ukgcR.js +13 -0
  454. package/dist/reply-runtime-OPe17s80.js +11 -0
  455. package/dist/reply.runtime-DDlQ67N1.js +2 -0
  456. package/dist/reply.runtime.js +1 -1
  457. package/dist/restart-health-CL-01acN.js +202 -0
  458. package/dist/restart-health-YEV65VfM.js +2 -0
  459. package/dist/root-help-BJQSVoY8.js +44 -0
  460. package/dist/routes-BmkmbLoX.js +3341 -0
  461. package/dist/routes-Bnind2jW.js +2 -0
  462. package/dist/rpc-DY2jvCMf.js +61 -0
  463. package/dist/rpc.runtime-ChyBZELh.js +21 -0
  464. package/dist/rpc.runtime.js +1 -1
  465. package/dist/run-delivery.runtime-Dz-12Zd4.js +530 -0
  466. package/dist/run-delivery.runtime.js +1 -1
  467. package/dist/run-embedded.runtime-BpU5lMNC.js +4 -0
  468. package/dist/run-embedded.runtime.js +1 -1
  469. package/dist/run-execution-cli.runtime-DAFehfXH.js +4 -0
  470. package/dist/run-execution-cli.runtime.js +1 -1
  471. package/dist/run-executor.runtime-rpu8onA8.js +277 -0
  472. package/dist/run-executor.runtime.js +1 -1
  473. package/dist/run-main-C_inhxnF.js +567 -0
  474. package/dist/run-subagent-registry.runtime-B6k7yCGg.js +2 -0
  475. package/dist/run-subagent-registry.runtime.js +1 -1
  476. package/dist/run-wait-CFzlGkj_.js +135 -0
  477. package/dist/runtime-Dhl_rNom.js +9 -0
  478. package/dist/runtime-OHV6waIC.js +973 -0
  479. package/dist/runtime-api-BWNiBA3c.js +9 -0
  480. package/dist/runtime-api-BfIyvgB_.js +14 -0
  481. package/dist/runtime-api-D424hB_J.js +4 -0
  482. package/dist/runtime-api-DtKgDipG.js +9 -0
  483. package/dist/runtime-embedded-pi.runtime-DFWGcHwZ.js +2 -0
  484. package/dist/runtime-embedded-pi.runtime.js +1 -1
  485. package/dist/runtime-internal-CaCnQ02a.js +2 -0
  486. package/dist/runtime-options-D4BvjWB8.js +275 -0
  487. package/dist/runtime-schema-pjSPEOAs.js +28588 -0
  488. package/dist/scan--Q_WB1Hw.js +2 -0
  489. package/dist/scan-B62XQB6F.js +523 -0
  490. package/dist/secrets-cli-BGEY6lbE.js +2101 -0
  491. package/dist/security-cli-Dcjib0xt.js +486 -0
  492. package/dist/selection-DnBlD3ri.js +7764 -0
  493. package/dist/selection-DtFOwoyl.js +2 -0
  494. package/dist/send-DQ2jC-kR.js +156 -0
  495. package/dist/send-DqkSZeSs.js +102 -0
  496. package/dist/send.runtime-np7_gr25.js +2 -0
  497. package/dist/send.runtime.js +1 -1
  498. package/dist/server-CDV_YyCz.js +77 -0
  499. package/dist/server-Dyzhwdln.js +13 -0
  500. package/dist/server-context-C1If0B6s.js +2 -0
  501. package/dist/server-context-DwGUOfrl.js +847 -0
  502. package/dist/server-node-events-DUpSxyRf.js +481 -0
  503. package/dist/server-plugin-bootstrap-CFpMAmvv.js +2 -0
  504. package/dist/server-plugin-bootstrap-D86uxpDr.js +13176 -0
  505. package/dist/server-restart-sentinel-CKsgDiab.js +697 -0
  506. package/dist/server.impl-BYjxobzs.js +12894 -0
  507. package/dist/session-kill-http-phKXyTTy.js +110 -0
  508. package/dist/session-reset-service-CwvaVami.js +497 -0
  509. package/dist/session-route-BTgIfE1c.js +93 -0
  510. package/dist/session-status.runtime-ChCTEeUR.js +2 -0
  511. package/dist/session-status.runtime.js +1 -1
  512. package/dist/session-subagent-reactivation.runtime-BpZtYfkl.js +2 -0
  513. package/dist/session-subagent-reactivation.runtime.js +1 -1
  514. package/dist/session-tab-registry-BqpCfcjM.js +581 -0
  515. package/dist/session-visibility-CedNChjb.js +147 -0
  516. package/dist/sessions-helpers-Drc1RiQe.js +305 -0
  517. package/dist/sessions-history-http-B3R_-kZs.js +383 -0
  518. package/dist/sessions-patch-DxL9yDsS.js +309 -0
  519. package/dist/sessions-resolve-BGCm2THO.js +174 -0
  520. package/dist/sessions.runtime-BiIsLfCP.js +2 -0
  521. package/dist/sessions.runtime.js +1 -1
  522. package/dist/setup-Cz1lcHMi.js +636 -0
  523. package/dist/setup-api-C_6auH7A.js +29 -0
  524. package/dist/setup-core-BcqeRlfc.js +171 -0
  525. package/dist/setup-core-BfpSQ1D1.js +176 -0
  526. package/dist/setup-surface-BI4jBqI52.js +403 -0
  527. package/dist/setup-surface-DIuPs4Hz.js +219 -0
  528. package/dist/setup-surface-ncxzGn0K.js +286 -0
  529. package/dist/setup.finalize-_eGrewCd.js +547 -0
  530. package/dist/setup.gateway-config-mG-DCNXx.js +250 -0
  531. package/dist/shared-BJcmJyRx.js +198 -0
  532. package/dist/shared-C2dlYHIW.js +76 -0
  533. package/dist/shared-C_hL6o63.js +121 -0
  534. package/dist/slash-state-CzVTgrEK.js +1911 -0
  535. package/dist/src-CDovn7A6.js +3974 -0
  536. package/dist/startup-context-Ck87weqi.js +312 -0
  537. package/dist/status-48dYtpoR.js +397 -0
  538. package/dist/status-CE7dpR6j.js +3 -0
  539. package/dist/status-CJoIf5CR.js +209 -0
  540. package/dist/status-D1Biv4_a.js +2 -0
  541. package/dist/status-DGJGZyGO.js +2 -0
  542. package/dist/status-all-2bHb-vgG.js +498 -0
  543. package/dist/status-dw3o_qPe.js +190 -0
  544. package/dist/status-json-Bxacm8Qn.js +14 -0
  545. package/dist/status-json-command-DF2B2_V3.js +84 -0
  546. package/dist/status-runtime-shared-BA95v5iK.js +257 -0
  547. package/dist/status-subagents.runtime-DPc9mqPe.js +18 -0
  548. package/dist/status-subagents.runtime.js +1 -1
  549. package/dist/status-text-BP3KeCtU.js +237 -0
  550. package/dist/status.gateway-connection.runtime-CrsJrehG.js +2 -0
  551. package/dist/status.gateway-connection.runtime.js +1 -1
  552. package/dist/status.gather-BCK6tC0P.js +292 -0
  553. package/dist/status.gather-DW_bdDUs.js +2 -0
  554. package/dist/status.runtime-DWTaiT7K.js +2 -0
  555. package/dist/status.runtime.js +1 -1
  556. package/dist/status.scan-CD7orpWm.js +65 -0
  557. package/dist/status.scan-overview-BnY_9pPZ.js +379 -0
  558. package/dist/status.scan.fast-json-CLKyp_FZ.js +132 -0
  559. package/dist/status.scan.fast-json-D9-5RUQW.js +2 -0
  560. package/dist/status.summary-3kMOvohJ.js +2 -0
  561. package/dist/status.summary-CBGC6YG3.js +214 -0
  562. package/dist/subagent-announce-delivery-DgJVgXOr.js +726 -0
  563. package/dist/subagent-announce-output-CP427cvY.js +364 -0
  564. package/dist/subagent-announce-zjeNVFwd.js +351 -0
  565. package/dist/subagent-control-mN0oIWjm.js +506 -0
  566. package/dist/subagent-followup.runtime-BPQyuQoe.js +68 -0
  567. package/dist/subagent-followup.runtime.js +1 -1
  568. package/dist/subagent-orphan-recovery-BBkBb0Nh.js +305 -0
  569. package/dist/subagent-registry-BZkG7d3G.js +3 -0
  570. package/dist/subagent-registry-C2eAtERw.js +1753 -0
  571. package/dist/subagent-registry.runtime.js +1 -1
  572. package/dist/subagent-spawn-BHDR5zLE.js +1005 -0
  573. package/dist/system-cli-DapxyBIC.js +59 -0
  574. package/dist/targets-gkyN5pq8.js +67 -0
  575. package/dist/task-executor-McS2BJQg.js +360 -0
  576. package/dist/task-owner-access-Cp_o7LQs.js +74 -0
  577. package/dist/task-registry-Bc22zUFJ.js +2366 -0
  578. package/dist/task-registry-delivery-runtime-FGvxeA51.js +3 -0
  579. package/dist/task-registry-delivery-runtime-kjDlxgnl.js +2 -0
  580. package/dist/task-registry.maintenance-CdawPjmw.js +416 -0
  581. package/dist/task-registry.maintenance-D_uzodyG.js +2 -0
  582. package/dist/telegram/token.js +1 -1
  583. package/dist/testing-A7m9v7qS.js +575 -0
  584. package/dist/text-report-CSDchBUA.js +587 -0
  585. package/dist/tool-resolution-CMwLa1lc.js +90 -0
  586. package/dist/tools-effective-inventory-CXM5GV6s.js +152 -0
  587. package/dist/tools-invoke-http-qItYoiC6.js +206 -0
  588. package/dist/trash-B00EIdks.js +24 -0
  589. package/dist/tui-cli-BbHQkFbp.js +4595 -0
  590. package/dist/update-cli-hHkP1wu2.js +1759 -0
  591. package/dist/upgrade-Tmp-2Squ.js +1226 -0
  592. package/dist/video-generation-task-status-BWWBuC1d.js +163 -0
  593. package/dist/wait-for-idle-before-flush-CJcOqYwe.js +5986 -0
  594. package/dist/wizard-models-CsM6dV5g.js +334 -0
  595. package/package.json +1 -1
  596. package/dist/abort-Cngo_sE6.js +0 -201
  597. package/dist/abort.runtime-l03tKy6q.js +0 -2
  598. package/dist/accounts-D5dnjCYz.js +0 -104
  599. package/dist/accounts-DJVB8Dzg.js +0 -107
  600. package/dist/accounts-I2j8KUfU.js +0 -2
  601. package/dist/acp-cli-CVXcm2Uf.js +0 -2217
  602. package/dist/acp-spawn-BF1zb7_s.js +0 -2
  603. package/dist/acp-spawn-CCcWxuoD.js +0 -1093
  604. package/dist/acp-stateful-target-driver-CLTnT3_3.js +0 -89
  605. package/dist/action-agents-hVUqBNdo.js +0 -67
  606. package/dist/action-focus-8xIhNSsO.js +0 -132
  607. package/dist/action-help-BGvrhiaU.js +0 -7
  608. package/dist/action-info-DOI0dCt_.js +0 -101
  609. package/dist/action-kill-KvzLsRue.js +0 -33
  610. package/dist/action-list-L4kdOLkV.js +0 -21
  611. package/dist/action-log-xyFooSSU.js +0 -30
  612. package/dist/action-send-za_v6IfP.js +0 -39
  613. package/dist/action-spawn-CqMlG6rs.js +0 -47
  614. package/dist/action-unfocus-4viCl85L.js +0 -29
  615. package/dist/actions.runtime-BQnRcY0z.js +0 -18
  616. package/dist/actions.runtime-DAsDM3FC.js +0 -5
  617. package/dist/agent-BAcZ_9MS.js +0 -2
  618. package/dist/agent-command-CThfmSfK.js +0 -874
  619. package/dist/agent-harness-runtime-DQWpmoRH.js +0 -144
  620. package/dist/agent-runner-utils-BgI3qeCs.js +0 -239
  621. package/dist/agent-runner.runtime-C-6mqnGR.js +0 -3455
  622. package/dist/agent-runtime-DIWgC8MC.js +0 -18
  623. package/dist/agents-BAWL0dPv.js +0 -5
  624. package/dist/agents-CtrLQf-J.js +0 -954
  625. package/dist/aliases-Cd330u5w.js +0 -2
  626. package/dist/aliases-D9gd4KZs.js +0 -96
  627. package/dist/api-6P3OWTH5.js +0 -5
  628. package/dist/api-DpXopE7P.js +0 -3
  629. package/dist/api-oOooMZhP.js +0 -139
  630. package/dist/approval-gateway-resolver-BjqCdv8k.js +0 -29
  631. package/dist/approval-gateway-runtime-vc_h56PW.js +0 -2
  632. package/dist/approval-handler-runtime-CyvEyKDy.js +0 -439
  633. package/dist/approval-native-runtime-BIKGBkwL.js +0 -729
  634. package/dist/attempt-execution.runtime-CCvoOmmC.js +0 -509
  635. package/dist/attempt.prompt-helpers-BQ-1KYxC.js +0 -221
  636. package/dist/attempt.tool-run-context-Cxbblhky.js +0 -933
  637. package/dist/audit-Bo8UTCyc.js +0 -939
  638. package/dist/audit.runtime-CPxgYz9W.js +0 -7
  639. package/dist/auth-4FzYl8sz.js +0 -550
  640. package/dist/auth-Bj3QjORN.js +0 -2
  641. package/dist/auth-order-BVHFh3Fe.js +0 -139
  642. package/dist/auth-order-CiBq-B8C.js +0 -2
  643. package/dist/bash-tools-Csgatugk.js +0 -3
  644. package/dist/bash-tools-D5Qgrlkj.js +0 -2824
  645. package/dist/binding-routing-Cr2BJdII.js +0 -85
  646. package/dist/binding-targets-Du0vm2-F.js +0 -121
  647. package/dist/bridge-server-Cpvt4nNc.js +0 -113
  648. package/dist/browser-control-auth-DsUqVw9Y.js +0 -2
  649. package/dist/browser-node-runtime-CuGRBA2N.js +0 -12
  650. package/dist/browser-profiles-FqYFsUPt.js +0 -2
  651. package/dist/browser-runtime-C_MYMBwN.js +0 -387
  652. package/dist/browser-setup-tools-75eBLdGG.js +0 -13
  653. package/dist/build--GUIQMqV.js +0 -550
  654. package/dist/call-Cwg6CEat.js +0 -331
  655. package/dist/call-hnk56UiT.js +0 -3
  656. package/dist/call.runtime-C8KSEM5A.js +0 -2
  657. package/dist/capability-cli-ly3sH38y.js +0 -1401
  658. package/dist/catchup-DNRHXY1y.js +0 -300
  659. package/dist/channel-3WhZIXYU.js +0 -1100
  660. package/dist/channel-Ad3bImu-.js +0 -226
  661. package/dist/channel-BNY1gK9J.js +0 -1320
  662. package/dist/channel-BetO9AUJ.js +0 -595
  663. package/dist/channel-C2IaZUYL.js +0 -350
  664. package/dist/channel-C8jmE7N2.js +0 -297
  665. package/dist/channel-CDElDIH4.js +0 -453
  666. package/dist/channel-DHZhJnt4.js +0 -1174
  667. package/dist/channel-DJbljYq-.js +0 -840
  668. package/dist/channel-Dd3R7L4E.js +0 -1802
  669. package/dist/channel-Dpdizjhh.js +0 -491
  670. package/dist/channel-core-ByqezGK-.js +0 -5
  671. package/dist/channel-inbound-CfC-5Hqh.js +0 -31
  672. package/dist/channel-plugin-runtime-B-FoOCHe.js +0 -771
  673. package/dist/channel-runtime-CTz-Npx2.js +0 -425
  674. package/dist/channel.runtime-BO17VYXq.js +0 -430
  675. package/dist/channel.runtime-BOIxt4yC.js +0 -4
  676. package/dist/channel.runtime-BhxyxvkT.js +0 -576
  677. package/dist/channel.runtime-DTqynpub.js +0 -42398
  678. package/dist/channel.runtime-DU698Mtp.js +0 -2364
  679. package/dist/channel.runtime-Dfq_FjtT.js +0 -89
  680. package/dist/channel.setup-Cklnh2gh.js +0 -10
  681. package/dist/channel2.runtime-ClW7cdHK.js +0 -109
  682. package/dist/channels-CP6Kp445.js +0 -733
  683. package/dist/channels-cli-DaJwTe-V.js +0 -268
  684. package/dist/chat-ov9pIV1w.js +0 -2830
  685. package/dist/clawbot-cli-BRy4Hm77.js +0 -9
  686. package/dist/cli-BPwABYWL.js +0 -2
  687. package/dist/cli-BsSw7UYX.js +0 -72
  688. package/dist/cli-DM1LzJBx.js +0 -219
  689. package/dist/cli-DPAPYa_s.js +0 -2
  690. package/dist/cli-runner-END8ND2M.js +0 -286
  691. package/dist/cli-runner.runtime-C69OSvpN.js +0 -4
  692. package/dist/cli-runner.runtime-DZi9acPF.js +0 -3
  693. package/dist/cli.runtime-CAl2BRM8.js +0 -1261
  694. package/dist/client-BtyYQE4I.js +0 -713
  695. package/dist/client-DwOhUvZq.js +0 -138
  696. package/dist/command-auth-BC4dzkDE.js +0 -76
  697. package/dist/command-config-resolution-Bu94VaHH.js +0 -2
  698. package/dist/command-config-resolution-CDIZsyXz.js +0 -23
  699. package/dist/command-config-resolution.runtime-D6U--833.js +0 -2
  700. package/dist/command-registry-CP6Flbyr.js +0 -4
  701. package/dist/command-registry-DyA5n5Y2.js +0 -9
  702. package/dist/command-registry-core-D6wfuVBH.js +0 -106
  703. package/dist/command-secret-gateway-U8oc85O3.js +0 -528
  704. package/dist/command-status.runtime-BlV8RkuN.js +0 -87
  705. package/dist/commands-acp-DogyhRxV.js +0 -77
  706. package/dist/commands-compact.runtime-C9CwEQ9d.js +0 -10
  707. package/dist/commands-handlers.runtime-BKVTB3af.js +0 -4599
  708. package/dist/commands-status-Ck7yAveR.js +0 -16
  709. package/dist/commands-status.runtime-C64rfIgv.js +0 -3
  710. package/dist/commands-subagents-control.runtime-BQ9IJ-PN.js +0 -2
  711. package/dist/commands-subagents-control.runtime-DzuYqXYM.js +0 -3
  712. package/dist/commands-system-prompt-DrO5Ktab.js +0 -158
  713. package/dist/commands-system-prompt-OZnWRUU4.js +0 -2
  714. package/dist/commands.runtime-Cz5m7UHd.js +0 -167
  715. package/dist/compact-Bm6Ue8PM.js +0 -1118
  716. package/dist/compact.runtime-DUnPpPlz.js +0 -12
  717. package/dist/completion-cli-CQV8Edld.js +0 -328
  718. package/dist/config-CvQPjE0Q.js +0 -252
  719. package/dist/config-cli-hPAERXVD.js +0 -1078
  720. package/dist/configure-CNDv9ji5.js +0 -1252
  721. package/dist/configure-Dw-YeOYz.js +0 -2
  722. package/dist/connect-options-5yQEkag7.js +0 -699
  723. package/dist/control-auth-BZ3jwW_b.js +0 -125
  724. package/dist/control-service-CVq5rWGF.js +0 -156
  725. package/dist/conversation-id-B7oXZBrx.js +0 -235
  726. package/dist/conversation-id-DEFcpkdn.js +0 -38
  727. package/dist/conversation-runtime-Di95kTti.js +0 -31
  728. package/dist/core-BbuI1nb2.js +0 -275
  729. package/dist/cron-cli-UIR4I5Eo.js +0 -713
  730. package/dist/daemon-cli-BqTT84vc.js +0 -12
  731. package/dist/dashboard-DORB5lWl.js +0 -81
  732. package/dist/dashboard-iCpchE4h.js +0 -2
  733. package/dist/delegate-DKyLT2Oh.js +0 -64
  734. package/dist/detached-task-runtime-B3Y6ddy3.js +0 -73
  735. package/dist/devices-cli-Cyiv4_7A.js +0 -498
  736. package/dist/diagnostics-BMdHyN8V.js +0 -154
  737. package/dist/direct-dm-CgMzHsLT.js +0 -64
  738. package/dist/dispatch-DIRZA2cy.js +0 -1131
  739. package/dist/dispatch-acp-1zk6S0I_.js +0 -981
  740. package/dist/dispatch-acp-manager.runtime-C7yW8oCJ.js +0 -3
  741. package/dist/dispatch-acp.runtime-CTRthZvU.js +0 -19
  742. package/dist/doctor-device-pairing-CNyJpHYP.js +0 -307
  743. package/dist/doctor-gateway-daemon-flow-BeOcm1lk.js +0 -250
  744. package/dist/doctor-gateway-health-DHGy54St.js +0 -63
  745. package/dist/doctor-health-D8Zx1Kxy.js +0 -59
  746. package/dist/doctor-health-contributions-fMT-eUkx.js +0 -493
  747. package/dist/doctor-prompter-Cr1NyTHN.js +0 -56
  748. package/dist/doctor-workspace-status-af2Bd95y.js +0 -75
  749. package/dist/dreaming-BNV8bPzi.js +0 -1582
  750. package/dist/dreaming-narrative-DrIvIgwX.js +0 -596
  751. package/dist/embedded-gateway-stub.runtime-CB0tG8-G.js +0 -9
  752. package/dist/exec-approvals-cli-1ipccPsH.js +0 -498
  753. package/dist/fallbacks-BZsnJYQ9.js +0 -2
  754. package/dist/fallbacks-DEDU9fM9.js +0 -31
  755. package/dist/fallbacks-shared-Bi9LfHSP.js +0 -111
  756. package/dist/gateway-cli-DhMqYIPl.js +0 -1283
  757. package/dist/gateway-rpc-DPTkm_sv.js +0 -14
  758. package/dist/gateway-rpc.runtime-BVlT2xPp.js +0 -23
  759. package/dist/gateway-runtime-DNBHtXEc.js +0 -15
  760. package/dist/gateway-status-C-vkewIw.js +0 -584
  761. package/dist/gateway-tRBsGvCm.js +0 -115
  762. package/dist/genesis-tools-5NSdlOTl.js +0 -9166
  763. package/dist/genesis-tools.runtime-AZkoDSZn.js +0 -2
  764. package/dist/get-reply-CyMVoBga.js +0 -3897
  765. package/dist/get-reply-from-config.runtime-DWfXY6kp.js +0 -2
  766. package/dist/graph-users-CeE20CJr.js +0 -1337
  767. package/dist/health-C-yFJe9m.js +0 -469
  768. package/dist/health-D5WYplmn.js +0 -3
  769. package/dist/health-route-C_njQhJj.js +0 -41
  770. package/dist/health-route-otTelRS8.js +0 -2
  771. package/dist/heartbeat-runner-9IsW8Xo7.js +0 -1292
  772. package/dist/heartbeat-runner-CUhmhWre.js +0 -5
  773. package/dist/heartbeat-runner.runtime-D-jqThKI.js +0 -4
  774. package/dist/hooks-cli-g0yKwqEG.js +0 -433
  775. package/dist/image-fallbacks-BZBfLjnm.js +0 -2
  776. package/dist/image-fallbacks-DauDOGEM.js +0 -31
  777. package/dist/inbound-reply-dispatch-2dA1_zqi.js +0 -73
  778. package/dist/infra-runtime-B7wP6gFI.js +0 -39
  779. package/dist/init-CbE2VqbJ.js +0 -59
  780. package/dist/library-BPRe1zEN.js +0 -45
  781. package/dist/lifecycle-29UzYVEZ.js +0 -229
  782. package/dist/lifecycle-BCpBPa5D.js +0 -571
  783. package/dist/lifecycle.runtime-3cCF_4AU.js +0 -2
  784. package/dist/list-B9lCYvDl.js +0 -1212
  785. package/dist/list-CV1Woixl.js +0 -2
  786. package/dist/list-D0yDvc4W.js +0 -2
  787. package/dist/list-DKY6QJ2V.js +0 -131
  788. package/dist/list.probe-BXvTngHv.js +0 -419
  789. package/dist/llm-slug-generator-DFEyGish.js +0 -79
  790. package/dist/load-config-Cw7kShkf.js +0 -35
  791. package/dist/local-dispatch.runtime-C8_YEk3p.js +0 -8
  792. package/dist/logs-cli-BrAFUk9w.js +0 -265
  793. package/dist/logs-cli.runtime-CUmu5b1C.js +0 -2
  794. package/dist/main-session-restart-recovery-DsRbypTW.js +0 -206
  795. package/dist/managed-image-attachments-BjaVhVEa.js +0 -2
  796. package/dist/managed-image-attachments-Cqy3EaEE.js +0 -635
  797. package/dist/manager-Cro57kFq.js +0 -2057
  798. package/dist/manager-DzFdCc4J.js +0 -2
  799. package/dist/markdown-to-line-BZuI0r-M.js +0 -790
  800. package/dist/mcp-cli-0WTvaoIg.js +0 -725
  801. package/dist/mcp-http-CeMRRWUu.js +0 -529
  802. package/dist/memory-core-host-runtime-cli-bOlGS396.js +0 -9
  803. package/dist/message-C7RIxkrZ.js +0 -232
  804. package/dist/message-action-runner-a01PfbVY.js +0 -1407
  805. package/dist/message-action-runner-bvmUIIVf.js +0 -2
  806. package/dist/message-actions-DjS0VVCy.js +0 -143
  807. package/dist/message.gateway.runtime-nt-TPAqA.js +0 -2
  808. package/dist/models-auth-status-BS_caq_x.js +0 -217
  809. package/dist/models-cli-DUrC7-c6.js +0 -271
  810. package/dist/monitor-BZNZ1ygG.js +0 -2
  811. package/dist/monitor-BlZsUodW.js +0 -788
  812. package/dist/monitor-CO_t3tSA.js +0 -1237
  813. package/dist/monitor-CexHU09e.js +0 -1661
  814. package/dist/monitor-DBFGvWm8.js +0 -671
  815. package/dist/monitor-auth-WUJo8zX5.js +0 -207
  816. package/dist/monitor-fK0HzOeR.js +0 -1459
  817. package/dist/monitor-processing-v0Oqdm83.js +0 -1974
  818. package/dist/monitor.runtime-B4COiD9M.js +0 -2
  819. package/dist/monitor.webhook-BrXwPWIb.js +0 -180
  820. package/dist/msteams-C0lsusC7.js +0 -35
  821. package/dist/native-hook-relay-DxLDo0kf.js +0 -519
  822. package/dist/nextcloud-talk-CDxdDhEa.js +0 -17
  823. package/dist/node-cli-BNQi7BfE.js +0 -2276
  824. package/dist/nodes-cli-Dfsc0scS.js +0 -1046
  825. package/dist/nodes-utils-CetwNv8w.js +0 -84
  826. package/dist/nodes.helpers-B4Yy3f8X.js +0 -34
  827. package/dist/notify-Bg4ukXOy.js +0 -315
  828. package/dist/onboard-BlzYtu39.js +0 -70
  829. package/dist/onboard-DZqeGCuM.js +0 -2
  830. package/dist/onboard-helpers-CFVEw4kg.js +0 -204
  831. package/dist/onboard-helpers-R0vTUoOE.js +0 -6
  832. package/dist/onboard-interactive-CTiy9p3b.js +0 -24
  833. package/dist/onboard-non-interactive-SC-UFDrb.js +0 -635
  834. package/dist/onboard-remote-0UXttO3s.js +0 -2
  835. package/dist/onboard-remote-BmUiJKba.js +0 -193
  836. package/dist/onboard-skills-855xT260.js +0 -2
  837. package/dist/onboard-skills-CF2ndciI.js +0 -134
  838. package/dist/openai-http-CE7y7YiI.js +0 -500
  839. package/dist/openresponses-http-DK86gsJO.js +0 -1128
  840. package/dist/operator-approvals-client-gp0A73Qi.js +0 -68
  841. package/dist/outbound.runtime-DP8BPmuN.js +0 -2
  842. package/dist/pair-command-approve-BtOQZGwa.js +0 -44
  843. package/dist/persistent-bindings.lifecycle-B0AshYYA.js +0 -2
  844. package/dist/persistent-bindings.lifecycle-DvTYe8mB.js +0 -85
  845. package/dist/pi-embedded-Be4Onpze.js +0 -4
  846. package/dist/pi-embedded-CGy7Dtnw.js +0 -2905
  847. package/dist/pi-embedded.runtime-BWPKSg0B.js +0 -4
  848. package/dist/pi-tool-definition-adapter-Jf9zETiY.js +0 -229
  849. package/dist/pi-tools-BQA19P3-.js +0 -1057
  850. package/dist/pi-tools.before-tool-call-Cz_axNf5.js +0 -2
  851. package/dist/pi-tools.before-tool-call-DCG_FnG8.js +0 -433
  852. package/dist/plugin-PXgxA053.js +0 -12195
  853. package/dist/plugin-enabled-sOFPFfw1.js +0 -140
  854. package/dist/plugin-registration-OrraXjhN.js +0 -23
  855. package/dist/plugin-service-CD-TC2TU.js +0 -2893
  856. package/dist/policy-Bu7soiqW.js +0 -328
  857. package/dist/prepare.runtime-CVPtWq-3.js +0 -815
  858. package/dist/probe--ur8kCb3.js +0 -241
  859. package/dist/probe-Afcq8e2r.js +0 -2
  860. package/dist/probe-B1Dp2K5f.js +0 -74
  861. package/dist/probe-CQxc5e0e.js +0 -1443
  862. package/dist/probe-D7acsevr.js +0 -45
  863. package/dist/probe-DC5E8AK5.js +0 -2
  864. package/dist/probe-HDLJLw4c.js +0 -2205
  865. package/dist/program-CmLQupJ3.js +0 -111
  866. package/dist/prompt-select-styled-DWw74syc.js +0 -20
  867. package/dist/protocol-D2Tvt0kQ.js +0 -2479
  868. package/dist/provider-dispatcher-CLjWHk-J.js +0 -2
  869. package/dist/provider-dispatcher-Cmgqznex.js +0 -22
  870. package/dist/qr-cli-BpSufxl3.js +0 -349
  871. package/dist/qr-cli-CNlU9tQo.js +0 -2
  872. package/dist/reaction-runtime-api-CgscWHaw.js +0 -116
  873. package/dist/reactions-CUuxlTLk.js +0 -998
  874. package/dist/register-service-commands-CVw_0FOU.js +0 -71
  875. package/dist/register.agent-D83zxSDT.js +0 -248
  876. package/dist/register.configure-CHoOiqzO.js +0 -15
  877. package/dist/register.maintenance-CV8Y0-GO.js +0 -363
  878. package/dist/register.message-B0eHsfLQ.js +0 -329
  879. package/dist/register.onboard-CbIO5sFl.js +0 -88
  880. package/dist/register.runtime-DDACHKw5.js +0 -81
  881. package/dist/register.setup-BrDiZ87w.js +0 -150
  882. package/dist/register.status-health-sessions-3PB3gA8Z.js +0 -1215
  883. package/dist/register.subclis-CaXmqTjH.js +0 -3
  884. package/dist/register.subclis-DXHaFVAj.js +0 -29
  885. package/dist/register.subclis-core-oPBkaD2j.js +0 -249
  886. package/dist/reply-dispatch-runtime-s8iIcsY4.js +0 -13
  887. package/dist/reply-runtime-CdbXuP0k.js +0 -11
  888. package/dist/reply.runtime-B8O4Za3t.js +0 -2
  889. package/dist/restart-health-C8OVhvQ6.js +0 -2
  890. package/dist/restart-health-DdG71XEk.js +0 -202
  891. package/dist/root-help-Dat5PidP.js +0 -44
  892. package/dist/routes--OomJzMJ.js +0 -2
  893. package/dist/routes-C9ddA05X.js +0 -3341
  894. package/dist/rpc-hYySaHuW.js +0 -61
  895. package/dist/rpc.runtime-xFzxQvGM.js +0 -21
  896. package/dist/run-delivery.runtime-pD6AAEFj.js +0 -530
  897. package/dist/run-embedded.runtime-BGCrB5dE.js +0 -4
  898. package/dist/run-execution-cli.runtime-Cm0qb1Jx.js +0 -4
  899. package/dist/run-executor.runtime-DmGdXgNE.js +0 -277
  900. package/dist/run-main-BhKIYDDS.js +0 -567
  901. package/dist/run-subagent-registry.runtime-BrCnLsaJ.js +0 -2
  902. package/dist/run-wait-V95b_owe.js +0 -135
  903. package/dist/runtime-BPcw5wKu.js +0 -973
  904. package/dist/runtime-CVtzoEXz.js +0 -9
  905. package/dist/runtime-api-C7SvtCrz.js +0 -4
  906. package/dist/runtime-api-D7kMb4r-.js +0 -9
  907. package/dist/runtime-api-GmwL5agC.js +0 -9
  908. package/dist/runtime-api-NZdHXq65.js +0 -14
  909. package/dist/runtime-embedded-pi.runtime-CiFf7LLh.js +0 -2
  910. package/dist/runtime-internal-9DTzq40y.js +0 -2
  911. package/dist/runtime-options-BABByM27.js +0 -275
  912. package/dist/runtime-schema-CQFcWgw7.js +0 -28588
  913. package/dist/scan-C-7SLtpq.js +0 -523
  914. package/dist/scan-DW5OMHlc.js +0 -2
  915. package/dist/secrets-cli-BWgJDRGu.js +0 -2101
  916. package/dist/security-cli-CVScUBAh.js +0 -486
  917. package/dist/selection-BJhGK0Gg.js +0 -2
  918. package/dist/selection-C8GY4Sin.js +0 -7764
  919. package/dist/send-CH0zRgEY.js +0 -102
  920. package/dist/send-gStK80j4.js +0 -156
  921. package/dist/send.runtime-D5GAmGpy.js +0 -2
  922. package/dist/server-BamjooS9.js +0 -77
  923. package/dist/server-DOlUxe29.js +0 -13
  924. package/dist/server-context-BHGn60Nv.js +0 -2
  925. package/dist/server-context-D0DCL0Yr.js +0 -847
  926. package/dist/server-node-events-CKfJMKY6.js +0 -481
  927. package/dist/server-plugin-bootstrap-CgdqnkvH.js +0 -13176
  928. package/dist/server-plugin-bootstrap-Dqa8MSb3.js +0 -2
  929. package/dist/server-restart-sentinel-D5NKTQlr.js +0 -697
  930. package/dist/server.impl-CaBpcCte.js +0 -12894
  931. package/dist/session-kill-http-Dkyu6aeK.js +0 -110
  932. package/dist/session-reset-service-bUkkZbtS.js +0 -497
  933. package/dist/session-route-osDI35ex.js +0 -93
  934. package/dist/session-status.runtime-XUwfwKYy.js +0 -2
  935. package/dist/session-subagent-reactivation.runtime-DIrxFxhQ.js +0 -2
  936. package/dist/session-tab-registry-DMcC2sO-.js +0 -581
  937. package/dist/session-visibility-BE4lf4vj.js +0 -147
  938. package/dist/sessions-helpers-qYgG99le.js +0 -305
  939. package/dist/sessions-history-http-B6Tw9U6o.js +0 -383
  940. package/dist/sessions-patch-C2VfpT6N.js +0 -309
  941. package/dist/sessions-resolve-Dgj16ung.js +0 -174
  942. package/dist/sessions.runtime-De075L9O.js +0 -2
  943. package/dist/setup-IZ8-o496.js +0 -636
  944. package/dist/setup-api-Brg9D0Et.js +0 -29
  945. package/dist/setup-core-DBNJOXUe.js +0 -176
  946. package/dist/setup-core-YMlDym-t.js +0 -171
  947. package/dist/setup-surface-B8zw_Iry.js +0 -286
  948. package/dist/setup-surface-DiER1ybG2.js +0 -403
  949. package/dist/setup-surface-ZQJE1d97.js +0 -219
  950. package/dist/setup.finalize-DV7-ttFc.js +0 -547
  951. package/dist/setup.gateway-config-CeiELioQ.js +0 -250
  952. package/dist/shared-BddlhgtM.js +0 -198
  953. package/dist/shared-C9Fg93Nk.js +0 -76
  954. package/dist/shared-rY0Q3SUO.js +0 -121
  955. package/dist/slash-state-BXsMm6Ug.js +0 -1911
  956. package/dist/src-2iJPePTa.js +0 -3974
  957. package/dist/startup-context-L7eFlMGe.js +0 -312
  958. package/dist/status-2mHKLi_8.js +0 -2
  959. package/dist/status-4QVSRSC2.js +0 -3
  960. package/dist/status-Bpg8pFBH.js +0 -2
  961. package/dist/status-CYWc74qO.js +0 -397
  962. package/dist/status-EKvbpCYq.js +0 -190
  963. package/dist/status-all-vTJtEeTs.js +0 -498
  964. package/dist/status-json-82GOaBg2.js +0 -14
  965. package/dist/status-json-command-DE1OsrKi.js +0 -84
  966. package/dist/status-okdvu7xW.js +0 -209
  967. package/dist/status-runtime-shared--i8Snuyb.js +0 -257
  968. package/dist/status-subagents.runtime-D9r3_cd8.js +0 -18
  969. package/dist/status-text-Csq9CBHh.js +0 -237
  970. package/dist/status.gateway-connection.runtime-D4Z7cUpS.js +0 -2
  971. package/dist/status.gather-DjPsPYjd.js +0 -2
  972. package/dist/status.gather-GYO4n_GF.js +0 -292
  973. package/dist/status.runtime-BnkekTYc.js +0 -2
  974. package/dist/status.scan-CGZs2gNK.js +0 -65
  975. package/dist/status.scan-overview-CvMmc4_9.js +0 -379
  976. package/dist/status.scan.fast-json-BuLGkMEu.js +0 -132
  977. package/dist/status.scan.fast-json-DbPM0LbX.js +0 -2
  978. package/dist/status.summary-DNjIEj7M.js +0 -214
  979. package/dist/status.summary-thyeq75l.js +0 -2
  980. package/dist/subagent-announce-BXNGQkca.js +0 -351
  981. package/dist/subagent-announce-delivery-CssdaIK0.js +0 -726
  982. package/dist/subagent-announce-output-DK4zF_4-.js +0 -364
  983. package/dist/subagent-control-8V6C3iHm.js +0 -506
  984. package/dist/subagent-followup.runtime-DiBrlbMB.js +0 -68
  985. package/dist/subagent-orphan-recovery-DF-RlZbs.js +0 -305
  986. package/dist/subagent-registry-B7roWOkp.js +0 -1753
  987. package/dist/subagent-registry-C0Vew-3L.js +0 -3
  988. package/dist/subagent-spawn-DO4jFMOF.js +0 -1005
  989. package/dist/system-cli-CxuvHMmE.js +0 -59
  990. package/dist/targets-BrIxxqDm.js +0 -67
  991. package/dist/task-executor-B3GpI_R_.js +0 -360
  992. package/dist/task-owner-access-oQnQP_b3.js +0 -74
  993. package/dist/task-registry-EHbmFqsi.js +0 -2366
  994. package/dist/task-registry-delivery-runtime-DkQoAcL3.js +0 -3
  995. package/dist/task-registry-delivery-runtime-XqEQlx86.js +0 -2
  996. package/dist/task-registry.maintenance-BpI-YUOA.js +0 -2
  997. package/dist/task-registry.maintenance-D6WzGM5R.js +0 -416
  998. package/dist/testing-CY7YdvFP.js +0 -575
  999. package/dist/text-report-Cu-Drg33.js +0 -587
  1000. package/dist/tool-resolution-BIa_L_eS.js +0 -90
  1001. package/dist/tools-effective-inventory-DdF_gXu6.js +0 -152
  1002. package/dist/tools-invoke-http-Dhrho-XH.js +0 -206
  1003. package/dist/trash-DDT5xMIb.js +0 -24
  1004. package/dist/tui-cli-DqAyUsXV.js +0 -4595
  1005. package/dist/update-cli-DzUvmsG8.js +0 -1759
  1006. package/dist/upgrade-CXPGf4xq.js +0 -1226
  1007. package/dist/video-generation-task-status-Ccbv5_ls.js +0 -163
  1008. package/dist/wait-for-idle-before-flush-_1jKR3ID.js +0 -5986
  1009. package/dist/wizard-models-CQwA3L3M.js +0 -334
@@ -0,0 +1,1252 @@
1
+ import { i as formatErrorMessage } from "./errors-CufR9eHH.js";
2
+ import { c as normalizeOptionalString, f as readStringValue } from "./string-coerce-DPP_aYVc.js";
3
+ import { _ as shortenHomePath, m as resolveUserPath, x as isPlainObject } from "./utils-CWrkFsp0.js";
4
+ import { n as defaultRuntime } from "./runtime-DDkDH9fa.js";
5
+ import { t as isBlockedObjectKey } from "./prototype-keys-DQ4EgMd2.js";
6
+ import { t as formatCliCommand } from "./command-format-B3Q5KD9o.js";
7
+ import { t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-Bv2rGpO9.js";
8
+ import { n as buildGatewayInstallPlan, r as gatewayInstallErrorHint } from "./auth-install-policy-DhBNWJed.js";
9
+ import { n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CJizAliC.js";
10
+ import { c as isValidEnvSecretRefId, s as isSecretRef } from "./types.secrets-BbgGt42I.js";
11
+ import { l as resolveDefaultSecretProviderAlias } from "./ref-contract-D_WmZ91C.js";
12
+ import { a as findTailscaleBinary } from "./tailscale-CRSrnk5m.js";
13
+ import { s as normalizeStringEntries } from "./string-normalization-Bsx26hdl.js";
14
+ import { a as loadConfig, u as readConfigFileSnapshot } from "./io-lNN4Levs.js";
15
+ import { c as listChatChannels } from "./registry-CdBbOzac.js";
16
+ import { t as sanitizeTerminalText } from "./safe-text-BV3CaaRc.js";
17
+ import { v as resolveDefaultAgentWorkspaceDir } from "./workspace-CbdFyQfr.js";
18
+ import { t as resolveGatewayInstallToken } from "./gateway-install-token-C9s_fXiH.js";
19
+ import { t as randomToken } from "./random-token-CC24wPn8.js";
20
+ import { r as isNonFatalSystemdInstallProbeError } from "./systemd-BTGP8qYT.js";
21
+ import { r as resolveGatewayService, t as describeGatewayServiceRestart } from "./service-DiHWY6iI.js";
22
+ import { r as replaceConfigFile, t as ConfigMutationConflictError } from "./mutate-CEhvH2fV.js";
23
+ import "./config-DzozJ_v4.js";
24
+ import { t as resolveControlUiLinks } from "./control-ui-links-C-bMAXFT.js";
25
+ import { n as ensureAuthProfileStore } from "./store-CSG8Jr-5.js";
26
+ import { n as resolvePluginProviders } from "./providers.runtime-D_gk05Qq.js";
27
+ import "./auth-profiles-D0_-zCcS.js";
28
+ import { t as describeCodexNativeWebSearch } from "./codex-native-web-search.shared-CohF6ZAr.js";
29
+ import { t as WizardCancelledError } from "./prompts-R5pfGZbV.js";
30
+ import { n as withProgress } from "./progress-z1FWoV8k.js";
31
+ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-q-APyeiS.js";
32
+ import { t as note$1 } from "./note-BZpnQwML.js";
33
+ import { t as createClackPrompter } from "./clack-prompter-Bz5V6HwL.js";
34
+ import { n as logConfigUpdated } from "./logging-B8esngtp.js";
35
+ import { n as resolveProviderPluginChoice } from "./provider-wizard-D2EeMRlm.js";
36
+ import { t as applyPrimaryModel } from "./provider-model-primary-BGGmf2xr.js";
37
+ import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-CivBBBV7.js";
38
+ import { a as guardCancel, c as normalizeGatewayTokenInput, f as summarizeExistingConfig, m as waitForGatewayReachable, n as applyWizardMetadata, p as validateGatewayPasswordInput, r as ensureWorkspaceAndSessions, t as DEFAULT_WORKSPACE, u as probeGatewayReachable } from "./onboard-helpers-Kt5u4yMJ.js";
39
+ import { t as promptAuthChoiceGrouped } from "./auth-choice-prompt-B2g6MKkt.js";
40
+ import { n as applyAuthChoice } from "./auth-choice-_6ZqQCcj.js";
41
+ import { t as resolvePreferredProviderForAuthChoice } from "./provider-auth-choice-preference-C0VWldxI.js";
42
+ import { i as setupChannels } from "./channel-setup-dsiNz1ZD.js";
43
+ import "./onboard-channels-u18YECHW.js";
44
+ import { t as resolveSetupSecretInputString } from "./setup.secret-input-CE6yyAYZ.js";
45
+ import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-tXQuCJpa.js";
46
+ import { i as promptModelAllowlist, n as applyModelFallbacksFromSelection, r as promptDefaultModel, t as applyModelAllowlist } from "./model-picker-CCfSmnb0.js";
47
+ import { t as promptCustomApiConfig } from "./onboard-custom-C5sme9nu.js";
48
+ import { a as maybeAddTailnetOriginToControlUiAllowedOrigins, i as TAILSCALE_MISSING_BIN_NOTE_LINES, n as TAILSCALE_DOCS_LINES, r as TAILSCALE_EXPOSURE_OPTIONS, t as validateIPv4AddressInput } from "./ipv4-DNOS1x_X.js";
49
+ import { n as formatHealthCheckFailure } from "./health-format-CalfgrEt.js";
50
+ import { n as healthCommand } from "./health-Db30zfNX.js";
51
+ import { t as promptRemoteGatewayConfig } from "./onboard-remote-CQo_tQNa.js";
52
+ import { t as setupSkills } from "./onboard-skills-CeXPYTFg.js";
53
+ import path from "node:path";
54
+ import fs from "node:fs/promises";
55
+ import { isDeepStrictEqual } from "node:util";
56
+ import { confirm, intro, outro, select, text } from "@clack/prompts";
57
+ //#region src/commands/configure.shared.ts
58
+ const CONFIGURE_WIZARD_SECTIONS = [
59
+ "workspace",
60
+ "model",
61
+ "web",
62
+ "gateway",
63
+ "daemon",
64
+ "channels",
65
+ "plugins",
66
+ "skills",
67
+ "health"
68
+ ];
69
+ function parseConfigureWizardSections(raw) {
70
+ const sectionsRaw = Array.isArray(raw) ? normalizeStringEntries(raw) : [];
71
+ if (sectionsRaw.length === 0) return {
72
+ sections: [],
73
+ invalid: []
74
+ };
75
+ const invalid = sectionsRaw.filter((s) => !CONFIGURE_WIZARD_SECTIONS.includes(s));
76
+ return {
77
+ sections: sectionsRaw.filter((s) => CONFIGURE_WIZARD_SECTIONS.includes(s)),
78
+ invalid
79
+ };
80
+ }
81
+ const CONFIGURE_SECTION_OPTIONS = [
82
+ {
83
+ value: "workspace",
84
+ label: "Workspace",
85
+ hint: "Set workspace + sessions"
86
+ },
87
+ {
88
+ value: "model",
89
+ label: "Model",
90
+ hint: "Pick provider + credentials"
91
+ },
92
+ {
93
+ value: "web",
94
+ label: "Web tools",
95
+ hint: "Configure web search (Perplexity/Brave) + fetch"
96
+ },
97
+ {
98
+ value: "gateway",
99
+ label: "Gateway",
100
+ hint: "Port, bind, auth, tailscale"
101
+ },
102
+ {
103
+ value: "daemon",
104
+ label: "Daemon",
105
+ hint: "Install/manage the background service"
106
+ },
107
+ {
108
+ value: "channels",
109
+ label: "Channels",
110
+ hint: "Link WhatsApp/Telegram/etc and defaults"
111
+ },
112
+ {
113
+ value: "plugins",
114
+ label: "Plugins",
115
+ hint: "Configure plugin settings (sandbox, tools, etc.)"
116
+ },
117
+ {
118
+ value: "skills",
119
+ label: "Skills",
120
+ hint: "Install/enable workspace skills"
121
+ },
122
+ {
123
+ value: "health",
124
+ label: "Health check",
125
+ hint: "Run gateway + channel checks"
126
+ }
127
+ ];
128
+ const intro$1 = (message) => intro(stylePromptTitle(message) ?? message);
129
+ const outro$1 = (message) => outro(stylePromptTitle(message) ?? message);
130
+ const text$1 = (params) => text({
131
+ ...params,
132
+ message: stylePromptMessage(params.message)
133
+ });
134
+ const confirm$1 = (params) => confirm({
135
+ ...params,
136
+ message: stylePromptMessage(params.message)
137
+ });
138
+ const select$1 = (params) => select({
139
+ ...params,
140
+ message: stylePromptMessage(params.message),
141
+ options: params.options.map((opt) => opt.hint === void 0 ? opt : {
142
+ ...opt,
143
+ hint: stylePromptHint(opt.hint)
144
+ })
145
+ });
146
+ //#endregion
147
+ //#region src/commands/configure.channels.ts
148
+ const RESERVED_CHANNEL_CONFIG_KEYS = new Set(["defaults", "modelByChannel"]);
149
+ const DONE_VALUE = { kind: "done" };
150
+ function listConfiguredChannelRemovalChoices(cfg) {
151
+ const channels = cfg.channels;
152
+ if (!channels) return [];
153
+ const labelsById = new Map(listChatChannels().map((meta) => [meta.id, formatChannelRemovalLabel(meta.label, meta.id)]));
154
+ return Object.keys(channels).filter((id) => !RESERVED_CHANNEL_CONFIG_KEYS.has(id)).filter((id) => !isBlockedObjectKey(id)).map((id) => ({
155
+ id,
156
+ label: labelsById.get(id) ?? formatUnknownChannelRemovalLabel(id)
157
+ })).toSorted(compareChannelRemovalChoices);
158
+ }
159
+ function formatChannelRemovalLabel(label, fallback) {
160
+ return sanitizeTerminalText(label) || formatUnknownChannelRemovalLabel(fallback);
161
+ }
162
+ function formatUnknownChannelRemovalLabel(id) {
163
+ return sanitizeTerminalText(id) || "<invalid channel key>";
164
+ }
165
+ function compareChannelRemovalChoices(left, right) {
166
+ return left.label.localeCompare(right.label, void 0, {
167
+ numeric: true,
168
+ sensitivity: "base"
169
+ }) || left.id.localeCompare(right.id, void 0, {
170
+ numeric: true,
171
+ sensitivity: "base"
172
+ });
173
+ }
174
+ async function removeChannelConfigWizard(cfg, runtime) {
175
+ let next = { ...cfg };
176
+ while (true) {
177
+ const configured = listConfiguredChannelRemovalChoices(next);
178
+ if (configured.length === 0) {
179
+ note$1(["No channel config found in genesis.json.", `Tip: \`${formatCliCommand("genesis channels status")}\` shows what is configured and enabled.`].join("\n"), "Remove channel");
180
+ return next;
181
+ }
182
+ const channelOptions = configured.map((meta) => ({
183
+ value: {
184
+ kind: "channel",
185
+ id: meta.id
186
+ },
187
+ label: meta.label,
188
+ hint: "Deletes tokens + settings from config (credentials stay on disk)"
189
+ }));
190
+ const doneOption = {
191
+ value: DONE_VALUE,
192
+ label: "Done"
193
+ };
194
+ const choice = guardCancel(await select$1({
195
+ message: "Remove which channel config?",
196
+ options: [...channelOptions, doneOption]
197
+ }), runtime);
198
+ if (choice.kind === "done") return next;
199
+ const channel = choice.id;
200
+ const label = configured.find((entry) => entry.id === channel)?.label ?? channel;
201
+ if (!guardCancel(await confirm$1({
202
+ message: `Delete ${label} configuration from ${shortenHomePath(CONFIG_PATH)}?`,
203
+ initialValue: false
204
+ }), runtime)) continue;
205
+ const nextChannels = { ...next.channels };
206
+ delete nextChannels[channel];
207
+ if (Object.keys(nextChannels).length) next.channels = nextChannels;
208
+ else delete next.channels;
209
+ note$1([`${label} removed from config.`, "Note: credentials/sessions on disk are unchanged."].join("\n"), "Channel removed");
210
+ }
211
+ }
212
+ //#endregion
213
+ //#region src/commands/configure.daemon.ts
214
+ async function maybeInstallDaemon(params) {
215
+ const service = resolveGatewayService();
216
+ let loaded = false;
217
+ try {
218
+ loaded = await service.isLoaded({ env: process.env });
219
+ } catch (error) {
220
+ if (!isNonFatalSystemdInstallProbeError(error)) throw error;
221
+ loaded = false;
222
+ }
223
+ let shouldCheckLinger = false;
224
+ let shouldInstall = true;
225
+ let daemonRuntime = params.daemonRuntime ?? "node";
226
+ if (loaded) {
227
+ const action = guardCancel(await select$1({
228
+ message: "Gateway service already installed",
229
+ options: [
230
+ {
231
+ value: "restart",
232
+ label: "Restart"
233
+ },
234
+ {
235
+ value: "reinstall",
236
+ label: "Reinstall"
237
+ },
238
+ {
239
+ value: "skip",
240
+ label: "Skip"
241
+ }
242
+ ]
243
+ }), params.runtime);
244
+ if (action === "restart") {
245
+ await withProgress({
246
+ label: "Gateway service",
247
+ indeterminate: true,
248
+ delayMs: 0
249
+ }, async (progress) => {
250
+ progress.setLabel("Restarting Gateway service…");
251
+ const restartResult = await service.restart({
252
+ env: process.env,
253
+ stdout: process.stdout
254
+ });
255
+ progress.setLabel(describeGatewayServiceRestart("Gateway", restartResult).progressMessage);
256
+ });
257
+ shouldCheckLinger = true;
258
+ shouldInstall = false;
259
+ }
260
+ if (action === "skip") return;
261
+ if (action === "reinstall") await withProgress({
262
+ label: "Gateway service",
263
+ indeterminate: true,
264
+ delayMs: 0
265
+ }, async (progress) => {
266
+ progress.setLabel("Uninstalling Gateway service…");
267
+ await service.uninstall({
268
+ env: process.env,
269
+ stdout: process.stdout
270
+ });
271
+ progress.setLabel("Gateway service uninstalled.");
272
+ });
273
+ }
274
+ if (shouldInstall) {
275
+ let installError = null;
276
+ if (!params.daemonRuntime) if (GATEWAY_DAEMON_RUNTIME_OPTIONS.length === 1) daemonRuntime = GATEWAY_DAEMON_RUNTIME_OPTIONS[0]?.value ?? "node";
277
+ else daemonRuntime = guardCancel(await select$1({
278
+ message: "Gateway service runtime",
279
+ options: GATEWAY_DAEMON_RUNTIME_OPTIONS,
280
+ initialValue: DEFAULT_GATEWAY_DAEMON_RUNTIME
281
+ }), params.runtime);
282
+ await withProgress({
283
+ label: "Gateway service",
284
+ indeterminate: true,
285
+ delayMs: 0
286
+ }, async (progress) => {
287
+ progress.setLabel("Preparing Gateway service…");
288
+ const cfg = loadConfig();
289
+ const tokenResolution = await resolveGatewayInstallToken({
290
+ config: cfg,
291
+ env: process.env
292
+ });
293
+ for (const warning of tokenResolution.warnings) note$1(warning, "Gateway");
294
+ if (tokenResolution.unavailableReason) {
295
+ installError = [
296
+ "Gateway install blocked:",
297
+ tokenResolution.unavailableReason,
298
+ "Fix gateway auth config/token input and rerun configure."
299
+ ].join(" ");
300
+ progress.setLabel("Gateway service install blocked.");
301
+ return;
302
+ }
303
+ const { programArguments, workingDirectory, environment } = await buildGatewayInstallPlan({
304
+ env: process.env,
305
+ port: params.port,
306
+ runtime: daemonRuntime,
307
+ warn: (message, title) => note$1(message, title),
308
+ config: cfg
309
+ });
310
+ progress.setLabel("Installing Gateway service…");
311
+ try {
312
+ await service.install({
313
+ env: process.env,
314
+ stdout: process.stdout,
315
+ programArguments,
316
+ workingDirectory,
317
+ environment
318
+ });
319
+ progress.setLabel("Gateway service installed.");
320
+ } catch (err) {
321
+ installError = formatErrorMessage(err);
322
+ progress.setLabel("Gateway service install failed.");
323
+ }
324
+ });
325
+ if (installError) {
326
+ note$1("Gateway service install failed: " + installError, "Gateway");
327
+ note$1(gatewayInstallErrorHint(), "Gateway");
328
+ return;
329
+ }
330
+ shouldCheckLinger = true;
331
+ }
332
+ if (shouldCheckLinger) await ensureSystemdUserLingerInteractive({
333
+ runtime: params.runtime,
334
+ prompter: {
335
+ confirm: async (p) => guardCancel(await confirm$1(p), params.runtime),
336
+ note: note$1
337
+ },
338
+ reason: "Linux installs use a systemd user service. Without lingering, systemd stops the user session on logout/idle and kills the Gateway.",
339
+ requireConfirm: true
340
+ });
341
+ }
342
+ //#endregion
343
+ //#region src/commands/configure.gateway-auth.ts
344
+ /** Reject undefined, empty, and common JS string-coercion artifacts for token auth. */
345
+ function sanitizeTokenValue(value) {
346
+ if (typeof value !== "string") return;
347
+ const trimmed = value.trim();
348
+ if (!trimmed || trimmed === "undefined" || trimmed === "null") return;
349
+ return trimmed;
350
+ }
351
+ function resolveProviderChoiceModelAllowlist(params) {
352
+ return resolveProviderPluginChoice({
353
+ providers: resolvePluginProviders({
354
+ config: params.config,
355
+ workspaceDir: params.workspaceDir,
356
+ env: params.env,
357
+ mode: "setup",
358
+ installBundledRuntimeDeps: false
359
+ }),
360
+ choice: params.authChoice
361
+ })?.wizard?.modelAllowlist;
362
+ }
363
+ function buildGatewayAuthConfig(params) {
364
+ const allowTailscale = params.existing?.allowTailscale;
365
+ const base = {};
366
+ if (typeof allowTailscale === "boolean") base.allowTailscale = allowTailscale;
367
+ if (params.mode === "token") {
368
+ if (isSecretRef(params.token)) return {
369
+ ...base,
370
+ mode: "token",
371
+ token: params.token
372
+ };
373
+ const token = sanitizeTokenValue(params.token) ?? randomToken();
374
+ return {
375
+ ...base,
376
+ mode: "token",
377
+ token
378
+ };
379
+ }
380
+ if (params.mode === "password") {
381
+ const password = params.password?.trim();
382
+ return {
383
+ ...base,
384
+ mode: "password",
385
+ ...password && { password }
386
+ };
387
+ }
388
+ if (params.mode === "trusted-proxy") {
389
+ if (!params.trustedProxy) throw new Error("trustedProxy config is required when mode is trusted-proxy");
390
+ return {
391
+ ...base,
392
+ mode: "trusted-proxy",
393
+ trustedProxy: params.trustedProxy
394
+ };
395
+ }
396
+ return base;
397
+ }
398
+ async function promptAuthConfig(cfg, runtime, prompter) {
399
+ let next = cfg;
400
+ let authChoice = "skip";
401
+ let preferredProvider;
402
+ while (true) {
403
+ authChoice = await promptAuthChoiceGrouped({
404
+ prompter,
405
+ store: ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }),
406
+ includeSkip: true,
407
+ config: next,
408
+ workspaceDir: resolveDefaultAgentWorkspaceDir(),
409
+ env: process.env,
410
+ installBundledRuntimeDeps: false
411
+ });
412
+ preferredProvider = authChoice === "skip" ? void 0 : await resolvePreferredProviderForAuthChoice({
413
+ choice: authChoice,
414
+ config: next,
415
+ workspaceDir: resolveDefaultAgentWorkspaceDir(),
416
+ env: process.env,
417
+ installBundledRuntimeDeps: false
418
+ });
419
+ if (authChoice === "custom-api-key") {
420
+ next = (await promptCustomApiConfig({
421
+ prompter,
422
+ runtime,
423
+ config: next
424
+ })).config;
425
+ break;
426
+ }
427
+ if (authChoice === "skip") {
428
+ const modelSelection = await promptDefaultModel({
429
+ config: next,
430
+ prompter,
431
+ allowKeep: true,
432
+ ignoreAllowlist: true,
433
+ includeProviderPluginSetups: true,
434
+ preferredProvider,
435
+ workspaceDir: resolveDefaultAgentWorkspaceDir(),
436
+ runtime
437
+ });
438
+ if (modelSelection.config) next = modelSelection.config;
439
+ if (modelSelection.model) next = applyPrimaryModel(next, modelSelection.model);
440
+ break;
441
+ }
442
+ const applied = await applyAuthChoice({
443
+ authChoice,
444
+ config: next,
445
+ prompter,
446
+ runtime,
447
+ setDefaultModel: true,
448
+ preserveExistingDefaultModel: true
449
+ });
450
+ next = applied.config;
451
+ if (applied.retrySelection) continue;
452
+ break;
453
+ }
454
+ if (authChoice !== "custom-api-key") {
455
+ const modelAllowlist = resolveProviderChoiceModelAllowlist({
456
+ authChoice,
457
+ config: next,
458
+ workspaceDir: resolveDefaultAgentWorkspaceDir(),
459
+ env: process.env
460
+ });
461
+ const allowlistSelection = await promptModelAllowlist({
462
+ config: next,
463
+ prompter,
464
+ allowedKeys: modelAllowlist?.allowedKeys,
465
+ initialSelections: modelAllowlist?.initialSelections,
466
+ message: modelAllowlist?.message,
467
+ preferredProvider
468
+ });
469
+ if (allowlistSelection.models) {
470
+ next = applyModelAllowlist(next, allowlistSelection.models, { scopeKeys: allowlistSelection.scopeKeys });
471
+ next = applyModelFallbacksFromSelection(next, allowlistSelection.models);
472
+ }
473
+ }
474
+ return next;
475
+ }
476
+ //#endregion
477
+ //#region src/commands/configure.gateway.ts
478
+ async function promptGatewayConfig(cfg, runtime) {
479
+ const portRaw = guardCancel(await text$1({
480
+ message: "Gateway port",
481
+ initialValue: String(resolveGatewayPort(cfg)),
482
+ validate: (value) => Number.isFinite(Number(value)) ? void 0 : "Invalid port"
483
+ }), runtime);
484
+ const port = Number.parseInt(portRaw, 10);
485
+ let bind = guardCancel(await select$1({
486
+ message: "Gateway bind mode",
487
+ options: [
488
+ {
489
+ value: "loopback",
490
+ label: "Loopback (Local only)",
491
+ hint: "Bind to 127.0.0.1 - secure, local-only access"
492
+ },
493
+ {
494
+ value: "tailnet",
495
+ label: "Tailnet (Tailscale IP)",
496
+ hint: "Bind to your Tailscale IP only (100.x.x.x)"
497
+ },
498
+ {
499
+ value: "auto",
500
+ label: "Auto (Loopback → LAN)",
501
+ hint: "Prefer loopback; fall back to all interfaces if unavailable"
502
+ },
503
+ {
504
+ value: "lan",
505
+ label: "LAN (All interfaces)",
506
+ hint: "Bind to 0.0.0.0 - accessible from anywhere on your network"
507
+ },
508
+ {
509
+ value: "custom",
510
+ label: "Custom IP",
511
+ hint: "Specify a specific IP address, with 0.0.0.0 fallback if unavailable"
512
+ }
513
+ ]
514
+ }), runtime);
515
+ let customBindHost;
516
+ if (bind === "custom") customBindHost = readStringValue(guardCancel(await text$1({
517
+ message: "Custom IP address",
518
+ placeholder: "192.168.1.100",
519
+ validate: validateIPv4AddressInput
520
+ }), runtime));
521
+ let authMode = guardCancel(await select$1({
522
+ message: "Gateway auth",
523
+ options: [
524
+ {
525
+ value: "token",
526
+ label: "Token",
527
+ hint: "Recommended default"
528
+ },
529
+ {
530
+ value: "password",
531
+ label: "Password"
532
+ },
533
+ {
534
+ value: "trusted-proxy",
535
+ label: "Trusted Proxy",
536
+ hint: "Behind reverse proxy (Pomerium, Caddy, Traefik, etc.)"
537
+ }
538
+ ],
539
+ initialValue: "token"
540
+ }), runtime);
541
+ let tailscaleMode = guardCancel(await select$1({
542
+ message: "Tailscale exposure",
543
+ options: [...TAILSCALE_EXPOSURE_OPTIONS]
544
+ }), runtime);
545
+ let tailscaleBin = null;
546
+ if (tailscaleMode !== "off") {
547
+ tailscaleBin = await findTailscaleBinary();
548
+ if (!tailscaleBin) note$1(TAILSCALE_MISSING_BIN_NOTE_LINES.join("\n"), "Tailscale Warning");
549
+ }
550
+ let tailscaleResetOnExit = false;
551
+ if (tailscaleMode !== "off") {
552
+ note$1(TAILSCALE_DOCS_LINES.join("\n"), "Tailscale");
553
+ tailscaleResetOnExit = guardCancel(await confirm$1({
554
+ message: "Reset Tailscale serve/funnel on exit?",
555
+ initialValue: false
556
+ }), runtime);
557
+ }
558
+ if (tailscaleMode !== "off" && bind !== "loopback") {
559
+ note$1("Tailscale requires bind=loopback. Adjusting bind to loopback.", "Note");
560
+ bind = "loopback";
561
+ }
562
+ if (tailscaleMode === "funnel" && authMode !== "password") {
563
+ note$1("Tailscale funnel requires password auth.", "Note");
564
+ authMode = "password";
565
+ }
566
+ if (authMode === "trusted-proxy" && tailscaleMode !== "off") {
567
+ note$1("Trusted proxy auth is incompatible with Tailscale serve/funnel. Disabling Tailscale.", "Note");
568
+ tailscaleMode = "off";
569
+ tailscaleResetOnExit = false;
570
+ }
571
+ let gatewayToken;
572
+ let gatewayTokenForCalls;
573
+ let gatewayPassword;
574
+ let trustedProxyConfig;
575
+ let trustedProxies;
576
+ let next = cfg;
577
+ if (authMode === "token") if (guardCancel(await select$1({
578
+ message: "Gateway token source",
579
+ options: [{
580
+ value: "plaintext",
581
+ label: "Generate/store plaintext token",
582
+ hint: "Default"
583
+ }, {
584
+ value: "ref",
585
+ label: "Use SecretRef",
586
+ hint: "Store an env-backed reference instead of plaintext"
587
+ }],
588
+ initialValue: "plaintext"
589
+ }), runtime) === "ref") {
590
+ const envVarName = normalizeOptionalString(guardCancel(await text$1({
591
+ message: "Gateway token env var",
592
+ initialValue: "GENESIS_GATEWAY_TOKEN",
593
+ placeholder: "GENESIS_GATEWAY_TOKEN",
594
+ validate: (value) => {
595
+ const candidate = normalizeOptionalString(value) ?? "";
596
+ if (!isValidEnvSecretRefId(candidate)) return "Use an env var name like GENESIS_GATEWAY_TOKEN.";
597
+ if (!process.env[candidate]?.trim()) return `Environment variable "${candidate}" is missing or empty in this session.`;
598
+ }
599
+ }), runtime)) ?? "";
600
+ gatewayToken = {
601
+ source: "env",
602
+ provider: resolveDefaultSecretProviderAlias(cfg, "env", { preferFirstProviderForSource: true }),
603
+ id: envVarName
604
+ };
605
+ note$1(`Validated ${envVarName}. Genesis will store a token SecretRef.`, "Gateway token");
606
+ } else {
607
+ gatewayTokenForCalls = normalizeGatewayTokenInput(guardCancel(await text$1({
608
+ message: "Gateway token (blank to generate)",
609
+ initialValue: randomToken()
610
+ }), runtime)) || randomToken();
611
+ gatewayToken = gatewayTokenForCalls;
612
+ }
613
+ if (authMode === "password") gatewayPassword = normalizeOptionalString(guardCancel(await text$1({
614
+ message: "Gateway password",
615
+ validate: validateGatewayPasswordInput
616
+ }), runtime)) ?? "";
617
+ if (authMode === "trusted-proxy") {
618
+ note$1([
619
+ "Trusted proxy mode: Genesis trusts user identity from a reverse proxy.",
620
+ "The proxy must authenticate users and pass identity via headers.",
621
+ "Only requests from specified proxy IPs will be trusted.",
622
+ "",
623
+ "Common use cases: Pomerium, Caddy + OAuth, Traefik + forward auth",
624
+ "Docs: https://genesis.pixelzx.com/docs/gateway/trusted-proxy-auth"
625
+ ].join("\n"), "Trusted Proxy Auth");
626
+ const userHeader = guardCancel(await text$1({
627
+ message: "Header containing user identity",
628
+ placeholder: "x-forwarded-user",
629
+ initialValue: "x-forwarded-user",
630
+ validate: (value) => value?.trim() ? void 0 : "User header is required"
631
+ }), runtime);
632
+ const requiredHeadersRaw = guardCancel(await text$1({
633
+ message: "Required headers (comma-separated, optional)",
634
+ placeholder: "x-forwarded-proto,x-forwarded-host"
635
+ }), runtime);
636
+ const requiredHeaders = requiredHeadersRaw ? normalizeStringEntries(requiredHeadersRaw.split(",")) : [];
637
+ const allowUsersRaw = guardCancel(await text$1({
638
+ message: "Allowed users (comma-separated, blank = all authenticated users)",
639
+ placeholder: "nick@example.com,admin@company.com"
640
+ }), runtime);
641
+ const allowUsers = allowUsersRaw ? normalizeStringEntries(allowUsersRaw.split(",")) : [];
642
+ trustedProxies = normalizeStringEntries(guardCancel(await text$1({
643
+ message: "Trusted proxy IPs (comma-separated)",
644
+ placeholder: "10.0.1.10,192.168.1.5",
645
+ validate: (value) => {
646
+ if (!normalizeOptionalString(value)) return "At least one trusted proxy IP is required";
647
+ }
648
+ }), runtime).split(","));
649
+ trustedProxyConfig = {
650
+ userHeader: normalizeOptionalString(userHeader) ?? "",
651
+ requiredHeaders: requiredHeaders.length > 0 ? requiredHeaders : void 0,
652
+ allowUsers: allowUsers.length > 0 ? allowUsers : void 0
653
+ };
654
+ }
655
+ const authConfig = buildGatewayAuthConfig({
656
+ existing: next.gateway?.auth,
657
+ mode: authMode,
658
+ token: gatewayToken,
659
+ password: gatewayPassword,
660
+ trustedProxy: trustedProxyConfig
661
+ });
662
+ next = {
663
+ ...next,
664
+ gateway: {
665
+ ...next.gateway,
666
+ mode: "local",
667
+ port,
668
+ bind,
669
+ auth: authConfig,
670
+ ...customBindHost && { customBindHost },
671
+ ...trustedProxies && { trustedProxies },
672
+ tailscale: {
673
+ ...next.gateway?.tailscale,
674
+ mode: tailscaleMode,
675
+ resetOnExit: tailscaleResetOnExit
676
+ }
677
+ }
678
+ };
679
+ next = await maybeAddTailnetOriginToControlUiAllowedOrigins({
680
+ config: next,
681
+ tailscaleMode,
682
+ tailscaleBin
683
+ });
684
+ return {
685
+ config: next,
686
+ port,
687
+ token: gatewayTokenForCalls
688
+ };
689
+ }
690
+ //#endregion
691
+ //#region src/commands/configure.wizard.ts
692
+ const GATEWAY_HINT_PROBE_TIMEOUT_MS = 300;
693
+ let setupPluginConfigModulePromise;
694
+ function loadSetupPluginConfigModule() {
695
+ setupPluginConfigModulePromise ??= import("./setup.plugin-config-BprbzOqU.js");
696
+ return setupPluginConfigModulePromise;
697
+ }
698
+ function mergeWizardConfigOntoLatest(current, base, next) {
699
+ if (isDeepStrictEqual(next, base)) return current;
700
+ if (isPlainObject(current) && isPlainObject(base) && isPlainObject(next)) {
701
+ const merged = { ...current };
702
+ const keys = new Set([
703
+ ...Object.keys(current),
704
+ ...Object.keys(base),
705
+ ...Object.keys(next)
706
+ ]);
707
+ for (const key of keys) {
708
+ const mergedValue = mergeWizardConfigOntoLatest(current[key], base[key], next[key]);
709
+ if (mergedValue === void 0) delete merged[key];
710
+ else merged[key] = mergedValue;
711
+ }
712
+ return merged;
713
+ }
714
+ return structuredClone(next);
715
+ }
716
+ async function resolveGatewaySecretInputForWizard(params) {
717
+ try {
718
+ return await resolveSetupSecretInputString({
719
+ config: params.cfg,
720
+ value: params.value,
721
+ path: params.path,
722
+ env: process.env
723
+ });
724
+ } catch {
725
+ return;
726
+ }
727
+ }
728
+ async function runGatewayHealthCheck(params) {
729
+ const localLinks = resolveControlUiLinks({
730
+ bind: params.cfg.gateway?.bind ?? "loopback",
731
+ port: params.port,
732
+ customBindHost: params.cfg.gateway?.customBindHost,
733
+ basePath: void 0
734
+ });
735
+ const remoteUrl = params.cfg.gateway?.remote?.url?.trim();
736
+ const wsUrl = params.cfg.gateway?.mode === "remote" && remoteUrl ? remoteUrl : localLinks.wsUrl;
737
+ const configuredToken = await resolveGatewaySecretInputForWizard({
738
+ cfg: params.cfg,
739
+ value: params.cfg.gateway?.auth?.token,
740
+ path: "gateway.auth.token"
741
+ });
742
+ const configuredPassword = await resolveGatewaySecretInputForWizard({
743
+ cfg: params.cfg,
744
+ value: params.cfg.gateway?.auth?.password,
745
+ path: "gateway.auth.password"
746
+ });
747
+ await waitForGatewayReachable({
748
+ url: wsUrl,
749
+ token: process.env.GENESIS_GATEWAY_TOKEN ?? configuredToken,
750
+ password: process.env.GENESIS_GATEWAY_PASSWORD ?? configuredPassword,
751
+ deadlineMs: 15e3
752
+ });
753
+ try {
754
+ await healthCommand({
755
+ json: false,
756
+ timeoutMs: 1e4
757
+ }, params.runtime);
758
+ } catch (err) {
759
+ params.runtime.error(formatHealthCheckFailure(err));
760
+ note$1([
761
+ "Docs:",
762
+ "https://genesis.pixelzx.com/docs/gateway/health",
763
+ "https://genesis.pixelzx.com/docs/gateway/troubleshooting"
764
+ ].join("\n"), "Health check help");
765
+ }
766
+ }
767
+ async function promptConfigureSection(runtime, hasSelection) {
768
+ return guardCancel(await select$1({
769
+ message: "Select sections to configure",
770
+ options: [...CONFIGURE_SECTION_OPTIONS, {
771
+ value: "__continue",
772
+ label: "Continue",
773
+ hint: hasSelection ? "Done" : "Skip for now"
774
+ }],
775
+ initialValue: CONFIGURE_SECTION_OPTIONS[0]?.value
776
+ }), runtime);
777
+ }
778
+ async function promptChannelMode(runtime) {
779
+ return guardCancel(await select$1({
780
+ message: "Channels",
781
+ options: [{
782
+ value: "configure",
783
+ label: "Configure/link",
784
+ hint: "Add/update channels; disable unselected accounts"
785
+ }, {
786
+ value: "remove",
787
+ label: "Remove channel config",
788
+ hint: "Delete channel tokens/settings from genesis.json"
789
+ }],
790
+ initialValue: "configure"
791
+ }), runtime);
792
+ }
793
+ async function promptWebToolsConfig(nextConfig, runtime, prompter) {
794
+ const existingSearch = nextConfig.tools?.web?.search;
795
+ const existingFetch = nextConfig.tools?.web?.fetch;
796
+ const { resolveSearchProviderOptions, setupSearch } = await import("./onboard-search-Bs-QULsO.js");
797
+ const { isCodexNativeWebSearchRelevant } = await import("./codex-native-web-search-XkEsVjTm.js");
798
+ const searchProviderOptions = resolveSearchProviderOptions(nextConfig);
799
+ note$1([
800
+ "Web search lets your agent look things up online using the `web_search` tool.",
801
+ "Choose a managed provider now, and Codex-capable models can also use native Codex web search.",
802
+ "Docs: https://genesis.pixelzx.com/docs/tools/web"
803
+ ].join("\n"), "Web search");
804
+ const enableSearch = guardCancel(await confirm$1({
805
+ message: "Enable web_search?",
806
+ initialValue: existingSearch?.enabled ?? searchProviderOptions.length > 0
807
+ }), runtime);
808
+ let nextSearch = {
809
+ ...existingSearch,
810
+ enabled: enableSearch
811
+ };
812
+ let workingConfig = nextConfig;
813
+ if (enableSearch) {
814
+ const codexRelevant = isCodexNativeWebSearchRelevant({ config: nextConfig });
815
+ let configureManagedProvider = true;
816
+ if (codexRelevant) {
817
+ note$1([
818
+ "Codex-capable models can optionally use native Codex web search.",
819
+ "Managed web_search still controls non-Codex models.",
820
+ "If no managed provider is configured, non-Codex models still rely on provider auto-detect and may have no search available.",
821
+ ...describeCodexNativeWebSearch(nextConfig) ? [describeCodexNativeWebSearch(nextConfig)] : ["Recommended mode: cached."]
822
+ ].join("\n"), "Codex native search");
823
+ if (guardCancel(await confirm$1({
824
+ message: "Enable native Codex web search for Codex-capable models?",
825
+ initialValue: existingSearch?.openaiCodex?.enabled === true
826
+ }), runtime)) {
827
+ const codexMode = guardCancel(await select$1({
828
+ message: "Codex native web search mode",
829
+ options: [{
830
+ value: "cached",
831
+ label: "cached (recommended)",
832
+ hint: "Uses cached web content"
833
+ }, {
834
+ value: "live",
835
+ label: "live",
836
+ hint: "Allows live external web access"
837
+ }],
838
+ initialValue: existingSearch?.openaiCodex?.mode ?? "cached"
839
+ }), runtime);
840
+ nextSearch = {
841
+ ...nextSearch,
842
+ openaiCodex: {
843
+ ...existingSearch?.openaiCodex,
844
+ enabled: true,
845
+ mode: codexMode
846
+ }
847
+ };
848
+ configureManagedProvider = guardCancel(await confirm$1({
849
+ message: "Configure or change a managed web search provider now?",
850
+ initialValue: Boolean(existingSearch?.provider)
851
+ }), runtime);
852
+ } else nextSearch = {
853
+ ...nextSearch,
854
+ openaiCodex: {
855
+ ...existingSearch?.openaiCodex,
856
+ enabled: false
857
+ }
858
+ };
859
+ }
860
+ if (searchProviderOptions.length === 0) {
861
+ if (configureManagedProvider) note$1([
862
+ "No web search providers are currently available under this plugin policy.",
863
+ "Enable plugins or remove deny rules, then rerun configure.",
864
+ "Docs: https://genesis.pixelzx.com/docs/tools/web"
865
+ ].join("\n"), "Web search");
866
+ if (nextSearch.openaiCodex?.enabled !== true) nextSearch = {
867
+ ...existingSearch,
868
+ enabled: false
869
+ };
870
+ } else if (configureManagedProvider) {
871
+ workingConfig = await setupSearch(workingConfig, runtime, prompter);
872
+ nextSearch = {
873
+ ...workingConfig.tools?.web?.search,
874
+ enabled: workingConfig.tools?.web?.search?.provider ? true : existingSearch?.enabled,
875
+ openaiCodex: {
876
+ ...existingSearch?.openaiCodex,
877
+ ...nextSearch.openaiCodex
878
+ }
879
+ };
880
+ }
881
+ }
882
+ const enableFetch = guardCancel(await confirm$1({
883
+ message: "Enable web_fetch (keyless HTTP fetch)?",
884
+ initialValue: existingFetch?.enabled ?? true
885
+ }), runtime);
886
+ const nextFetch = {
887
+ ...existingFetch,
888
+ enabled: enableFetch
889
+ };
890
+ return {
891
+ ...workingConfig,
892
+ tools: {
893
+ ...workingConfig.tools,
894
+ web: {
895
+ ...workingConfig.tools?.web,
896
+ search: nextSearch,
897
+ fetch: nextFetch
898
+ }
899
+ }
900
+ };
901
+ }
902
+ async function runConfigureWizard(opts, runtime = defaultRuntime) {
903
+ try {
904
+ intro$1(opts.command === "update" ? "Genesis update wizard" : "Genesis configure");
905
+ const prompter = createClackPrompter();
906
+ const snapshot = await readConfigFileSnapshot();
907
+ let currentBaseHash = snapshot.hash;
908
+ const baseConfig = snapshot.valid ? snapshot.sourceConfig ?? snapshot.config : {};
909
+ if (snapshot.exists) {
910
+ const title = snapshot.valid ? "Existing config detected" : "Invalid config";
911
+ note$1(summarizeExistingConfig(baseConfig), title);
912
+ if (!snapshot.valid && snapshot.issues.length > 0) note$1([
913
+ ...snapshot.issues.map((iss) => `- ${iss.path}: ${iss.message}`),
914
+ "",
915
+ "Docs: https://genesis.pixelzx.com/docs/gateway/configuration"
916
+ ].join("\n"), "Config issues");
917
+ if (!snapshot.valid) {
918
+ outro$1(`Config invalid. Run \`${formatCliCommand("genesis doctor")}\` to repair it, then re-run configure.`);
919
+ runtime.exit(1);
920
+ return;
921
+ }
922
+ }
923
+ const localUrl = "ws://127.0.0.1:18789";
924
+ const remoteUrl = normalizeOptionalString(baseConfig.gateway?.remote?.url) ?? "";
925
+ const localProbePromise = (async () => {
926
+ const [baseLocalProbeToken, baseLocalProbePassword] = await Promise.all([resolveGatewaySecretInputForWizard({
927
+ cfg: baseConfig,
928
+ value: baseConfig.gateway?.auth?.token,
929
+ path: "gateway.auth.token"
930
+ }), resolveGatewaySecretInputForWizard({
931
+ cfg: baseConfig,
932
+ value: baseConfig.gateway?.auth?.password,
933
+ path: "gateway.auth.password"
934
+ })]);
935
+ return probeGatewayReachable({
936
+ url: localUrl,
937
+ token: process.env.GENESIS_GATEWAY_TOKEN ?? baseLocalProbeToken,
938
+ password: process.env.GENESIS_GATEWAY_PASSWORD ?? baseLocalProbePassword,
939
+ timeoutMs: GATEWAY_HINT_PROBE_TIMEOUT_MS
940
+ });
941
+ })();
942
+ const remoteProbePromise = remoteUrl ? (async () => {
943
+ return probeGatewayReachable({
944
+ url: remoteUrl,
945
+ token: await resolveGatewaySecretInputForWizard({
946
+ cfg: baseConfig,
947
+ value: baseConfig.gateway?.remote?.token,
948
+ path: "gateway.remote.token"
949
+ }),
950
+ timeoutMs: GATEWAY_HINT_PROBE_TIMEOUT_MS
951
+ });
952
+ })() : Promise.resolve(null);
953
+ const [localProbe, remoteProbe] = await Promise.all([localProbePromise, remoteProbePromise]);
954
+ const mode = guardCancel(await select$1({
955
+ message: "Where will the Gateway run?",
956
+ options: [{
957
+ value: "local",
958
+ label: "Local (this machine)",
959
+ hint: localProbe.ok ? `Gateway reachable (${localUrl})` : `No gateway detected (${localUrl})`
960
+ }, {
961
+ value: "remote",
962
+ label: "Remote (info-only)",
963
+ hint: !remoteUrl ? "No remote URL configured yet" : remoteProbe?.ok ? `Gateway reachable (${remoteUrl})` : `Configured but unreachable (${remoteUrl})`
964
+ }]
965
+ }), runtime);
966
+ if (mode === "remote") {
967
+ let remoteConfig = await promptRemoteGatewayConfig(baseConfig, prompter);
968
+ remoteConfig = applyWizardMetadata(remoteConfig, {
969
+ command: opts.command,
970
+ mode
971
+ });
972
+ await replaceConfigFile({
973
+ nextConfig: remoteConfig,
974
+ ...currentBaseHash !== void 0 ? { baseHash: currentBaseHash } : {}
975
+ });
976
+ currentBaseHash = void 0;
977
+ logConfigUpdated(runtime);
978
+ outro$1("Remote gateway configured.");
979
+ return;
980
+ }
981
+ let nextConfig = { ...baseConfig };
982
+ let mergeBaseConfig = structuredClone(baseConfig);
983
+ let didSetGatewayMode = false;
984
+ if (nextConfig.gateway?.mode !== "local") {
985
+ nextConfig = {
986
+ ...nextConfig,
987
+ gateway: {
988
+ ...nextConfig.gateway,
989
+ mode: "local"
990
+ }
991
+ };
992
+ didSetGatewayMode = true;
993
+ }
994
+ let workspaceDir = nextConfig.agents?.defaults?.workspace ?? baseConfig.agents?.defaults?.workspace ?? DEFAULT_WORKSPACE;
995
+ let gatewayPort = resolveGatewayPort(baseConfig);
996
+ const persistConfig = async () => {
997
+ nextConfig = applyWizardMetadata(nextConfig, {
998
+ command: opts.command,
999
+ mode
1000
+ });
1001
+ const maxRetries = 3;
1002
+ for (let attempt = 0; attempt < maxRetries; attempt++) try {
1003
+ await replaceConfigFile({
1004
+ nextConfig,
1005
+ ...currentBaseHash !== void 0 ? { baseHash: currentBaseHash } : {}
1006
+ });
1007
+ currentBaseHash = (await readConfigFileSnapshot()).hash ?? void 0;
1008
+ mergeBaseConfig = structuredClone(nextConfig);
1009
+ logConfigUpdated(runtime);
1010
+ return;
1011
+ } catch (err) {
1012
+ if (err instanceof ConfigMutationConflictError && attempt < maxRetries - 1) {
1013
+ const freshSnapshot = await readConfigFileSnapshot();
1014
+ currentBaseHash = freshSnapshot.hash ?? void 0;
1015
+ nextConfig = mergeWizardConfigOntoLatest(freshSnapshot.valid ? freshSnapshot.sourceConfig ?? freshSnapshot.config : {}, mergeBaseConfig, nextConfig);
1016
+ continue;
1017
+ }
1018
+ throw err;
1019
+ }
1020
+ };
1021
+ const configureWorkspace = async () => {
1022
+ workspaceDir = resolveUserPath(normalizeOptionalString(guardCancel(await text$1({
1023
+ message: "Workspace directory",
1024
+ initialValue: workspaceDir
1025
+ }), runtime) ?? "") || DEFAULT_WORKSPACE);
1026
+ if (!snapshot.exists) {
1027
+ const indicators = [
1028
+ "MEMORY.md",
1029
+ "memory",
1030
+ ".git"
1031
+ ].map((name) => path.join(workspaceDir, name));
1032
+ if ((await Promise.all(indicators.map(async (candidate) => {
1033
+ try {
1034
+ await fs.access(candidate);
1035
+ return true;
1036
+ } catch {
1037
+ return false;
1038
+ }
1039
+ }))).some(Boolean)) note$1([`Existing workspace detected at ${workspaceDir}`, "Existing files are preserved. Missing templates may be created, never overwritten."].join("\n"), "Existing workspace");
1040
+ }
1041
+ nextConfig = {
1042
+ ...nextConfig,
1043
+ agents: {
1044
+ ...nextConfig.agents,
1045
+ defaults: {
1046
+ ...nextConfig.agents?.defaults,
1047
+ workspace: workspaceDir
1048
+ }
1049
+ }
1050
+ };
1051
+ await ensureWorkspaceAndSessions(workspaceDir, runtime);
1052
+ };
1053
+ const configureChannelsSection = async () => {
1054
+ if (await promptChannelMode(runtime) === "configure") nextConfig = await setupChannels(nextConfig, runtime, prompter, {
1055
+ allowDisable: true,
1056
+ allowSignalInstall: true,
1057
+ deferStatusUntilSelection: true,
1058
+ skipConfirm: true,
1059
+ skipStatusNote: true
1060
+ });
1061
+ else nextConfig = await removeChannelConfigWizard(nextConfig, runtime);
1062
+ };
1063
+ const promptDaemonPort = async () => {
1064
+ const portInput = guardCancel(await text$1({
1065
+ message: "Gateway port for service install",
1066
+ initialValue: String(gatewayPort),
1067
+ validate: (value) => Number.isFinite(Number(value)) ? void 0 : "Invalid port"
1068
+ }), runtime);
1069
+ gatewayPort = Number.parseInt(portInput, 10);
1070
+ };
1071
+ if (opts.sections) {
1072
+ const selected = opts.sections;
1073
+ if (!selected || selected.length === 0) {
1074
+ outro$1("No changes selected.");
1075
+ return;
1076
+ }
1077
+ if (selected.includes("workspace")) await configureWorkspace();
1078
+ if (selected.includes("model")) nextConfig = await promptAuthConfig(nextConfig, runtime, prompter);
1079
+ if (selected.includes("web")) nextConfig = await promptWebToolsConfig(nextConfig, runtime, prompter);
1080
+ if (selected.includes("gateway")) {
1081
+ const gateway = await promptGatewayConfig(nextConfig, runtime);
1082
+ nextConfig = gateway.config;
1083
+ gatewayPort = gateway.port;
1084
+ }
1085
+ if (selected.includes("channels")) await configureChannelsSection();
1086
+ if (selected.includes("plugins")) {
1087
+ const { configurePluginConfig } = await loadSetupPluginConfigModule();
1088
+ nextConfig = await configurePluginConfig({
1089
+ config: nextConfig,
1090
+ prompter,
1091
+ workspaceDir: resolveUserPath(workspaceDir)
1092
+ });
1093
+ }
1094
+ if (selected.includes("skills")) {
1095
+ const wsDir = resolveUserPath(workspaceDir);
1096
+ nextConfig = await setupSkills(nextConfig, wsDir, runtime, prompter);
1097
+ }
1098
+ await persistConfig();
1099
+ if (selected.includes("daemon")) {
1100
+ if (!selected.includes("gateway")) await promptDaemonPort();
1101
+ await maybeInstallDaemon({
1102
+ runtime,
1103
+ port: gatewayPort
1104
+ });
1105
+ }
1106
+ if (selected.includes("health")) await runGatewayHealthCheck({
1107
+ cfg: nextConfig,
1108
+ runtime,
1109
+ port: gatewayPort
1110
+ });
1111
+ } else {
1112
+ let ranSection = false;
1113
+ let didConfigureGateway = false;
1114
+ while (true) {
1115
+ const choice = await promptConfigureSection(runtime, ranSection);
1116
+ if (choice === "__continue") break;
1117
+ ranSection = true;
1118
+ if (choice === "workspace") {
1119
+ await configureWorkspace();
1120
+ await persistConfig();
1121
+ }
1122
+ if (choice === "model") {
1123
+ nextConfig = await promptAuthConfig(nextConfig, runtime, prompter);
1124
+ await persistConfig();
1125
+ }
1126
+ if (choice === "web") {
1127
+ nextConfig = await promptWebToolsConfig(nextConfig, runtime, prompter);
1128
+ await persistConfig();
1129
+ }
1130
+ if (choice === "gateway") {
1131
+ const gateway = await promptGatewayConfig(nextConfig, runtime);
1132
+ nextConfig = gateway.config;
1133
+ gatewayPort = gateway.port;
1134
+ didConfigureGateway = true;
1135
+ await persistConfig();
1136
+ }
1137
+ if (choice === "channels") {
1138
+ await configureChannelsSection();
1139
+ await persistConfig();
1140
+ }
1141
+ if (choice === "plugins") {
1142
+ const { configurePluginConfig } = await loadSetupPluginConfigModule();
1143
+ nextConfig = await configurePluginConfig({
1144
+ config: nextConfig,
1145
+ prompter,
1146
+ workspaceDir: resolveUserPath(workspaceDir)
1147
+ });
1148
+ await persistConfig();
1149
+ }
1150
+ if (choice === "skills") {
1151
+ const wsDir = resolveUserPath(workspaceDir);
1152
+ nextConfig = await setupSkills(nextConfig, wsDir, runtime, prompter);
1153
+ await persistConfig();
1154
+ }
1155
+ if (choice === "daemon") {
1156
+ if (!didConfigureGateway) await promptDaemonPort();
1157
+ await maybeInstallDaemon({
1158
+ runtime,
1159
+ port: gatewayPort
1160
+ });
1161
+ }
1162
+ if (choice === "health") await runGatewayHealthCheck({
1163
+ cfg: nextConfig,
1164
+ runtime,
1165
+ port: gatewayPort
1166
+ });
1167
+ }
1168
+ if (!ranSection) {
1169
+ if (didSetGatewayMode) {
1170
+ await persistConfig();
1171
+ outro$1("Gateway mode set to local.");
1172
+ return;
1173
+ }
1174
+ outro$1("No changes selected.");
1175
+ return;
1176
+ }
1177
+ }
1178
+ const controlUiAssets = await ensureControlUiAssetsBuilt(runtime);
1179
+ if (!controlUiAssets.ok && controlUiAssets.message) runtime.error(controlUiAssets.message);
1180
+ const links = resolveControlUiLinks({
1181
+ bind: nextConfig.gateway?.bind ?? "loopback",
1182
+ port: gatewayPort,
1183
+ customBindHost: nextConfig.gateway?.customBindHost,
1184
+ basePath: nextConfig.gateway?.controlUi?.basePath
1185
+ });
1186
+ const newPassword = process.env.GENESIS_GATEWAY_PASSWORD ?? await resolveGatewaySecretInputForWizard({
1187
+ cfg: nextConfig,
1188
+ value: nextConfig.gateway?.auth?.password,
1189
+ path: "gateway.auth.password"
1190
+ });
1191
+ const oldPassword = process.env.GENESIS_GATEWAY_PASSWORD ?? await resolveGatewaySecretInputForWizard({
1192
+ cfg: baseConfig,
1193
+ value: baseConfig.gateway?.auth?.password,
1194
+ path: "gateway.auth.password"
1195
+ });
1196
+ const token = process.env.GENESIS_GATEWAY_TOKEN ?? await resolveGatewaySecretInputForWizard({
1197
+ cfg: nextConfig,
1198
+ value: nextConfig.gateway?.auth?.token,
1199
+ path: "gateway.auth.token"
1200
+ });
1201
+ let gatewayProbe = await probeGatewayReachable({
1202
+ url: links.wsUrl,
1203
+ token,
1204
+ password: newPassword
1205
+ });
1206
+ if (!gatewayProbe.ok && newPassword !== oldPassword && oldPassword) gatewayProbe = await probeGatewayReachable({
1207
+ url: links.wsUrl,
1208
+ token,
1209
+ password: oldPassword
1210
+ });
1211
+ const gatewayStatusLine = gatewayProbe.ok ? "Gateway: reachable" : `Gateway: not detected${gatewayProbe.detail ? ` (${gatewayProbe.detail})` : ""}`;
1212
+ note$1([
1213
+ `Web UI: ${links.httpUrl}`,
1214
+ `Gateway WS: ${links.wsUrl}`,
1215
+ gatewayStatusLine,
1216
+ "Docs: https://genesis.pixelzx.com/docs/web/control-ui"
1217
+ ].join("\n"), "Control UI");
1218
+ outro$1("Configure complete.");
1219
+ } catch (err) {
1220
+ if (err instanceof WizardCancelledError) {
1221
+ runtime.exit(1);
1222
+ return;
1223
+ }
1224
+ throw err;
1225
+ }
1226
+ }
1227
+ //#endregion
1228
+ //#region src/commands/configure.commands.ts
1229
+ async function configureCommand(runtime = defaultRuntime) {
1230
+ await runConfigureWizard({ command: "configure" }, runtime);
1231
+ }
1232
+ async function configureCommandWithSections(sections, runtime = defaultRuntime) {
1233
+ await runConfigureWizard({
1234
+ command: "configure",
1235
+ sections
1236
+ }, runtime);
1237
+ }
1238
+ async function configureCommandFromSectionsArg(rawSections, runtime = defaultRuntime) {
1239
+ const { sections, invalid } = parseConfigureWizardSections(rawSections);
1240
+ if (sections.length === 0) {
1241
+ await configureCommand(runtime);
1242
+ return;
1243
+ }
1244
+ if (invalid.length > 0) {
1245
+ runtime.error(`Invalid --section: ${invalid.join(", ")}. Expected one of: ${CONFIGURE_WIZARD_SECTIONS.join(", ")}.`);
1246
+ runtime.exit(1);
1247
+ return;
1248
+ }
1249
+ await configureCommandWithSections(sections, runtime);
1250
+ }
1251
+ //#endregion
1252
+ export { buildGatewayAuthConfig as a, runConfigureWizard as i, configureCommandFromSectionsArg as n, CONFIGURE_WIZARD_SECTIONS as o, configureCommandWithSections as r, parseConfigureWizardSections as s, configureCommand as t };