remoteclaw 0.1.0-next.cd6ddde → 0.1.0-next.cf9ccbe

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 (1054) hide show
  1. package/dist/accounts-79XhjwAj.js +32 -0
  2. package/dist/accounts-B1M3fOxL.js +272 -0
  3. package/dist/accounts-BwbvnKsW.js +205 -0
  4. package/dist/accounts-CIVjmTg9.js +270 -0
  5. package/dist/accounts-D1awQXKu.js +36 -0
  6. package/dist/accounts-DHkGVGUR.js +36 -0
  7. package/dist/accounts-P7cmIXUM.js +206 -0
  8. package/dist/accounts-XFgBY644.js +47 -0
  9. package/dist/accounts-_ZuNC5bz.js +47 -0
  10. package/dist/ack-reactions-BGJ9Vigf.js +621 -0
  11. package/dist/ack-reactions-Diu9O24z.js +621 -0
  12. package/dist/acp-cli-BwZ-va2P.js +1316 -0
  13. package/dist/acp-cli-eVKByz-j.js +1311 -0
  14. package/dist/active-listener--jrUO-8L.js +37 -0
  15. package/dist/active-listener-C7SyMcNY.js +37 -0
  16. package/dist/agent-BAxK2KQW.js +688 -0
  17. package/dist/agent-Dd5Yfhmq.js +687 -0
  18. package/dist/agent-helpers-5F0tdxud.js +400 -0
  19. package/dist/agent-scope-BA1HP4K6.js +114 -0
  20. package/dist/agent-scope-CAQLm3LP.js +116 -0
  21. package/dist/agents-2VlLHxv-.js +754 -0
  22. package/dist/agents.config-CmyzLYqW.js +116 -0
  23. package/dist/agents.config-DerBqRzk.js +116 -0
  24. package/dist/audio-ClIuKwkl.js +43 -0
  25. package/dist/audio-DqlIYYTb.js +43 -0
  26. package/dist/audit-Cn0cNCE4.js +3114 -0
  27. package/dist/audit-DXY4NHBC.js +3114 -0
  28. package/dist/auth-B-QK8JhI.js +315 -0
  29. package/dist/auth-C1zx1O24.js +314 -0
  30. package/dist/auth-DDmNYVMW.js +448 -0
  31. package/dist/auth-DH1wEw0w.js +448 -0
  32. package/dist/banner-CBWZhANO.js +294 -0
  33. package/dist/binaries-CYwLdubd.js +13 -0
  34. package/dist/bindings-DFAFatwT.js +69 -0
  35. package/dist/bindings-GUKIzFCp.js +69 -0
  36. package/dist/bonjour-discovery-AQMJqY4V.js +378 -0
  37. package/dist/bonjour-discovery-BLcPWHFJ.js +378 -0
  38. package/dist/boot/handler.js +28 -28
  39. package/dist/browser-cli-8Dv5ogFT.js +1690 -0
  40. package/dist/browser-cli-wNLo8SOy.js +1694 -0
  41. package/dist/build-info.json +3 -3
  42. package/dist/call-BTHzKFbN.js +518 -0
  43. package/dist/call-D_NchaCs.js +517 -0
  44. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  45. package/dist/catalog-DgpN5jxU.js +186 -0
  46. package/dist/catalog-k056Nh93.js +186 -0
  47. package/dist/channel-account-context-BHIy71Yh.js +133 -0
  48. package/dist/channel-account-context-DXU_-EkJ.js +133 -0
  49. package/dist/channel-activity-BatlvP_U.js +292 -0
  50. package/dist/channel-activity-BhT7NQ_v.js +94 -0
  51. package/dist/channel-activity-CvjEwpJz.js +94 -0
  52. package/dist/channel-options-BCccA2WC.js +32 -0
  53. package/dist/channel-options-VPR_pNyS.js +33 -0
  54. package/dist/channel-selection-AH6_y6RS.js +51 -0
  55. package/dist/channel-selection-ovohyJQZ.js +51 -0
  56. package/dist/channel-web-APDaQ_wp.js +2134 -0
  57. package/dist/channel-web-BW_YuNlT.js +2132 -0
  58. package/dist/channels-cli-BBkHQtBI.js +1440 -0
  59. package/dist/channels-cli-CKcOwL-Q.js +1436 -0
  60. package/dist/channels-status-issues-BbYNzwLp.js +18 -0
  61. package/dist/channels-status-issues-DRybAijg.js +18 -0
  62. package/dist/chat-envelope-AJFUAuBM.js +248 -0
  63. package/dist/chat-envelope-BrfcPlDM.js +248 -0
  64. package/dist/chrome-Bv2UtAMQ.js +1732 -0
  65. package/dist/chrome-C6Vc_7su.js +1733 -0
  66. package/dist/chunk-BzVoFUZL.js +341 -0
  67. package/dist/clack-prompter-C6mBTOzE.js +122 -0
  68. package/dist/clack-prompter-DKcYqv3o.js +121 -0
  69. package/dist/cleanup-utils-Cb-leJcy.js +94 -0
  70. package/dist/cli/daemon-cli.js +1 -1
  71. package/dist/cli-Cs1n6-eD.js +135 -0
  72. package/dist/cli-Di3p1tLN.js +131 -0
  73. package/dist/client-B6h7bgbF.js +2311 -0
  74. package/dist/client-CMtdm9Ii.js +2311 -0
  75. package/dist/clipboard-A06eV_5C.js +31 -0
  76. package/dist/clipboard-DQBl3coj.js +31 -0
  77. package/dist/command-format-BiiNHkWG.js +18 -0
  78. package/dist/command-format-Dntg_tnC.js +32 -0
  79. package/dist/command-logger/handler.js +1 -1
  80. package/dist/command-registry-BV2MH_iw.js +215 -0
  81. package/dist/commands-D93TXYhv.js +41 -0
  82. package/dist/commands-UD7V7QC9.js +41 -0
  83. package/dist/commands-registry-CCbTtSSK.js +891 -0
  84. package/dist/commands-registry-De8JhZLG.js +890 -0
  85. package/dist/common-D4fL3S2m.js +156 -0
  86. package/dist/common-DXNisGxw.js +156 -0
  87. package/dist/completion-cli-319xyosV.js +452 -0
  88. package/dist/completion-cli-B6Zimnek.js +452 -0
  89. package/dist/config-BTH7fB_v.js +3345 -0
  90. package/dist/config-DwuBnd6D.js +3347 -0
  91. package/dist/config-cli-c_Itt86J.js +247 -0
  92. package/dist/config-cli-rcMB3A3B.js +243 -0
  93. package/dist/config-guard-BcT7soTj.js +92 -0
  94. package/dist/config-guard-Bqak3bDc.js +75 -0
  95. package/dist/config-validation-CHEjSJ5K.js +18 -0
  96. package/dist/config-validation-CvgqLhyG.js +18 -0
  97. package/dist/configure-Cb3bbYnh.js +891 -0
  98. package/dist/configure-R2gWNv5y.js +889 -0
  99. package/dist/control-auth-DrGYtMJM.js +397 -0
  100. package/dist/control-auth-KY4Qdr2I.js +397 -0
  101. package/dist/control-ui-assets-DO1L6M0S.js +186 -0
  102. package/dist/control-ui-assets-S_TLo6Fs.js +186 -0
  103. package/dist/conversation-label-CMOfgCVl.js +36 -0
  104. package/dist/cron-cli-C7h_hLHu.js +495 -0
  105. package/dist/cron-cli-DTNg0Uvl.js +499 -0
  106. package/dist/daemon-cli-BlJS9zWM.js +737 -0
  107. package/dist/daemon-cli-Cfc1yszp.js +735 -0
  108. package/dist/daemon-cli.js +124 -1071
  109. package/dist/daemon-install-BbBLuLWg.js +60 -0
  110. package/dist/daemon-install-WEBvqVOj.js +56 -0
  111. package/dist/daemon-install-helpers-BVtPC2TK.js +504 -0
  112. package/dist/daemon-install-helpers-DVr51zvE.js +504 -0
  113. package/dist/deliver-EB272zWh.js +481 -0
  114. package/dist/deliver-iGD_woru.js +481 -0
  115. package/dist/delivery-queue-BDvalA10.js +244 -0
  116. package/dist/delivery-queue-BimvYz5E.js +244 -0
  117. package/dist/devices-cli-BXCOsNFc.js +323 -0
  118. package/dist/devices-cli-CHGdYfrz.js +319 -0
  119. package/dist/diagnostics-BzzhTQzK.js +35 -0
  120. package/dist/diagnostics-DILtxtcE.js +35 -0
  121. package/dist/directory-cli-COS40yI9.js +221 -0
  122. package/dist/directory-cli-Cb5j1JTC.js +225 -0
  123. package/dist/dispatcher-BUqxh_mA.js +174 -0
  124. package/dist/dispatcher-By-KZRWZ.js +173 -0
  125. package/dist/dm-policy-shared-BCp9_z3w.js +22 -0
  126. package/dist/dm-policy-shared-DgeKqjOu.js +22 -0
  127. package/dist/dns-cli-B8yyXB2N.js +203 -0
  128. package/dist/dns-cli-DAkTk-gM.js +199 -0
  129. package/dist/dock-B0bIIDS3.js +906 -0
  130. package/dist/dock-C3PzQ6CS.js +907 -0
  131. package/dist/doctor-completion-B_Zp4fZk.js +92 -0
  132. package/dist/doctor-completion-CZ1P5laQ.js +92 -0
  133. package/dist/doctor-config-flow-BDDsR2J1.js +978 -0
  134. package/dist/doctor-config-flow-CwFFRUic.js +979 -0
  135. package/dist/enable-C3I9dWel.js +59 -0
  136. package/dist/enable-DnwKeWnR.js +59 -0
  137. package/dist/entry.js +62 -6
  138. package/dist/env-DyyqmxSM.js +60 -0
  139. package/dist/errors-0dfGxeYQ.js +35 -0
  140. package/dist/errors-C1kDByVU.js +35 -0
  141. package/dist/exec-CAk1dxq_.js +164 -0
  142. package/dist/exec-epNpA1aU.js +164 -0
  143. package/dist/extensionAPI.js +263 -1088
  144. package/dist/fetch-BMQq41sB.js +281 -0
  145. package/dist/fetch-Cky99wYB.js +281 -0
  146. package/dist/fetch-D3tw4B4n.js +67 -0
  147. package/dist/fetch-Dgm9ZHFm.js +67 -0
  148. package/dist/file-lock-DWH0TfVu.js +107 -0
  149. package/dist/file-lock-DXW9h9ek.js +107 -0
  150. package/dist/fs-safe-BjSd07M4.js +115 -0
  151. package/dist/fs-safe-aWIhCWlb.js +125 -0
  152. package/dist/gateway-cli-BLeY_1DX.js +24154 -0
  153. package/dist/gateway-cli-Cu4vwhmi.js +24150 -0
  154. package/dist/gateway-rpc-B92CH0D3.js +28 -0
  155. package/dist/gateway-rpc-DZNlWapO.js +28 -0
  156. package/dist/gmail-setup-utils-CKyh29_R.js +422 -0
  157. package/dist/gmail-setup-utils-DquflkMR.js +423 -0
  158. package/dist/health-BYl7T-4m.js +1417 -0
  159. package/dist/health-DdviISKg.js +1414 -0
  160. package/dist/health-format-BE5TK5bs.js +28 -0
  161. package/dist/heartbeat-visibility-BO3iRpB6.js +125 -0
  162. package/dist/heartbeat-visibility-Cwp4TrTv.js +125 -0
  163. package/dist/help-format-D3JhWp1E.js +17 -0
  164. package/dist/hook-runner-global-C1thol1d.js +527 -0
  165. package/dist/hooks-cli-BKS9uZ0H.js +1221 -0
  166. package/dist/hooks-cli-FLWcCr9q.js +1217 -0
  167. package/dist/image-ops-CX41n0v5.js +354 -0
  168. package/dist/image-ops-DSL3eFfQ.js +354 -0
  169. package/dist/import-BSFgt760.js +604 -0
  170. package/dist/import-Da1CHJJg.js +606 -0
  171. package/dist/inbound-context-a5bzQvRt.js +68 -0
  172. package/dist/index.js +127 -101
  173. package/dist/inspect-BEpFbi0c.js +286 -0
  174. package/dist/inspect-BeNNpWna.js +286 -0
  175. package/dist/installs-CH7Qq_m_.js +319 -0
  176. package/dist/installs-CcM8H2YA.js +319 -0
  177. package/dist/ipv4-DNo9AFDu.js +46 -0
  178. package/dist/ipv4-VfoVR5uR.js +46 -0
  179. package/dist/ir-BPwP8hIc.js +972 -0
  180. package/dist/lifecycle-core-5Zxqwa6V.js +476 -0
  181. package/dist/lifecycle-core-C1bGeLby.js +474 -0
  182. package/dist/links-CtGBIrG8.js +15 -0
  183. package/dist/loader-BoP3JA-r.js +22411 -0
  184. package/dist/loader-DXbpue-L.js +22414 -0
  185. package/dist/logger-ASsO5Nz-.js +49 -0
  186. package/dist/logging-Cd9y2AdQ.js +20 -0
  187. package/dist/login-B2UXzgaB.js +61 -0
  188. package/dist/login-BEFL3xY9.js +62 -0
  189. package/dist/login-qr-C7wAz2fe.js +329 -0
  190. package/dist/login-qr-DWpUP1Ud.js +325 -0
  191. package/dist/logs-cli-CAcd-pXA.js +240 -0
  192. package/dist/logs-cli-D7Bzarht.js +236 -0
  193. package/dist/markdown-tables-BBNUZp4n.js +29 -0
  194. package/dist/markdown-tables-NgPcfXoF.js +29 -0
  195. package/dist/media-4-qOIjO-.js +971 -0
  196. package/dist/media-DTwJhAbE.js +9481 -0
  197. package/dist/message-action-names-BsNTjuBE.js +2520 -0
  198. package/dist/message-action-names-ocKcq8_3.js +2520 -0
  199. package/dist/message-channel-CtcVHawF.js +91 -0
  200. package/dist/mime-CAqaK3kp.js +146 -0
  201. package/dist/mime-ViuhRuMM.js +146 -0
  202. package/dist/net-DSkFMHJ8.js +225 -0
  203. package/dist/net-DTqfFYzt.js +225 -0
  204. package/dist/node-cli-BeXU67eQ.js +1458 -0
  205. package/dist/node-cli-i2aCtnmM.js +1462 -0
  206. package/dist/node-service-RyMlWp8N.js +67 -0
  207. package/dist/node-service-TL9b6Qfz.js +67 -0
  208. package/dist/nodes-cli-CtqnXBMD.js +1346 -0
  209. package/dist/nodes-cli-DgQU3LrG.js +1350 -0
  210. package/dist/nodes-screen-B7HJugJ0.js +250 -0
  211. package/dist/nodes-screen-nCRd71Mk.js +250 -0
  212. package/dist/note-B6142LyJ.js +92 -0
  213. package/dist/note-D-EI0czq.js +92 -0
  214. package/dist/npm-registry-spec-PPyRXSpx.js +786 -0
  215. package/dist/npm-registry-spec-uUmDWe6v.js +786 -0
  216. package/dist/npm-resolution-BC1LqCm2.js +86 -0
  217. package/dist/npm-resolution-DhlhUmRF.js +86 -0
  218. package/dist/onboard-CHowLVEG.js +647 -0
  219. package/dist/onboard-D_eCnKjt.js +649 -0
  220. package/dist/onboard-auth-cNtb3FTP.js +211 -0
  221. package/dist/onboard-auth-gwz-0mZ6.js +207 -0
  222. package/dist/onboard-channels-CFsUIDWq.js +2618 -0
  223. package/dist/onboard-channels-ZCML5CWb.js +2619 -0
  224. package/dist/onboard-helpers-8afRV_Tm.js +364 -0
  225. package/dist/onboard-helpers-DTRrJLj-.js +363 -0
  226. package/dist/onboard-remote-CFkvVAYg.js +127 -0
  227. package/dist/onboard-remote-JfBnmK70.js +127 -0
  228. package/dist/onboarding-DIxNghyi.js +586 -0
  229. package/dist/onboarding-Dhh0bjrb.js +588 -0
  230. package/dist/onboarding.finalize-5uipJuOl.js +403 -0
  231. package/dist/onboarding.finalize-De4etQul.js +405 -0
  232. package/dist/onboarding.gateway-config-DolBTXWT.js +196 -0
  233. package/dist/onboarding.gateway-config-rJkIamlG.js +202 -0
  234. package/dist/outbound-CPMaDtgC.js +220 -0
  235. package/dist/outbound-CYSuCMiW.js +221 -0
  236. package/dist/outbound-attachment-Ci02LXoq.js +18 -0
  237. package/dist/outbound-attachment-CqZ7Qc_o.js +18 -0
  238. package/dist/outbound-attachment-CuqWdsdV.js +18 -0
  239. package/dist/pairing-cli-B9JKvvST.js +126 -0
  240. package/dist/pairing-cli-C4HrfIHe.js +130 -0
  241. package/dist/pairing-labels-CBmGQ31P.js +9 -0
  242. package/dist/pairing-labels-D0xwC7Xb.js +9 -0
  243. package/dist/pairing-store-BoF0g-iN.js +459 -0
  244. package/dist/pairing-store-CseXj-5p.js +460 -0
  245. package/dist/path-env-CPZbb7me.js +89 -0
  246. package/dist/path-safety-BFE0XmGC.js +14 -0
  247. package/dist/path-safety-BJ8ge6Ho.js +14 -0
  248. package/dist/paths-DHuXVC00.js +229 -0
  249. package/dist/plugin-auto-enable-B_9J1XED.js +302 -0
  250. package/dist/plugin-auto-enable-DghjlFCL.js +301 -0
  251. package/dist/plugin-registry-68h2T8vi.js +33 -0
  252. package/dist/plugin-registry-BitdVPb4.js +33 -0
  253. package/dist/plugin-sdk/agents/subagent-registry.store.d.ts +0 -1
  254. package/dist/plugin-sdk/auto-reply/reply/agent-runner-utils.d.ts +0 -11
  255. package/dist/plugin-sdk/auto-reply/reply/commands-status.d.ts +1 -4
  256. package/dist/plugin-sdk/auto-reply/reply/commands-subagents/shared.d.ts +1 -1
  257. package/dist/plugin-sdk/auto-reply/reply/commands-types.d.ts +1 -10
  258. package/dist/plugin-sdk/auto-reply/reply/directive-handling.levels.d.ts +1 -4
  259. package/dist/plugin-sdk/auto-reply/reply/directive-handling.params.d.ts +1 -8
  260. package/dist/plugin-sdk/auto-reply/reply/directive-handling.parse.d.ts +1 -23
  261. package/dist/plugin-sdk/auto-reply/reply/directive-handling.persist.d.ts +0 -2
  262. package/dist/plugin-sdk/auto-reply/reply/directive-handling.shared.d.ts +0 -22
  263. package/dist/plugin-sdk/auto-reply/reply/directives.d.ts +2 -29
  264. package/dist/plugin-sdk/auto-reply/reply/get-reply-directives-apply.d.ts +0 -8
  265. package/dist/plugin-sdk/auto-reply/reply/get-reply-directives-utils.d.ts +0 -1
  266. package/dist/plugin-sdk/auto-reply/reply/get-reply-directives.d.ts +1 -15
  267. package/dist/plugin-sdk/auto-reply/reply/get-reply-inline-actions.d.ts +1 -8
  268. package/dist/plugin-sdk/auto-reply/reply/get-reply-run.d.ts +1 -11
  269. package/dist/plugin-sdk/auto-reply/reply/queue/types.d.ts +1 -13
  270. package/dist/plugin-sdk/auto-reply/reply.d.ts +1 -1
  271. package/dist/plugin-sdk/auto-reply/status.d.ts +1 -4
  272. package/dist/plugin-sdk/auto-reply/templating.d.ts +0 -4
  273. package/dist/plugin-sdk/auto-reply/thinking.d.ts +0 -4
  274. package/dist/plugin-sdk/channels/dock.d.ts +1 -2
  275. package/dist/plugin-sdk/channels/plugins/types.adapters.d.ts +0 -6
  276. package/dist/plugin-sdk/channels/plugins/types.d.ts +1 -1
  277. package/dist/plugin-sdk/channels/plugins/types.plugin.d.ts +1 -2
  278. package/dist/plugin-sdk/commands/onboard-helpers.d.ts +0 -1
  279. package/dist/plugin-sdk/commands/onboard-types.d.ts +0 -2
  280. package/dist/plugin-sdk/config/legacy.migrations.d.ts +2 -1
  281. package/dist/plugin-sdk/config/legacy.shared.d.ts +0 -9
  282. package/dist/plugin-sdk/config/sessions/types.d.ts +0 -7
  283. package/dist/plugin-sdk/config/types.agent-defaults.d.ts +0 -8
  284. package/dist/plugin-sdk/config/types.base.d.ts +0 -1
  285. package/dist/plugin-sdk/config/types.messages.d.ts +0 -4
  286. package/dist/plugin-sdk/config/types.tools.d.ts +0 -73
  287. package/dist/plugin-sdk/config/types.tts.d.ts +2 -1
  288. package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +0 -4
  289. package/dist/plugin-sdk/config/zod-schema.agent-runtime.d.ts +7 -197
  290. package/dist/plugin-sdk/config/zod-schema.agents.d.ts +2 -10
  291. package/dist/plugin-sdk/config/zod-schema.core.d.ts +6 -234
  292. package/dist/plugin-sdk/config/zod-schema.d.ts +98 -301
  293. package/dist/plugin-sdk/config/zod-schema.providers-core.d.ts +148 -160
  294. package/dist/plugin-sdk/config/zod-schema.providers-whatsapp.d.ts +12 -12
  295. package/dist/plugin-sdk/config/zod-schema.providers.d.ts +88 -96
  296. package/dist/plugin-sdk/config/zod-schema.session.d.ts +4 -10
  297. package/dist/plugin-sdk/gateway/protocol/index.d.ts +11 -16
  298. package/dist/plugin-sdk/gateway/protocol/schema/sessions.d.ts +0 -5
  299. package/dist/plugin-sdk/gateway/session-utils.types.d.ts +0 -1
  300. package/dist/plugin-sdk/index.js +295 -1236
  301. package/dist/plugin-sdk/line/config-schema.d.ts +4 -4
  302. package/dist/plugin-sdk/logging/levels.d.ts +1 -1
  303. package/dist/plugin-sdk/middleware/cli-runtime-base.d.ts +6 -0
  304. package/dist/plugin-sdk/middleware/runtimes/claude.d.ts +6 -0
  305. package/dist/plugin-sdk/middleware/runtimes/codex.d.ts +2 -2
  306. package/dist/plugin-sdk/middleware/runtimes/gemini.d.ts +8 -1
  307. package/dist/plugin-sdk/plugin-sdk/index.d.ts +3 -1
  308. package/dist/plugin-sdk/plugins/manifest-registry.d.ts +2 -0
  309. package/dist/plugin-sdk/plugins/manifest.d.ts +4 -4
  310. package/dist/plugin-sdk/plugins/registry.d.ts +18 -0
  311. package/dist/plugin-sdk/plugins/types.d.ts +4 -0
  312. package/dist/plugin-sdk/slack/manifest.d.ts +17 -0
  313. package/dist/plugin-sdk/stt/preflight.d.ts +2 -4
  314. package/dist/plugin-sdk/stt/providers/index.d.ts +1 -1
  315. package/dist/plugin-sdk/stt/providers/shared.d.ts +20 -1
  316. package/dist/plugin-sdk/tts/providers/edge.d.ts +2 -0
  317. package/dist/plugin-sdk/tts/providers/elevenlabs.d.ts +2 -0
  318. package/dist/plugin-sdk/tts/providers/index.d.ts +4 -0
  319. package/dist/plugin-sdk/tts/providers/openai.d.ts +2 -0
  320. package/dist/plugin-sdk/tts/tts.d.ts +13 -5
  321. package/dist/plugin-sdk/tts/types.d.ts +21 -0
  322. package/dist/plugins-BviLFPLV.js +255 -0
  323. package/dist/plugins-CaudBUbl.js +254 -0
  324. package/dist/plugins-cli-CsLhphNr.js +803 -0
  325. package/dist/plugins-cli-CujSP9NS.js +807 -0
  326. package/dist/ports-BtuzUQHl.js +370 -0
  327. package/dist/ports-CMcHia07.js +96 -0
  328. package/dist/ports-gRBeuUtp.js +316 -0
  329. package/dist/preflight-Bq8rimP-.js +667 -0
  330. package/dist/preflight-DyYbEp9X.js +667 -0
  331. package/dist/program-G8cGMPuz.js +250 -0
  332. package/dist/program-context-B9BwrbSx.js +474 -0
  333. package/dist/progress-BcwxtM9Q.js +124 -0
  334. package/dist/prompt-DtWGd43j.js +21 -0
  335. package/dist/prompt-select-styled-CpOsmtZi.js +1672 -0
  336. package/dist/prompt-select-styled-D-qBqrEJ.js +1669 -0
  337. package/dist/prompt-style-BpUMhEHC.js +9 -0
  338. package/dist/provider-auth-B7QgxlKt.js +187 -0
  339. package/dist/provider-auth-j-EQvvIk.js +187 -0
  340. package/dist/provider-dispatcher-Bx6CaIoV.js +660 -0
  341. package/dist/provider-dispatcher-DhkvjhO5.js +659 -0
  342. package/dist/push-apns--nEiZmEN.js +711 -0
  343. package/dist/push-apns-BtS6B6lb.js +713 -0
  344. package/dist/pw-ai-BpCsXF-x.js +1908 -0
  345. package/dist/pw-ai-ud_Kbn5S.js +1911 -0
  346. package/dist/qr-cli-BCeVLGfz.js +353 -0
  347. package/dist/qr-cli-Crsqtw01.js +349 -0
  348. package/dist/redact-Ci96Gj0O.js +191 -0
  349. package/dist/redact-snapshot-B9nof-Pb.js +1952 -0
  350. package/dist/redact-snapshot-BKiS91Mj.js +1952 -0
  351. package/dist/register.agent-GnCbOS2U.js +1014 -0
  352. package/dist/register.agent-Mwu5hgjA.js +292 -0
  353. package/dist/register.configure-By-Re240.js +130 -0
  354. package/dist/register.configure-rB-Q0WKu.js +135 -0
  355. package/dist/register.import-B83Dn36B.js +29 -0
  356. package/dist/register.import-wIYU2cVW.js +31 -0
  357. package/dist/register.maintenance-D5KctP9K.js +503 -0
  358. package/dist/register.maintenance-Er88Oxcm.js +501 -0
  359. package/dist/register.message-BQhRoEQQ.js +687 -0
  360. package/dist/register.message-CvZKWeGb.js +691 -0
  361. package/dist/register.onboard-BG064oHg.js +94 -0
  362. package/dist/register.onboard-CAKyc1Fc.js +98 -0
  363. package/dist/register.setup-C9sZLS_P.js +114 -0
  364. package/dist/register.setup-CVsZdhkJ.js +118 -0
  365. package/dist/register.status-health-sessions-BZJ0wTSa.js +429 -0
  366. package/dist/register.status-health-sessions-CyrUwwtB.js +667 -0
  367. package/dist/register.subclis-CQ_Pjkyv.js +267 -0
  368. package/dist/replies-BIx-MbQ7.js +136 -0
  369. package/dist/replies-DVU655H4.js +136 -0
  370. package/dist/reply-CL5VMSKN.js +12372 -0
  371. package/dist/reply-XKyfU3rS.js +12375 -0
  372. package/dist/reply-directives-DQfJ001O.js +182 -0
  373. package/dist/reply-directives-DfUITt7C.js +182 -0
  374. package/dist/reply-payloads-ZHo6kfTS.js +527 -0
  375. package/dist/reply-prefix-BSf3PC0x.js +37 -0
  376. package/dist/reply-prefix-DBTlMHLK.js +37 -0
  377. package/dist/resolve-route-B-_IgETc.js +249 -0
  378. package/dist/resolve-route-C8ZsgWDQ.js +249 -0
  379. package/dist/response-prefix-template-3LeqJx2X.js +134 -0
  380. package/dist/response-prefix-template-DBrUVx5V.js +134 -0
  381. package/dist/retry-CDrH81GP.js +77 -0
  382. package/dist/retry-Dar_7pCv.js +77 -0
  383. package/dist/run-main-DBFpx1kt.js +308 -0
  384. package/dist/secure-random-CLWSvf8A.js +44 -0
  385. package/dist/security-cli-B8lXw9ke.js +488 -0
  386. package/dist/security-cli-CRkS3VAf.js +483 -0
  387. package/dist/send-6g8QKfWj.js +374 -0
  388. package/dist/send-B5Hz1PIn.js +29 -0
  389. package/dist/send-B8eIlA1u.js +349 -0
  390. package/dist/send-BFZPQE4j.js +492 -0
  391. package/dist/send-BpTDvE0D.js +1779 -0
  392. package/dist/send-BxOrO1Wv.js +1776 -0
  393. package/dist/send-C6gPJu-Z.js +11 -0
  394. package/dist/send-C7MoKtkN.js +426 -0
  395. package/dist/send-CXzq2LI6.js +2245 -0
  396. package/dist/send-CYOZoObr.js +547 -0
  397. package/dist/send-CfQyIvcC.js +332 -0
  398. package/dist/send-DUtuuwhw.js +492 -0
  399. package/dist/send-DbafVwxp.js +2245 -0
  400. package/dist/send-DeZg8K7y.js +349 -0
  401. package/dist/send-DwkjxJlv.js +547 -0
  402. package/dist/send-iX9xbxlU.js +1178 -0
  403. package/dist/server-BKfCzEzd.js +206 -0
  404. package/dist/server-fmO4eo7K.js +202 -0
  405. package/dist/server-lifecycle-CgPpP10P.js +2437 -0
  406. package/dist/server-lifecycle-Cn8yY5MW.js +2437 -0
  407. package/dist/server-node-events-C-ZzSBYh.js +391 -0
  408. package/dist/server-node-events-DYlyfDHM.js +395 -0
  409. package/dist/service-C2j81L86.js +670 -0
  410. package/dist/service-C8a0SXHD.js +670 -0
  411. package/dist/session-AulYhqOb.js +170 -0
  412. package/dist/session-C6VKWvx6.js +170 -0
  413. package/dist/session-cost-usage-0Vs4hgMe.js +627 -0
  414. package/dist/session-cost-usage-C-DsaOfN.js +627 -0
  415. package/dist/session-dirs-CO1f2ArM.js +318 -0
  416. package/dist/session-dirs-DoboH7Oy.js +318 -0
  417. package/dist/session-utils-CRK8ToKG.js +621 -0
  418. package/dist/session-utils-DWlkmCX8.js +621 -0
  419. package/dist/sessions-DtqrmUJS.js +2553 -0
  420. package/dist/sessions-gT-4fcX-.js +245 -0
  421. package/dist/shell-env-c3j5zcU9.js +163 -0
  422. package/dist/ssrf-8wNqPNzN.js +183 -0
  423. package/dist/ssrf-CJIdPXuS.js +183 -0
  424. package/dist/status-BI_-xpDt.js +1947 -0
  425. package/dist/status-PZVwjKjl.js +1943 -0
  426. package/dist/status.update-BmuDZ7E7.js +449 -0
  427. package/dist/status.update-Mf6HSRvU.js +449 -0
  428. package/dist/store-B7PGEdFf.js +2555 -0
  429. package/dist/store-CzhBjUCN.js +64 -0
  430. package/dist/store-YkSxKAey.js +53 -0
  431. package/dist/store-ZNeFv2Q7.js +64 -0
  432. package/dist/subagent-registry-R1DiAM4R.js +4839 -0
  433. package/dist/subagent-registry-xLRXC8Bg.js +4841 -0
  434. package/dist/subsystem-BAW_f3DI.js +1195 -0
  435. package/dist/subsystem-DGSHVL8I.js +1081 -0
  436. package/dist/system-cli-9SvRrT9D.js +77 -0
  437. package/dist/system-cli-yCa5Q1YM.js +73 -0
  438. package/dist/systemd-40Rij3QR.js +547 -0
  439. package/dist/systemd-5C97CSzd.js +547 -0
  440. package/dist/systemd-hints-3iQteJw-.js +278 -0
  441. package/dist/systemd-hints-CyQqHq1i.js +278 -0
  442. package/dist/systemd-linger-B2rPbnAi.js +75 -0
  443. package/dist/systemd-linger-DDvkfxH-.js +75 -0
  444. package/dist/table-DFx25vNb.js +279 -0
  445. package/dist/tables-C5fI0PmT.js +55 -0
  446. package/dist/tables-Cm9qvQ9D.js +55 -0
  447. package/dist/tables-fRe01eP1.js +55 -0
  448. package/dist/tailnet-Da-_9e8E.js +40 -0
  449. package/dist/tailnet-xt92Yaop.js +40 -0
  450. package/dist/tailscale-CnV0JWca.js +230 -0
  451. package/dist/tailscale-VkEC8dzj.js +230 -0
  452. package/dist/targets-C99szk_e.js +114 -0
  453. package/dist/targets-CPaTjbpp.js +2607 -0
  454. package/dist/targets-CmC5m7Ey.js +53 -0
  455. package/dist/targets-D-p4rJVS.js +650 -0
  456. package/dist/targets-D2OQt8-7.js +650 -0
  457. package/dist/targets-D94MtTiZ.js +2606 -0
  458. package/dist/targets-RajrXTl7.js +220 -0
  459. package/dist/targets-_UWmnyI9.js +53 -0
  460. package/dist/thinking-4nOZPunr.js +60 -0
  461. package/dist/thinking-ZfH2V9Os.js +60 -0
  462. package/dist/tokens-TtJJxzRr.js +21 -0
  463. package/dist/tool-display-Bxs_1jIn.js +785 -0
  464. package/dist/tool-display-D9p_Ttkq.js +785 -0
  465. package/dist/tool-images-9Ron321Q.js +263 -0
  466. package/dist/tool-images-BWhy6WRN.js +263 -0
  467. package/dist/trash-B5xyvBDf.js +125 -0
  468. package/dist/trash-BpB96kHe.js +125 -0
  469. package/dist/tui-Ba0uZDrg.js +3237 -0
  470. package/dist/tui-Biz0HqDj.js +3237 -0
  471. package/dist/tui-cli-C-UV6o2v.js +63 -0
  472. package/dist/tui-cli-Ds_bLT-h.js +67 -0
  473. package/dist/types.tools-BBb2rl3g.js +23 -0
  474. package/dist/types.tools-BDJw1yFx.js +23 -0
  475. package/dist/update-Barj5dsg.js +349 -0
  476. package/dist/update-D839Q8su.js +349 -0
  477. package/dist/update-cli-2I4hm0Gy.js +1150 -0
  478. package/dist/update-cli-CcwXmMKB.js +1148 -0
  479. package/dist/usage-BI9kergH.js +5465 -0
  480. package/dist/utils-DPoNpP7D.js +631 -0
  481. package/dist/voice-credentials-64XAMSJm.js +46 -0
  482. package/dist/voice-credentials-v-CQkTpD.js +46 -0
  483. package/dist/web-63IbbidQ.js +3051 -0
  484. package/dist/web-D9N764Da.js +80 -0
  485. package/dist/web-DUvNYLzr.js +75 -0
  486. package/dist/webhooks-cli-owhVNNkz.js +334 -0
  487. package/dist/webhooks-cli-zlvka6QD.js +330 -0
  488. package/dist/whatsapp-actions-8DejyRG5.js +126 -0
  489. package/dist/whatsapp-actions-DCzp5LKe.js +131 -0
  490. package/dist/widearea-dns-CQqZIeu8.js +127 -0
  491. package/dist/workspace-CB7pVojf.js +441 -0
  492. package/dist/workspace-DWEyzM0F.js +439 -0
  493. package/dist/zod-schema-CvFqwpNE.js +2719 -0
  494. package/dist/zod-schema-Y5SQgJLm.js +2719 -0
  495. package/package.json +1 -1
  496. package/dist/accounts-Aqbb2_Fn.js +0 -270
  497. package/dist/accounts-Bo2bX8jP.js +0 -272
  498. package/dist/accounts-CJUdvsIZ.js +0 -32
  499. package/dist/accounts-D3fAPVzU.js +0 -36
  500. package/dist/accounts-DZmv4bXS.js +0 -47
  501. package/dist/accounts-DmB4SVPK.js +0 -47
  502. package/dist/accounts-DtkyfvwR.js +0 -36
  503. package/dist/ack-reactions-BqcZUQJ3.js +0 -446
  504. package/dist/ack-reactions-DXHaDBH-.js +0 -446
  505. package/dist/acp-cli-DVXhDMc6.js +0 -1324
  506. package/dist/acp-cli-QBL4_qcW.js +0 -1319
  507. package/dist/active-listener-CwxZ24bZ.js +0 -37
  508. package/dist/active-listener-v2sItamh.js +0 -37
  509. package/dist/agent-C5PZDKE1.js +0 -687
  510. package/dist/agent-helpers-BSGqeJr-.js +0 -400
  511. package/dist/agent-qCBPcUcF.js +0 -688
  512. package/dist/agent-scope-CJW7vnF8.js +0 -114
  513. package/dist/agent-scope-_ND_-bJy.js +0 -116
  514. package/dist/agents-Byc39Y4A.js +0 -760
  515. package/dist/agents.config-BgDBcY4h.js +0 -116
  516. package/dist/agents.config-D8gLHPWo.js +0 -116
  517. package/dist/audio-BIvUsncf.js +0 -43
  518. package/dist/audio-CQ8TfmVN.js +0 -43
  519. package/dist/audit-C0x7Cm6K.js +0 -3150
  520. package/dist/audit-CAY-uzWP.js +0 -3150
  521. package/dist/auth-DGqCLaQq.js +0 -448
  522. package/dist/auth-DLTRySEi.js +0 -314
  523. package/dist/auth-Drf91ntw.js +0 -315
  524. package/dist/auth-ku2khJyQ.js +0 -448
  525. package/dist/banner-CGI3XOm4.js +0 -294
  526. package/dist/binaries-BTvHIrCr.js +0 -13
  527. package/dist/bindings-Dr0bGRst.js +0 -69
  528. package/dist/bindings-DsWJQVKh.js +0 -69
  529. package/dist/bonjour-discovery-BElR62fH.js +0 -378
  530. package/dist/bonjour-discovery-C8XyVsjb.js +0 -378
  531. package/dist/browser-cli-DxJew43l.js +0 -1694
  532. package/dist/browser-cli-p0nakrjO.js +0 -1690
  533. package/dist/call-BrTmlOx3.js +0 -518
  534. package/dist/call-ChdUdwb4.js +0 -517
  535. package/dist/catalog-DTlcfTT9.js +0 -185
  536. package/dist/catalog-PixZqhZK.js +0 -185
  537. package/dist/channel-account-context-BO245Tcn.js +0 -133
  538. package/dist/channel-account-context-BgK0hm-I.js +0 -133
  539. package/dist/channel-activity-B0qlUR5e.js +0 -292
  540. package/dist/channel-activity-C-L6rDrQ.js +0 -94
  541. package/dist/channel-activity-DdgLBZ7M.js +0 -94
  542. package/dist/channel-options-C1Q9SUhv.js +0 -33
  543. package/dist/channel-options-zANFhRx_.js +0 -32
  544. package/dist/channel-selection-DW21dXB1.js +0 -51
  545. package/dist/channel-selection-wK_6S2Ku.js +0 -51
  546. package/dist/channel-web-DCSjrtlh.js +0 -2136
  547. package/dist/channel-web-JCgegBgG.js +0 -2134
  548. package/dist/channels-cli-D48ytzLq.js +0 -1438
  549. package/dist/channels-cli-hZbUcB3G.js +0 -1434
  550. package/dist/channels-status-issues-B6I2l7Sm.js +0 -18
  551. package/dist/channels-status-issues-DhDH2fWp.js +0 -18
  552. package/dist/chat-envelope-BIujl9Cj.js +0 -248
  553. package/dist/chat-envelope-CrM0X4sl.js +0 -248
  554. package/dist/chrome-Dqtq7zCc.js +0 -1733
  555. package/dist/chrome-XeSY99Z_.js +0 -1732
  556. package/dist/chunk-LUabyS9k.js +0 -341
  557. package/dist/clack-prompter-fAgbvPW4.js +0 -122
  558. package/dist/clack-prompter-kf9qTN5p.js +0 -121
  559. package/dist/cleanup-utils-CNwlTKyR.js +0 -94
  560. package/dist/cli-BTLaY8q4.js +0 -133
  561. package/dist/cli-CZV23GbW.js +0 -129
  562. package/dist/client-B9u3JdT_.js +0 -2316
  563. package/dist/client-DEEOhx0w.js +0 -2316
  564. package/dist/clipboard-B2nstLx7.js +0 -31
  565. package/dist/clipboard-C8QI9fes.js +0 -31
  566. package/dist/command-format-D0vKipG9.js +0 -32
  567. package/dist/command-format-LFmgWzKJ.js +0 -18
  568. package/dist/command-registry-BPXqH4ST.js +0 -215
  569. package/dist/commands-BAYwlS3d.js +0 -41
  570. package/dist/commands-D842kCjj.js +0 -41
  571. package/dist/commands-registry-Cg2GTT2J.js +0 -892
  572. package/dist/commands-registry-Yz-uV5oG.js +0 -891
  573. package/dist/common-B67cBSew.js +0 -156
  574. package/dist/common-DEoiTqOr.js +0 -156
  575. package/dist/completion-cli-D5J3fPka.js +0 -452
  576. package/dist/completion-cli-Dd1g-p7S.js +0 -452
  577. package/dist/config-CAa0rZSx.js +0 -4225
  578. package/dist/config-W0w-gi2j.js +0 -4223
  579. package/dist/config-cli-Ddz-yCdQ.js +0 -247
  580. package/dist/config-cli-shgSFYig.js +0 -243
  581. package/dist/config-guard-BI85dxHR.js +0 -99
  582. package/dist/config-guard-DQqnigKh.js +0 -75
  583. package/dist/config-validation-D-h4LHyA.js +0 -18
  584. package/dist/config-validation-Df_kroIQ.js +0 -18
  585. package/dist/configure-BnFwpZ3l.js +0 -891
  586. package/dist/configure-Cj4mlKSH.js +0 -889
  587. package/dist/control-auth-BrBr2xb8.js +0 -397
  588. package/dist/control-auth-CehjYKnL.js +0 -397
  589. package/dist/control-ui-assets-D8F383Mo.js +0 -186
  590. package/dist/control-ui-assets-DYKtRIm0.js +0 -186
  591. package/dist/conversation-label-Bn5j3lUT.js +0 -36
  592. package/dist/cron-cli-DVzDHzAX.js +0 -494
  593. package/dist/cron-cli-gkH2qKM4.js +0 -498
  594. package/dist/daemon-cli-BTdNO1vH.js +0 -737
  595. package/dist/daemon-cli-DNNqI2LD.js +0 -735
  596. package/dist/daemon-install-CaEHG92p.js +0 -56
  597. package/dist/daemon-install-DbpDSDfW.js +0 -60
  598. package/dist/daemon-install-helpers-DjE_WnlY.js +0 -504
  599. package/dist/daemon-install-helpers-DocTUxqQ.js +0 -504
  600. package/dist/deliver-CDcL8ok6.js +0 -481
  601. package/dist/deliver-CS8JsevV.js +0 -481
  602. package/dist/delivery-queue-CTaYZQ_8.js +0 -244
  603. package/dist/delivery-queue-DMZ7mH8P.js +0 -244
  604. package/dist/devices-cli-BBJ4His-.js +0 -319
  605. package/dist/devices-cli-DHSJSFW1.js +0 -323
  606. package/dist/diagnostics-BSvCaLNs.js +0 -35
  607. package/dist/diagnostics-mWFAsFeo.js +0 -35
  608. package/dist/directory-cli-C-oHD_XE.js +0 -224
  609. package/dist/directory-cli-Cw99VGvr.js +0 -220
  610. package/dist/dispatcher-C8d1NNLZ.js +0 -174
  611. package/dist/dispatcher-DY6Ga60j.js +0 -173
  612. package/dist/dm-policy-shared-CRQ-Wr5g.js +0 -22
  613. package/dist/dm-policy-shared-CXXf2ltd.js +0 -22
  614. package/dist/dns-cli-BOqx9qo1.js +0 -199
  615. package/dist/dns-cli-WfqSC3JU.js +0 -203
  616. package/dist/dock-Big-J2VN.js +0 -929
  617. package/dist/dock-Cj4PKiUh.js +0 -928
  618. package/dist/doctor-completion-B9RsNJKh.js +0 -92
  619. package/dist/doctor-completion-DhNvADTs.js +0 -92
  620. package/dist/doctor-config-flow-BUuADMDa.js +0 -1935
  621. package/dist/doctor-config-flow-yOUpQC2B.js +0 -1934
  622. package/dist/enable-DC9V0nTO.js +0 -59
  623. package/dist/enable-DzXMQJ-o.js +0 -59
  624. package/dist/env-B3zr72vQ.js +0 -60
  625. package/dist/errors-CdmXrBic.js +0 -35
  626. package/dist/errors-Cr_NbOb4.js +0 -35
  627. package/dist/exec-D_s-zAtY.js +0 -164
  628. package/dist/exec-Zz6eJ6YU.js +0 -164
  629. package/dist/fetch-C8pdlo4-.js +0 -67
  630. package/dist/fetch-DRVdxxEj.js +0 -67
  631. package/dist/file-lock-6NXMPZTT.js +0 -107
  632. package/dist/file-lock-C_KRlR7M.js +0 -107
  633. package/dist/fs-safe-DZHpH7TI.js +0 -98
  634. package/dist/fs-safe-vm3JMUkq.js +0 -88
  635. package/dist/gateway-cli-CebjflhZ.js +0 -24337
  636. package/dist/gateway-cli-Y9U6rbPB.js +0 -24333
  637. package/dist/gateway-rpc-BCFkQPa2.js +0 -28
  638. package/dist/gateway-rpc-DOgYbsOG.js +0 -28
  639. package/dist/gmail-setup-utils-DMeA1UM1.js +0 -423
  640. package/dist/gmail-setup-utils-FHWSAur3.js +0 -422
  641. package/dist/health-CXWQZGNz.js +0 -1414
  642. package/dist/health-DCC6hoLO.js +0 -1417
  643. package/dist/health-format-CVgQD-z9.js +0 -28
  644. package/dist/heartbeat-visibility-Cv0ejWJ-.js +0 -125
  645. package/dist/heartbeat-visibility-Da3TDQp2.js +0 -125
  646. package/dist/help-format-DM6-OBt-.js +0 -17
  647. package/dist/hook-runner-global-C0DFQmQw.js +0 -527
  648. package/dist/hooks-cli-CB5rKhHe.js +0 -1221
  649. package/dist/hooks-cli-Dy7m9hzM.js +0 -1225
  650. package/dist/image-ops-B9ofmzSq.js +0 -354
  651. package/dist/image-ops-CMuvRsMY.js +0 -354
  652. package/dist/import-BH13F5mT.js +0 -606
  653. package/dist/import-D8HVcDqO.js +0 -604
  654. package/dist/inbound-context-CmmmT8IP.js +0 -68
  655. package/dist/inbound-path-policy-BdmTOUka.js +0 -90
  656. package/dist/inbound-path-policy-BurOAu44.js +0 -90
  657. package/dist/inspect-nW8LAukU.js +0 -286
  658. package/dist/inspect-xy2EHy8G.js +0 -286
  659. package/dist/installs-CpfHmKY1.js +0 -325
  660. package/dist/installs-DebiMrGj.js +0 -325
  661. package/dist/ipv4-ysiNGssl.js +0 -46
  662. package/dist/ipv4-zc_Hfvbp.js +0 -46
  663. package/dist/ir-CaxTklDC.js +0 -940
  664. package/dist/lifecycle-core-Z5SScMlU.js +0 -476
  665. package/dist/lifecycle-core-pPwYSt7m.js +0 -474
  666. package/dist/links-D5vtq30Q.js +0 -15
  667. package/dist/loader-BVHaRcP7.js +0 -22404
  668. package/dist/loader-CxSGgugQ.js +0 -22401
  669. package/dist/local-roots-CrJ_Jv_G.js +0 -314
  670. package/dist/local-roots-n_Y4iYwb.js +0 -313
  671. package/dist/logger-B8yHnzPl.js +0 -49
  672. package/dist/logging-FctZEleJ.js +0 -20
  673. package/dist/login-C99fsB0N.js +0 -61
  674. package/dist/login-cLvGPjeO.js +0 -62
  675. package/dist/login-qr-CGqRFwgl.js +0 -329
  676. package/dist/login-qr-dnY5DC2C.js +0 -325
  677. package/dist/logs-cli-Bda7xY4N.js +0 -236
  678. package/dist/logs-cli-HzR-vnpD.js +0 -240
  679. package/dist/markdown-tables-58Hq__7K.js +0 -29
  680. package/dist/markdown-tables-GFEX0OR6.js +0 -29
  681. package/dist/media-C1SIfGTn.js +0 -10452
  682. package/dist/media-CFsyXs3H.js +0 -940
  683. package/dist/message-action-names-BgsKGLDS.js +0 -2521
  684. package/dist/message-action-names-DkZwEFhU.js +0 -2521
  685. package/dist/message-channel-FMNRI5Ax.js +0 -91
  686. package/dist/mime-AuIDUZPG.js +0 -149
  687. package/dist/mime-Cqg1jjia.js +0 -149
  688. package/dist/net-BEFkF-nI.js +0 -225
  689. package/dist/net-CNsUGiSw.js +0 -225
  690. package/dist/node-cli-Bu-InsO9.js +0 -1462
  691. package/dist/node-cli-DE7Pm7Fr.js +0 -1458
  692. package/dist/node-service-CumFZc9L.js +0 -67
  693. package/dist/node-service-DY1gG06I.js +0 -67
  694. package/dist/nodes-cli-B5aAExN0.js +0 -1350
  695. package/dist/nodes-cli-eKRqlKuO.js +0 -1346
  696. package/dist/nodes-screen-B3Sij1uT.js +0 -250
  697. package/dist/nodes-screen-DEvpoFmH.js +0 -250
  698. package/dist/note-CPFJCWJJ.js +0 -92
  699. package/dist/note-DHUJACHE.js +0 -92
  700. package/dist/npm-registry-spec-BgMtTHvq.js +0 -786
  701. package/dist/npm-registry-spec-Dz3z1Zpd.js +0 -786
  702. package/dist/npm-resolution-BXiQH99t.js +0 -86
  703. package/dist/npm-resolution-CqE0nhxJ.js +0 -86
  704. package/dist/onboard-DK2z3w1P.js +0 -649
  705. package/dist/onboard-auth-C_wHkop1.js +0 -207
  706. package/dist/onboard-auth-CkCBLvTg.js +0 -211
  707. package/dist/onboard-channels-C8_OLbPk.js +0 -2547
  708. package/dist/onboard-channels-w_tnOhVu.js +0 -2548
  709. package/dist/onboard-helpers-Q7M6vdzh.js +0 -363
  710. package/dist/onboard-helpers-SCO3k5Y8.js +0 -364
  711. package/dist/onboard-remote-Co2hv1AD.js +0 -127
  712. package/dist/onboard-remote-Dl3BFSg2.js +0 -127
  713. package/dist/onboard-rioH3DW6.js +0 -647
  714. package/dist/onboarding-CsXVuzFP.js +0 -586
  715. package/dist/onboarding-r5RCkc-Z.js +0 -588
  716. package/dist/onboarding.finalize-BY8uN1nD.js +0 -402
  717. package/dist/onboarding.finalize-C-kfj-aR.js +0 -404
  718. package/dist/onboarding.gateway-config-BL0Q7Wpg.js +0 -201
  719. package/dist/onboarding.gateway-config-D2QsXMYO.js +0 -195
  720. package/dist/outbound-CcaPcetn.js +0 -220
  721. package/dist/outbound-CeiW8z3a.js +0 -221
  722. package/dist/outbound-attachment-BLSGI2dJ.js +0 -18
  723. package/dist/outbound-attachment-Bfm5-JYe.js +0 -18
  724. package/dist/outbound-attachment-CZ7zoYxB.js +0 -18
  725. package/dist/pairing-cli-CgX79ujL.js +0 -125
  726. package/dist/pairing-cli-DvbbXFgC.js +0 -129
  727. package/dist/pairing-labels-3wDxaApH.js +0 -9
  728. package/dist/pairing-labels-DCbWnbWk.js +0 -9
  729. package/dist/pairing-store-CdY7iRS0.js +0 -459
  730. package/dist/pairing-store-DykkYpQ7.js +0 -460
  731. package/dist/path-env-Cqo5LZmw.js +0 -89
  732. package/dist/path-guards-DOpzcMXz.js +0 -31
  733. package/dist/path-guards-DipYoPVw.js +0 -31
  734. package/dist/path-safety-CXKAVpMp.js +0 -14
  735. package/dist/path-safety-DGB91qBk.js +0 -14
  736. package/dist/paths-BTaH3rLn.js +0 -232
  737. package/dist/plugin-auto-enable-C6FPGg_-.js +0 -301
  738. package/dist/plugin-auto-enable-L8eOc8iC.js +0 -302
  739. package/dist/plugin-registry-BTycBIix.js +0 -33
  740. package/dist/plugin-registry-CFty9Gym.js +0 -33
  741. package/dist/plugin-sdk/auto-reply/reply/elevated-allowlist-matcher.d.ts +0 -20
  742. package/dist/plugin-sdk/auto-reply/reply/elevated-unavailable.d.ts +0 -8
  743. package/dist/plugin-sdk/auto-reply/reply/reply-elevated.d.ts +0 -16
  744. package/dist/plugin-sdk/compat/legacy-names.d.ts +0 -8
  745. package/dist/plugin-sdk/config/legacy.migrations.part-1.d.ts +0 -2
  746. package/dist/plugin-sdk/config/legacy.migrations.part-2.d.ts +0 -2
  747. package/dist/plugin-sdk/config/legacy.migrations.part-3.d.ts +0 -2
  748. package/dist/plugin-sdk/cron/legacy-delivery.d.ts +0 -3
  749. package/dist/plugin-sdk/cron/payload-migration.d.ts +0 -3
  750. package/dist/plugin-sdk/link-understanding/apply.d.ts +0 -10
  751. package/dist/plugin-sdk/link-understanding/defaults.d.ts +0 -2
  752. package/dist/plugin-sdk/link-understanding/detect.d.ts +0 -3
  753. package/dist/plugin-sdk/link-understanding/format.d.ts +0 -4
  754. package/dist/plugin-sdk/link-understanding/runner.d.ts +0 -11
  755. package/dist/plugin-sdk/media/input-files.d.ts +0 -95
  756. package/dist/plugin-sdk/media-understanding/apply.d.ts +0 -19
  757. package/dist/plugin-sdk/media-understanding/attachments.d.ts +0 -49
  758. package/dist/plugin-sdk/media-understanding/concurrency.d.ts +0 -1
  759. package/dist/plugin-sdk/media-understanding/defaults.d.ts +0 -11
  760. package/dist/plugin-sdk/media-understanding/errors.d.ts +0 -6
  761. package/dist/plugin-sdk/media-understanding/format.d.ts +0 -7
  762. package/dist/plugin-sdk/media-understanding/fs.d.ts +0 -1
  763. package/dist/plugin-sdk/media-understanding/output-extract.d.ts +0 -2
  764. package/dist/plugin-sdk/media-understanding/providers/anthropic/index.d.ts +0 -2
  765. package/dist/plugin-sdk/media-understanding/providers/deepgram/audio.d.ts +0 -1
  766. package/dist/plugin-sdk/media-understanding/providers/deepgram/index.d.ts +0 -2
  767. package/dist/plugin-sdk/media-understanding/providers/google/audio.d.ts +0 -1
  768. package/dist/plugin-sdk/media-understanding/providers/google/index.d.ts +0 -2
  769. package/dist/plugin-sdk/media-understanding/providers/google/video.d.ts +0 -3
  770. package/dist/plugin-sdk/media-understanding/providers/groq/index.d.ts +0 -2
  771. package/dist/plugin-sdk/media-understanding/providers/index.d.ts +0 -4
  772. package/dist/plugin-sdk/media-understanding/providers/minimax/index.d.ts +0 -2
  773. package/dist/plugin-sdk/media-understanding/providers/mistral/index.d.ts +0 -2
  774. package/dist/plugin-sdk/media-understanding/providers/moonshot/index.d.ts +0 -2
  775. package/dist/plugin-sdk/media-understanding/providers/moonshot/video.d.ts +0 -3
  776. package/dist/plugin-sdk/media-understanding/providers/openai/audio.d.ts +0 -1
  777. package/dist/plugin-sdk/media-understanding/providers/openai/index.d.ts +0 -2
  778. package/dist/plugin-sdk/media-understanding/providers/shared.d.ts +0 -20
  779. package/dist/plugin-sdk/media-understanding/providers/zai/index.d.ts +0 -2
  780. package/dist/plugin-sdk/media-understanding/resolve.d.ts +0 -44
  781. package/dist/plugin-sdk/media-understanding/runner.d.ts +0 -34
  782. package/dist/plugin-sdk/media-understanding/runner.entries.d.ts +0 -33
  783. package/dist/plugin-sdk/media-understanding/scope.d.ts +0 -9
  784. package/dist/plugin-sdk/media-understanding/types.d.ts +0 -59
  785. package/dist/plugin-sdk/media-understanding/video.d.ts +0 -2
  786. package/dist/plugin-sdk/utils/run-with-concurrency.d.ts +0 -11
  787. package/dist/plugins-7B167wIj.js +0 -453
  788. package/dist/plugins-BRHOfy1Z.js +0 -455
  789. package/dist/plugins-cli-CQGW40I-.js +0 -797
  790. package/dist/plugins-cli-D-ZfWRTw.js +0 -801
  791. package/dist/ports-CAqyeQYZ.js +0 -316
  792. package/dist/ports-CTUgXF2d.js +0 -96
  793. package/dist/ports-DqfnVnCw.js +0 -370
  794. package/dist/preflight-CJqKHCYa.js +0 -64
  795. package/dist/preflight-TR92sc61.js +0 -68
  796. package/dist/program-_SGrjcuG.js +0 -248
  797. package/dist/program-context-B6yIPfYd.js +0 -474
  798. package/dist/progress-BOdRbOHD.js +0 -124
  799. package/dist/prompt-WEkXwIMT.js +0 -21
  800. package/dist/prompt-select-styled-BiBnOTh8.js +0 -1669
  801. package/dist/prompt-select-styled-DQacku67.js +0 -1672
  802. package/dist/prompt-style-B4Cq4PyQ.js +0 -9
  803. package/dist/provider-dispatcher-BjsUFEpi.js +0 -659
  804. package/dist/provider-dispatcher-BxNDRVIT.js +0 -660
  805. package/dist/push-apns-Cj0Ryn18.js +0 -713
  806. package/dist/push-apns-fFfYCqda.js +0 -711
  807. package/dist/pw-ai-CnN2sITD.js +0 -1908
  808. package/dist/pw-ai-fnX3cecw.js +0 -1911
  809. package/dist/qr-cli-CriPg41m.js +0 -349
  810. package/dist/qr-cli-DSURqD0D.js +0 -353
  811. package/dist/redact-gXuh8MFk.js +0 -191
  812. package/dist/redact-snapshot-BecRL_h6.js +0 -2016
  813. package/dist/redact-snapshot-pTdzSrex.js +0 -2016
  814. package/dist/register.agent-Bpwvc5By.js +0 -1018
  815. package/dist/register.agent-DQFcnOVQ.js +0 -290
  816. package/dist/register.configure-C5CK8tgd.js +0 -133
  817. package/dist/register.configure-CEJ5Wrkl.js +0 -128
  818. package/dist/register.import-CPQqqdje.js +0 -31
  819. package/dist/register.import-D1UaH1QV.js +0 -29
  820. package/dist/register.maintenance-Bpz-NOhG.js +0 -499
  821. package/dist/register.maintenance-DDwlfAfw.js +0 -501
  822. package/dist/register.message-BoNswT8e.js +0 -685
  823. package/dist/register.message-pvz70g_-.js +0 -689
  824. package/dist/register.onboard-BvcVLNp3.js +0 -93
  825. package/dist/register.onboard-CZV7LvZI.js +0 -97
  826. package/dist/register.setup-Cgv2uSPG.js +0 -117
  827. package/dist/register.setup-yTqvTinY.js +0 -113
  828. package/dist/register.status-health-sessions-LK50hWDT.js +0 -428
  829. package/dist/register.status-health-sessions-kDGDihye.js +0 -668
  830. package/dist/register.subclis-DSr7AHAr.js +0 -267
  831. package/dist/replies-IpiCq1Ht.js +0 -136
  832. package/dist/replies-LSx_XhsP.js +0 -136
  833. package/dist/reply-B8It91bP.js +0 -13652
  834. package/dist/reply-CbgHVTv2.js +0 -13649
  835. package/dist/reply-directives-Cz7622Qx.js +0 -182
  836. package/dist/reply-directives-ssnaPNiU.js +0 -182
  837. package/dist/reply-payloads-CQMtrphw.js +0 -527
  838. package/dist/reply-prefix-CWcAZKhE.js +0 -37
  839. package/dist/reply-prefix-Drq7Pf3A.js +0 -37
  840. package/dist/resolve-route-B8uIc2H3.js +0 -249
  841. package/dist/resolve-route-C8ooNlI4.js +0 -249
  842. package/dist/response-prefix-template-D3ZcJP4E.js +0 -134
  843. package/dist/response-prefix-template-DPOggmPO.js +0 -134
  844. package/dist/retry-B19gMxS7.js +0 -77
  845. package/dist/retry-BdhJlZQI.js +0 -77
  846. package/dist/run-main-BP3UHEJa.js +0 -306
  847. package/dist/runner-CD3YycXx.js +0 -2365
  848. package/dist/runner-D74Wiza_.js +0 -2365
  849. package/dist/secure-random-CQa3H-OL.js +0 -44
  850. package/dist/security-cli-05blEYyC.js +0 -482
  851. package/dist/security-cli-DYbt8duB.js +0 -487
  852. package/dist/send-7O3-bRtl.js +0 -547
  853. package/dist/send-9Huf62k3.js +0 -2245
  854. package/dist/send-B0C42B2A.js +0 -426
  855. package/dist/send-B9mIJdUo.js +0 -547
  856. package/dist/send-BHm9dk6D.js +0 -1178
  857. package/dist/send-BetMntNc.js +0 -11
  858. package/dist/send-Bj0RXr-a.js +0 -492
  859. package/dist/send-COuVtZ4b.js +0 -374
  860. package/dist/send-CXNuhYA-.js +0 -332
  861. package/dist/send-Ce_BDa8P.js +0 -349
  862. package/dist/send-ChvasRSh.js +0 -1779
  863. package/dist/send-DNVRlTEF.js +0 -29
  864. package/dist/send-DWf7BCPe.js +0 -492
  865. package/dist/send-Dd2_MykI.js +0 -2245
  866. package/dist/send-IJaUAa8H.js +0 -1776
  867. package/dist/send-vvZXksNU.js +0 -349
  868. package/dist/server-BrzR9JmX.js +0 -206
  869. package/dist/server-_h27-uP_.js +0 -202
  870. package/dist/server-lifecycle-CUdA6Far.js +0 -2437
  871. package/dist/server-lifecycle-DQZWL8iP.js +0 -2437
  872. package/dist/server-node-events-DSefRBGC.js +0 -394
  873. package/dist/server-node-events-jDiG1-M2.js +0 -390
  874. package/dist/service-9le8AnC-.js +0 -670
  875. package/dist/service-Drb0kx6I.js +0 -670
  876. package/dist/session-BIAOl5QR.js +0 -170
  877. package/dist/session-Wu00pCn_.js +0 -170
  878. package/dist/session-cost-usage-7plmOKbs.js +0 -627
  879. package/dist/session-cost-usage-CPFxBFUg.js +0 -627
  880. package/dist/session-dirs-CfIrIJxG.js +0 -318
  881. package/dist/session-dirs-DlPpWt5Q.js +0 -318
  882. package/dist/session-utils-Sd9w4vc1.js +0 -622
  883. package/dist/session-utils-iL47hYmZ.js +0 -622
  884. package/dist/sessions-6pKQ3gN3.js +0 -247
  885. package/dist/sessions-ZRmCDdj1.js +0 -2569
  886. package/dist/shell-env-DYZq9PqC.js +0 -163
  887. package/dist/ssrf-B-rF_tZB.js +0 -183
  888. package/dist/ssrf-DJW14Wkh.js +0 -183
  889. package/dist/status-BGM-EJGk.js +0 -1983
  890. package/dist/status-CGkrO9om.js +0 -1979
  891. package/dist/status.update-DlBReI5-.js +0 -449
  892. package/dist/status.update-v7fEQ7R9.js +0 -449
  893. package/dist/store-B5989JkX.js +0 -64
  894. package/dist/store-BpXxa0Uf.js +0 -53
  895. package/dist/store-DCrrxHyS.js +0 -2571
  896. package/dist/store-Ql6vAcsg.js +0 -64
  897. package/dist/subagent-registry-BGknZEUI.js +0 -4856
  898. package/dist/subagent-registry-CWeRBjfn.js +0 -4854
  899. package/dist/subsystem-Ct6qOOqZ.js +0 -1079
  900. package/dist/subsystem-PQ64_nsu.js +0 -1136
  901. package/dist/system-cli-CmO-4Rju.js +0 -77
  902. package/dist/system-cli-VBsa18K6.js +0 -73
  903. package/dist/systemd-CqFpK30Y.js +0 -547
  904. package/dist/systemd-fK9AV5bP.js +0 -547
  905. package/dist/systemd-hints-D3rr0j14.js +0 -278
  906. package/dist/systemd-hints-DNOSRaqA.js +0 -278
  907. package/dist/systemd-linger-B907NVVy.js +0 -75
  908. package/dist/systemd-linger-wYksBbM7.js +0 -75
  909. package/dist/table-C-dba-5-.js +0 -279
  910. package/dist/tables-CO_kxD0e.js +0 -55
  911. package/dist/tables-Rd6ZUH0u.js +0 -55
  912. package/dist/tables-WZp8Vt9n.js +0 -55
  913. package/dist/tailnet-CfZhpSnt.js +0 -40
  914. package/dist/tailnet-D0NV0tRJ.js +0 -40
  915. package/dist/tailscale-B__xvMjA.js +0 -230
  916. package/dist/tailscale-q_ZrxUCc.js +0 -230
  917. package/dist/targets-B4rMyQFJ.js +0 -53
  918. package/dist/targets-BEBzTa22.js +0 -114
  919. package/dist/targets-BjWhDMJM.js +0 -650
  920. package/dist/targets-BlEVuFSt.js +0 -2474
  921. package/dist/targets-CHwGDIgO.js +0 -650
  922. package/dist/targets-CbbmgMRV.js +0 -2473
  923. package/dist/targets-SpN-MPBH.js +0 -220
  924. package/dist/targets-mqj9GNg1.js +0 -53
  925. package/dist/thinking-BqJmU6Zp.js +0 -88
  926. package/dist/thinking-l-rrvZwu.js +0 -88
  927. package/dist/tokens-DAFBx5qr.js +0 -21
  928. package/dist/tool-display-C0hpLmkw.js +0 -785
  929. package/dist/tool-display-CQTRHo3Z.js +0 -785
  930. package/dist/tool-images-BYY11Gw3.js +0 -263
  931. package/dist/tool-images-CnJ0R8Fo.js +0 -263
  932. package/dist/trash-C0mjnHuW.js +0 -125
  933. package/dist/trash-Cgwc9mLD.js +0 -125
  934. package/dist/tui-9cJnR1dN.js +0 -3282
  935. package/dist/tui-BR3egaFJ.js +0 -3282
  936. package/dist/tui-cli-BYpkhE6J.js +0 -66
  937. package/dist/tui-cli-DndeZyup.js +0 -62
  938. package/dist/update-BJVdkzk7.js +0 -349
  939. package/dist/update-DjI6KTA5.js +0 -349
  940. package/dist/update-cli-DR-zFdCm.js +0 -1146
  941. package/dist/update-cli-EuHV_AUf.js +0 -1148
  942. package/dist/usage-BQUMGgBj.js +0 -5350
  943. package/dist/utils-C5daYcFn.js +0 -631
  944. package/dist/voice-credentials-CXdoE4IF.js +0 -45
  945. package/dist/voice-credentials-Cu7htUQq.js +0 -45
  946. package/dist/web-6WVkqhtO.js +0 -3087
  947. package/dist/web-BfSXKISl.js +0 -74
  948. package/dist/web-Cngqu3vs.js +0 -79
  949. package/dist/webhooks-cli-0yQha2yj.js +0 -334
  950. package/dist/webhooks-cli-ula0bTX-.js +0 -330
  951. package/dist/whatsapp-actions-3NdzsNg1.js +0 -130
  952. package/dist/whatsapp-actions-y_1vjkYY.js +0 -125
  953. package/dist/widearea-dns-C-0P7TRi.js +0 -127
  954. package/dist/workspace-BT3X-qCZ.js +0 -449
  955. package/dist/workspace-D5hHXubL.js +0 -447
  956. package/dist/zod-schema-CbqZAIYy.js +0 -2696
  957. package/dist/zod-schema-YGQJEcnj.js +0 -2696
  958. /package/dist/{account-lookup-BOCzCnir.js → account-lookup-CIY_RKhi.js} +0 -0
  959. /package/dist/{agent-helpers-eEHy5uX2.js → agent-helpers-Bs2nBXeI.js} +0 -0
  960. /package/dist/{api-Cd_7aESj.js → api-BE4ZCWWB.js} +0 -0
  961. /package/dist/{api-DJ_oWYus.js → api-wsk9zRVi.js} +0 -0
  962. /package/dist/{chat-type-DyovJwCt.js → chat-type-BP9akbag.js} +0 -0
  963. /package/dist/{chunk-CWD_zrz_.js → chunk-BAMyFYtF.js} +0 -0
  964. /package/dist/{cleanup-utils-gNzIs9yk.js → cleanup-utils-ZC2zvntc.js} +0 -0
  965. /package/dist/{cli-name-3MdfbvIR.js → cli-name-BZsYSp9l.js} +0 -0
  966. /package/dist/{cli-name-CRLBidNP.js → cli-name-CRe5Ow_t.js} +0 -0
  967. /package/dist/{cli-utils-5ZIfXAfM.js → cli-utils-CGB3cBZm.js} +0 -0
  968. /package/dist/{client-D5m46AuY.js → client-9dK56xly.js} +0 -0
  969. /package/dist/{client-DFyI5I0n.js → client-D-R1YdRD.js} +0 -0
  970. /package/dist/{command-options-Cn2fc1Of.js → command-options-CnHA4TzR.js} +0 -0
  971. /package/dist/{config-eval-BCKpAS_K.js → config-eval-BQIR-wSg.js} +0 -0
  972. /package/dist/{config-eval-CU2G7a83.js → config-eval-Bh82JoXK.js} +0 -0
  973. /package/dist/{constants-CRGAZ2ow.js → constants-C7j1VA2S.js} +0 -0
  974. /package/dist/{constants-BAZuhSRm.js → constants-PMRtHBHU.js} +0 -0
  975. /package/dist/{credentials-DMAWNZdV.js → credentials-C_RoJFmK.js} +0 -0
  976. /package/dist/{credentials-Dmc3H-jd.js → credentials-DM_Dj0m8.js} +0 -0
  977. /package/dist/{daemon-runtime-aQhinwSL.js → daemon-runtime-9oDBR7YW.js} +0 -0
  978. /package/dist/{dangerous-name-matching-BCaPvXy_.js → dangerous-name-matching-CSq9sJDG.js} +0 -0
  979. /package/dist/{dangerous-tools-E1i3IoxZ.js → dangerous-tools-D4jtl72G.js} +0 -0
  980. /package/dist/{fetch-DTR2MlOk.js → fetch-DTsU2XnC.js} +0 -0
  981. /package/dist/{fetch-timeout-l_6RdoMw.js → fetch-timeout-CytN1wiO.js} +0 -0
  982. /package/dist/{file-identity-BnGA6wyc.js → file-identity-CeRK5CJC.js} +0 -0
  983. /package/dist/{format-relative-Cywx6ldk.js → format-relative-Czf5fUjn.js} +0 -0
  984. /package/dist/{format-relative-DcQZUAYl.js → format-relative-zwkkXJvs.js} +0 -0
  985. /package/dist/{health-format-CL2Xq92A.js → health-format-DF54wvUU.js} +0 -0
  986. /package/dist/{heartbeat-wake-DjsTDzF3.js → heartbeat-wake-CvHncCjP.js} +0 -0
  987. /package/dist/{helpers-D-r6yhnI.js → helpers-DAEoFkbn.js} +0 -0
  988. /package/dist/{helpers-DSMIGYx2.js → helpers-n2CtWpm9.js} +0 -0
  989. /package/dist/{helpers-CRrn7Err.js → helpers-ndPQWl6m.js} +0 -0
  990. /package/dist/{input-provenance-BgfeDgck.js → input-provenance-gIfDn1ki.js} +0 -0
  991. /package/dist/{input-provenance-xUsSMOsz.js → input-provenance-wkso1o5V.js} +0 -0
  992. /package/dist/{ip-BAhS4rY2.js → ip-D4VG5EJO.js} +0 -0
  993. /package/dist/{ip-BUhsZdJu.js → ip-MwCwRA7c.js} +0 -0
  994. /package/dist/{json-file-Dbg7nZg1.js → json-file-BW22hGtf.js} +0 -0
  995. /package/dist/{json-file-B5WEJJye.js → json-file-DwRAfAAy.js} +0 -0
  996. /package/dist/{json-files-CfhnuGaC.js → json-files-BI20PLIm.js} +0 -0
  997. /package/dist/{json-files-BFGbyEzL.js → json-files-Dy52honG.js} +0 -0
  998. /package/dist/{lanes-4FoQemog.js → lanes-1CBKdsiR.js} +0 -0
  999. /package/dist/{lanes-BhdzrAIa.js → lanes-DqVYfPRG.js} +0 -0
  1000. /package/dist/{logger-IA_Dr_BT.js → logger-B8BE0PyS.js} +0 -0
  1001. /package/dist/{logger-nEdVxm5D.js → logger-CPvz-aPM.js} +0 -0
  1002. /package/dist/{logger-O6JX52kK.js → logger-cL0D2DCr.js} +0 -0
  1003. /package/dist/{logging-BiuZwq5D.js → logging-DRwtiLIS.js} +0 -0
  1004. /package/dist/{logging-Bs1VqVFL.js → logging-DTEoeoa3.js} +0 -0
  1005. /package/dist/{logging-JZEg5nDp.js → logging-fywhKCmE.js} +0 -0
  1006. /package/dist/{mutable-allowlist-detectors-TCG6mnbz.js → mutable-allowlist-detectors-BXE7Hr7F.js} +0 -0
  1007. /package/dist/{onboard-config-BxfgUqk6.js → onboard-config-DOmXYEvJ.js} +0 -0
  1008. /package/dist/{onboard-config-DNzlo8Cg.js → onboard-config-JmR21VYa.js} +0 -0
  1009. /package/dist/{parse-log-line-CT0H1-oQ.js → parse-log-line-GisaZn5H.js} +0 -0
  1010. /package/dist/{parse-log-line-pij_xhtE.js → parse-log-line-ZsbwG_u7.js} +0 -0
  1011. /package/dist/{parse-timeout-CvODy9RC.js → parse-timeout-BpphuwYl.js} +0 -0
  1012. /package/dist/{parse-timeout-CxYHsZWc.js → parse-timeout-CE6BjmGU.js} +0 -0
  1013. /package/dist/plugin-sdk/{media-understanding → stt}/providers/google/inline-data.d.ts +0 -0
  1014. /package/dist/{plugins-allowlist-Bcqe9Gd8.js → plugins-allowlist-A38nxBRG.js} +0 -0
  1015. /package/dist/{plugins-allowlist-ptAp-oPY.js → plugins-allowlist-D2tS9tcu.js} +0 -0
  1016. /package/dist/{polls-DQrR-qT3.js → polls-BLyT08ZI.js} +0 -0
  1017. /package/dist/{polls-ybwcqkWt.js → polls-BmymsJEe.js} +0 -0
  1018. /package/dist/{ports-BS8kQkd9.js → ports-DALdfBQy.js} +0 -0
  1019. /package/dist/{process-scoped-map-BwUkYFQV.js → process-scoped-map-BCJR56ZB.js} +0 -0
  1020. /package/dist/{process-scoped-map-_zxf_kLz.js → process-scoped-map-Cb1EHPyN.js} +0 -0
  1021. /package/dist/{program-context-CG-t6Yp-.js → program-context-DlXnmuB7.js} +0 -0
  1022. /package/dist/{prompt-style-B1740PBl.js → prompt-style-CUuA6OCy.js} +0 -0
  1023. /package/dist/{proxy-BdjLhNln.js → proxy-D-qGA1vm.js} +0 -0
  1024. /package/dist/{pw-ai-state-DaISdsXY.js → pw-ai-state--TxTVwRW.js} +0 -0
  1025. /package/dist/{redact-CqWx9rpK.js → redact-BW8tobyp.js} +0 -0
  1026. /package/dist/{redact-identifier-DR54qsoT.js → redact-identifier-Bv5SUUw-.js} +0 -0
  1027. /package/dist/{remoteclaw-root-u8dAeHID.js → remoteclaw-root-BfPjgewe.js} +0 -0
  1028. /package/dist/{remoteclaw-root-CgNyrbxc.js → remoteclaw-root-E4-hmb4E.js} +0 -0
  1029. /package/dist/{render-CDCvpfhh.js → render-BhKzKdV0.js} +0 -0
  1030. /package/dist/{render-CJl4GK1B.js → render-e7fENCYH.js} +0 -0
  1031. /package/dist/{retry-cXXk2j6_.js → retry-BWv_fy4u.js} +0 -0
  1032. /package/dist/{runtime-guard-BS55uiSW.js → runtime-guard-Bhx-pb8_.js} +0 -0
  1033. /package/dist/{runtime-status-BhW7hP_U.js → runtime-status-CR9445g5.js} +0 -0
  1034. /package/dist/{secret-equal-CJzes24Z.js → secret-equal-D6AoXne1.js} +0 -0
  1035. /package/dist/{secret-equal-CQAmGfGc.js → secret-equal-DLnUuWM3.js} +0 -0
  1036. /package/dist/{secure-random-B3f7Ri2X.js → secure-random-CJtykx_p.js} +0 -0
  1037. /package/dist/{secure-random-BkZFG9cd.js → secure-random-CRVHgtmO.js} +0 -0
  1038. /package/dist/{stagger-B-_Wnofy.js → stagger--wvODnNe.js} +0 -0
  1039. /package/dist/{stagger-B2ORDHsP.js → stagger-BLmTO4cK.js} +0 -0
  1040. /package/dist/{status-C6YNwimj.js → status-1zVD-Clq.js} +0 -0
  1041. /package/dist/{status-yrDGXYZM.js → status-BtRY0nXQ.js} +0 -0
  1042. /package/dist/{strip-inbound-meta-0cvL6itU.js → strip-inbound-meta-zmUXypSS.js} +0 -0
  1043. /package/dist/{strip-inbound-meta-DjKcSFaW.js → strip-inbound-meta-zqtN9FTK.js} +0 -0
  1044. /package/dist/{table-ByMyHTh_.js → table-On3hkCqi.js} +0 -0
  1045. /package/dist/{targets-DOJXjN1U.js → targets-B46m7u5J.js} +0 -0
  1046. /package/dist/{targets-WSwPflb6.js → targets-D7PT_rdO.js} +0 -0
  1047. /package/dist/{text-format-mr5bZq0f.js → text-format-Ds92M9UT.js} +0 -0
  1048. /package/dist/{tokens-C8yGxAcR.js → tokens-Dw7ZdYwT.js} +0 -0
  1049. /package/dist/{usage-BXi79Rq6.js → usage-BIzKZ5dT.js} +0 -0
  1050. /package/dist/{usage-C1lHaofV.js → usage-BvZOzIC7.js} +0 -0
  1051. /package/dist/{usage-format-CD5jsZY1.js → usage-format-CmniSPCG.js} +0 -0
  1052. /package/dist/{usage-format-CRVpDVj1.js → usage-format-D_KQYQ-w.js} +0 -0
  1053. /package/dist/{widearea-dns-DFZMcfLf.js → widearea-dns-D01FFYZ8.js} +0 -0
  1054. /package/dist/{wsl-D28w2jQC.js → wsl-PDLKeX04.js} +0 -0
@@ -0,0 +1,1311 @@
1
+ import { Ct as theme, _ as defaultRuntime, ot as shortenHomePath, rt as resolveUserPath, t as isMainModule } from "./entry.js";
2
+ import { i as loadConfig } from "./config-BTH7fB_v.js";
3
+ import "./host-env-security-axRnIi8d.js";
4
+ import "./shell-env-DBS5su07.js";
5
+ import { t as VERSION } from "./version-3QUZW8EP.js";
6
+ import "./env-vars-CD2_baIP.js";
7
+ import "./agent-scope-BA1HP4K6.js";
8
+ import "./zod-schema-CvFqwpNE.js";
9
+ import { f as GATEWAY_CLIENT_MODES, p as GATEWAY_CLIENT_NAMES } from "./message-channel-tuc9CdEw.js";
10
+ import { t as GatewayClient } from "./client-B6h7bgbF.js";
11
+ import { t as buildGatewayConnectionDetails } from "./call-D_NchaCs.js";
12
+ import "./net-DSkFMHJ8.js";
13
+ import "./logger-CPvz-aPM.js";
14
+ import "./ip-MwCwRA7c.js";
15
+ import "./tailnet-xt92Yaop.js";
16
+ import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DM_Dj0m8.js";
17
+ import { a as isKnownCoreToolId, t as DANGEROUS_ACP_TOOLS } from "./dangerous-tools-BRmbBvRf.js";
18
+ import { t as ensureRemoteClawCliOnPath } from "./path-env-GTM4HXCN.js";
19
+ import { t as formatDocsLink } from "./links-CwTlzaPe.js";
20
+ import { n as inheritOptionFromParent } from "./command-options-D2nN4AXX.js";
21
+ import { spawn } from "node:child_process";
22
+ import { fileURLToPath } from "node:url";
23
+ import path from "node:path";
24
+ import fs from "node:fs";
25
+ import { randomUUID } from "node:crypto";
26
+ import * as readline$1 from "node:readline";
27
+ import { Readable, Writable } from "node:stream";
28
+ import { AgentSideConnection, ClientSideConnection, PROTOCOL_VERSION, ndJsonStream } from "@agentclientprotocol/sdk";
29
+
30
+ //#region src/acp/client.ts
31
+ const SAFE_AUTO_APPROVE_TOOL_IDS = new Set(["search"]);
32
+ const TRUSTED_SAFE_TOOL_ALIASES = new Set(["search"]);
33
+ const TOOL_NAME_MAX_LENGTH = 128;
34
+ const TOOL_NAME_PATTERN = /^[a-z0-9._-]+$/;
35
+ const TOOL_KIND_BY_ID = new Map([["search", "search"]]);
36
+ function asRecord(value) {
37
+ return value && typeof value === "object" && !Array.isArray(value) ? value : void 0;
38
+ }
39
+ function readFirstStringValue(source, keys) {
40
+ if (!source) return;
41
+ for (const key of keys) {
42
+ const value = source[key];
43
+ if (typeof value === "string" && value.trim()) return value.trim();
44
+ }
45
+ }
46
+ function normalizeToolName(value) {
47
+ const normalized = value.trim().toLowerCase();
48
+ if (!normalized || normalized.length > TOOL_NAME_MAX_LENGTH) return;
49
+ if (!TOOL_NAME_PATTERN.test(normalized)) return;
50
+ return normalized;
51
+ }
52
+ function parseToolNameFromTitle(title) {
53
+ if (!title) return;
54
+ const head = title.split(":", 1)[0]?.trim();
55
+ if (!head) return;
56
+ return normalizeToolName(head);
57
+ }
58
+ function resolveToolKindForPermission(toolName) {
59
+ if (!toolName) return;
60
+ return TOOL_KIND_BY_ID.get(toolName) ?? "other";
61
+ }
62
+ function resolveToolNameForPermission(params) {
63
+ const toolCall = params.toolCall;
64
+ const toolMeta = asRecord(toolCall?._meta);
65
+ const rawInput = asRecord(toolCall?.rawInput);
66
+ const fromMeta = readFirstStringValue(toolMeta, [
67
+ "toolName",
68
+ "tool_name",
69
+ "name"
70
+ ]);
71
+ const fromRawInput = readFirstStringValue(rawInput, [
72
+ "tool",
73
+ "toolName",
74
+ "tool_name",
75
+ "name"
76
+ ]);
77
+ const fromTitle = parseToolNameFromTitle(toolCall?.title);
78
+ return normalizeToolName(fromMeta ?? fromRawInput ?? fromTitle ?? "");
79
+ }
80
+ function shouldAutoApproveToolCall(toolName) {
81
+ const isTrustedToolId = typeof toolName === "string" && (isKnownCoreToolId(toolName) || TRUSTED_SAFE_TOOL_ALIASES.has(toolName));
82
+ if (!toolName || !isTrustedToolId || !SAFE_AUTO_APPROVE_TOOL_IDS.has(toolName)) return false;
83
+ return true;
84
+ }
85
+ function pickOption(options, kinds) {
86
+ for (const kind of kinds) {
87
+ const match = options.find((option) => option.kind === kind);
88
+ if (match) return match;
89
+ }
90
+ }
91
+ function selectedPermission(optionId) {
92
+ return { outcome: {
93
+ outcome: "selected",
94
+ optionId
95
+ } };
96
+ }
97
+ function cancelledPermission() {
98
+ return { outcome: { outcome: "cancelled" } };
99
+ }
100
+ function promptUserPermission(toolName, toolTitle) {
101
+ if (!process.stdin.isTTY || !process.stderr.isTTY) {
102
+ console.error(`[permission denied] ${toolName ?? "unknown"}: non-interactive terminal`);
103
+ return Promise.resolve(false);
104
+ }
105
+ return new Promise((resolve) => {
106
+ let settled = false;
107
+ const rl = readline$1.createInterface({
108
+ input: process.stdin,
109
+ output: process.stderr
110
+ });
111
+ const finish = (approved) => {
112
+ if (settled) return;
113
+ settled = true;
114
+ clearTimeout(timeout);
115
+ rl.close();
116
+ resolve(approved);
117
+ };
118
+ const timeout = setTimeout(() => {
119
+ console.error(`\n[permission timeout] denied: ${toolName ?? "unknown"}`);
120
+ finish(false);
121
+ }, 3e4);
122
+ const label = toolTitle ? toolName ? `${toolTitle} (${toolName})` : toolTitle : toolName ?? "unknown tool";
123
+ rl.question(`\n[permission] Allow "${label}"? (y/N) `, (answer) => {
124
+ const approved = answer.trim().toLowerCase() === "y";
125
+ console.error(`[permission ${approved ? "approved" : "denied"}] ${toolName ?? "unknown"}`);
126
+ finish(approved);
127
+ });
128
+ });
129
+ }
130
+ async function resolvePermissionRequest(params, deps = {}) {
131
+ const log = deps.log ?? ((line) => console.error(line));
132
+ const prompt = deps.prompt ?? promptUserPermission;
133
+ const options = params.options ?? [];
134
+ const toolTitle = params.toolCall?.title ?? "tool";
135
+ const toolName = resolveToolNameForPermission(params);
136
+ const toolKind = resolveToolKindForPermission(toolName);
137
+ if (options.length === 0) {
138
+ log(`[permission cancelled] ${toolName ?? "unknown"}: no options available`);
139
+ return cancelledPermission();
140
+ }
141
+ const allowOption = pickOption(options, ["allow_once", "allow_always"]);
142
+ const rejectOption = pickOption(options, ["reject_once", "reject_always"]);
143
+ const autoApproveAllowed = shouldAutoApproveToolCall(toolName);
144
+ if (!(!toolName || !autoApproveAllowed || DANGEROUS_ACP_TOOLS.has(toolName))) {
145
+ const option = allowOption ?? options[0];
146
+ if (!option) {
147
+ log(`[permission cancelled] ${toolName}: no selectable options`);
148
+ return cancelledPermission();
149
+ }
150
+ log(`[permission auto-approved] ${toolName} (${toolKind ?? "unknown"})`);
151
+ return selectedPermission(option.optionId);
152
+ }
153
+ log(`\n[permission requested] ${toolTitle}${toolName ? ` (${toolName})` : ""}${toolKind ? ` [${toolKind}]` : ""}`);
154
+ const approved = await prompt(toolName, toolTitle);
155
+ if (approved && allowOption) return selectedPermission(allowOption.optionId);
156
+ if (!approved && rejectOption) return selectedPermission(rejectOption.optionId);
157
+ log(`[permission cancelled] ${toolName ?? "unknown"}: missing ${approved ? "allow" : "reject"} option`);
158
+ return cancelledPermission();
159
+ }
160
+ function toArgs(value) {
161
+ if (!value) return [];
162
+ return Array.isArray(value) ? value : [value];
163
+ }
164
+ function buildServerArgs(opts) {
165
+ const args = ["acp", ...toArgs(opts.serverArgs)];
166
+ if (opts.serverVerbose && !args.includes("--verbose") && !args.includes("-v")) args.push("--verbose");
167
+ return args;
168
+ }
169
+ function resolveSelfEntryPath() {
170
+ try {
171
+ const here = fileURLToPath(import.meta.url);
172
+ const candidate = path.resolve(path.dirname(here), "..", "entry.js");
173
+ if (fs.existsSync(candidate)) return candidate;
174
+ } catch {}
175
+ const argv1 = process.argv[1]?.trim();
176
+ if (argv1) return path.isAbsolute(argv1) ? argv1 : path.resolve(process.cwd(), argv1);
177
+ return null;
178
+ }
179
+ function printSessionUpdate(notification) {
180
+ const update = notification.update;
181
+ if (!("sessionUpdate" in update)) return;
182
+ switch (update.sessionUpdate) {
183
+ case "agent_message_chunk":
184
+ if (update.content?.type === "text") process.stdout.write(update.content.text);
185
+ return;
186
+ case "tool_call":
187
+ console.log(`\n[tool] ${update.title} (${update.status})`);
188
+ return;
189
+ case "tool_call_update":
190
+ if (update.status) console.log(`[tool update] ${update.toolCallId}: ${update.status}`);
191
+ return;
192
+ case "available_commands_update": {
193
+ const names = update.availableCommands?.map((cmd) => `/${cmd.name}`).join(" ");
194
+ if (names) console.log(`\n[commands] ${names}`);
195
+ return;
196
+ }
197
+ default: return;
198
+ }
199
+ }
200
+ async function createAcpClient(opts = {}) {
201
+ const cwd = opts.cwd ?? process.cwd();
202
+ const log = Boolean(opts.verbose) ? (msg) => console.error(`[acp-client] ${msg}`) : () => {};
203
+ ensureRemoteClawCliOnPath();
204
+ const serverArgs = buildServerArgs(opts);
205
+ const entryPath = resolveSelfEntryPath();
206
+ const serverCommand = opts.serverCommand ?? (entryPath ? process.execPath : "remoteclaw");
207
+ const effectiveArgs = opts.serverCommand || !entryPath ? serverArgs : [entryPath, ...serverArgs];
208
+ log(`spawning: ${serverCommand} ${effectiveArgs.join(" ")}`);
209
+ const agent = spawn(serverCommand, effectiveArgs, {
210
+ stdio: [
211
+ "pipe",
212
+ "pipe",
213
+ "inherit"
214
+ ],
215
+ cwd
216
+ });
217
+ if (!agent.stdin || !agent.stdout) throw new Error("Failed to create ACP stdio pipes");
218
+ const client = new ClientSideConnection(() => ({
219
+ sessionUpdate: async (params) => {
220
+ printSessionUpdate(params);
221
+ },
222
+ requestPermission: async (params) => {
223
+ return resolvePermissionRequest(params, { cwd });
224
+ }
225
+ }), ndJsonStream(Writable.toWeb(agent.stdin), Readable.toWeb(agent.stdout)));
226
+ log("initializing");
227
+ await client.initialize({
228
+ protocolVersion: PROTOCOL_VERSION,
229
+ clientCapabilities: {
230
+ fs: {
231
+ readTextFile: true,
232
+ writeTextFile: true
233
+ },
234
+ terminal: true
235
+ },
236
+ clientInfo: {
237
+ name: "remoteclaw-acp-client",
238
+ version: "1.0.0"
239
+ }
240
+ });
241
+ log("creating session");
242
+ return {
243
+ client,
244
+ agent,
245
+ sessionId: (await client.newSession({
246
+ cwd,
247
+ mcpServers: []
248
+ })).sessionId
249
+ };
250
+ }
251
+ async function runAcpClientInteractive(opts = {}) {
252
+ const { client, agent, sessionId } = await createAcpClient(opts);
253
+ const rl = readline$1.createInterface({
254
+ input: process.stdin,
255
+ output: process.stdout
256
+ });
257
+ console.log("RemoteClaw ACP client");
258
+ console.log(`Session: ${sessionId}`);
259
+ console.log("Type a prompt, or \"exit\" to quit.\n");
260
+ const prompt = () => {
261
+ rl.question("> ", async (input) => {
262
+ const text = input.trim();
263
+ if (!text) {
264
+ prompt();
265
+ return;
266
+ }
267
+ if (text === "exit" || text === "quit") {
268
+ agent.kill();
269
+ rl.close();
270
+ process.exit(0);
271
+ }
272
+ try {
273
+ const response = await client.prompt({
274
+ sessionId,
275
+ prompt: [{
276
+ type: "text",
277
+ text
278
+ }]
279
+ });
280
+ console.log(`\n[${response.stopReason}]\n`);
281
+ } catch (err) {
282
+ console.error(`\n[error] ${String(err)}\n`);
283
+ }
284
+ prompt();
285
+ });
286
+ };
287
+ prompt();
288
+ agent.on("exit", (code) => {
289
+ console.log(`\nAgent exited with code ${code ?? 0}`);
290
+ rl.close();
291
+ process.exit(code ?? 0);
292
+ });
293
+ }
294
+
295
+ //#endregion
296
+ //#region src/acp/secret-file.ts
297
+ function readSecretFromFile(filePath, label) {
298
+ const resolvedPath = resolveUserPath(filePath.trim());
299
+ if (!resolvedPath) throw new Error(`${label} file path is empty.`);
300
+ let raw = "";
301
+ try {
302
+ raw = fs.readFileSync(resolvedPath, "utf8");
303
+ } catch (err) {
304
+ throw new Error(`Failed to read ${label} file at ${resolvedPath}: ${String(err)}`, { cause: err });
305
+ }
306
+ const secret = raw.trim();
307
+ if (!secret) throw new Error(`${label} file at ${resolvedPath} is empty.`);
308
+ return secret;
309
+ }
310
+
311
+ //#endregion
312
+ //#region src/infra/fixed-window-rate-limit.ts
313
+ function createFixedWindowRateLimiter(params) {
314
+ const maxRequests = Math.max(1, Math.floor(params.maxRequests));
315
+ const windowMs = Math.max(1, Math.floor(params.windowMs));
316
+ const now = params.now ?? Date.now;
317
+ let count = 0;
318
+ let windowStartMs = 0;
319
+ return {
320
+ consume() {
321
+ const nowMs = now();
322
+ if (nowMs - windowStartMs >= windowMs) {
323
+ windowStartMs = nowMs;
324
+ count = 0;
325
+ }
326
+ if (count >= maxRequests) return {
327
+ allowed: false,
328
+ retryAfterMs: Math.max(0, windowStartMs + windowMs - nowMs),
329
+ remaining: 0
330
+ };
331
+ count += 1;
332
+ return {
333
+ allowed: true,
334
+ retryAfterMs: 0,
335
+ remaining: Math.max(0, maxRequests - count)
336
+ };
337
+ },
338
+ reset() {
339
+ count = 0;
340
+ windowStartMs = 0;
341
+ }
342
+ };
343
+ }
344
+
345
+ //#endregion
346
+ //#region src/acp/commands.ts
347
+ function getAvailableCommands() {
348
+ return [
349
+ {
350
+ name: "help",
351
+ description: "Show help and common commands."
352
+ },
353
+ {
354
+ name: "commands",
355
+ description: "List available commands."
356
+ },
357
+ {
358
+ name: "status",
359
+ description: "Show current status."
360
+ },
361
+ {
362
+ name: "context",
363
+ description: "Explain context usage (list|detail|json).",
364
+ input: { hint: "list | detail | json" }
365
+ },
366
+ {
367
+ name: "whoami",
368
+ description: "Show sender id (alias: /id)."
369
+ },
370
+ {
371
+ name: "id",
372
+ description: "Alias for /whoami."
373
+ },
374
+ {
375
+ name: "subagents",
376
+ description: "List or manage sub-agents."
377
+ },
378
+ {
379
+ name: "config",
380
+ description: "Read or write config (owner-only)."
381
+ },
382
+ {
383
+ name: "debug",
384
+ description: "Set runtime-only overrides (owner-only)."
385
+ },
386
+ {
387
+ name: "usage",
388
+ description: "Toggle usage footer (off|tokens|full)."
389
+ },
390
+ {
391
+ name: "stop",
392
+ description: "Stop the current run."
393
+ },
394
+ {
395
+ name: "restart",
396
+ description: "Restart the gateway (if enabled)."
397
+ },
398
+ {
399
+ name: "dock-telegram",
400
+ description: "Route replies to Telegram."
401
+ },
402
+ {
403
+ name: "dock-discord",
404
+ description: "Route replies to Discord."
405
+ },
406
+ {
407
+ name: "dock-slack",
408
+ description: "Route replies to Slack."
409
+ },
410
+ {
411
+ name: "activation",
412
+ description: "Set group activation (mention|always)."
413
+ },
414
+ {
415
+ name: "send",
416
+ description: "Set send mode (on|off|inherit)."
417
+ },
418
+ {
419
+ name: "reset",
420
+ description: "Reset the session (/new)."
421
+ },
422
+ {
423
+ name: "new",
424
+ description: "Reset the session (/reset)."
425
+ },
426
+ {
427
+ name: "think",
428
+ description: "Set thinking level (off|minimal|low|medium|high|xhigh)."
429
+ },
430
+ {
431
+ name: "verbose",
432
+ description: "Set verbose mode (on|full|off)."
433
+ },
434
+ {
435
+ name: "reasoning",
436
+ description: "Toggle reasoning output (on|off|stream)."
437
+ },
438
+ {
439
+ name: "model",
440
+ description: "Select a model (list|status|<name>)."
441
+ },
442
+ {
443
+ name: "queue",
444
+ description: "Adjust queue mode and options."
445
+ },
446
+ {
447
+ name: "compact",
448
+ description: "Compact the session history."
449
+ }
450
+ ];
451
+ }
452
+
453
+ //#endregion
454
+ //#region src/acp/event-mapper.ts
455
+ const INLINE_CONTROL_ESCAPE_MAP = {
456
+ "\0": "\\0",
457
+ "\r": "\\r",
458
+ "\n": "\\n",
459
+ " ": "\\t",
460
+ "\v": "\\v",
461
+ "\f": "\\f",
462
+ "\u2028": "\\u2028",
463
+ "\u2029": "\\u2029"
464
+ };
465
+ function escapeInlineControlChars(value) {
466
+ let escaped = "";
467
+ for (const char of value) {
468
+ const codePoint = char.codePointAt(0);
469
+ if (codePoint === void 0) {
470
+ escaped += char;
471
+ continue;
472
+ }
473
+ if (!(codePoint <= 31 || codePoint >= 127 && codePoint <= 159 || codePoint === 8232 || codePoint === 8233)) {
474
+ escaped += char;
475
+ continue;
476
+ }
477
+ const mapped = INLINE_CONTROL_ESCAPE_MAP[char];
478
+ if (mapped) {
479
+ escaped += mapped;
480
+ continue;
481
+ }
482
+ escaped += codePoint <= 255 ? `\\x${codePoint.toString(16).padStart(2, "0")}` : `\\u${codePoint.toString(16).padStart(4, "0")}`;
483
+ }
484
+ return escaped;
485
+ }
486
+ function escapeResourceTitle(value) {
487
+ return escapeInlineControlChars(value).replace(/[()[\]]/g, (char) => `\\${char}`);
488
+ }
489
+ function extractTextFromPrompt(prompt, maxBytes) {
490
+ const parts = [];
491
+ let totalBytes = 0;
492
+ for (const block of prompt) {
493
+ let blockText;
494
+ if (block.type === "text") blockText = block.text;
495
+ else if (block.type === "resource") {
496
+ const resource = block.resource;
497
+ if (resource?.text) blockText = resource.text;
498
+ } else if (block.type === "resource_link") {
499
+ const title = block.title ? ` (${escapeResourceTitle(block.title)})` : "";
500
+ const uri = block.uri ? escapeInlineControlChars(block.uri) : "";
501
+ blockText = uri ? `[Resource link${title}] ${uri}` : `[Resource link${title}]`;
502
+ }
503
+ if (blockText !== void 0) {
504
+ if (maxBytes !== void 0) {
505
+ const separatorBytes = parts.length > 0 ? 1 : 0;
506
+ totalBytes += separatorBytes + Buffer.byteLength(blockText, "utf-8");
507
+ if (totalBytes > maxBytes) throw new Error(`Prompt exceeds maximum allowed size of ${maxBytes} bytes`);
508
+ }
509
+ parts.push(blockText);
510
+ }
511
+ }
512
+ return parts.join("\n");
513
+ }
514
+ function extractAttachmentsFromPrompt(prompt) {
515
+ const attachments = [];
516
+ for (const block of prompt) {
517
+ if (block.type !== "image") continue;
518
+ const image = block;
519
+ if (!image.data || !image.mimeType) continue;
520
+ attachments.push({
521
+ type: "image",
522
+ mimeType: image.mimeType,
523
+ content: image.data
524
+ });
525
+ }
526
+ return attachments;
527
+ }
528
+ function formatToolTitle(name, args) {
529
+ const base = name ?? "tool";
530
+ if (!args || Object.keys(args).length === 0) return base;
531
+ return `${base}: ${Object.entries(args).map(([key, value]) => {
532
+ const raw = typeof value === "string" ? value : JSON.stringify(value);
533
+ return `${key}: ${raw.length > 100 ? `${raw.slice(0, 100)}...` : raw}`;
534
+ }).join(", ")}`;
535
+ }
536
+ function inferToolKind(name) {
537
+ if (!name) return "other";
538
+ const normalized = name.toLowerCase();
539
+ if (normalized.includes("read")) return "read";
540
+ if (normalized.includes("edit")) return "edit";
541
+ if (normalized.includes("delete") || normalized.includes("remove")) return "delete";
542
+ if (normalized.includes("move") || normalized.includes("rename")) return "move";
543
+ if (normalized.includes("search") || normalized.includes("find")) return "search";
544
+ if (normalized.includes("run") || normalized.includes("bash")) return "execute";
545
+ if (normalized.includes("fetch") || normalized.includes("http")) return "fetch";
546
+ return "other";
547
+ }
548
+
549
+ //#endregion
550
+ //#region src/acp/meta.ts
551
+ function readString(meta, keys) {
552
+ if (!meta) return;
553
+ for (const key of keys) {
554
+ const value = meta[key];
555
+ if (typeof value === "string" && value.trim()) return value.trim();
556
+ }
557
+ }
558
+ function readBool(meta, keys) {
559
+ if (!meta) return;
560
+ for (const key of keys) {
561
+ const value = meta[key];
562
+ if (typeof value === "boolean") return value;
563
+ }
564
+ }
565
+ function readNumber(meta, keys) {
566
+ if (!meta) return;
567
+ for (const key of keys) {
568
+ const value = meta[key];
569
+ if (typeof value === "number" && Number.isFinite(value)) return value;
570
+ }
571
+ }
572
+
573
+ //#endregion
574
+ //#region src/acp/session-mapper.ts
575
+ function parseSessionMeta(meta) {
576
+ if (!meta || typeof meta !== "object") return {};
577
+ const record = meta;
578
+ return {
579
+ sessionKey: readString(record, [
580
+ "sessionKey",
581
+ "session",
582
+ "key"
583
+ ]),
584
+ sessionLabel: readString(record, ["sessionLabel", "label"]),
585
+ resetSession: readBool(record, ["resetSession", "reset"]),
586
+ requireExisting: readBool(record, ["requireExistingSession", "requireExisting"]),
587
+ prefixCwd: readBool(record, ["prefixCwd"])
588
+ };
589
+ }
590
+ async function resolveSessionKey(params) {
591
+ const requestedLabel = params.meta.sessionLabel ?? params.opts.defaultSessionLabel;
592
+ const requestedKey = params.meta.sessionKey ?? params.opts.defaultSessionKey;
593
+ const requireExisting = params.meta.requireExisting ?? params.opts.requireExistingSession ?? false;
594
+ if (params.meta.sessionLabel) {
595
+ const resolved = await params.gateway.request("sessions.resolve", { label: params.meta.sessionLabel });
596
+ if (!resolved?.key) throw new Error(`Unable to resolve session label: ${params.meta.sessionLabel}`);
597
+ return resolved.key;
598
+ }
599
+ if (params.meta.sessionKey) {
600
+ if (!requireExisting) return params.meta.sessionKey;
601
+ const resolved = await params.gateway.request("sessions.resolve", { key: params.meta.sessionKey });
602
+ if (!resolved?.key) throw new Error(`Session key not found: ${params.meta.sessionKey}`);
603
+ return resolved.key;
604
+ }
605
+ if (requestedLabel) {
606
+ const resolved = await params.gateway.request("sessions.resolve", { label: requestedLabel });
607
+ if (!resolved?.key) throw new Error(`Unable to resolve session label: ${requestedLabel}`);
608
+ return resolved.key;
609
+ }
610
+ if (requestedKey) {
611
+ if (!requireExisting) return requestedKey;
612
+ const resolved = await params.gateway.request("sessions.resolve", { key: requestedKey });
613
+ if (!resolved?.key) throw new Error(`Session key not found: ${requestedKey}`);
614
+ return resolved.key;
615
+ }
616
+ return params.fallbackKey;
617
+ }
618
+ async function resetSessionIfNeeded(params) {
619
+ if (!(params.meta.resetSession ?? params.opts.resetSession ?? false)) return;
620
+ await params.gateway.request("sessions.reset", { key: params.sessionKey });
621
+ }
622
+
623
+ //#endregion
624
+ //#region src/acp/session.ts
625
+ const DEFAULT_MAX_SESSIONS = 5e3;
626
+ const DEFAULT_IDLE_TTL_MS = 1440 * 60 * 1e3;
627
+ function createInMemorySessionStore(options = {}) {
628
+ const maxSessions = Math.max(1, options.maxSessions ?? DEFAULT_MAX_SESSIONS);
629
+ const idleTtlMs = Math.max(1e3, options.idleTtlMs ?? DEFAULT_IDLE_TTL_MS);
630
+ const now = options.now ?? Date.now;
631
+ const sessions = /* @__PURE__ */ new Map();
632
+ const runIdToSessionId = /* @__PURE__ */ new Map();
633
+ const touchSession = (session, nowMs) => {
634
+ session.lastTouchedAt = nowMs;
635
+ };
636
+ const removeSession = (sessionId) => {
637
+ const session = sessions.get(sessionId);
638
+ if (!session) return false;
639
+ if (session.activeRunId) runIdToSessionId.delete(session.activeRunId);
640
+ session.abortController?.abort();
641
+ sessions.delete(sessionId);
642
+ return true;
643
+ };
644
+ const reapIdleSessions = (nowMs) => {
645
+ const idleBefore = nowMs - idleTtlMs;
646
+ for (const [sessionId, session] of sessions.entries()) {
647
+ if (session.activeRunId || session.abortController) continue;
648
+ if (session.lastTouchedAt > idleBefore) continue;
649
+ removeSession(sessionId);
650
+ }
651
+ };
652
+ const evictOldestIdleSession = () => {
653
+ let oldestSessionId = null;
654
+ let oldestLastTouchedAt = Number.POSITIVE_INFINITY;
655
+ for (const [sessionId, session] of sessions.entries()) {
656
+ if (session.activeRunId || session.abortController) continue;
657
+ if (session.lastTouchedAt >= oldestLastTouchedAt) continue;
658
+ oldestLastTouchedAt = session.lastTouchedAt;
659
+ oldestSessionId = sessionId;
660
+ }
661
+ if (!oldestSessionId) return false;
662
+ return removeSession(oldestSessionId);
663
+ };
664
+ const createSession = (params) => {
665
+ const nowMs = now();
666
+ const sessionId = params.sessionId ?? randomUUID();
667
+ const existingSession = sessions.get(sessionId);
668
+ if (existingSession) {
669
+ existingSession.sessionKey = params.sessionKey;
670
+ existingSession.cwd = params.cwd;
671
+ touchSession(existingSession, nowMs);
672
+ return existingSession;
673
+ }
674
+ reapIdleSessions(nowMs);
675
+ if (sessions.size >= maxSessions && !evictOldestIdleSession()) throw new Error(`ACP session limit reached (max ${maxSessions}). Close idle ACP clients and retry.`);
676
+ const session = {
677
+ sessionId,
678
+ sessionKey: params.sessionKey,
679
+ cwd: params.cwd,
680
+ createdAt: nowMs,
681
+ lastTouchedAt: nowMs,
682
+ abortController: null,
683
+ activeRunId: null
684
+ };
685
+ sessions.set(sessionId, session);
686
+ return session;
687
+ };
688
+ const hasSession = (sessionId) => sessions.has(sessionId);
689
+ const getSession = (sessionId) => {
690
+ const session = sessions.get(sessionId);
691
+ if (session) touchSession(session, now());
692
+ return session;
693
+ };
694
+ const getSessionByRunId = (runId) => {
695
+ const sessionId = runIdToSessionId.get(runId);
696
+ if (!sessionId) return;
697
+ const session = sessions.get(sessionId);
698
+ if (session) touchSession(session, now());
699
+ return session;
700
+ };
701
+ const setActiveRun = (sessionId, runId, abortController) => {
702
+ const session = sessions.get(sessionId);
703
+ if (!session) return;
704
+ session.activeRunId = runId;
705
+ session.abortController = abortController;
706
+ runIdToSessionId.set(runId, sessionId);
707
+ touchSession(session, now());
708
+ };
709
+ const clearActiveRun = (sessionId) => {
710
+ const session = sessions.get(sessionId);
711
+ if (!session) return;
712
+ if (session.activeRunId) runIdToSessionId.delete(session.activeRunId);
713
+ session.activeRunId = null;
714
+ session.abortController = null;
715
+ touchSession(session, now());
716
+ };
717
+ const cancelActiveRun = (sessionId) => {
718
+ const session = sessions.get(sessionId);
719
+ if (!session?.abortController) return false;
720
+ session.abortController.abort();
721
+ if (session.activeRunId) runIdToSessionId.delete(session.activeRunId);
722
+ session.abortController = null;
723
+ session.activeRunId = null;
724
+ touchSession(session, now());
725
+ return true;
726
+ };
727
+ const clearAllSessionsForTest = () => {
728
+ for (const session of sessions.values()) session.abortController?.abort();
729
+ sessions.clear();
730
+ runIdToSessionId.clear();
731
+ };
732
+ return {
733
+ createSession,
734
+ hasSession,
735
+ getSession,
736
+ getSessionByRunId,
737
+ setActiveRun,
738
+ clearActiveRun,
739
+ cancelActiveRun,
740
+ clearAllSessionsForTest
741
+ };
742
+ }
743
+ const defaultAcpSessionStore = createInMemorySessionStore();
744
+
745
+ //#endregion
746
+ //#region src/acp/types.ts
747
+ const ACP_AGENT_INFO = {
748
+ name: "remoteclaw-acp",
749
+ title: "RemoteClaw ACP Gateway",
750
+ version: VERSION
751
+ };
752
+
753
+ //#endregion
754
+ //#region src/acp/translator.ts
755
+ const MAX_PROMPT_BYTES = 2 * 1024 * 1024;
756
+ const SESSION_CREATE_RATE_LIMIT_DEFAULT_MAX_REQUESTS = 120;
757
+ const SESSION_CREATE_RATE_LIMIT_DEFAULT_WINDOW_MS = 1e4;
758
+ var AcpGatewayAgent = class {
759
+ constructor(connection, gateway, opts = {}) {
760
+ this.pendingPrompts = /* @__PURE__ */ new Map();
761
+ this.connection = connection;
762
+ this.gateway = gateway;
763
+ this.opts = opts;
764
+ this.log = opts.verbose ? (msg) => process.stderr.write(`[acp] ${msg}\n`) : () => {};
765
+ this.sessionStore = opts.sessionStore ?? defaultAcpSessionStore;
766
+ this.sessionCreateRateLimiter = createFixedWindowRateLimiter({
767
+ maxRequests: Math.max(1, opts.sessionCreateRateLimit?.maxRequests ?? SESSION_CREATE_RATE_LIMIT_DEFAULT_MAX_REQUESTS),
768
+ windowMs: Math.max(1e3, opts.sessionCreateRateLimit?.windowMs ?? SESSION_CREATE_RATE_LIMIT_DEFAULT_WINDOW_MS)
769
+ });
770
+ }
771
+ start() {
772
+ this.log("ready");
773
+ }
774
+ handleGatewayReconnect() {
775
+ this.log("gateway reconnected");
776
+ }
777
+ handleGatewayDisconnect(reason) {
778
+ this.log(`gateway disconnected: ${reason}`);
779
+ for (const pending of this.pendingPrompts.values()) {
780
+ pending.reject(/* @__PURE__ */ new Error(`Gateway disconnected: ${reason}`));
781
+ this.sessionStore.clearActiveRun(pending.sessionId);
782
+ }
783
+ this.pendingPrompts.clear();
784
+ }
785
+ async handleGatewayEvent(evt) {
786
+ if (evt.event === "chat") {
787
+ await this.handleChatEvent(evt);
788
+ return;
789
+ }
790
+ if (evt.event === "agent") await this.handleAgentEvent(evt);
791
+ }
792
+ async initialize(_params) {
793
+ return {
794
+ protocolVersion: PROTOCOL_VERSION,
795
+ agentCapabilities: {
796
+ loadSession: true,
797
+ promptCapabilities: {
798
+ image: true,
799
+ audio: false,
800
+ embeddedContext: true
801
+ },
802
+ mcpCapabilities: {
803
+ http: false,
804
+ sse: false
805
+ },
806
+ sessionCapabilities: { list: {} }
807
+ },
808
+ agentInfo: ACP_AGENT_INFO,
809
+ authMethods: []
810
+ };
811
+ }
812
+ async newSession(params) {
813
+ if (params.mcpServers.length > 0) this.log(`ignoring ${params.mcpServers.length} MCP servers`);
814
+ this.enforceSessionCreateRateLimit("newSession");
815
+ const sessionId = randomUUID();
816
+ const meta = parseSessionMeta(params._meta);
817
+ const sessionKey = await resolveSessionKey({
818
+ meta,
819
+ fallbackKey: `acp:${sessionId}`,
820
+ gateway: this.gateway,
821
+ opts: this.opts
822
+ });
823
+ await resetSessionIfNeeded({
824
+ meta,
825
+ sessionKey,
826
+ gateway: this.gateway,
827
+ opts: this.opts
828
+ });
829
+ const session = this.sessionStore.createSession({
830
+ sessionId,
831
+ sessionKey,
832
+ cwd: params.cwd
833
+ });
834
+ this.log(`newSession: ${session.sessionId} -> ${session.sessionKey}`);
835
+ await this.sendAvailableCommands(session.sessionId);
836
+ return { sessionId: session.sessionId };
837
+ }
838
+ async loadSession(params) {
839
+ if (params.mcpServers.length > 0) this.log(`ignoring ${params.mcpServers.length} MCP servers`);
840
+ if (!this.sessionStore.hasSession(params.sessionId)) this.enforceSessionCreateRateLimit("loadSession");
841
+ const meta = parseSessionMeta(params._meta);
842
+ const sessionKey = await resolveSessionKey({
843
+ meta,
844
+ fallbackKey: params.sessionId,
845
+ gateway: this.gateway,
846
+ opts: this.opts
847
+ });
848
+ await resetSessionIfNeeded({
849
+ meta,
850
+ sessionKey,
851
+ gateway: this.gateway,
852
+ opts: this.opts
853
+ });
854
+ const session = this.sessionStore.createSession({
855
+ sessionId: params.sessionId,
856
+ sessionKey,
857
+ cwd: params.cwd
858
+ });
859
+ this.log(`loadSession: ${session.sessionId} -> ${session.sessionKey}`);
860
+ await this.sendAvailableCommands(session.sessionId);
861
+ return {};
862
+ }
863
+ async unstable_listSessions(params) {
864
+ const limit = readNumber(params._meta, ["limit"]) ?? 100;
865
+ const result = await this.gateway.request("sessions.list", { limit });
866
+ const cwd = params.cwd ?? process.cwd();
867
+ return {
868
+ sessions: result.sessions.map((session) => ({
869
+ sessionId: session.key,
870
+ cwd,
871
+ title: session.displayName ?? session.label ?? session.key,
872
+ updatedAt: session.updatedAt ? new Date(session.updatedAt).toISOString() : void 0,
873
+ _meta: {
874
+ sessionKey: session.key,
875
+ kind: session.kind,
876
+ channel: session.channel
877
+ }
878
+ })),
879
+ nextCursor: null
880
+ };
881
+ }
882
+ async authenticate(_params) {
883
+ return {};
884
+ }
885
+ async setSessionMode(params) {
886
+ const session = this.sessionStore.getSession(params.sessionId);
887
+ if (!session) throw new Error(`Session ${params.sessionId} not found`);
888
+ if (!params.modeId) return {};
889
+ try {
890
+ await this.gateway.request("sessions.patch", { key: session.sessionKey });
891
+ this.log(`setSessionMode: ${session.sessionId} -> ${params.modeId}`);
892
+ } catch (err) {
893
+ this.log(`setSessionMode error: ${String(err)}`);
894
+ }
895
+ return {};
896
+ }
897
+ async prompt(params) {
898
+ const session = this.sessionStore.getSession(params.sessionId);
899
+ if (!session) throw new Error(`Session ${params.sessionId} not found`);
900
+ if (session.abortController) this.sessionStore.cancelActiveRun(params.sessionId);
901
+ const meta = parseSessionMeta(params._meta);
902
+ const userText = extractTextFromPrompt(params.prompt, MAX_PROMPT_BYTES);
903
+ const attachments = extractAttachmentsFromPrompt(params.prompt);
904
+ const prefixCwd = meta.prefixCwd ?? this.opts.prefixCwd ?? true;
905
+ const displayCwd = shortenHomePath(session.cwd);
906
+ const message = prefixCwd ? `[Working directory: ${displayCwd}]\n\n${userText}` : userText;
907
+ if (Buffer.byteLength(message, "utf-8") > MAX_PROMPT_BYTES) throw new Error(`Prompt exceeds maximum allowed size of ${MAX_PROMPT_BYTES} bytes`);
908
+ const abortController = new AbortController();
909
+ const runId = randomUUID();
910
+ this.sessionStore.setActiveRun(params.sessionId, runId, abortController);
911
+ return new Promise((resolve, reject) => {
912
+ this.pendingPrompts.set(params.sessionId, {
913
+ sessionId: params.sessionId,
914
+ sessionKey: session.sessionKey,
915
+ idempotencyKey: runId,
916
+ resolve,
917
+ reject
918
+ });
919
+ this.gateway.request("chat.send", {
920
+ sessionKey: session.sessionKey,
921
+ message,
922
+ attachments: attachments.length > 0 ? attachments : void 0,
923
+ idempotencyKey: runId,
924
+ deliver: readBool(params._meta, ["deliver"]),
925
+ timeoutMs: readNumber(params._meta, ["timeoutMs"])
926
+ }, { expectFinal: true }).catch((err) => {
927
+ this.pendingPrompts.delete(params.sessionId);
928
+ this.sessionStore.clearActiveRun(params.sessionId);
929
+ reject(err instanceof Error ? err : new Error(String(err)));
930
+ });
931
+ });
932
+ }
933
+ async cancel(params) {
934
+ const session = this.sessionStore.getSession(params.sessionId);
935
+ if (!session) return;
936
+ this.sessionStore.cancelActiveRun(params.sessionId);
937
+ try {
938
+ await this.gateway.request("chat.abort", { sessionKey: session.sessionKey });
939
+ } catch (err) {
940
+ this.log(`cancel error: ${String(err)}`);
941
+ }
942
+ const pending = this.pendingPrompts.get(params.sessionId);
943
+ if (pending) {
944
+ this.pendingPrompts.delete(params.sessionId);
945
+ pending.resolve({ stopReason: "cancelled" });
946
+ }
947
+ }
948
+ async handleAgentEvent(evt) {
949
+ const payload = evt.payload;
950
+ if (!payload) return;
951
+ const stream = payload.stream;
952
+ const data = payload.data;
953
+ const sessionKey = payload.sessionKey;
954
+ if (!stream || !data || !sessionKey) return;
955
+ if (stream !== "tool") return;
956
+ const phase = data.phase;
957
+ const name = data.name;
958
+ const toolCallId = data.toolCallId;
959
+ if (!toolCallId) return;
960
+ const pending = this.findPendingBySessionKey(sessionKey);
961
+ if (!pending) return;
962
+ if (phase === "start") {
963
+ if (!pending.toolCalls) pending.toolCalls = /* @__PURE__ */ new Set();
964
+ if (pending.toolCalls.has(toolCallId)) return;
965
+ pending.toolCalls.add(toolCallId);
966
+ const args = data.args;
967
+ await this.connection.sessionUpdate({
968
+ sessionId: pending.sessionId,
969
+ update: {
970
+ sessionUpdate: "tool_call",
971
+ toolCallId,
972
+ title: formatToolTitle(name, args),
973
+ status: "in_progress",
974
+ rawInput: args,
975
+ kind: inferToolKind(name)
976
+ }
977
+ });
978
+ return;
979
+ }
980
+ if (phase === "result") {
981
+ const isError = Boolean(data.isError);
982
+ await this.connection.sessionUpdate({
983
+ sessionId: pending.sessionId,
984
+ update: {
985
+ sessionUpdate: "tool_call_update",
986
+ toolCallId,
987
+ status: isError ? "failed" : "completed",
988
+ rawOutput: data.result
989
+ }
990
+ });
991
+ }
992
+ }
993
+ async handleChatEvent(evt) {
994
+ const payload = evt.payload;
995
+ if (!payload) return;
996
+ const sessionKey = payload.sessionKey;
997
+ const state = payload.state;
998
+ const runId = payload.runId;
999
+ const messageData = payload.message;
1000
+ if (!sessionKey || !state) return;
1001
+ const pending = this.findPendingBySessionKey(sessionKey);
1002
+ if (!pending) return;
1003
+ if (runId && pending.idempotencyKey !== runId) return;
1004
+ if (state === "delta" && messageData) {
1005
+ await this.handleDeltaEvent(pending.sessionId, messageData);
1006
+ return;
1007
+ }
1008
+ if (state === "final") {
1009
+ this.finishPrompt(pending.sessionId, pending, "end_turn");
1010
+ return;
1011
+ }
1012
+ if (state === "aborted") {
1013
+ this.finishPrompt(pending.sessionId, pending, "cancelled");
1014
+ return;
1015
+ }
1016
+ if (state === "error") this.finishPrompt(pending.sessionId, pending, "refusal");
1017
+ }
1018
+ async handleDeltaEvent(sessionId, messageData) {
1019
+ const fullText = messageData.content?.find((c) => c.type === "text")?.text ?? "";
1020
+ const pending = this.pendingPrompts.get(sessionId);
1021
+ if (!pending) return;
1022
+ const sentSoFar = pending.sentTextLength ?? 0;
1023
+ if (fullText.length <= sentSoFar) return;
1024
+ const newText = fullText.slice(sentSoFar);
1025
+ pending.sentTextLength = fullText.length;
1026
+ pending.sentText = fullText;
1027
+ await this.connection.sessionUpdate({
1028
+ sessionId,
1029
+ update: {
1030
+ sessionUpdate: "agent_message_chunk",
1031
+ content: {
1032
+ type: "text",
1033
+ text: newText
1034
+ }
1035
+ }
1036
+ });
1037
+ }
1038
+ finishPrompt(sessionId, pending, stopReason) {
1039
+ this.pendingPrompts.delete(sessionId);
1040
+ this.sessionStore.clearActiveRun(sessionId);
1041
+ pending.resolve({ stopReason });
1042
+ }
1043
+ findPendingBySessionKey(sessionKey) {
1044
+ for (const pending of this.pendingPrompts.values()) if (pending.sessionKey === sessionKey) return pending;
1045
+ }
1046
+ async sendAvailableCommands(sessionId) {
1047
+ await this.connection.sessionUpdate({
1048
+ sessionId,
1049
+ update: {
1050
+ sessionUpdate: "available_commands_update",
1051
+ availableCommands: getAvailableCommands()
1052
+ }
1053
+ });
1054
+ }
1055
+ enforceSessionCreateRateLimit(method) {
1056
+ const budget = this.sessionCreateRateLimiter.consume();
1057
+ if (budget.allowed) return;
1058
+ throw new Error(`ACP session creation rate limit exceeded for ${method}; retry after ${Math.ceil(budget.retryAfterMs / 1e3)}s.`);
1059
+ }
1060
+ };
1061
+
1062
+ //#endregion
1063
+ //#region src/acp/server.ts
1064
+ async function serveAcpGateway(opts = {}) {
1065
+ const cfg = loadConfig();
1066
+ const connection = buildGatewayConnectionDetails({
1067
+ config: cfg,
1068
+ url: opts.gatewayUrl
1069
+ });
1070
+ const creds = resolveGatewayCredentialsFromConfig({
1071
+ cfg,
1072
+ env: process.env,
1073
+ explicitAuth: {
1074
+ token: opts.gatewayToken,
1075
+ password: opts.gatewayPassword
1076
+ }
1077
+ });
1078
+ let agent = null;
1079
+ let onClosed;
1080
+ const closed = new Promise((resolve) => {
1081
+ onClosed = resolve;
1082
+ });
1083
+ let stopped = false;
1084
+ let onGatewayReadyResolve;
1085
+ let onGatewayReadyReject;
1086
+ let gatewayReadySettled = false;
1087
+ const gatewayReady = new Promise((resolve, reject) => {
1088
+ onGatewayReadyResolve = resolve;
1089
+ onGatewayReadyReject = reject;
1090
+ });
1091
+ const resolveGatewayReady = () => {
1092
+ if (gatewayReadySettled) return;
1093
+ gatewayReadySettled = true;
1094
+ onGatewayReadyResolve();
1095
+ };
1096
+ const rejectGatewayReady = (err) => {
1097
+ if (gatewayReadySettled) return;
1098
+ gatewayReadySettled = true;
1099
+ onGatewayReadyReject(err instanceof Error ? err : new Error(String(err)));
1100
+ };
1101
+ const gateway = new GatewayClient({
1102
+ url: connection.url,
1103
+ token: creds.token,
1104
+ password: creds.password,
1105
+ clientName: GATEWAY_CLIENT_NAMES.CLI,
1106
+ clientDisplayName: "ACP",
1107
+ clientVersion: "acp",
1108
+ mode: GATEWAY_CLIENT_MODES.CLI,
1109
+ onEvent: (evt) => {
1110
+ agent?.handleGatewayEvent(evt);
1111
+ },
1112
+ onHelloOk: () => {
1113
+ resolveGatewayReady();
1114
+ agent?.handleGatewayReconnect();
1115
+ },
1116
+ onConnectError: (err) => {
1117
+ rejectGatewayReady(err);
1118
+ },
1119
+ onClose: (code, reason) => {
1120
+ if (!stopped) rejectGatewayReady(/* @__PURE__ */ new Error(`gateway closed before ready (${code}): ${reason}`));
1121
+ agent?.handleGatewayDisconnect(`${code}: ${reason}`);
1122
+ if (stopped) onClosed();
1123
+ }
1124
+ });
1125
+ const shutdown = () => {
1126
+ if (stopped) return;
1127
+ stopped = true;
1128
+ resolveGatewayReady();
1129
+ gateway.stop();
1130
+ onClosed();
1131
+ };
1132
+ process.once("SIGINT", shutdown);
1133
+ process.once("SIGTERM", shutdown);
1134
+ gateway.start();
1135
+ await gatewayReady.catch((err) => {
1136
+ shutdown();
1137
+ throw err;
1138
+ });
1139
+ if (stopped) return closed;
1140
+ new AgentSideConnection((conn) => {
1141
+ agent = new AcpGatewayAgent(conn, gateway, opts);
1142
+ agent.start();
1143
+ return agent;
1144
+ }, ndJsonStream(Writable.toWeb(process.stdout), Readable.toWeb(process.stdin)));
1145
+ return closed;
1146
+ }
1147
+ function parseArgs(args) {
1148
+ const opts = {};
1149
+ let tokenFile;
1150
+ let passwordFile;
1151
+ for (let i = 0; i < args.length; i += 1) {
1152
+ const arg = args[i];
1153
+ if (arg === "--url" || arg === "--gateway-url") {
1154
+ opts.gatewayUrl = args[i + 1];
1155
+ i += 1;
1156
+ continue;
1157
+ }
1158
+ if (arg === "--token" || arg === "--gateway-token") {
1159
+ opts.gatewayToken = args[i + 1];
1160
+ i += 1;
1161
+ continue;
1162
+ }
1163
+ if (arg === "--token-file" || arg === "--gateway-token-file") {
1164
+ tokenFile = args[i + 1];
1165
+ i += 1;
1166
+ continue;
1167
+ }
1168
+ if (arg === "--password" || arg === "--gateway-password") {
1169
+ opts.gatewayPassword = args[i + 1];
1170
+ i += 1;
1171
+ continue;
1172
+ }
1173
+ if (arg === "--password-file" || arg === "--gateway-password-file") {
1174
+ passwordFile = args[i + 1];
1175
+ i += 1;
1176
+ continue;
1177
+ }
1178
+ if (arg === "--session") {
1179
+ opts.defaultSessionKey = args[i + 1];
1180
+ i += 1;
1181
+ continue;
1182
+ }
1183
+ if (arg === "--session-label") {
1184
+ opts.defaultSessionLabel = args[i + 1];
1185
+ i += 1;
1186
+ continue;
1187
+ }
1188
+ if (arg === "--require-existing") {
1189
+ opts.requireExistingSession = true;
1190
+ continue;
1191
+ }
1192
+ if (arg === "--reset-session") {
1193
+ opts.resetSession = true;
1194
+ continue;
1195
+ }
1196
+ if (arg === "--no-prefix-cwd") {
1197
+ opts.prefixCwd = false;
1198
+ continue;
1199
+ }
1200
+ if (arg === "--verbose" || arg === "-v") {
1201
+ opts.verbose = true;
1202
+ continue;
1203
+ }
1204
+ if (arg === "--help" || arg === "-h") {
1205
+ printHelp();
1206
+ process.exit(0);
1207
+ }
1208
+ }
1209
+ if (opts.gatewayToken?.trim() && tokenFile?.trim()) throw new Error("Use either --token or --token-file.");
1210
+ if (opts.gatewayPassword?.trim() && passwordFile?.trim()) throw new Error("Use either --password or --password-file.");
1211
+ if (tokenFile?.trim()) opts.gatewayToken = readSecretFromFile(tokenFile, "Gateway token");
1212
+ if (passwordFile?.trim()) opts.gatewayPassword = readSecretFromFile(passwordFile, "Gateway password");
1213
+ return opts;
1214
+ }
1215
+ function printHelp() {
1216
+ console.log(`Usage: remoteclaw acp [options]
1217
+
1218
+ Gateway-backed ACP server for IDE integration.
1219
+
1220
+ Options:
1221
+ --url <url> Gateway WebSocket URL
1222
+ --token <token> Gateway auth token
1223
+ --token-file <path> Read gateway auth token from file
1224
+ --password <password> Gateway auth password
1225
+ --password-file <path> Read gateway auth password from file
1226
+ --session <key> Default session key (e.g. "agent:main:main")
1227
+ --session-label <label> Default session label to resolve
1228
+ --require-existing Fail if the session key/label does not exist
1229
+ --reset-session Reset the session key before first use
1230
+ --no-prefix-cwd Do not prefix prompts with the working directory
1231
+ --verbose, -v Verbose logging to stderr
1232
+ --help, -h Show this help message
1233
+ `);
1234
+ }
1235
+ if (isMainModule({ currentFile: fileURLToPath(import.meta.url) })) {
1236
+ const argv = process.argv.slice(2);
1237
+ if (argv.includes("--token") || argv.includes("--gateway-token")) console.error("Warning: --token can be exposed via process listings. Prefer --token-file or REMOTECLAW_GATEWAY_TOKEN.");
1238
+ if (argv.includes("--password") || argv.includes("--gateway-password")) console.error("Warning: --password can be exposed via process listings. Prefer --password-file or REMOTECLAW_GATEWAY_PASSWORD.");
1239
+ serveAcpGateway(parseArgs(argv)).catch((err) => {
1240
+ console.error(String(err));
1241
+ process.exit(1);
1242
+ });
1243
+ }
1244
+
1245
+ //#endregion
1246
+ //#region src/cli/acp-cli.ts
1247
+ function resolveSecretOption(params) {
1248
+ const direct = params.direct?.trim();
1249
+ const file = params.file?.trim();
1250
+ if (direct && file) throw new Error(`Use either ${params.directFlag} or ${params.fileFlag} for ${params.label}.`);
1251
+ if (file) return readSecretFromFile(file, params.label);
1252
+ return direct || void 0;
1253
+ }
1254
+ function warnSecretCliFlag(flag) {
1255
+ defaultRuntime.error(`Warning: ${flag} can be exposed via process listings. Prefer ${flag}-file or environment variables.`);
1256
+ }
1257
+ function registerAcpCli(program) {
1258
+ const acp = program.command("acp").description("Run an ACP bridge backed by the Gateway");
1259
+ acp.option("--url <url>", "Gateway WebSocket URL (defaults to gateway.remote.url when configured)").option("--token <token>", "Gateway token (if required)").option("--token-file <path>", "Read gateway token from file").option("--password <password>", "Gateway password (if required)").option("--password-file <path>", "Read gateway password from file").option("--session <key>", "Default session key (e.g. agent:main:main)").option("--session-label <label>", "Default session label to resolve").option("--require-existing", "Fail if the session key/label does not exist", false).option("--reset-session", "Reset the session key before first use", false).option("--no-prefix-cwd", "Do not prefix prompts with the working directory", false).option("-v, --verbose", "Verbose logging to stderr", false).addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/acp", "docs.remoteclaw.org/cli/acp")}\n`).action(async (opts) => {
1260
+ try {
1261
+ const gatewayToken = resolveSecretOption({
1262
+ direct: opts.token,
1263
+ file: opts.tokenFile,
1264
+ directFlag: "--token",
1265
+ fileFlag: "--token-file",
1266
+ label: "Gateway token"
1267
+ });
1268
+ const gatewayPassword = resolveSecretOption({
1269
+ direct: opts.password,
1270
+ file: opts.passwordFile,
1271
+ directFlag: "--password",
1272
+ fileFlag: "--password-file",
1273
+ label: "Gateway password"
1274
+ });
1275
+ if (opts.token) warnSecretCliFlag("--token");
1276
+ if (opts.password) warnSecretCliFlag("--password");
1277
+ await serveAcpGateway({
1278
+ gatewayUrl: opts.url,
1279
+ gatewayToken,
1280
+ gatewayPassword,
1281
+ defaultSessionKey: opts.session,
1282
+ defaultSessionLabel: opts.sessionLabel,
1283
+ requireExistingSession: Boolean(opts.requireExisting),
1284
+ resetSession: Boolean(opts.resetSession),
1285
+ prefixCwd: !opts.noPrefixCwd,
1286
+ verbose: Boolean(opts.verbose)
1287
+ });
1288
+ } catch (err) {
1289
+ defaultRuntime.error(String(err));
1290
+ defaultRuntime.exit(1);
1291
+ }
1292
+ });
1293
+ acp.command("client").description("Run an interactive ACP client against the local ACP bridge").option("--cwd <dir>", "Working directory for the ACP session").option("--server <command>", "ACP server command (default: remoteclaw)").option("--server-args <args...>", "Extra arguments for the ACP server").option("--server-verbose", "Enable verbose logging on the ACP server", false).option("-v, --verbose", "Verbose client logging", false).action(async (opts, command) => {
1294
+ const inheritedVerbose = inheritOptionFromParent(command, "verbose");
1295
+ try {
1296
+ await runAcpClientInteractive({
1297
+ cwd: opts.cwd,
1298
+ serverCommand: opts.server,
1299
+ serverArgs: opts.serverArgs,
1300
+ serverVerbose: Boolean(opts.serverVerbose),
1301
+ verbose: Boolean(opts.verbose || inheritedVerbose)
1302
+ });
1303
+ } catch (err) {
1304
+ defaultRuntime.error(String(err));
1305
+ defaultRuntime.exit(1);
1306
+ }
1307
+ });
1308
+ }
1309
+
1310
+ //#endregion
1311
+ export { registerAcpCli };