remoteclaw 0.1.0-next.2abd2fa → 0.1.0-next.4ca8fbb

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 (317) hide show
  1. package/dist/{accounts-DBohBlww.js → accounts-6bE7_6RL.js} +1 -1
  2. package/dist/{accounts-BFy_Z3od.js → accounts-B1aJFYXr.js} +1 -1
  3. package/dist/{accounts-iODF3SK2.js → accounts-Cl_cFv9X.js} +1 -1
  4. package/dist/{accounts-DqRQ75w3.js → accounts-Dn9h7HHT.js} +1 -1
  5. package/dist/{ack-reactions-B11TAC2D.js → ack-reactions-C5kPZvda.js} +1 -1
  6. package/dist/{ack-reactions-BWVjL4H6.js → ack-reactions-obWeK7Rw.js} +1 -1
  7. package/dist/{acp-cli-CGo6fJVZ.js → acp-cli-B-wqDGbE.js} +11 -11
  8. package/dist/{acp-cli-CA1xMmVo.js → acp-cli-BWhVu-KY.js} +2 -2
  9. package/dist/{agent-D2RVoS5g.js → agent-D0tKpxob.js} +10 -10
  10. package/dist/{agent-CTizRPIJ.js → agent-DfNHqNSe.js} +16 -16
  11. package/dist/{agent-helpers-B6VfZ9_u.js → agent-helpers-D_9mS2Ti.js} +1 -1
  12. package/dist/{agent-scope-BGYzhtWQ.js → agent-scope-9WY5O-KK.js} +2 -2
  13. package/dist/{agents-BuYn-obw.js → agents-VeVj5NN9.js} +4 -4
  14. package/dist/{agents.config-BSTxuTVd.js → agents.config-BPGQ3Qyn.js} +1 -1
  15. package/dist/{audio-preflight-co8gjlPX.js → audio-preflight-Dj6hBcFR.js} +12 -12
  16. package/dist/{audit-oH4urD3G.js → audit-C1GUK9MZ.js} +13 -13
  17. package/dist/{audit-qgtCT3ik.js → audit-CakTmUvV.js} +3 -3
  18. package/dist/{auth-CAczFgAO.js → auth-C6VDYgb7.js} +1 -1
  19. package/dist/{auth-profiles-D8vKiBPq.js → auth-profiles-CeDgZz_7.js} +2 -2
  20. package/dist/{banner-Cf978khN.js → banner-D0g6Jqg7.js} +4 -4
  21. package/dist/{binaries-DXW6oATV.js → binaries-X6FW-wD4.js} +1 -1
  22. package/dist/{bindings-DQZAu8Wv.js → bindings-B582pDIa.js} +2 -2
  23. package/dist/{bonjour-discovery-DdAk1VyO.js → bonjour-discovery-BtPaR8vb.js} +2 -2
  24. package/dist/boot/handler.js +29 -29
  25. package/dist/{browser-cli-DAgi_aQk.js → browser-cli-ZGejewVU.js} +23 -23
  26. package/dist/{browser-cli-CZC4h5V4.js → browser-cli-apM-sb95.js} +8 -8
  27. package/dist/build-info.json +3 -3
  28. package/dist/{call-BbwtB9Y-.js → call-C1c3rcy7.js} +1 -1
  29. package/dist/{call-PivL7Uex.js → call-EndUQoN2.js} +4 -4
  30. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  31. package/dist/{catalog-DFmaYwfk.js → catalog-BMf9kYo4.js} +2 -2
  32. package/dist/{catalog-BqO6yem_.js → catalog-DTOwqzdA.js} +1 -1
  33. package/dist/{channel-account-context-q-o0pG1A.js → channel-account-context-CjXyzMXE.js} +1 -1
  34. package/dist/{channel-activity-C-G4n9BK.js → channel-activity-BZbNMyql.js} +2 -2
  35. package/dist/{channel-activity-BaCNOZpP.js → channel-activity-BeRrcCd8.js} +3 -3
  36. package/dist/{channel-options-DFnypY5S.js → channel-options-A-6mAxk3.js} +5 -5
  37. package/dist/{channel-options-Cyappik_.js → channel-options-CUMGATrC.js} +2 -2
  38. package/dist/{channel-selection-BGl53D5K.js → channel-selection-CJXZTxae.js} +2 -2
  39. package/dist/{channel-web-kRC3UYBJ.js → channel-web-BI274Kbc.js} +24 -24
  40. package/dist/{channel-web-DmhVkWbP.js → channel-web-tkULzsN2.js} +7 -7
  41. package/dist/{channels-cli-C5XRkPJl.js → channels-cli-GMS9bQeR.js} +30 -30
  42. package/dist/{channels-cli-D6TqCI0m.js → channels-cli-GQ1h5nQo.js} +82 -82
  43. package/dist/{channels-status-issues-CUc9mpeW.js → channels-status-issues-BDAHISWe.js} +1 -1
  44. package/dist/{chrome-CFeWdP0Y.js → chrome-5KCwEdqq.js} +7 -7
  45. package/dist/{chrome-0QaGKb3L.js → chrome-bU1D1n_G.js} +4 -4
  46. package/dist/{chunk-D0Y_w4oX.js → chunk-DAjFKt2g.js} +1 -1
  47. package/dist/{clack-prompter-B7tOxhJd.js → clack-prompter-CabwzmG4.js} +4 -4
  48. package/dist/{cleanup-utils-CqAVZz2b.js → cleanup-utils-o2MM9xyf.js} +1 -1
  49. package/dist/cli/daemon-cli.js +1 -1
  50. package/dist/cli-BRKebcMX.js +130 -0
  51. package/dist/{cli-BR2J3c4l.js → cli-DaI8rboT.js} +20 -20
  52. package/dist/{clipboard-D7_SKHPK.js → clipboard-B2j4qGIl.js} +1 -1
  53. package/dist/command-logger/handler.js +1 -1
  54. package/dist/{command-registry-CYjvOp8W.js → command-registry-Bs3-JoFa.js} +11 -11
  55. package/dist/{commands-D_-bgTlO.js → commands-C2uNKRTf.js} +2 -2
  56. package/dist/{commands-registry-Ci8_cFk9.js → commands-registry-BvESmXoK.js} +4 -4
  57. package/dist/{common-CMI-qsF8.js → common-Cp3rsBqx.js} +1 -1
  58. package/dist/{completion-cli-CYDjEZSt.js → completion-cli-Bq8ob7bJ.js} +4 -4
  59. package/dist/{completion-cli-8iZJqfmX.js → completion-cli-yFjHOtnN.js} +2 -2
  60. package/dist/{config-FHu9Bn4R.js → config-CKjn6ORX.js} +5 -3
  61. package/dist/{config-D5XU45KD.js → config-Dx2muBSJ.js} +9 -7
  62. package/dist/{config-cli-RC9qMgJq.js → config-cli-DPSj7xEW.js} +9 -9
  63. package/dist/{config-cli-Gehy4sav.js → config-cli-uCJAolq3.js} +3 -3
  64. package/dist/{config-guard-cB5a_ANg.js → config-guard-C2g3LlWk.js} +2 -2
  65. package/dist/{config-guard-J-Q_DFWk.js → config-guard-D1htIUcx.js} +19 -19
  66. package/dist/{config-validation-BPNyd9_3.js → config-validation-CqVJLiYT.js} +1 -1
  67. package/dist/{config-validation-BPWuvhVe.js → config-validation-D3Up1-Pq.js} +1 -1
  68. package/dist/{configure-CC2XdRRm.js → configure-CExN5RUz.js} +19 -19
  69. package/dist/{configure-DxFBJuhZ.js → configure-sLl4dSHU.js} +5 -5
  70. package/dist/{control-auth-D0tpV3ts.js → control-auth--fCnBrmu.js} +1 -1
  71. package/dist/{control-auth-_-0PGRUs.js → control-auth-894Ezu61.js} +2 -2
  72. package/dist/{control-ui-assets-W1AUuGrO.js → control-ui-assets-D4yaD8jm.js} +1 -1
  73. package/dist/{cron-cli-BzERxhr5.js → cron-cli-CzNB7gey.js} +15 -15
  74. package/dist/{cron-cli-C8j_uslU.js → cron-cli-kN6pZBMh.js} +3 -3
  75. package/dist/{daemon-cli-C95XNbX0.js → daemon-cli-Bf5va8oF.js} +13 -13
  76. package/dist/{daemon-cli-e6sURMqd.js → daemon-cli-TuWhoQ3H.js} +3 -3
  77. package/dist/daemon-cli.js +20 -19
  78. package/dist/{daemon-install-DDshfT0J.js → daemon-install-DrTvAWhM.js} +9 -9
  79. package/dist/{deliver-912khjLK.js → deliver-Dm7GkHXJ.js} +4 -4
  80. package/dist/{deliver-D56J4-1F.js → deliver-wTlFm59G.js} +8 -8
  81. package/dist/{devices-cli-0qDhTgZR.js → devices-cli-CAcVSiHC.js} +2 -2
  82. package/dist/{devices-cli-6SKMR2bV.js → devices-cli-rX6imHCj.js} +11 -11
  83. package/dist/{diagnostics-99iCgBUh.js → diagnostics-HGkN467d.js} +1 -1
  84. package/dist/{directory-cli-D3IKCHmn.js → directory-cli-D83Q7y5H.js} +14 -14
  85. package/dist/{directory-cli-5YXdoVdn.js → directory-cli-DVfyUHCz.js} +1 -1
  86. package/dist/{dm-policy-shared-4rkjhcrM.js → dm-policy-shared-BBfEyAN1.js} +2 -2
  87. package/dist/{dns-cli-11CtErVU.js → dns-cli-5SrjpIcy.js} +1 -1
  88. package/dist/{dns-cli-SiEd_1Lq.js → dns-cli-Canj4LtY.js} +9 -9
  89. package/dist/{dock-CQuu41bw.js → dock-O8ArYwed.js} +6 -6
  90. package/dist/{doctor-completion-CZwpEhIK.js → doctor-completion-BPBjYlMB.js} +2 -2
  91. package/dist/{doctor-completion-BR1SlAT3.js → doctor-completion-C56A3tON.js} +1 -1
  92. package/dist/{doctor-config-flow-BVkHcvoj.js → doctor-config-flow-DXnCqDd9.js} +3 -3
  93. package/dist/{doctor-config-flow-DVYRn0An.js → doctor-config-flow-DZG6oOAj.js} +8 -8
  94. package/dist/{enable-DcJnkzfz.js → enable-DMIq6evt.js} +1 -1
  95. package/dist/entry.js +14 -14
  96. package/dist/{env-DeF64iu0.js → env-Br2Bl6Ht.js} +1 -1
  97. package/dist/{errors-8F-77i6m.js → errors-BpAidYqH.js} +1 -1
  98. package/dist/{exec-DbKuYyM1.js → exec-C6ACg_Mn.js} +2 -2
  99. package/dist/extensionAPI.js +22 -15
  100. package/dist/{fetch-BFSBLBkA.js → fetch-BFuS-EfP.js} +1 -1
  101. package/dist/{gateway-cli-Nob0g_4y.js → gateway-cli-CN3qPG2T.js} +39 -39
  102. package/dist/{gateway-cli-BEEZhCHv.js → gateway-cli-CqSlcKnb.js} +113 -113
  103. package/dist/{gateway-rpc-CksB-N83.js → gateway-rpc-BxH8V6gB.js} +3 -3
  104. package/dist/{gateway-rpc-Dq44SkOv.js → gateway-rpc-CMsfRKML.js} +1 -1
  105. package/dist/{gmail-setup-utils-nkabbKOE.js → gmail-setup-utils-BPmUIqso.js} +2 -2
  106. package/dist/{health-SOuaKNRa.js → health-DeNxtGCn.js} +8 -8
  107. package/dist/{health-RT-F3hzT.js → health-DwKPQOTn.js} +17 -17
  108. package/dist/{health-format-BG95OE6N.js → health-format-Bygse7KA.js} +1 -1
  109. package/dist/{heartbeat-visibility-CGG-G7px.js → heartbeat-visibility-BvJaUOFC.js} +1 -1
  110. package/dist/{heartbeat-visibility-BxkZjE5m.js → heartbeat-visibility-EBPnhcaa.js} +1 -1
  111. package/dist/{help-format-DAxf0l_h.js → help-format-sqWgYEdL.js} +1 -1
  112. package/dist/{hook-runner-global-DJ14gXFP.js → hook-runner-global-BSklbS52.js} +1 -1
  113. package/dist/{hooks-cli-RuEn0-oy.js → hooks-cli-BuWpetaT.js} +69 -69
  114. package/dist/{hooks-cli-DyEKryW8.js → hooks-cli-C1BG-IlR.js} +22 -22
  115. package/dist/{image-ops-Bi6JPSkD.js → image-ops-DRdKC0uO.js} +1 -1
  116. package/dist/{import-DQ6NI4Fz.js → import-B6Xn6yAg.js} +82 -2
  117. package/dist/{import-D8BBZQgl.js → import-CIIB1Q1J.js} +84 -4
  118. package/dist/{inbound-path-policy-Bg4gZBx-.js → inbound-path-policy-C_Qo8rqg.js} +1 -1
  119. package/dist/index.js +82 -82
  120. package/dist/{inspect-vYIL1oA0.js → inspect-B1Fq39RC.js} +3 -3
  121. package/dist/{installs-pWdqG8HL.js → installs-B1rNHwnF.js} +1 -1
  122. package/dist/{installs-aM5dWAyn.js → installs-ClyOD2BY.js} +3 -3
  123. package/dist/{ir-BpaAMTfW.js → ir-Ch9FC9Z_.js} +4 -4
  124. package/dist/{links-C3soDNDH.js → links-Cm43Vcft.js} +1 -1
  125. package/dist/{loader-y9MhJewT.js → loader-Bkhoi4yR.js} +25 -25
  126. package/dist/{loader-Ccwsh8Sh.js → loader-DrZ6VM0f.js} +63 -63
  127. package/dist/{local-roots-nImrw2WR.js → local-roots-z2u_s7jG.js} +3 -3
  128. package/dist/{logger-Bw3cFE5t.js → logger-pznB_IdT.js} +2 -2
  129. package/dist/{logging-C-nxX2fn.js → logging-D8R0sLY9.js} +1 -1
  130. package/dist/{login-DOmWDMeP.js → login-BIgEFDBJ.js} +1 -1
  131. package/dist/{login-C_Kt57nO.js → login-CqST6Yyp.js} +5 -5
  132. package/dist/{login-qr-D0u6fdeO.js → login-qr-ChZo1oB2.js} +9 -9
  133. package/dist/{login-qr-CXU0wC5K.js → login-qr-lciTI8Ue.js} +1 -1
  134. package/dist/{logs-cli-CschwP4d.js → logs-cli-B4DaUuwW.js} +12 -12
  135. package/dist/{logs-cli-D7ayUvz_.js → logs-cli-BBWcmNEs.js} +3 -3
  136. package/dist/{markdown-tables-CrmghPAr.js → markdown-tables-hhOWaw8L.js} +1 -1
  137. package/dist/{media-CojxZ45J.js → media-BrtsoHDf.js} +56 -49
  138. package/dist/{message-action-names-WglOO_DT.js → message-action-names-DYTTi8gx.js} +10 -10
  139. package/dist/{message-action-names-CtEZcmlU.js → message-action-names-oFjla2Uc.js} +19 -19
  140. package/dist/{message-channel-DzJqHVZD.js → message-channel-BlYrtmIp.js} +1 -1
  141. package/dist/{nodes-cli-CQmlfx0K.js → nodes-cli-BAYWaRF9.js} +16 -16
  142. package/dist/{nodes-cli-C2SoKfCv.js → nodes-cli-C0b4ae_w.js} +2 -2
  143. package/dist/{nodes-screen-BR9sYoPa.js → nodes-screen-Bmp1l9wY.js} +1 -1
  144. package/dist/{note-kvWV4xtw.js → note-DR8A0G5H.js} +1 -1
  145. package/dist/{npm-registry-spec-0qiKawvv.js → npm-registry-spec-Cobb5KYR.js} +2 -2
  146. package/dist/{npm-resolution-6v_Zm-9G.js → npm-resolution-D6VFpSMk.js} +4 -4
  147. package/dist/{npm-resolution-BFz7LeoN.js → npm-resolution-DCVQ6Y0K.js} +2 -2
  148. package/dist/{onboard-RI4vNTZd.js → onboard-CyM-s2Q9.js} +4 -4
  149. package/dist/{onboard-CgyU-mDL.js → onboard-Dt9aqz5a.js} +9 -9
  150. package/dist/{onboard-channels-DyAd1OZr.js → onboard-channels-BMwYGHjJ.js} +8 -8
  151. package/dist/{onboard-channels-DN5JoKPd.js → onboard-channels-Cm2oMc5h.js} +20 -20
  152. package/dist/{onboard-helpers-sDc2Ky6H.js → onboard-helpers-DC1_Uz_K.js} +8 -8
  153. package/dist/{onboard-helpers-BCzZUD0z.js → onboard-helpers-zH14EFKa.js} +13 -13
  154. package/dist/{onboard-remote-CJrMtttl.js → onboard-remote-DKLIRtxz.js} +3 -3
  155. package/dist/{onboard-remote-hyQIBguz.js → onboard-remote-G7myeQp9.js} +1 -1
  156. package/dist/{onboarding-DCu1iBTV.js → onboarding-CJzQIK_p.js} +15 -24
  157. package/dist/{onboarding-zKMitzpb.js → onboarding-DcL0Bg41.js} +22 -31
  158. package/dist/{onboarding.finalize-D5JkVJgg.js → onboarding.finalize-C-2u_67y.js} +18 -18
  159. package/dist/{onboarding.finalize-ClHhYE2E.js → onboarding.finalize-C7V8SbPj.js} +64 -64
  160. package/dist/{onboarding.gateway-config-DFh71Ndn.js → onboarding.gateway-config-DbL694q5.js} +22 -22
  161. package/dist/{onboarding.gateway-config-VBk6AP9U.js → onboarding.gateway-config-mAUMPQtE.js} +4 -4
  162. package/dist/{outbound-BYlZshIw.js → outbound-BSrQB04F.js} +6 -6
  163. package/dist/{outbound-CFfJC1j5.js → outbound-UQ05e6hy.js} +1 -1
  164. package/dist/{outbound-attachment-BCNs1u1F.js → outbound-attachment-DIiKB_mP.js} +2 -2
  165. package/dist/{outbound-attachment-B_0D60Yr.js → outbound-attachment-DvxfVMMN.js} +2 -2
  166. package/dist/{pairing-cli-BeydfoF9.js → pairing-cli-Dg7flTtc.js} +1 -1
  167. package/dist/{pairing-cli-DWzX866x.js → pairing-cli-DyOmIkR8.js} +13 -13
  168. package/dist/{pairing-labels-B-N8S5Fc.js → pairing-labels-BiSZLitI.js} +1 -1
  169. package/dist/{pairing-store-BxdqFZGK.js → pairing-store-BgAv4uN8.js} +2 -2
  170. package/dist/{path-env-DR5vn3QL.js → path-env-ErEKbxOI.js} +1 -1
  171. package/dist/{plugin-auto-enable-D23gv7Aw.js → plugin-auto-enable-C2C0yYb0.js} +5 -5
  172. package/dist/{plugin-auto-enable-DuPS9XiJ.js → plugin-auto-enable-CqeLGGEe.js} +2 -2
  173. package/dist/{plugin-registry-DeHwd2jk.js → plugin-registry-ByWYnPMd.js} +2 -2
  174. package/dist/{plugin-registry-CNu_1KZz.js → plugin-registry-D1XLfwHj.js} +4 -4
  175. package/dist/plugin-sdk/config/types.tools.d.ts +1 -1
  176. package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +1 -0
  177. package/dist/plugin-sdk/config/zod-schema.agents.d.ts +1 -0
  178. package/dist/plugin-sdk/config/zod-schema.d.ts +1 -0
  179. package/dist/plugin-sdk/index.js +20 -19
  180. package/dist/plugin-sdk/terminal/palette.d.ts +2 -2
  181. package/dist/{plugins-woGRXMzU.js → plugins-BXkDApVh.js} +5 -5
  182. package/dist/{plugins-cli-DV82scUw.js → plugins-cli-Dq7-gN1i.js} +71 -71
  183. package/dist/{plugins-cli-Qj1UyIZO.js → plugins-cli-TDt5Ap1o.js} +23 -23
  184. package/dist/{ports-DrruB2fK.js → ports-DIYJq-SY.js} +4 -4
  185. package/dist/{ports-GT1yV-Tg.js → ports-DPL-Pzfh.js} +2 -2
  186. package/dist/{program-CQmIaRUI.js → program-Dm6RlSCG.js} +28 -28
  187. package/dist/{program-context-DEU6ACnL.js → program-context-CR8elel3.js} +34 -34
  188. package/dist/{progress-CBkSaM6z.js → progress--dapuyZA.js} +1 -1
  189. package/dist/{prompt-Bllj1dhc.js → prompt-BVZVovoB.js} +1 -1
  190. package/dist/{prompt-select-styled-BhTN6zE2.js → prompt-select-styled-CLzKernl.js} +30 -30
  191. package/dist/{prompt-select-styled-WopXnjIy.js → prompt-select-styled-D--1U3Qh.js} +8 -8
  192. package/dist/{prompt-style-DVEm3BZW.js → prompt-style-D0LUnqXi.js} +1 -1
  193. package/dist/{provider-dispatcher-Bfauw6zz.js → provider-dispatcher-CbJCfJNB.js} +7 -7
  194. package/dist/{provider-dispatcher-B4QMe-I6.js → provider-dispatcher-pOqMXfLQ.js} +4 -4
  195. package/dist/{push-apns-C0LyG-WB.js → push-apns-CLmNS5AZ.js} +4 -4
  196. package/dist/{pw-ai-D9n6-Wa6.js → pw-ai-B2LkFeUC.js} +2 -2
  197. package/dist/{pw-ai-T280E6Mn.js → pw-ai-CwC1FQEH.js} +12 -12
  198. package/dist/{qr-cli-DVECWTHN.js → qr-cli-9iFACuGt.js} +9 -9
  199. package/dist/{qr-cli-hSLixZCe.js → qr-cli-CDRHTGnv.js} +1 -1
  200. package/dist/{redact-eZq1uwNK.js → redact-BsoXOV1y.js} +1 -1
  201. package/dist/{redact-snapshot-BZYLIqe-.js → redact-snapshot-CJApG-fd.js} +1 -1
  202. package/dist/{redact-snapshot-C6hVx_9I.js → redact-snapshot-DR_-YlRl.js} +2 -2
  203. package/dist/{register.agent-Dmj-sgEl.js → register.agent-BYxDAKY7.js} +82 -82
  204. package/dist/{register.agent-IspcBFeD.js → register.agent-CUANybY6.js} +30 -30
  205. package/dist/{register.configure-PPkU_4Ea.js → register.configure-BP0t9Uwl.js} +30 -30
  206. package/dist/register.configure-DyhKPvnk.js +130 -0
  207. package/dist/{register.import-DLng8g-e.js → register.import-Dc7m8NdP.js} +8 -8
  208. package/dist/{register.import-Bs-UkOs-.js → register.import-DdLGUSEK.js} +1 -1
  209. package/dist/{register.maintenance-BbpkJil3.js → register.maintenance-gcZeh5o7.js} +93 -93
  210. package/dist/{register.maintenance-C5nkOQxa.js → register.maintenance-haVwPL96.js} +29 -29
  211. package/dist/{register.message-D16isu4u.js → register.message-CKl_lHTO.js} +69 -69
  212. package/dist/{register.message-C83Hi1b3.js → register.message-ZbmkQ5ht.js} +22 -22
  213. package/dist/{register.onboard-B8EzX3wY.js → register.onboard-D-5OnZ0M.js} +7 -7
  214. package/dist/{register.onboard-CyRbr_0V.js → register.onboard-DYdJLgGd.js} +30 -30
  215. package/dist/{register.setup-Dz6GwMnu.js → register.setup-Cj7MYjtC.js} +30 -30
  216. package/dist/{register.setup-DWyoowAz.js → register.setup-hF1vdJl1.js} +7 -7
  217. package/dist/{register.status-health-sessions-DXIWG47y.js → register.status-health-sessions-BBFNCrfS.js} +72 -72
  218. package/dist/{register.status-health-sessions-CbQOfycz.js → register.status-health-sessions-ClYWL_wb.js} +18 -18
  219. package/dist/{register.subclis-DeGP5UPU.js → register.subclis-l2adzhui.js} +23 -23
  220. package/dist/{replies-BKrzM0QI.js → replies-BGYU-p0J.js} +1 -1
  221. package/dist/{replies-Cl2gYBVt.js → replies-Bn1oXSB8.js} +3 -3
  222. package/dist/{reply-DSKC8kyS.js → reply-Cepi2flR.js} +9 -9
  223. package/dist/{reply-CCu_DY64.js → reply-CmeV20ii.js} +32 -32
  224. package/dist/{reply-directives-BHJKp1Du.js → reply-directives-DOPAdviR.js} +3 -3
  225. package/dist/{reply-directives-CD2WycBM.js → reply-directives-DspqGGVJ.js} +1 -1
  226. package/dist/{reply-payloads-D_BM1Anb.js → reply-payloads-MIecsqo-.js} +5 -5
  227. package/dist/{reply-prefix-Q4DOJSn_.js → reply-prefix-4zLS7A1Y.js} +1 -1
  228. package/dist/{resolve-route-DGEgTEif.js → resolve-route-BDGdM-l3.js} +4 -4
  229. package/dist/{response-prefix-template-rVZQOViK.js → response-prefix-template-CSxp9HN5.js} +1 -1
  230. package/dist/{retry-BhuXOEVR.js → retry-CxXVRdes.js} +1 -1
  231. package/dist/{retry-DUjAzOBy.js → retry-D_-vU9CD.js} +1 -1
  232. package/dist/{run-main-Um5xhxla.js → run-main-D0u55bX8.js} +38 -56
  233. package/dist/{runner-yVJ4HB2K.js → runner-BbLPl1dz.js} +6 -6
  234. package/dist/{secure-random-Pl9rPl0l.js → secure-random-B7stcuHs.js} +1 -1
  235. package/dist/{security-cli-DP5QJpa5.js → security-cli-BvhB_SJV.js} +4 -4
  236. package/dist/{security-cli-CdwbWZUj.js → security-cli-DZ_pwUS6.js} +29 -29
  237. package/dist/{send-DHldI3gf.js → send-5HyMBvLh.js} +6 -6
  238. package/dist/{send-Ds63eF4a.js → send-B0elLDis.js} +6 -6
  239. package/dist/{send-YRVDWfSs.js → send-Bh75o8GE.js} +1 -1
  240. package/dist/{send-B84axiIa.js → send-C2BVmzi6.js} +7 -7
  241. package/dist/{send-BN_zYVlx.js → send-CHquO379.js} +5 -5
  242. package/dist/{send-Bx9bUGav.js → send-CltrzWlk.js} +1 -1
  243. package/dist/send-D9zlp5S9.js +11 -0
  244. package/dist/{send-BqVOxAmK.js → send-DD5szdZD.js} +13 -13
  245. package/dist/{send-CGXyTF22.js → send-DIO6FcGs.js} +4 -4
  246. package/dist/{send-xnwty9cY.js → send-DWzItTE9.js} +1 -1
  247. package/dist/{send-C3pdJ6p-.js → send-JUsdp68w.js} +9 -9
  248. package/dist/{send-CBGSXjfD.js → send-W1ofaGo7.js} +1 -1
  249. package/dist/{send-D1aYEG-k.js → send-fmudAAFF.js} +3 -3
  250. package/dist/{send-D_DUQJ6H.js → send-jN0cqz2d.js} +1 -1
  251. package/dist/{send-B1_Ymjb9.js → send-pZWXl_O3.js} +11 -11
  252. package/dist/{send-D08Je6DL.js → send-uNEzfw9q.js} +6 -6
  253. package/dist/{server-DhXw25Jq.js → server-55CHFsiA.js} +22 -22
  254. package/dist/{server-BQFoyCRR.js → server-Bk0uMX7-.js} +5 -5
  255. package/dist/{server-lifecycle-Coyr6Lda.js → server-lifecycle-CEOTZr99.js} +6 -6
  256. package/dist/{server-lifecycle-BjCCyD3w.js → server-lifecycle-DGais-nv.js} +11 -11
  257. package/dist/{server-node-events-De4WZQQD.js → server-node-events-BT_YSlcA.js} +9 -9
  258. package/dist/{server-node-events-dXXayuqY.js → server-node-events-CiqYClwC.js} +39 -39
  259. package/dist/{service-fp29z5Ww.js → service-BHos7oX8.js} +1 -1
  260. package/dist/{session-xKIW6gL2.js → session-aUptxSVD.js} +2 -2
  261. package/dist/{session-dirs-Cj5xi7zX.js → session-dirs-BADAi9Iz.js} +4 -4
  262. package/dist/{session-utils-CEtEq6bi.js → session-utils-BuXY8tQT.js} +2 -2
  263. package/dist/{session-utils-WmlWAs1r.js → session-utils-ByK5sFXr.js} +3 -3
  264. package/dist/{sessions-Bw4LRnSr.js → sessions-B_zoH4sM.js} +3 -3
  265. package/dist/{sessions--PykPynp.js → sessions-BntNl3-l.js} +1 -1
  266. package/dist/{status-CtzYFLLF.js → status-B47idaLU.js} +9 -9
  267. package/dist/{status-DiN1cq2p.js → status-Dof6X4RY.js} +22 -22
  268. package/dist/{status.update-CBmPXwYN.js → status.update-CVnonGHu.js} +1 -1
  269. package/dist/{store-C3tOpizT.js → store-BPZo49zT.js} +1 -1
  270. package/dist/{store-SusmIfz7.js → store-BsEwlSm1.js} +6 -6
  271. package/dist/{store-CPJXuhvQ.js → store-Bxy7EHAf.js} +5 -5
  272. package/dist/{subagent-registry-Db4Ho_2Y.js → subagent-registry-DN3omJzH.js} +5 -5
  273. package/dist/{subagent-registry-Du_j0Fnt.js → subagent-registry-NTmURwBx.js} +12 -12
  274. package/dist/{subsystem-BUXAJwPD.js → subsystem-C_FedsH7.js} +31 -31
  275. package/dist/{subsystem-COd61u0P.js → subsystem-CrJCqjAh.js} +1 -1
  276. package/dist/{system-cli-DYCpLO3T.js → system-cli-ByjvquTo.js} +12 -12
  277. package/dist/{system-cli-eAk5wVbP.js → system-cli-C8iA6NZ0.js} +3 -3
  278. package/dist/{systemd-TfK8GuTx.js → systemd-B5lyaCc3.js} +2 -2
  279. package/dist/{systemd-linger-Axnc1xCb.js → systemd-linger-DRPSEQVw.js} +2 -2
  280. package/dist/{table-DPTzZyhu.js → table-CpmqqcxJ.js} +1 -1
  281. package/dist/{tables-PxcSPSO0.js → tables-BO6GU4qX.js} +1 -1
  282. package/dist/{tables-TWiml6b1.js → tables-D_PTzthR.js} +1 -1
  283. package/dist/{tailscale-DTATQxAG.js → tailscale-Dxyz13fn.js} +2 -2
  284. package/dist/{targets-C1NeMn2J.js → targets-B-hWtwfx.js} +3 -3
  285. package/dist/{targets-JCISV-hS.js → targets-CMhBAn87.js} +3 -3
  286. package/dist/{targets-D-u6Kyio.js → targets-Cm1X3IyA.js} +2 -2
  287. package/dist/{targets-DfqPGOmM.js → targets-D1e9eyXc.js} +10 -10
  288. package/dist/{targets-DB4vBpIQ.js → targets-DK9MVsjx.js} +2 -2
  289. package/dist/{tokens-DzFOtLlW.js → tokens-qLtFu3nT.js} +1 -1
  290. package/dist/{tool-display-sgNwLOBj.js → tool-display-B-nr7cSF.js} +2 -2
  291. package/dist/{tool-images-BNfIJ_Kj.js → tool-images-DVrUJEqc.js} +2 -2
  292. package/dist/{trash-D_Jd_yQZ.js → trash-DzrtBoP1.js} +2 -2
  293. package/dist/{tui-CyHwc2uX.js → tui-ByoaOs-l.js} +2 -2
  294. package/dist/{tui-CHc0EfJO.js → tui-C9l1U4r8.js} +7 -7
  295. package/dist/{tui-cli-BvwbrIYO.js → tui-cli-1Jp507CR.js} +25 -25
  296. package/dist/{tui-cli-C9I18SfW.js → tui-cli-DvjBEn7h.js} +3 -3
  297. package/dist/{update-DxyjwCL2.js → update-Cj-HdoD2.js} +3 -3
  298. package/dist/{update-IX7vdqA8.js → update-CrKl8Exj.js} +2 -2
  299. package/dist/{update-cli-DkAWmUrp.js → update-cli-C7WnLi19.js} +34 -34
  300. package/dist/{update-cli-CBeXUSzq.js → update-cli-b3W8RwJh.js} +100 -100
  301. package/dist/{usage-CYlQW4M2.js → usage-DY7X9Iud.js} +56 -56
  302. package/dist/{utils-LBKvDoPx.js → utils-C5daYcFn.js} +13 -13
  303. package/dist/{web-Dquzwqf4.js → web-B9EiMNAf.js} +14 -14
  304. package/dist/web-Bp50XopI.js +76 -0
  305. package/dist/{web-BUYUdnRH.js → web-C5EBMd1-.js} +16 -16
  306. package/dist/{webhooks-cli-BpZHQlVd.js → webhooks-cli-D7kHy94s.js} +1 -1
  307. package/dist/{webhooks-cli-B7Vw3CMz.js → webhooks-cli-o4indVra.js} +10 -10
  308. package/dist/{whatsapp-actions-DaA291Ya.js → whatsapp-actions-BOMh8Mlv.js} +2 -2
  309. package/dist/{whatsapp-actions-D5HXezjp.js → whatsapp-actions-CT2Z1Iab.js} +21 -21
  310. package/dist/{widearea-dns-DSoaA-eH.js → widearea-dns-BXGCmXnD.js} +1 -1
  311. package/dist/{workspace-B8PA8oxJ.js → workspace-Bnn6LXsc.js} +4 -4
  312. package/dist/{workspace-B4ZvVYT9.js → workspace-C6kLpOuR.js} +1 -1
  313. package/package.json +1 -1
  314. package/dist/cli-C1q1vSmN.js +0 -130
  315. package/dist/register.configure-BqJEqyGL.js +0 -130
  316. package/dist/send-CKavrhXj.js +0 -11
  317. package/dist/web-tS8diboh.js +0 -76
@@ -1,11 +1,11 @@
1
- import { A as resolveConfigPath, E as resolvePreferredRemoteClawTmpDir, I as resolveRequiredHomeDir, N as resolveOAuthDir, P as resolveStateDir, S as warn, _ as isPlainObject$2, a as normalizeAnyChannelId, b as logVerboseConsole, c as requireActivePluginRegistry, d as isRecord, f as normalizeE164, i as CHAT_CHANNEL_ORDER, j as resolveDefaultConfigCandidates, m as resolveUserPath, n as defaultRuntime, o as normalizeChatChannelId, p as resolveConfigDir, r as CHANNEL_IDS, s as getActivePluginRegistry, t as createSubsystemLogger, v as danger, w as getLogger, x as shouldLogVerbose, y as logVerbose } from "./subsystem-BUXAJwPD.js";
1
+ import { A as resolveConfigPath, E as resolvePreferredRemoteClawTmpDir, I as resolveRequiredHomeDir, N as resolveOAuthDir, P as resolveStateDir, S as warn, _ as isPlainObject$2, a as normalizeAnyChannelId, b as logVerboseConsole, c as requireActivePluginRegistry, d as isRecord, f as normalizeE164, i as CHAT_CHANNEL_ORDER, j as resolveDefaultConfigCandidates, m as resolveUserPath, n as defaultRuntime, o as normalizeChatChannelId, p as resolveConfigDir, r as CHANNEL_IDS, s as getActivePluginRegistry, t as createSubsystemLogger, v as danger, w as getLogger, x as shouldLogVerbose, y as logVerbose } from "./subsystem-C_FedsH7.js";
2
2
  import { createRequire } from "node:module";
3
3
  import path from "node:path";
4
- import fs, { constants } from "node:fs";
4
+ import fsSync, { constants } from "node:fs";
5
5
  import os from "node:os";
6
6
  import JSON5 from "json5";
7
7
  import util, { isDeepStrictEqual, promisify } from "node:util";
8
- import fs$1 from "node:fs/promises";
8
+ import fs from "node:fs/promises";
9
9
  import crypto from "node:crypto";
10
10
  import dotenv from "dotenv";
11
11
  import { execFile, execFileSync, spawn } from "node:child_process";
@@ -201,6 +201,11 @@ function resolveAgentWorkspaceDir(cfg, agentId) {
201
201
  if (configured) return stripNullBytes(resolveUserPath(configured));
202
202
  throw new Error(`agent '${id}' has no workspace configured — set agents.list[].workspace in remoteclaw.json`);
203
203
  }
204
+ function resolveAgentWorkspaceDirOrNull(cfg, agentId) {
205
+ const configured = resolveAgentConfig(cfg, normalizeAgentId(agentId))?.workspace?.trim();
206
+ if (configured) return stripNullBytes(resolveUserPath(configured));
207
+ return null;
208
+ }
204
209
 
205
210
  //#endregion
206
211
  //#region src/cli/cli-name.ts
@@ -674,7 +679,7 @@ function resolveTelegramToken(cfg, opts = {}) {
674
679
  const accountCfg = resolveAccountCfg(accountId !== DEFAULT_ACCOUNT_ID ? accountId : DEFAULT_ACCOUNT_ID);
675
680
  const accountTokenFile = accountCfg?.tokenFile?.trim();
676
681
  if (accountTokenFile) {
677
- if (!fs.existsSync(accountTokenFile)) {
682
+ if (!fsSync.existsSync(accountTokenFile)) {
678
683
  opts.logMissingFile?.(`channels.telegram.accounts.${accountId}.tokenFile not found: ${accountTokenFile}`);
679
684
  return {
680
685
  token: "",
@@ -682,7 +687,7 @@ function resolveTelegramToken(cfg, opts = {}) {
682
687
  };
683
688
  }
684
689
  try {
685
- const token = fs.readFileSync(accountTokenFile, "utf-8").trim();
690
+ const token = fsSync.readFileSync(accountTokenFile, "utf-8").trim();
686
691
  if (token) return {
687
692
  token,
688
693
  source: "tokenFile"
@@ -707,7 +712,7 @@ function resolveTelegramToken(cfg, opts = {}) {
707
712
  const allowEnv = accountId === DEFAULT_ACCOUNT_ID;
708
713
  const tokenFile = telegramCfg?.tokenFile?.trim();
709
714
  if (tokenFile && allowEnv) {
710
- if (!fs.existsSync(tokenFile)) {
715
+ if (!fsSync.existsSync(tokenFile)) {
711
716
  opts.logMissingFile?.(`channels.telegram.tokenFile not found: ${tokenFile}`);
712
717
  return {
713
718
  token: "",
@@ -715,7 +720,7 @@ function resolveTelegramToken(cfg, opts = {}) {
715
720
  };
716
721
  }
717
722
  try {
718
- const token = fs.readFileSync(tokenFile, "utf-8").trim();
723
+ const token = fsSync.readFileSync(tokenFile, "utf-8").trim();
719
724
  if (token) return {
720
725
  token,
721
726
  source: "tokenFile"
@@ -845,7 +850,7 @@ function resolveLegacyAuthDir() {
845
850
  }
846
851
  function legacyAuthExists(authDir) {
847
852
  try {
848
- return fs.existsSync(path.join(authDir, "creds.json"));
853
+ return fsSync.existsSync(path.join(authDir, "creds.json"));
849
854
  } catch {
850
855
  return false;
851
856
  }
@@ -1038,7 +1043,7 @@ function loadDotEnv(opts) {
1038
1043
  const quiet = opts?.quiet ?? true;
1039
1044
  dotenv.config({ quiet });
1040
1045
  const globalEnvPath = path.join(resolveConfigDir(process.env), ".env");
1041
- if (!fs.existsSync(globalEnvPath)) return;
1046
+ if (!fsSync.existsSync(globalEnvPath)) return;
1042
1047
  dotenv.config({
1043
1048
  quiet,
1044
1049
  path: globalEnvPath,
@@ -1159,7 +1164,7 @@ function resolveTimeoutMs(timeoutMs) {
1159
1164
  function readEtcShells() {
1160
1165
  if (cachedEtcShells !== void 0) return cachedEtcShells;
1161
1166
  try {
1162
- const entries = fs.readFileSync("/etc/shells", "utf8").split(/\r?\n/).map((line) => line.trim()).filter((line) => line.length > 0 && !line.startsWith("#") && path.isAbsolute(line));
1167
+ const entries = fsSync.readFileSync("/etc/shells", "utf8").split(/\r?\n/).map((line) => line.trim()).filter((line) => line.length > 0 && !line.startsWith("#") && path.isAbsolute(line));
1163
1168
  cachedEtcShells = new Set(entries);
1164
1169
  } catch {
1165
1170
  cachedEtcShells = null;
@@ -1534,7 +1539,7 @@ function resolveActiveTalkProviderConfig(talk) {
1534
1539
  };
1535
1540
  }
1536
1541
  function readTalkApiKeyFromProfile(deps = {}) {
1537
- const fsImpl = deps.fs ?? fs;
1542
+ const fsImpl = deps.fs ?? fsSync;
1538
1543
  const osImpl = deps.os ?? os;
1539
1544
  const pathImpl = deps.path ?? path;
1540
1545
  const home = osImpl.homedir();
@@ -2083,7 +2088,7 @@ function isPathInside$1(basePath, candidatePath) {
2083
2088
  }
2084
2089
  function safeRealpathSync$1(filePath) {
2085
2090
  try {
2086
- return fs.realpathSync(filePath);
2091
+ return fsSync.realpathSync(filePath);
2087
2092
  } catch {
2088
2093
  return null;
2089
2094
  }
@@ -2192,7 +2197,7 @@ var IncludeProcessor = class IncludeProcessor {
2192
2197
  const normalized = path.normalize(resolved);
2193
2198
  if (!isPathInside$1(this.rootDir, normalized)) throw new ConfigIncludeError(`Include path escapes config directory: ${includePath} (root: ${this.rootDir})`, includePath);
2194
2199
  try {
2195
- const real = fs.realpathSync(normalized);
2200
+ const real = fsSync.realpathSync(normalized);
2196
2201
  if (!isPathInside$1(this.rootRealDir, real)) throw new ConfigIncludeError(`Include path resolves outside config directory (symlink): ${includePath} (root: ${this.rootDir})`, includePath);
2197
2202
  } catch (err) {
2198
2203
  if (err instanceof ConfigIncludeError) throw err;
@@ -2228,13 +2233,13 @@ var IncludeProcessor = class IncludeProcessor {
2228
2233
  };
2229
2234
  function safeRealpath(target) {
2230
2235
  try {
2231
- return fs.realpathSync(target);
2236
+ return fsSync.realpathSync(target);
2232
2237
  } catch {
2233
2238
  return target;
2234
2239
  }
2235
2240
  }
2236
2241
  const defaultResolver = {
2237
- readFile: (p) => fs.readFileSync(p, "utf-8"),
2242
+ readFile: (p) => fsSync.readFileSync(p, "utf-8"),
2238
2243
  parseJson: (raw) => JSON5.parse(raw)
2239
2244
  };
2240
2245
  /**
@@ -3431,13 +3436,13 @@ function resolveBundledPluginsDir() {
3431
3436
  try {
3432
3437
  const execDir = path.dirname(process.execPath);
3433
3438
  const sibling = path.join(execDir, "extensions");
3434
- if (fs.existsSync(sibling)) return sibling;
3439
+ if (fsSync.existsSync(sibling)) return sibling;
3435
3440
  } catch {}
3436
3441
  try {
3437
3442
  let cursor = path.dirname(fileURLToPath(import.meta.url));
3438
3443
  for (let i = 0; i < 6; i += 1) {
3439
3444
  const candidate = path.join(cursor, "extensions");
3440
- if (fs.existsSync(candidate)) return candidate;
3445
+ if (fsSync.existsSync(candidate)) return candidate;
3441
3446
  const parent = path.dirname(cursor);
3442
3447
  if (parent === cursor) break;
3443
3448
  cursor = parent;
@@ -3464,20 +3469,20 @@ function normalizeStringList(value) {
3464
3469
  function resolvePluginManifestPath(rootDir) {
3465
3470
  for (const filename of PLUGIN_MANIFEST_FILENAMES) {
3466
3471
  const candidate = path.join(rootDir, filename);
3467
- if (fs.existsSync(candidate)) return candidate;
3472
+ if (fsSync.existsSync(candidate)) return candidate;
3468
3473
  }
3469
3474
  return path.join(rootDir, PLUGIN_MANIFEST_FILENAME);
3470
3475
  }
3471
3476
  function loadPluginManifest(rootDir) {
3472
3477
  const manifestPath = resolvePluginManifestPath(rootDir);
3473
- if (!fs.existsSync(manifestPath)) return {
3478
+ if (!fsSync.existsSync(manifestPath)) return {
3474
3479
  ok: false,
3475
3480
  error: `plugin manifest not found: ${manifestPath}`,
3476
3481
  manifestPath
3477
3482
  };
3478
3483
  let raw;
3479
3484
  try {
3480
- raw = JSON.parse(fs.readFileSync(manifestPath, "utf-8"));
3485
+ raw = JSON.parse(fsSync.readFileSync(manifestPath, "utf-8"));
3481
3486
  } catch (err) {
3482
3487
  return {
3483
3488
  ok: false,
@@ -3549,7 +3554,7 @@ function safeRealpathSync(targetPath, cache) {
3549
3554
  const cached = cache?.get(targetPath);
3550
3555
  if (cached) return cached;
3551
3556
  try {
3552
- const resolved = fs.realpathSync(targetPath);
3557
+ const resolved = fsSync.realpathSync(targetPath);
3553
3558
  cache?.set(targetPath, resolved);
3554
3559
  return resolved;
3555
3560
  } catch {
@@ -3558,7 +3563,7 @@ function safeRealpathSync(targetPath, cache) {
3558
3563
  }
3559
3564
  function safeStatSync(targetPath) {
3560
3565
  try {
3561
- return fs.statSync(targetPath);
3566
+ return fsSync.statSync(targetPath);
3562
3567
  } catch {
3563
3568
  return null;
3564
3569
  }
@@ -3680,9 +3685,9 @@ function shouldIgnoreScannedDirectory(dirName) {
3680
3685
  }
3681
3686
  function readPackageManifest(dir) {
3682
3687
  const manifestPath = path.join(dir, "package.json");
3683
- if (!fs.existsSync(manifestPath)) return null;
3688
+ if (!fsSync.existsSync(manifestPath)) return null;
3684
3689
  try {
3685
- const raw = fs.readFileSync(manifestPath, "utf-8");
3690
+ const raw = fsSync.readFileSync(manifestPath, "utf-8");
3686
3691
  return JSON.parse(raw);
3687
3692
  } catch {
3688
3693
  return null;
@@ -3740,10 +3745,10 @@ function resolvePackageEntrySource(params) {
3740
3745
  return source;
3741
3746
  }
3742
3747
  function discoverInDirectory(params) {
3743
- if (!fs.existsSync(params.dir)) return;
3748
+ if (!fsSync.existsSync(params.dir)) return;
3744
3749
  let entries = [];
3745
3750
  try {
3746
- entries = fs.readdirSync(params.dir, { withFileTypes: true });
3751
+ entries = fsSync.readdirSync(params.dir, { withFileTypes: true });
3747
3752
  } catch (err) {
3748
3753
  params.diagnostics.push({
3749
3754
  level: "warn",
@@ -3806,7 +3811,7 @@ function discoverInDirectory(params) {
3806
3811
  "index.js",
3807
3812
  "index.mjs",
3808
3813
  "index.cjs"
3809
- ].map((candidate) => path.join(fullPath, candidate)).find((candidate) => fs.existsSync(candidate));
3814
+ ].map((candidate) => path.join(fullPath, candidate)).find((candidate) => fsSync.existsSync(candidate));
3810
3815
  if (indexFile && isExtensionFile(indexFile)) addCandidate({
3811
3816
  candidates: params.candidates,
3812
3817
  diagnostics: params.diagnostics,
@@ -3824,7 +3829,7 @@ function discoverInDirectory(params) {
3824
3829
  }
3825
3830
  function discoverFromPath(params) {
3826
3831
  const resolved = resolveUserPath(params.rawPath);
3827
- if (!fs.existsSync(resolved)) {
3832
+ if (!fsSync.existsSync(resolved)) {
3828
3833
  params.diagnostics.push({
3829
3834
  level: "error",
3830
3835
  message: `plugin path not found: ${resolved}`,
@@ -3832,7 +3837,7 @@ function discoverFromPath(params) {
3832
3837
  });
3833
3838
  return;
3834
3839
  }
3835
- const stat = fs.statSync(resolved);
3840
+ const stat = fsSync.statSync(resolved);
3836
3841
  if (stat.isFile()) {
3837
3842
  if (!isExtensionFile(resolved)) {
3838
3843
  params.diagnostics.push({
@@ -3892,7 +3897,7 @@ function discoverFromPath(params) {
3892
3897
  "index.js",
3893
3898
  "index.mjs",
3894
3899
  "index.cjs"
3895
- ].map((candidate) => path.join(resolved, candidate)).find((candidate) => fs.existsSync(candidate));
3900
+ ].map((candidate) => path.join(resolved, candidate)).find((candidate) => fsSync.existsSync(candidate));
3896
3901
  if (indexFile && isExtensionFile(indexFile)) {
3897
3902
  addCandidate({
3898
3903
  candidates: params.candidates,
@@ -4006,7 +4011,7 @@ function buildCacheKey(params) {
4006
4011
  }
4007
4012
  function safeStatMtimeMs(filePath) {
4008
4013
  try {
4009
- return fs.statSync(filePath).mtimeMs;
4014
+ return fsSync.statSync(filePath).mtimeMs;
4010
4015
  } catch {
4011
4016
  return null;
4012
4017
  }
@@ -4858,6 +4863,7 @@ const AgentDefaultsSchema = z.object({
4858
4863
  params: z.record(z.string(), z.unknown()).optional(),
4859
4864
  streaming: z.boolean().optional()
4860
4865
  }).strict()).optional(),
4866
+ workspace: z.string().optional(),
4861
4867
  repoRoot: z.string().optional(),
4862
4868
  skipBootstrap: z.boolean().optional(),
4863
4869
  bootstrapMaxChars: z.number().int().positive().optional(),
@@ -6894,7 +6900,8 @@ function validateIdentityAvatar(config) {
6894
6900
  });
6895
6901
  continue;
6896
6902
  }
6897
- if (!isWorkspaceAvatarPath(avatar, resolveAgentWorkspaceDir(config, entry.id ?? resolveDefaultAgentId(config)))) issues.push({
6903
+ const workspaceDir = resolveAgentWorkspaceDirOrNull(config, entry.id ?? resolveDefaultAgentId(config));
6904
+ if (workspaceDir != null && !isWorkspaceAvatarPath(avatar, workspaceDir)) issues.push({
6898
6905
  path: `agents.list.${index}.identity.avatar`,
6899
6906
  message: "identity.avatar must stay within the agent workspace."
6900
6907
  });
@@ -6970,7 +6977,7 @@ function validateConfigObjectWithPluginsBase(raw, opts) {
6970
6977
  if (registryInfo) return registryInfo;
6971
6978
  const registry = loadPluginManifestRegistry({
6972
6979
  config,
6973
- workspaceDir: resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config)) ?? void 0
6980
+ workspaceDir: resolveAgentWorkspaceDirOrNull(config, resolveDefaultAgentId(config)) ?? void 0
6974
6981
  });
6975
6982
  const knownIds = new Set(registry.plugins.map((record) => record.id));
6976
6983
  const normalizedPlugins = normalizePluginsConfig(config.plugins);
@@ -7492,7 +7499,7 @@ function resolveConfigPathForDeps(deps) {
7492
7499
  }
7493
7500
  function normalizeDeps(overrides = {}) {
7494
7501
  return {
7495
- fs: overrides.fs ?? fs,
7502
+ fs: overrides.fs ?? fsSync,
7496
7503
  json5: overrides.json5 ?? JSON5,
7497
7504
  env: overrides.env ?? process.env,
7498
7505
  homedir: overrides.homedir ?? (() => resolveRequiredHomeDir(overrides.env ?? process.env, os.homedir)),
@@ -9083,19 +9090,19 @@ const OPEN_READ_FLAGS = constants.O_RDONLY | (SUPPORTS_NOFOLLOW ? constants.O_NO
9083
9090
  async function openVerifiedLocalFile(filePath) {
9084
9091
  let handle;
9085
9092
  try {
9086
- handle = await fs$1.open(filePath, OPEN_READ_FLAGS);
9093
+ handle = await fs.open(filePath, OPEN_READ_FLAGS);
9087
9094
  } catch (err) {
9088
9095
  if (isNotFoundPathError(err)) throw new SafeOpenError("not-found", "file not found");
9089
9096
  if (isSymlinkOpenError(err)) throw new SafeOpenError("symlink", "symlink open blocked", { cause: err });
9090
9097
  throw err;
9091
9098
  }
9092
9099
  try {
9093
- const [stat, lstat] = await Promise.all([handle.stat(), fs$1.lstat(filePath)]);
9100
+ const [stat, lstat] = await Promise.all([handle.stat(), fs.lstat(filePath)]);
9094
9101
  if (lstat.isSymbolicLink()) throw new SafeOpenError("symlink", "symlink not allowed");
9095
9102
  if (!stat.isFile()) throw new SafeOpenError("not-file", "not a file");
9096
9103
  if (!sameFileIdentity(stat, lstat)) throw new SafeOpenError("path-mismatch", "path changed during read");
9097
- const realPath = await fs$1.realpath(filePath);
9098
- if (!sameFileIdentity(stat, await fs$1.stat(realPath))) throw new SafeOpenError("path-mismatch", "path mismatch");
9104
+ const realPath = await fs.realpath(filePath);
9105
+ if (!sameFileIdentity(stat, await fs.stat(realPath))) throw new SafeOpenError("path-mismatch", "path mismatch");
9099
9106
  return {
9100
9107
  handle,
9101
9108
  realPath,
@@ -9954,11 +9961,11 @@ function readJpegExifOrientation(buffer) {
9954
9961
  return null;
9955
9962
  }
9956
9963
  async function withTempDir(fn) {
9957
- const dir = await fs$1.mkdtemp(path.join(os.tmpdir(), "remoteclaw-img-"));
9964
+ const dir = await fs.mkdtemp(path.join(os.tmpdir(), "remoteclaw-img-"));
9958
9965
  try {
9959
9966
  return await fn(dir);
9960
9967
  } finally {
9961
- await fs$1.rm(dir, {
9968
+ await fs.rm(dir, {
9962
9969
  recursive: true,
9963
9970
  force: true
9964
9971
  }).catch(() => {});
@@ -9967,7 +9974,7 @@ async function withTempDir(fn) {
9967
9974
  async function sipsMetadataFromBuffer(buffer) {
9968
9975
  return await withTempDir(async (dir) => {
9969
9976
  const input = path.join(dir, "in.img");
9970
- await fs$1.writeFile(input, buffer);
9977
+ await fs.writeFile(input, buffer);
9971
9978
  const { stdout } = await runExec("/usr/bin/sips", [
9972
9979
  "-g",
9973
9980
  "pixelWidth",
@@ -9995,7 +10002,7 @@ async function sipsResizeToJpeg(params) {
9995
10002
  return await withTempDir(async (dir) => {
9996
10003
  const input = path.join(dir, "in.img");
9997
10004
  const output = path.join(dir, "out.jpg");
9998
- await fs$1.writeFile(input, params.buffer);
10005
+ await fs.writeFile(input, params.buffer);
9999
10006
  await runExec("/usr/bin/sips", [
10000
10007
  "-Z",
10001
10008
  String(Math.max(1, Math.round(params.maxSide))),
@@ -10012,14 +10019,14 @@ async function sipsResizeToJpeg(params) {
10012
10019
  timeoutMs: 2e4,
10013
10020
  maxBuffer: 1024 * 1024
10014
10021
  });
10015
- return await fs$1.readFile(output);
10022
+ return await fs.readFile(output);
10016
10023
  });
10017
10024
  }
10018
10025
  async function sipsConvertToJpeg(buffer) {
10019
10026
  return await withTempDir(async (dir) => {
10020
10027
  const input = path.join(dir, "in.heic");
10021
10028
  const output = path.join(dir, "out.jpg");
10022
- await fs$1.writeFile(input, buffer);
10029
+ await fs.writeFile(input, buffer);
10023
10030
  await runExec("/usr/bin/sips", [
10024
10031
  "-s",
10025
10032
  "format",
@@ -10031,7 +10038,7 @@ async function sipsConvertToJpeg(buffer) {
10031
10038
  timeoutMs: 2e4,
10032
10039
  maxBuffer: 1024 * 1024
10033
10040
  });
10034
- return await fs$1.readFile(output);
10041
+ return await fs.readFile(output);
10035
10042
  });
10036
10043
  }
10037
10044
  async function getImageMetadata(buffer) {
@@ -10082,7 +10089,7 @@ async function sipsApplyOrientation(buffer, orientation) {
10082
10089
  return await withTempDir(async (dir) => {
10083
10090
  const input = path.join(dir, "in.jpg");
10084
10091
  const output = path.join(dir, "out.jpg");
10085
- await fs$1.writeFile(input, buffer);
10092
+ await fs.writeFile(input, buffer);
10086
10093
  await runExec("/usr/bin/sips", [
10087
10094
  ...ops,
10088
10095
  input,
@@ -10092,7 +10099,7 @@ async function sipsApplyOrientation(buffer, orientation) {
10092
10099
  timeoutMs: 2e4,
10093
10100
  maxBuffer: 1024 * 1024
10094
10101
  });
10095
- return await fs$1.readFile(output);
10102
+ return await fs.readFile(output);
10096
10103
  });
10097
10104
  }
10098
10105
  async function resizeToJpeg(params) {
@@ -10245,7 +10252,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
10245
10252
  const roots = localRoots ?? getDefaultLocalRoots();
10246
10253
  let resolved;
10247
10254
  try {
10248
- resolved = await fs$1.realpath(mediaPath);
10255
+ resolved = await fs.realpath(mediaPath);
10249
10256
  } catch {
10250
10257
  resolved = path.resolve(mediaPath);
10251
10258
  }
@@ -10262,7 +10269,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
10262
10269
  for (const root of roots) {
10263
10270
  let resolvedRoot;
10264
10271
  try {
10265
- resolvedRoot = await fs$1.realpath(root);
10272
+ resolvedRoot = await fs.realpath(root);
10266
10273
  } catch {
10267
10274
  resolvedRoot = path.resolve(root);
10268
10275
  }
@@ -1,31 +1,31 @@
1
1
  import { _ as defaultRuntime } from "./entry.js";
2
2
  import { u as resolveThreadSessionKeys } from "./session-key-C2n-VILA.js";
3
- import { i as loadConfig } from "./config-FHu9Bn4R.js";
3
+ import { i as loadConfig } from "./config-CKjn6ORX.js";
4
4
  import { c as resolveSessionAgentId } from "./agent-scope-C50VuLKh.js";
5
5
  import { c as normalizeMessageChannel, f as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_NAMES } from "./message-channel-uWMAiywE.js";
6
- import { f as recordSessionMetaFromInbound, i as appendAssistantMessageToSessionTranscript } from "./sessions--PykPynp.js";
6
+ import { f as recordSessionMetaFromInbound, i as appendAssistantMessageToSessionTranscript } from "./sessions-BntNl3-l.js";
7
7
  import { C as resolveDiscordAccount, a as isWhatsAppGroupJid, h as resolveSlackAccount, n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BflZz0sp.js";
8
8
  import { t as parseSlackTarget } from "./targets-CmC5m7Ey.js";
9
9
  import { t as parseDiscordTarget } from "./targets-D7OKVXMI.js";
10
- import { a as looksLikeUuid, c as resolveSignalSender, n as normalizeAllowListLower, o as resolveSignalPeerId, s as resolveSignalRecipient } from "./loader-y9MhJewT.js";
10
+ import { a as looksLikeUuid, c as resolveSignalSender, n as normalizeAllowListLower, o as resolveSignalPeerId, s as resolveSignalRecipient } from "./loader-Bkhoi4yR.js";
11
11
  import { m as resolveStorePath } from "./chat-envelope-DEZ-5RY8.js";
12
- import { a as randomIdempotencyKey, r as callGatewayLeastPrivilege } from "./call-BbwtB9Y-.js";
13
- import { h as normalizeTargetForProvider, m as normalizeChannelTargetInput, p as buildTargetResolverSignature } from "./hook-runner-global-DJ14gXFP.js";
12
+ import { a as randomIdempotencyKey, r as callGatewayLeastPrivilege } from "./call-C1c3rcy7.js";
13
+ import { h as normalizeTargetForProvider, m as normalizeChannelTargetInput, p as buildTargetResolverSignature } from "./hook-runner-global-BSklbS52.js";
14
14
  import { t as loadWebMedia } from "./media-DN7yRfrH.js";
15
15
  import { n as normalizePollInput } from "./polls-CwwHzYBM.js";
16
16
  import { n as extensionForMime } from "./mime-Cxh_64P6.js";
17
17
  import { t as getAgentScopedMediaLocalRoots } from "./local-roots-BrH0Q63K.js";
18
18
  import { d as readStringParam, l as readStringArrayParam, s as readNumberParam } from "./common-DSVmydhm.js";
19
19
  import { r as unknownTargetError, t as ambiguousTargetError } from "./target-errors-DdIAPcMM.js";
20
- import { r as resolveOutboundTarget } from "./targets-DB4vBpIQ.js";
20
+ import { r as resolveOutboundTarget } from "./targets-DK9MVsjx.js";
21
21
  import { t as createSlackWebClient } from "./client-C61M8zI3.js";
22
- import { t as parseReplyDirectives } from "./reply-directives-CD2WycBM.js";
22
+ import { t as parseReplyDirectives } from "./reply-directives-DspqGGVJ.js";
23
23
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-UncQvCVs.js";
24
24
  import { t as buildAgentSessionKey } from "./resolve-route-CBVbY0xS.js";
25
- import { E as buildTelegramGroupPeerId } from "./send-xnwty9cY.js";
25
+ import { E as buildTelegramGroupPeerId } from "./send-DWzItTE9.js";
26
26
  import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-NNPbxnyZ.js";
27
- import { o as normalizeReplyPayloadsForDelivery, s as throwIfAborted, t as deliverOutboundPayloads } from "./deliver-912khjLK.js";
28
- import { a as normalizeIMessageHandle, o as parseIMessageTarget } from "./send-Bx9bUGav.js";
27
+ import { o as normalizeReplyPayloadsForDelivery, s as throwIfAborted, t as deliverOutboundPayloads } from "./deliver-Dm7GkHXJ.js";
28
+ import { a as normalizeIMessageHandle, o as parseIMessageTarget } from "./send-CltrzWlk.js";
29
29
  import { fileURLToPath } from "node:url";
30
30
  import path from "node:path";
31
31
  import fsp from "node:fs/promises";
@@ -1,31 +1,31 @@
1
- import { c as resolveSessionAgentId } from "./agent-scope-BGYzhtWQ.js";
1
+ import { c as resolveSessionAgentId } from "./agent-scope-9WY5O-KK.js";
2
2
  import { n as defaultRuntime } from "./runtime-DJNp29jv.js";
3
3
  import { u as resolveThreadSessionKeys } from "./session-key-5YLnn_qf.js";
4
- import { c as normalizeMessageChannel, f as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_NAMES } from "./message-channel-DzJqHVZD.js";
5
- import { t as parseDiscordTarget } from "./targets-D-u6Kyio.js";
6
- import { i as loadConfig } from "./config-D5XU45KD.js";
7
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-nImrw2WR.js";
4
+ import { c as normalizeMessageChannel, f as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_NAMES } from "./message-channel-BlYrtmIp.js";
5
+ import { t as parseDiscordTarget } from "./targets-Cm1X3IyA.js";
6
+ import { i as loadConfig } from "./config-Dx2muBSJ.js";
7
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-z2u_s7jG.js";
8
8
  import { n as extensionForMime } from "./mime-BS3jhcZE.js";
9
- import { C as resolveDiscordAccount, a as isWhatsAppGroupJid, h as resolveSlackAccount, n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-woGRXMzU.js";
10
- import { d as normalizeChannelTargetInput, f as normalizeTargetForProvider, u as buildTargetResolverSignature } from "./reply-payloads-D_BM1Anb.js";
11
- import { r as resolveOutboundTarget } from "./targets-DfqPGOmM.js";
9
+ import { C as resolveDiscordAccount, a as isWhatsAppGroupJid, h as resolveSlackAccount, n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BXkDApVh.js";
10
+ import { d as normalizeChannelTargetInput, f as normalizeTargetForProvider, u as buildTargetResolverSignature } from "./reply-payloads-MIecsqo-.js";
11
+ import { r as resolveOutboundTarget } from "./targets-D1e9eyXc.js";
12
12
  import { t as parseSlackTarget } from "./targets-DyybKefq.js";
13
- import { c as resolveSignalRecipient, l as resolveSignalSender, o as looksLikeUuid, r as normalizeAllowListLower, s as resolveSignalPeerId } from "./loader-Ccwsh8Sh.js";
13
+ import { c as resolveSignalRecipient, l as resolveSignalSender, o as looksLikeUuid, r as normalizeAllowListLower, s as resolveSignalPeerId } from "./loader-DrZ6VM0f.js";
14
14
  import { t as createSlackWebClient } from "./client-DdpmATKq.js";
15
15
  import { m as resolveStorePath } from "./chat-envelope-el7Uo-Fe.js";
16
- import { N as appendAssistantMessageToSessionTranscript, a as recordSessionMetaFromInbound } from "./store-SusmIfz7.js";
17
- import { a as randomIdempotencyKey, r as callGatewayLeastPrivilege } from "./call-PivL7Uex.js";
16
+ import { N as appendAssistantMessageToSessionTranscript, a as recordSessionMetaFromInbound } from "./store-BsEwlSm1.js";
17
+ import { a as randomIdempotencyKey, r as callGatewayLeastPrivilege } from "./call-EndUQoN2.js";
18
18
  import { n as normalizePollInput } from "./polls-B0CCBDeR.js";
19
- import { i as loadWebMedia } from "./ir-BpaAMTfW.js";
20
- import { d as readStringParam, l as readStringArrayParam, s as readNumberParam } from "./common-CMI-qsF8.js";
21
- import { t as parseReplyDirectives } from "./reply-directives-BHJKp1Du.js";
19
+ import { i as loadWebMedia } from "./ir-Ch9FC9Z_.js";
20
+ import { d as readStringParam, l as readStringArrayParam, s as readNumberParam } from "./common-Cp3rsBqx.js";
21
+ import { t as parseReplyDirectives } from "./reply-directives-DOPAdviR.js";
22
22
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-D-qLBpTA.js";
23
23
  import { r as unknownTargetError, t as ambiguousTargetError } from "./target-errors-BDpPcwh5.js";
24
- import { t as buildAgentSessionKey } from "./resolve-route-DGEgTEif.js";
25
- import { E as buildTelegramGroupPeerId } from "./send-B1_Ymjb9.js";
26
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BGl53D5K.js";
27
- import { o as normalizeReplyPayloadsForDelivery, s as throwIfAborted, t as deliverOutboundPayloads } from "./deliver-D56J4-1F.js";
28
- import { a as normalizeIMessageHandle, o as parseIMessageTarget } from "./send-DHldI3gf.js";
24
+ import { t as buildAgentSessionKey } from "./resolve-route-BDGdM-l3.js";
25
+ import { E as buildTelegramGroupPeerId } from "./send-pZWXl_O3.js";
26
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-CJXZTxae.js";
27
+ import { o as normalizeReplyPayloadsForDelivery, s as throwIfAborted, t as deliverOutboundPayloads } from "./deliver-wTlFm59G.js";
28
+ import { a as normalizeIMessageHandle, o as parseIMessageTarget } from "./send-5HyMBvLh.js";
29
29
  import { fileURLToPath } from "node:url";
30
30
  import path from "node:path";
31
31
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { _ as normalizeChatChannelId, l as CHANNEL_IDS, v as getActivePluginRegistry } from "./subsystem-COd61u0P.js";
1
+ import { _ as normalizeChatChannelId, l as CHANNEL_IDS, v as getActivePluginRegistry } from "./subsystem-CrJCqjAh.js";
2
2
 
3
3
  //#region src/gateway/protocol/client-info.ts
4
4
  const GATEWAY_CLIENT_IDS = {
@@ -1,29 +1,29 @@
1
1
  import "./paths-BTaH3rLn.js";
2
- import { I as isRich, L as theme, b as shortenHomePath, y as shortenHomeInString } from "./utils-LBKvDoPx.js";
3
- import { r as resolveAgentConfig, s as resolveDefaultAgentId } from "./agent-scope-BGYzhtWQ.js";
4
- import "./subsystem-COd61u0P.js";
2
+ import { I as isRich, L as theme, b as shortenHomePath, y as shortenHomeInString } from "./utils-C5daYcFn.js";
3
+ import { r as resolveAgentConfig, s as resolveDefaultAgentId } from "./agent-scope-9WY5O-KK.js";
4
+ import "./subsystem-CrJCqjAh.js";
5
5
  import { n as defaultRuntime } from "./runtime-DJNp29jv.js";
6
6
  import "./ansi-D04X81yq.js";
7
- import { f as GATEWAY_CLIENT_MODES, p as GATEWAY_CLIENT_NAMES } from "./message-channel-DzJqHVZD.js";
8
- import { _ as parseDurationMs, i as loadConfig } from "./config-D5XU45KD.js";
9
- import "./env-DeF64iu0.js";
7
+ import { f as GATEWAY_CLIENT_MODES, p as GATEWAY_CLIENT_NAMES } from "./message-channel-BlYrtmIp.js";
8
+ import { _ as parseDurationMs, i as loadConfig } from "./config-Dx2muBSJ.js";
9
+ import "./env-Br2Bl6Ht.js";
10
10
  import "./host-env-security-Bms2_EMV.js";
11
- import "./inbound-path-policy-Bg4gZBx-.js";
11
+ import "./inbound-path-policy-C_Qo8rqg.js";
12
12
  import "./env-vars-CLGbxdpL.js";
13
- import "./logger-Bw3cFE5t.js";
13
+ import "./logger-pznB_IdT.js";
14
14
  import "./ip-C9q3Oq20.js";
15
- import "./redact-eZq1uwNK.js";
16
- import "./errors-8F-77i6m.js";
15
+ import "./redact-BsoXOV1y.js";
16
+ import "./errors-BpAidYqH.js";
17
17
  import { n as formatTimeAgo } from "./format-relative-79_Y1n2Y.js";
18
- import { a as randomIdempotencyKey, n as callGateway } from "./call-PivL7Uex.js";
18
+ import { a as randomIdempotencyKey, n as callGateway } from "./call-EndUQoN2.js";
19
19
  import "./net-D6D0wgcF.js";
20
20
  import "./tailnet-PnMrjwGT.js";
21
- import { t as formatDocsLink } from "./links-C3soDNDH.js";
22
- import { n as withProgress } from "./progress-CBkSaM6z.js";
21
+ import { t as formatDocsLink } from "./links-Cm43Vcft.js";
22
+ import { n as withProgress } from "./progress--dapuyZA.js";
23
23
  import { t as runCommandWithRuntime } from "./cli-utils-DZe_rVkZ.js";
24
- import { t as formatHelpExamples } from "./help-format-DAxf0l_h.js";
25
- import { t as renderTable } from "./table-DPTzZyhu.js";
26
- import { a as resolveNodeIdFromCandidates, c as canvasSnapshotTempPath, d as parseCameraClipPayload, f as parseCameraSnapPayload, h as writeUrlToFile, i as parseEnvPairs, l as parseCanvasSnapshotPayload, m as writeCameraClipPayloadToFile, n as screenRecordTempPath, o as parseNodeList, p as writeBase64ToFile, r as writeScreenRecordToFile, s as parsePairingList, t as parseScreenRecordPayload, u as cameraTempPath } from "./nodes-screen-BR9sYoPa.js";
24
+ import { t as formatHelpExamples } from "./help-format-sqWgYEdL.js";
25
+ import { t as renderTable } from "./table-CpmqqcxJ.js";
26
+ import { a as resolveNodeIdFromCandidates, c as canvasSnapshotTempPath, d as parseCameraClipPayload, f as parseCameraSnapPayload, h as writeUrlToFile, i as parseEnvPairs, l as parseCanvasSnapshotPayload, m as writeCameraClipPayloadToFile, n as screenRecordTempPath, o as parseNodeList, p as writeBase64ToFile, r as writeScreenRecordToFile, s as parsePairingList, t as parseScreenRecordPayload, u as cameraTempPath } from "./nodes-screen-Bmp1l9wY.js";
27
27
  import { t as parseTimeoutMs } from "./parse-timeout-CDkco8kd.js";
28
28
  import path from "node:path";
29
29
  import fs from "node:fs/promises";
@@ -1,11 +1,11 @@
1
1
  import { Ct as theme, St as isRich, _ as defaultRuntime, at as shortenHomeInString, ot as shortenHomePath } from "./entry.js";
2
- import { _ as parseDurationMs, i as loadConfig } from "./config-FHu9Bn4R.js";
2
+ import { _ as parseDurationMs, i as loadConfig } from "./config-CKjn6ORX.js";
3
3
  import "./host-env-security-szwfmhC4.js";
4
4
  import "./inbound-path-policy-sdr5Ji0k.js";
5
5
  import "./env-vars-7aZqKPhk.js";
6
6
  import { r as resolveAgentConfig, s as resolveDefaultAgentId } from "./agent-scope-C50VuLKh.js";
7
7
  import { f as GATEWAY_CLIENT_MODES, p as GATEWAY_CLIENT_NAMES } from "./message-channel-uWMAiywE.js";
8
- import { a as randomIdempotencyKey, n as callGateway } from "./call-BbwtB9Y-.js";
8
+ import { a as randomIdempotencyKey, n as callGateway } from "./call-C1c3rcy7.js";
9
9
  import "./net-Cg8AQeke.js";
10
10
  import "./logger-BWMPnILd.js";
11
11
  import "./ip-D0zgNmBV.js";
@@ -1,4 +1,4 @@
1
- import { Z as resolvePreferredRemoteClawTmpDir } from "./utils-LBKvDoPx.js";
1
+ import { Z as resolvePreferredRemoteClawTmpDir } from "./utils-C5daYcFn.js";
2
2
  import { n as resolveCliName } from "./cli-name-BicfmwQX.js";
3
3
  import fs from "node:fs";
4
4
  import * as path$1 from "node:path";
@@ -1,5 +1,5 @@
1
1
  import { n as visibleWidth } from "./ansi-D04X81yq.js";
2
- import { r as stylePromptTitle } from "./prompt-style-DVEm3BZW.js";
2
+ import { r as stylePromptTitle } from "./prompt-style-D0LUnqXi.js";
3
3
  import { note } from "@clack/prompts";
4
4
 
5
5
  //#region src/terminal/note.ts
@@ -1,5 +1,5 @@
1
- import { _ as resolveUserPath } from "./utils-LBKvDoPx.js";
2
- import { t as runCommandWithTimeout } from "./exec-DbKuYyM1.js";
1
+ import { _ as resolveUserPath } from "./utils-C5daYcFn.js";
2
+ import { t as runCommandWithTimeout } from "./exec-C6ACg_Mn.js";
3
3
  import { n as isPathInside, r as isSymlinkOpenError, t as isNotFoundPathError } from "./path-guards-CrQOUlsq.js";
4
4
  import { n as resolveSafeBaseDir } from "./path-safety-juI2XbO1.js";
5
5
  import { constants } from "node:fs";
@@ -1,7 +1,7 @@
1
- import { a as resolveAgentWorkspaceDir, s as resolveDefaultAgentId } from "./agent-scope-BGYzhtWQ.js";
2
- import { t as createSubsystemLogger } from "./subsystem-COd61u0P.js";
3
- import { i as loadConfig } from "./config-D5XU45KD.js";
4
- import { t as loadRemoteClawPlugins } from "./loader-Ccwsh8Sh.js";
1
+ import { a as resolveAgentWorkspaceDir, s as resolveDefaultAgentId } from "./agent-scope-9WY5O-KK.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-CrJCqjAh.js";
3
+ import { i as loadConfig } from "./config-Dx2muBSJ.js";
4
+ import { t as loadRemoteClawPlugins } from "./loader-DrZ6VM0f.js";
5
5
  import { t as createPluginLoaderLogger } from "./logger-GvipVDfh.js";
6
6
 
7
7
  //#region src/plugins/status.ts
@@ -1,7 +1,7 @@
1
1
  import { o as createSubsystemLogger } from "./entry.js";
2
- import { i as loadConfig } from "./config-FHu9Bn4R.js";
2
+ import { i as loadConfig } from "./config-CKjn6ORX.js";
3
3
  import { a as resolveAgentWorkspaceDir, s as resolveDefaultAgentId } from "./agent-scope-C50VuLKh.js";
4
- import { t as loadRemoteClawPlugins } from "./loader-y9MhJewT.js";
4
+ import { t as loadRemoteClawPlugins } from "./loader-Bkhoi4yR.js";
5
5
  import { t as createPluginLoaderLogger } from "./logger-DyL5G2DO.js";
6
6
 
7
7
  //#region src/plugins/status.ts
@@ -1,11 +1,11 @@
1
1
  import { Ht as resolveGatewayPort, _ as defaultRuntime, rt as resolveUserPath, v as restoreTerminalState } from "./entry.js";
2
2
  import { t as formatCliCommand } from "./command-format-CVfo8I5f.js";
3
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-FHu9Bn4R.js";
3
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-CKjn6ORX.js";
4
4
  import { n as WizardCancelledError, t as createClackPrompter } from "./clack-prompter-CCFnKP_1.js";
5
- import { h as resolveControlUiLinks, i as ensureWorkspaceAndSessions, m as randomToken, s as handleReset, t as applyWizardMetadata, v as waitForGatewayReachable } from "./onboard-helpers-sDc2Ky6H.js";
5
+ import { h as resolveControlUiLinks, i as ensureWorkspaceAndSessions, m as randomToken, s as handleReset, t as applyWizardMetadata, v as waitForGatewayReachable } from "./onboard-helpers-DC1_Uz_K.js";
6
6
  import { t as assertSupportedRuntime } from "./runtime-guard-U-ewY_QH.js";
7
7
  import { t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CvqE4ysg.js";
8
- import { t as runOnboardingWizard } from "./onboarding-DCu1iBTV.js";
8
+ import { t as runOnboardingWizard } from "./onboarding-CJzQIK_p.js";
9
9
  import { n as logConfigUpdated } from "./logging-D8-Kozjc.js";
10
10
  import { t as applyOnboardingLocalWorkspaceConfig } from "./onboard-config-BCTthQ7J.js";
11
11
 
@@ -257,7 +257,7 @@ async function runNonInteractiveOnboardingLocal(params) {
257
257
  }
258
258
  const daemonRuntimeRaw = opts.daemonRuntime ?? DEFAULT_GATEWAY_DAEMON_RUNTIME;
259
259
  if (!opts.skipHealth) {
260
- const { healthCommand } = await import("./health-SOuaKNRa.js").then((n) => n.i);
260
+ const { healthCommand } = await import("./health-DeNxtGCn.js").then((n) => n.i);
261
261
  await waitForGatewayReachable({
262
262
  url: resolveControlUiLinks({
263
263
  bind: gatewayResult.bind,