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
@@ -1,1225 +0,0 @@
1
- import "./paths-BTaH3rLn.js";
2
- import { L as theme, _ as resolveUserPath, b as shortenHomePath, t as CONFIG_DIR } from "./utils-C5daYcFn.js";
3
- import "./reply-B8It91bP.js";
4
- import "./subsystem-PQ64_nsu.js";
5
- import { i as defaultRuntime } from "./ansi-DtaiOnt1.js";
6
- import { c as resolveDefaultAgentId, o as resolveAgentWorkspaceDir } from "./agent-scope-_ND_-bJy.js";
7
- import "./subagent-registry-BGknZEUI.js";
8
- import "./message-channel-FMNRI5Ax.js";
9
- import "./targets-BjWhDMJM.js";
10
- import { D as LEGACY_MANIFEST_KEYS, K as isPathInside, O as MANIFEST_KEY, i as loadConfig, l as writeConfigFile, q as isPathInsideWithRealpath } from "./config-CAa0rZSx.js";
11
- import "./env-B3zr72vQ.js";
12
- import "./host-env-security-BGibnCbS.js";
13
- import "./shell-env-DYZq9PqC.js";
14
- import "./version-CVMnqdzu.js";
15
- import "./env-vars-a7S70ba7.js";
16
- import "./zod-schema-CbqZAIYy.js";
17
- import "./dock-Big-J2VN.js";
18
- import "./runner-CD3YycXx.js";
19
- import "./logger-B8yHnzPl.js";
20
- import "./ip-BAhS4rY2.js";
21
- import "./ssrf-B-rF_tZB.js";
22
- import "./local-roots-CrJ_Jv_G.js";
23
- import "./exec-Zz6eJ6YU.js";
24
- import "./tool-images-BYY11Gw3.js";
25
- import "./redact-gXuh8MFk.js";
26
- import "./errors-CdmXrBic.js";
27
- import "./mime-Cqg1jjia.js";
28
- import { t as formatCliCommand } from "./command-format-D0vKipG9.js";
29
- import "./auth-Drf91ntw.js";
30
- import "./file-lock-6NXMPZTT.js";
31
- import "./plugins-BRHOfy1Z.js";
32
- import "./accounts-Bo2bX8jP.js";
33
- import "./accounts-DtkyfvwR.js";
34
- import "./accounts-DmB4SVPK.js";
35
- import "./bindings-DsWJQVKh.js";
36
- import "./logging-BiuZwq5D.js";
37
- import "./tokens-DAFBx5qr.js";
38
- import "./reply-payloads-CQMtrphw.js";
39
- import "./targets-BlEVuFSt.js";
40
- import "./loader-BVHaRcP7.js";
41
- import "./commands-D842kCjj.js";
42
- import "./commands-registry-Cg2GTT2J.js";
43
- import "./pairing-store-DykkYpQ7.js";
44
- import "./fetch-DRVdxxEj.js";
45
- import "./retry-B19gMxS7.js";
46
- import "./client-D5m46AuY.js";
47
- import "./chat-envelope-BIujl9Cj.js";
48
- import "./store-DCrrxHyS.js";
49
- import "./strip-inbound-meta-0cvL6itU.js";
50
- import "./audio-BIvUsncf.js";
51
- import "./client-B9u3JdT_.js";
52
- import "./call-BrTmlOx3.js";
53
- import "./net-CNsUGiSw.js";
54
- import "./tailnet-CfZhpSnt.js";
55
- import "./lanes-BhdzrAIa.js";
56
- import "./response-prefix-template-DPOggmPO.js";
57
- import "./agent-helpers-BSGqeJr-.js";
58
- import "./image-ops-B9ofmzSq.js";
59
- import "./tool-display-C0hpLmkw.js";
60
- import "./channel-activity-C-L6rDrQ.js";
61
- import "./send-Dd2_MykI.js";
62
- import "./fs-safe-DZHpH7TI.js";
63
- import "./ir-CaxTklDC.js";
64
- import "./chunk-LUabyS9k.js";
65
- import "./markdown-tables-58Hq__7K.js";
66
- import "./render-CJl4GK1B.js";
67
- import "./tables-WZp8Vt9n.js";
68
- import "./session-cost-usage-CPFxBFUg.js";
69
- import "./common-B67cBSew.js";
70
- import "./reply-directives-ssnaPNiU.js";
71
- import "./ack-reactions-DXHaDBH-.js";
72
- import "./resolve-route-C8ooNlI4.js";
73
- import "./provider-dispatcher-BxNDRVIT.js";
74
- import "./store-B5989JkX.js";
75
- import "./reply-prefix-CWcAZKhE.js";
76
- import "./agent-qCBPcUcF.js";
77
- import { t as promptYesNo } from "./prompt-WEkXwIMT.js";
78
- import "./send-vvZXksNU.js";
79
- import "./send-B9mIJdUo.js";
80
- import "./send-ChvasRSh.js";
81
- import "./proxy-BMJL0Qog.js";
82
- import "./replies-LSx_XhsP.js";
83
- import "./channel-selection-DW21dXB1.js";
84
- import "./deliver-CDcL8ok6.js";
85
- import "./outbound-attachment-CZ7zoYxB.js";
86
- import "./delivery-queue-CTaYZQ_8.js";
87
- import "./send-DWf7BCPe.js";
88
- import "./onboard-helpers-SCO3k5Y8.js";
89
- import "./prompt-style-B4Cq4PyQ.js";
90
- import "./pairing-labels-3wDxaApH.js";
91
- import { t as formatDocsLink } from "./links-D5vtq30Q.js";
92
- import { c as resolveInstallModeOptions, d as withExtractedArchiveRoot, f as resolveArchiveSourcePath, g as resolveArchiveKind, h as readJsonFile, i as resolveSafeInstallDir, l as resolveTimedInstallModeOptions, m as fileExists, n as finalizeNpmSpecArchiveInstall, o as unscopedPackageName, r as installFromNpmSpecArchiveWithInstaller, s as installPackageDir, t as validateRegistryNpmSpec, u as resolveExistingInstallPath } from "./npm-registry-spec-Dz3z1Zpd.js";
93
- import { t as renderTable } from "./table-C-dba-5-.js";
94
- import { n as hasBinary } from "./config-eval-BCKpAS_K.js";
95
- import { a as parseFrontmatter, n as isConfigPathTruthy, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-BT3X-qCZ.js";
96
- import { n as resolvePinnedNpmInstallRecordForCli, r as buildPluginStatusReport, t as buildNpmInstallRecordFields } from "./npm-resolution-CqE0nhxJ.js";
97
- import fs from "node:fs";
98
- import path from "node:path";
99
- import fs$1 from "node:fs/promises";
100
-
101
- //#region src/shared/entry-metadata.ts
102
- function resolveEmojiAndHomepage(params) {
103
- const emoji = params.metadata?.emoji ?? params.frontmatter?.emoji;
104
- const homepageRaw = params.metadata?.homepage ?? params.frontmatter?.homepage ?? params.frontmatter?.website ?? params.frontmatter?.url;
105
- const homepage = homepageRaw?.trim() ? homepageRaw.trim() : void 0;
106
- return {
107
- ...emoji ? { emoji } : {},
108
- ...homepage ? { homepage } : {}
109
- };
110
- }
111
-
112
- //#endregion
113
- //#region src/shared/requirements.ts
114
- function resolveMissingBins(params) {
115
- const remote = params.hasRemoteBin;
116
- return params.required.filter((bin) => {
117
- if (params.hasLocalBin(bin)) return false;
118
- if (remote?.(bin)) return false;
119
- return true;
120
- });
121
- }
122
- function resolveMissingAnyBins(params) {
123
- if (params.required.length === 0) return [];
124
- if (params.required.some((bin) => params.hasLocalBin(bin))) return [];
125
- if (params.hasRemoteAnyBin?.(params.required)) return [];
126
- return params.required;
127
- }
128
- function resolveMissingOs(params) {
129
- if (params.required.length === 0) return [];
130
- if (params.required.includes(params.localPlatform)) return [];
131
- if (params.remotePlatforms?.some((platform) => params.required.includes(platform))) return [];
132
- return params.required;
133
- }
134
- function resolveMissingEnv(params) {
135
- const missing = [];
136
- for (const envName of params.required) {
137
- if (params.isSatisfied(envName)) continue;
138
- missing.push(envName);
139
- }
140
- return missing;
141
- }
142
- function buildConfigChecks(params) {
143
- return params.required.map((pathStr) => {
144
- return {
145
- path: pathStr,
146
- satisfied: params.isSatisfied(pathStr)
147
- };
148
- });
149
- }
150
- function evaluateRequirements(params) {
151
- const missingBins = resolveMissingBins({
152
- required: params.required.bins,
153
- hasLocalBin: params.hasLocalBin,
154
- hasRemoteBin: params.hasRemoteBin
155
- });
156
- const missingAnyBins = resolveMissingAnyBins({
157
- required: params.required.anyBins,
158
- hasLocalBin: params.hasLocalBin,
159
- hasRemoteAnyBin: params.hasRemoteAnyBin
160
- });
161
- const missingOs = resolveMissingOs({
162
- required: params.required.os,
163
- localPlatform: params.localPlatform,
164
- remotePlatforms: params.remotePlatforms
165
- });
166
- const missingEnv = resolveMissingEnv({
167
- required: params.required.env,
168
- isSatisfied: params.isEnvSatisfied
169
- });
170
- const configChecks = buildConfigChecks({
171
- required: params.required.config,
172
- isSatisfied: params.isConfigSatisfied
173
- });
174
- const missingConfig = configChecks.filter((check) => !check.satisfied).map((check) => check.path);
175
- const missing = params.always ? {
176
- bins: [],
177
- anyBins: [],
178
- env: [],
179
- config: [],
180
- os: []
181
- } : {
182
- bins: missingBins,
183
- anyBins: missingAnyBins,
184
- env: missingEnv,
185
- config: missingConfig,
186
- os: missingOs
187
- };
188
- return {
189
- missing,
190
- eligible: params.always || missing.bins.length === 0 && missing.anyBins.length === 0 && missing.env.length === 0 && missing.config.length === 0 && missing.os.length === 0,
191
- configChecks
192
- };
193
- }
194
- function evaluateRequirementsFromMetadata(params) {
195
- const required = {
196
- bins: params.metadata?.requires?.bins ?? [],
197
- anyBins: params.metadata?.requires?.anyBins ?? [],
198
- env: params.metadata?.requires?.env ?? [],
199
- config: params.metadata?.requires?.config ?? [],
200
- os: params.metadata?.os ?? []
201
- };
202
- return {
203
- required,
204
- ...evaluateRequirements({
205
- always: params.always,
206
- required,
207
- hasLocalBin: params.hasLocalBin,
208
- hasRemoteBin: params.hasRemoteBin,
209
- hasRemoteAnyBin: params.hasRemoteAnyBin,
210
- localPlatform: params.localPlatform,
211
- remotePlatforms: params.remotePlatforms,
212
- isEnvSatisfied: params.isEnvSatisfied,
213
- isConfigSatisfied: params.isConfigSatisfied
214
- })
215
- };
216
- }
217
- function evaluateRequirementsFromMetadataWithRemote(params) {
218
- return evaluateRequirementsFromMetadata({
219
- always: params.always,
220
- metadata: params.metadata,
221
- hasLocalBin: params.hasLocalBin,
222
- hasRemoteBin: params.remote?.hasBin,
223
- hasRemoteAnyBin: params.remote?.hasAnyBin,
224
- localPlatform: params.localPlatform,
225
- remotePlatforms: params.remote?.platforms,
226
- isEnvSatisfied: params.isEnvSatisfied,
227
- isConfigSatisfied: params.isConfigSatisfied
228
- });
229
- }
230
-
231
- //#endregion
232
- //#region src/shared/entry-status.ts
233
- function evaluateEntryMetadataRequirements(params) {
234
- const { emoji, homepage } = resolveEmojiAndHomepage({
235
- metadata: params.metadata,
236
- frontmatter: params.frontmatter
237
- });
238
- const { required, missing, eligible, configChecks } = evaluateRequirementsFromMetadataWithRemote({
239
- always: params.always,
240
- metadata: params.metadata ?? void 0,
241
- hasLocalBin: params.hasLocalBin,
242
- localPlatform: params.localPlatform,
243
- remote: params.remote,
244
- isEnvSatisfied: params.isEnvSatisfied,
245
- isConfigSatisfied: params.isConfigSatisfied
246
- });
247
- return {
248
- ...emoji ? { emoji } : {},
249
- ...homepage ? { homepage } : {},
250
- required,
251
- missing,
252
- requirementsSatisfied: eligible,
253
- configChecks
254
- };
255
- }
256
- function evaluateEntryMetadataRequirementsForCurrentPlatform(params) {
257
- return evaluateEntryMetadataRequirements({
258
- ...params,
259
- localPlatform: process.platform
260
- });
261
- }
262
- function evaluateEntryRequirementsForCurrentPlatform(params) {
263
- return evaluateEntryMetadataRequirementsForCurrentPlatform({
264
- always: params.always,
265
- metadata: params.entry.metadata,
266
- frontmatter: params.entry.frontmatter,
267
- hasLocalBin: params.hasLocalBin,
268
- remote: params.remote,
269
- isEnvSatisfied: params.isEnvSatisfied,
270
- isConfigSatisfied: params.isConfigSatisfied
271
- });
272
- }
273
-
274
- //#endregion
275
- //#region src/hooks/hooks-status.ts
276
- function resolveHookKey(entry) {
277
- return entry.metadata?.hookKey ?? entry.hook.name;
278
- }
279
- function normalizeInstallOptions(entry) {
280
- const install = entry.metadata?.install ?? [];
281
- if (install.length === 0) return [];
282
- return install.map((spec, index) => {
283
- const id = (spec.id ?? `${spec.kind}-${index}`).trim();
284
- const bins = spec.bins ?? [];
285
- let label = (spec.label ?? "").trim();
286
- if (!label) if (spec.kind === "bundled") label = "Bundled with RemoteClaw";
287
- else if (spec.kind === "npm" && spec.package) label = `Install ${spec.package} (npm)`;
288
- else if (spec.kind === "git" && spec.repository) label = `Install from ${spec.repository}`;
289
- else label = "Run installer";
290
- return {
291
- id,
292
- kind: spec.kind,
293
- label,
294
- bins
295
- };
296
- });
297
- }
298
- function buildHookStatus(entry, config, eligibility) {
299
- const hookKey = resolveHookKey(entry);
300
- const hookConfig = resolveHookConfig(config, hookKey);
301
- const managedByPlugin = entry.hook.source === "remoteclaw-plugin";
302
- const disabled = managedByPlugin ? false : hookConfig?.enabled === false;
303
- const always = entry.metadata?.always === true;
304
- const events = entry.metadata?.events ?? [];
305
- const isEnvSatisfied = (envName) => Boolean(process.env[envName] || hookConfig?.env?.[envName]);
306
- const isConfigSatisfied = (pathStr) => isConfigPathTruthy(config, pathStr);
307
- const { emoji, homepage, required, missing, requirementsSatisfied, configChecks } = evaluateEntryRequirementsForCurrentPlatform({
308
- always,
309
- entry,
310
- hasLocalBin: hasBinary,
311
- remote: eligibility?.remote,
312
- isEnvSatisfied,
313
- isConfigSatisfied
314
- });
315
- const eligible = !disabled && requirementsSatisfied;
316
- return {
317
- name: entry.hook.name,
318
- description: entry.hook.description,
319
- source: entry.hook.source,
320
- pluginId: entry.hook.pluginId,
321
- filePath: entry.hook.filePath,
322
- baseDir: entry.hook.baseDir,
323
- handlerPath: entry.hook.handlerPath,
324
- hookKey,
325
- emoji,
326
- homepage,
327
- events,
328
- always,
329
- disabled,
330
- eligible,
331
- managedByPlugin,
332
- requirements: required,
333
- missing,
334
- configChecks,
335
- install: normalizeInstallOptions(entry)
336
- };
337
- }
338
- function buildWorkspaceHookStatus(workspaceDir, opts) {
339
- return {
340
- workspaceDir,
341
- managedHooksDir: opts?.managedHooksDir ?? path.join(CONFIG_DIR, "hooks"),
342
- hooks: (opts?.entries ?? loadWorkspaceHookEntries(workspaceDir, opts)).map((entry) => buildHookStatus(entry, opts?.config, opts?.eligibility))
343
- };
344
- }
345
-
346
- //#endregion
347
- //#region src/hooks/install.ts
348
- const defaultLogger = {};
349
- function validateHookId(hookId) {
350
- if (!hookId) return "invalid hook name: missing";
351
- if (hookId === "." || hookId === "..") return "invalid hook name: reserved path segment";
352
- if (hookId.includes("/") || hookId.includes("\\")) return "invalid hook name: path separators not allowed";
353
- return null;
354
- }
355
- function resolveHookInstallDir(hookId, hooksDir) {
356
- const hooksBase = hooksDir ? resolveUserPath(hooksDir) : path.join(CONFIG_DIR, "hooks");
357
- const hookIdError = validateHookId(hookId);
358
- if (hookIdError) throw new Error(hookIdError);
359
- const targetDirResult = resolveSafeInstallDir({
360
- baseDir: hooksBase,
361
- id: hookId,
362
- invalidNameMessage: "invalid hook name: path traversal detected"
363
- });
364
- if (!targetDirResult.ok) throw new Error(targetDirResult.error);
365
- return targetDirResult.path;
366
- }
367
- async function ensureRemoteClawHooks(manifest) {
368
- let hooks = manifest[MANIFEST_KEY]?.hooks;
369
- if (!Array.isArray(hooks)) for (const key of LEGACY_MANIFEST_KEYS) {
370
- const legacy = manifest[key]?.hooks;
371
- if (Array.isArray(legacy)) {
372
- hooks = legacy;
373
- break;
374
- }
375
- }
376
- if (!Array.isArray(hooks)) throw new Error("package.json missing remoteclaw.hooks");
377
- const list = hooks.map((e) => typeof e === "string" ? e.trim() : "").filter(Boolean);
378
- if (list.length === 0) throw new Error("package.json remoteclaw.hooks is empty");
379
- return list;
380
- }
381
- async function resolveInstallTargetDir(id, hooksDir) {
382
- const baseHooksDir = hooksDir ? resolveUserPath(hooksDir) : path.join(CONFIG_DIR, "hooks");
383
- await fs$1.mkdir(baseHooksDir, { recursive: true });
384
- const targetDirResult = resolveSafeInstallDir({
385
- baseDir: baseHooksDir,
386
- id,
387
- invalidNameMessage: "invalid hook name: path traversal detected"
388
- });
389
- if (!targetDirResult.ok) return {
390
- ok: false,
391
- error: targetDirResult.error
392
- };
393
- return {
394
- ok: true,
395
- targetDir: targetDirResult.path
396
- };
397
- }
398
- async function resolveHookNameFromDir(hookDir) {
399
- const hookMdPath = path.join(hookDir, "HOOK.md");
400
- if (!await fileExists(hookMdPath)) throw new Error(`HOOK.md missing in ${hookDir}`);
401
- return parseFrontmatter(await fs$1.readFile(hookMdPath, "utf-8")).name || path.basename(hookDir);
402
- }
403
- async function validateHookDir(hookDir) {
404
- if (!await fileExists(path.join(hookDir, "HOOK.md"))) throw new Error(`HOOK.md missing in ${hookDir}`);
405
- if (!await Promise.all([
406
- "handler.ts",
407
- "handler.js",
408
- "index.ts",
409
- "index.js"
410
- ].map(async (candidate) => fileExists(path.join(hookDir, candidate)))).then((results) => results.some(Boolean))) throw new Error(`handler.ts/handler.js/index.ts/index.js missing in ${hookDir}`);
411
- }
412
- async function installHookPackageFromDir(params) {
413
- const { logger, timeoutMs, mode, dryRun } = resolveTimedInstallModeOptions(params, defaultLogger);
414
- const manifestPath = path.join(params.packageDir, "package.json");
415
- if (!await fileExists(manifestPath)) return {
416
- ok: false,
417
- error: "package.json missing"
418
- };
419
- let manifest;
420
- try {
421
- manifest = await readJsonFile(manifestPath);
422
- } catch (err) {
423
- return {
424
- ok: false,
425
- error: `invalid package.json: ${String(err)}`
426
- };
427
- }
428
- let hookEntries;
429
- try {
430
- hookEntries = await ensureRemoteClawHooks(manifest);
431
- } catch (err) {
432
- return {
433
- ok: false,
434
- error: String(err)
435
- };
436
- }
437
- const pkgName = typeof manifest.name === "string" ? manifest.name : "";
438
- const hookPackId = pkgName ? unscopedPackageName(pkgName) : path.basename(params.packageDir);
439
- const hookIdError = validateHookId(hookPackId);
440
- if (hookIdError) return {
441
- ok: false,
442
- error: hookIdError
443
- };
444
- if (params.expectedHookPackId && params.expectedHookPackId !== hookPackId) return {
445
- ok: false,
446
- error: `hook pack id mismatch: expected ${params.expectedHookPackId}, got ${hookPackId}`
447
- };
448
- const targetDirResult = await resolveInstallTargetDir(hookPackId, params.hooksDir);
449
- if (!targetDirResult.ok) return {
450
- ok: false,
451
- error: targetDirResult.error
452
- };
453
- const targetDir = targetDirResult.targetDir;
454
- if (mode === "install" && await fileExists(targetDir)) return {
455
- ok: false,
456
- error: `hook pack already exists: ${targetDir} (delete it first)`
457
- };
458
- const resolvedHooks = [];
459
- for (const entry of hookEntries) {
460
- const hookDir = path.resolve(params.packageDir, entry);
461
- if (!isPathInside(params.packageDir, hookDir)) return {
462
- ok: false,
463
- error: `remoteclaw.hooks entry escapes package directory: ${entry}`
464
- };
465
- await validateHookDir(hookDir);
466
- if (!isPathInsideWithRealpath(params.packageDir, hookDir, { requireRealpath: true })) return {
467
- ok: false,
468
- error: `remoteclaw.hooks entry resolves outside package directory: ${entry}`
469
- };
470
- const hookName = await resolveHookNameFromDir(hookDir);
471
- resolvedHooks.push(hookName);
472
- }
473
- if (dryRun) return {
474
- ok: true,
475
- hookPackId,
476
- hooks: resolvedHooks,
477
- targetDir,
478
- version: typeof manifest.version === "string" ? manifest.version : void 0
479
- };
480
- const deps = manifest.dependencies ?? {};
481
- const hasDeps = Object.keys(deps).length > 0;
482
- const installRes = await installPackageDir({
483
- sourceDir: params.packageDir,
484
- targetDir,
485
- mode,
486
- timeoutMs,
487
- logger,
488
- copyErrorPrefix: "failed to copy hook pack",
489
- hasDeps,
490
- depsLogMessage: "Installing hook pack dependencies…"
491
- });
492
- if (!installRes.ok) return installRes;
493
- return {
494
- ok: true,
495
- hookPackId,
496
- hooks: resolvedHooks,
497
- targetDir,
498
- version: typeof manifest.version === "string" ? manifest.version : void 0
499
- };
500
- }
501
- async function installHookFromDir(params) {
502
- const { logger, mode, dryRun } = resolveInstallModeOptions(params, defaultLogger);
503
- await validateHookDir(params.hookDir);
504
- const hookName = await resolveHookNameFromDir(params.hookDir);
505
- const hookIdError = validateHookId(hookName);
506
- if (hookIdError) return {
507
- ok: false,
508
- error: hookIdError
509
- };
510
- if (params.expectedHookPackId && params.expectedHookPackId !== hookName) return {
511
- ok: false,
512
- error: `hook id mismatch: expected ${params.expectedHookPackId}, got ${hookName}`
513
- };
514
- const targetDirResult = await resolveInstallTargetDir(hookName, params.hooksDir);
515
- if (!targetDirResult.ok) return {
516
- ok: false,
517
- error: targetDirResult.error
518
- };
519
- const targetDir = targetDirResult.targetDir;
520
- if (mode === "install" && await fileExists(targetDir)) return {
521
- ok: false,
522
- error: `hook already exists: ${targetDir} (delete it first)`
523
- };
524
- if (dryRun) return {
525
- ok: true,
526
- hookPackId: hookName,
527
- hooks: [hookName],
528
- targetDir
529
- };
530
- logger.info?.(`Installing to ${targetDir}…`);
531
- let backupDir = null;
532
- if (mode === "update" && await fileExists(targetDir)) {
533
- backupDir = `${targetDir}.backup-${Date.now()}`;
534
- await fs$1.rename(targetDir, backupDir);
535
- }
536
- try {
537
- await fs$1.cp(params.hookDir, targetDir, { recursive: true });
538
- } catch (err) {
539
- if (backupDir) {
540
- await fs$1.rm(targetDir, {
541
- recursive: true,
542
- force: true
543
- }).catch(() => void 0);
544
- await fs$1.rename(backupDir, targetDir).catch(() => void 0);
545
- }
546
- return {
547
- ok: false,
548
- error: `failed to copy hook: ${String(err)}`
549
- };
550
- }
551
- if (backupDir) await fs$1.rm(backupDir, {
552
- recursive: true,
553
- force: true
554
- }).catch(() => void 0);
555
- return {
556
- ok: true,
557
- hookPackId: hookName,
558
- hooks: [hookName],
559
- targetDir
560
- };
561
- }
562
- async function installHooksFromArchive(params) {
563
- const logger = params.logger ?? defaultLogger;
564
- const timeoutMs = params.timeoutMs ?? 12e4;
565
- const archivePathResult = await resolveArchiveSourcePath(params.archivePath);
566
- if (!archivePathResult.ok) return archivePathResult;
567
- const archivePath = archivePathResult.path;
568
- return await withExtractedArchiveRoot({
569
- archivePath,
570
- tempDirPrefix: "remoteclaw-hook-",
571
- timeoutMs,
572
- logger,
573
- onExtracted: async (rootDir) => {
574
- if (await fileExists(path.join(rootDir, "package.json"))) return await installHookPackageFromDir({
575
- packageDir: rootDir,
576
- hooksDir: params.hooksDir,
577
- timeoutMs,
578
- logger,
579
- mode: params.mode,
580
- dryRun: params.dryRun,
581
- expectedHookPackId: params.expectedHookPackId
582
- });
583
- return await installHookFromDir({
584
- hookDir: rootDir,
585
- hooksDir: params.hooksDir,
586
- logger,
587
- mode: params.mode,
588
- dryRun: params.dryRun,
589
- expectedHookPackId: params.expectedHookPackId
590
- });
591
- }
592
- });
593
- }
594
- async function installHooksFromNpmSpec(params) {
595
- const { logger, timeoutMs, mode, dryRun } = resolveTimedInstallModeOptions(params, defaultLogger);
596
- const expectedHookPackId = params.expectedHookPackId;
597
- const spec = params.spec.trim();
598
- const specError = validateRegistryNpmSpec(spec);
599
- if (specError) return {
600
- ok: false,
601
- error: specError
602
- };
603
- logger.info?.(`Downloading ${spec}…`);
604
- return finalizeNpmSpecArchiveInstall(await installFromNpmSpecArchiveWithInstaller({
605
- tempDirPrefix: "remoteclaw-hook-pack-",
606
- spec,
607
- timeoutMs,
608
- expectedIntegrity: params.expectedIntegrity,
609
- onIntegrityDrift: params.onIntegrityDrift,
610
- warn: (message) => {
611
- logger.warn?.(message);
612
- },
613
- installFromArchive: installHooksFromArchive,
614
- archiveInstallParams: {
615
- hooksDir: params.hooksDir,
616
- timeoutMs,
617
- logger,
618
- mode,
619
- dryRun,
620
- expectedHookPackId
621
- }
622
- }));
623
- }
624
- async function installHooksFromPath(params) {
625
- const pathResult = await resolveExistingInstallPath(params.path);
626
- if (!pathResult.ok) return pathResult;
627
- const { resolvedPath: resolved, stat } = pathResult;
628
- if (stat.isDirectory()) {
629
- if (await fileExists(path.join(resolved, "package.json"))) return await installHookPackageFromDir({
630
- packageDir: resolved,
631
- hooksDir: params.hooksDir,
632
- timeoutMs: params.timeoutMs,
633
- logger: params.logger,
634
- mode: params.mode,
635
- dryRun: params.dryRun,
636
- expectedHookPackId: params.expectedHookPackId
637
- });
638
- return await installHookFromDir({
639
- hookDir: resolved,
640
- hooksDir: params.hooksDir,
641
- logger: params.logger,
642
- mode: params.mode,
643
- dryRun: params.dryRun,
644
- expectedHookPackId: params.expectedHookPackId
645
- });
646
- }
647
- if (!resolveArchiveKind(resolved)) return {
648
- ok: false,
649
- error: `unsupported hook file: ${resolved}`
650
- };
651
- return await installHooksFromArchive({
652
- archivePath: resolved,
653
- hooksDir: params.hooksDir,
654
- timeoutMs: params.timeoutMs,
655
- logger: params.logger,
656
- mode: params.mode,
657
- dryRun: params.dryRun,
658
- expectedHookPackId: params.expectedHookPackId
659
- });
660
- }
661
-
662
- //#endregion
663
- //#region src/hooks/installs.ts
664
- function recordHookInstall(cfg, update) {
665
- const { hookId, ...record } = update;
666
- const installs = {
667
- ...cfg.hooks?.internal?.installs,
668
- [hookId]: {
669
- ...cfg.hooks?.internal?.installs?.[hookId],
670
- ...record,
671
- installedAt: record.installedAt ?? (/* @__PURE__ */ new Date()).toISOString()
672
- }
673
- };
674
- return {
675
- ...cfg,
676
- hooks: {
677
- ...cfg.hooks,
678
- internal: {
679
- ...cfg.hooks?.internal,
680
- installs: {
681
- ...installs,
682
- [hookId]: installs[hookId]
683
- }
684
- }
685
- }
686
- };
687
- }
688
-
689
- //#endregion
690
- //#region src/cli/hooks-cli.ts
691
- function mergeHookEntries(pluginEntries, workspaceEntries) {
692
- const merged = /* @__PURE__ */ new Map();
693
- for (const entry of pluginEntries) merged.set(entry.hook.name, entry);
694
- for (const entry of workspaceEntries) merged.set(entry.hook.name, entry);
695
- return Array.from(merged.values());
696
- }
697
- function buildHooksReport(config) {
698
- const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
699
- const workspaceEntries = loadWorkspaceHookEntries(workspaceDir, { config });
700
- return buildWorkspaceHookStatus(workspaceDir, {
701
- config,
702
- entries: mergeHookEntries(buildPluginStatusReport({
703
- config,
704
- workspaceDir
705
- }).hooks.map((hook) => hook.entry), workspaceEntries)
706
- });
707
- }
708
- function resolveHookForToggle(report, hookName, opts) {
709
- const hook = report.hooks.find((h) => h.name === hookName);
710
- if (!hook) throw new Error(`Hook "${hookName}" not found`);
711
- if (hook.managedByPlugin) throw new Error(`Hook "${hookName}" is managed by plugin "${hook.pluginId ?? "unknown"}" and cannot be enabled/disabled.`);
712
- if (opts?.requireEligible && !hook.eligible) throw new Error(`Hook "${hookName}" is not eligible (missing requirements)`);
713
- return hook;
714
- }
715
- function buildConfigWithHookEnabled(params) {
716
- const entries = { ...params.config.hooks?.internal?.entries };
717
- entries[params.hookName] = {
718
- ...entries[params.hookName],
719
- enabled: params.enabled
720
- };
721
- const internal = {
722
- ...params.config.hooks?.internal,
723
- ...params.ensureHooksEnabled ? { enabled: true } : {},
724
- entries
725
- };
726
- return {
727
- ...params.config,
728
- hooks: {
729
- ...params.config.hooks,
730
- internal
731
- }
732
- };
733
- }
734
- function formatHookStatus(hook) {
735
- if (hook.eligible) return theme.success("✓ ready");
736
- if (hook.disabled) return theme.warn("⏸ disabled");
737
- return theme.error("✗ missing");
738
- }
739
- function formatHookName(hook) {
740
- return `${hook.emoji ?? "🔗"} ${theme.command(hook.name)}`;
741
- }
742
- function formatHookSource(hook) {
743
- if (!hook.managedByPlugin) return hook.source;
744
- return `plugin:${hook.pluginId ?? "unknown"}`;
745
- }
746
- function formatHookMissingSummary(hook) {
747
- const missing = [];
748
- if (hook.missing.bins.length > 0) missing.push(`bins: ${hook.missing.bins.join(", ")}`);
749
- if (hook.missing.anyBins.length > 0) missing.push(`anyBins: ${hook.missing.anyBins.join(", ")}`);
750
- if (hook.missing.env.length > 0) missing.push(`env: ${hook.missing.env.join(", ")}`);
751
- if (hook.missing.config.length > 0) missing.push(`config: ${hook.missing.config.join(", ")}`);
752
- if (hook.missing.os.length > 0) missing.push(`os: ${hook.missing.os.join(", ")}`);
753
- return missing.join("; ");
754
- }
755
- function exitHooksCliWithError(err) {
756
- defaultRuntime.error(`${theme.error("Error:")} ${err instanceof Error ? err.message : String(err)}`);
757
- process.exit(1);
758
- }
759
- async function runHooksCliAction(action) {
760
- try {
761
- await action();
762
- } catch (err) {
763
- exitHooksCliWithError(err);
764
- }
765
- }
766
- function createInstallLogger() {
767
- return {
768
- info: (msg) => defaultRuntime.log(msg),
769
- warn: (msg) => defaultRuntime.log(theme.warn(msg))
770
- };
771
- }
772
- function logGatewayRestartHint() {
773
- defaultRuntime.log("Restart the gateway to load hooks.");
774
- }
775
- function logIntegrityDriftWarning(hookId, drift) {
776
- const specLabel = drift.resolution.resolvedSpec ?? drift.spec;
777
- defaultRuntime.log(theme.warn(`Integrity drift detected for "${hookId}" (${specLabel})\nExpected: ${drift.expectedIntegrity}\nActual: ${drift.actualIntegrity}`));
778
- }
779
- async function readInstalledPackageVersion(dir) {
780
- try {
781
- const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
782
- const parsed = JSON.parse(raw);
783
- return typeof parsed.version === "string" ? parsed.version : void 0;
784
- } catch {
785
- return;
786
- }
787
- }
788
- function enableInternalHookEntries(config, hookNames) {
789
- const entries = { ...config.hooks?.internal?.entries };
790
- for (const hookName of hookNames) entries[hookName] = {
791
- ...entries[hookName],
792
- enabled: true
793
- };
794
- return {
795
- ...config,
796
- hooks: {
797
- ...config.hooks,
798
- internal: {
799
- ...config.hooks?.internal,
800
- enabled: true,
801
- entries
802
- }
803
- }
804
- };
805
- }
806
- /**
807
- * Format the hooks list output
808
- */
809
- function formatHooksList(report, opts) {
810
- const hooks = opts.eligible ? report.hooks.filter((h) => h.eligible) : report.hooks;
811
- if (opts.json) {
812
- const jsonReport = {
813
- workspaceDir: report.workspaceDir,
814
- managedHooksDir: report.managedHooksDir,
815
- hooks: hooks.map((h) => ({
816
- name: h.name,
817
- description: h.description,
818
- emoji: h.emoji,
819
- eligible: h.eligible,
820
- disabled: h.disabled,
821
- source: h.source,
822
- pluginId: h.pluginId,
823
- events: h.events,
824
- homepage: h.homepage,
825
- missing: h.missing,
826
- managedByPlugin: h.managedByPlugin
827
- }))
828
- };
829
- return JSON.stringify(jsonReport, null, 2);
830
- }
831
- if (hooks.length === 0) return opts.eligible ? `No eligible hooks found. Run \`${formatCliCommand("remoteclaw hooks list")}\` to see all hooks.` : "No hooks found.";
832
- const eligible = hooks.filter((h) => h.eligible);
833
- const tableWidth = Math.max(60, (process.stdout.columns ?? 120) - 1);
834
- const rows = hooks.map((hook) => {
835
- const missing = formatHookMissingSummary(hook);
836
- return {
837
- Status: formatHookStatus(hook),
838
- Hook: formatHookName(hook),
839
- Description: theme.muted(hook.description),
840
- Source: formatHookSource(hook),
841
- Missing: missing ? theme.warn(missing) : ""
842
- };
843
- });
844
- const columns = [
845
- {
846
- key: "Status",
847
- header: "Status",
848
- minWidth: 10
849
- },
850
- {
851
- key: "Hook",
852
- header: "Hook",
853
- minWidth: 18,
854
- flex: true
855
- },
856
- {
857
- key: "Description",
858
- header: "Description",
859
- minWidth: 24,
860
- flex: true
861
- },
862
- {
863
- key: "Source",
864
- header: "Source",
865
- minWidth: 12,
866
- flex: true
867
- }
868
- ];
869
- if (opts.verbose) columns.push({
870
- key: "Missing",
871
- header: "Missing",
872
- minWidth: 18,
873
- flex: true
874
- });
875
- const lines = [];
876
- lines.push(`${theme.heading("Hooks")} ${theme.muted(`(${eligible.length}/${hooks.length} ready)`)}`);
877
- lines.push(renderTable({
878
- width: tableWidth,
879
- columns,
880
- rows
881
- }).trimEnd());
882
- return lines.join("\n");
883
- }
884
- /**
885
- * Format detailed info for a single hook
886
- */
887
- function formatHookInfo(report, hookName, opts) {
888
- const hook = report.hooks.find((h) => h.name === hookName || h.hookKey === hookName);
889
- if (!hook) {
890
- if (opts.json) return JSON.stringify({
891
- error: "not found",
892
- hook: hookName
893
- }, null, 2);
894
- return `Hook "${hookName}" not found. Run \`${formatCliCommand("remoteclaw hooks list")}\` to see available hooks.`;
895
- }
896
- if (opts.json) return JSON.stringify(hook, null, 2);
897
- const lines = [];
898
- const emoji = hook.emoji ?? "🔗";
899
- const status = hook.eligible ? theme.success("✓ Ready") : hook.disabled ? theme.warn("⏸ Disabled") : theme.error("✗ Missing requirements");
900
- lines.push(`${emoji} ${theme.heading(hook.name)} ${status}`);
901
- lines.push("");
902
- lines.push(hook.description);
903
- lines.push("");
904
- lines.push(theme.heading("Details:"));
905
- if (hook.managedByPlugin) lines.push(`${theme.muted(" Source:")} ${hook.source} (${hook.pluginId ?? "unknown"})`);
906
- else lines.push(`${theme.muted(" Source:")} ${hook.source}`);
907
- lines.push(`${theme.muted(" Path:")} ${shortenHomePath(hook.filePath)}`);
908
- lines.push(`${theme.muted(" Handler:")} ${shortenHomePath(hook.handlerPath)}`);
909
- if (hook.homepage) lines.push(`${theme.muted(" Homepage:")} ${hook.homepage}`);
910
- if (hook.events.length > 0) lines.push(`${theme.muted(" Events:")} ${hook.events.join(", ")}`);
911
- if (hook.managedByPlugin) lines.push(theme.muted(" Managed by plugin; enable/disable via hooks CLI not available."));
912
- if (hook.requirements.bins.length > 0 || hook.requirements.anyBins.length > 0 || hook.requirements.env.length > 0 || hook.requirements.config.length > 0 || hook.requirements.os.length > 0) {
913
- lines.push("");
914
- lines.push(theme.heading("Requirements:"));
915
- if (hook.requirements.bins.length > 0) {
916
- const binsStatus = hook.requirements.bins.map((bin) => {
917
- return hook.missing.bins.includes(bin) ? theme.error(`✗ ${bin}`) : theme.success(`✓ ${bin}`);
918
- });
919
- lines.push(`${theme.muted(" Binaries:")} ${binsStatus.join(", ")}`);
920
- }
921
- if (hook.requirements.anyBins.length > 0) {
922
- const anyBinsStatus = hook.missing.anyBins.length > 0 ? theme.error(`✗ (any of: ${hook.requirements.anyBins.join(", ")})`) : theme.success(`✓ (any of: ${hook.requirements.anyBins.join(", ")})`);
923
- lines.push(`${theme.muted(" Any binary:")} ${anyBinsStatus}`);
924
- }
925
- if (hook.requirements.env.length > 0) {
926
- const envStatus = hook.requirements.env.map((env) => {
927
- return hook.missing.env.includes(env) ? theme.error(`✗ ${env}`) : theme.success(`✓ ${env}`);
928
- });
929
- lines.push(`${theme.muted(" Environment:")} ${envStatus.join(", ")}`);
930
- }
931
- if (hook.requirements.config.length > 0) {
932
- const configStatus = hook.configChecks.map((check) => {
933
- return check.satisfied ? theme.success(`✓ ${check.path}`) : theme.error(`✗ ${check.path}`);
934
- });
935
- lines.push(`${theme.muted(" Config:")} ${configStatus.join(", ")}`);
936
- }
937
- if (hook.requirements.os.length > 0) {
938
- const osStatus = hook.missing.os.length > 0 ? theme.error(`✗ (${hook.requirements.os.join(", ")})`) : theme.success(`✓ (${hook.requirements.os.join(", ")})`);
939
- lines.push(`${theme.muted(" OS:")} ${osStatus}`);
940
- }
941
- }
942
- return lines.join("\n");
943
- }
944
- /**
945
- * Format check output
946
- */
947
- function formatHooksCheck(report, opts) {
948
- if (opts.json) {
949
- const eligible = report.hooks.filter((h) => h.eligible);
950
- const notEligible = report.hooks.filter((h) => !h.eligible);
951
- return JSON.stringify({
952
- total: report.hooks.length,
953
- eligible: eligible.length,
954
- notEligible: notEligible.length,
955
- hooks: {
956
- eligible: eligible.map((h) => h.name),
957
- notEligible: notEligible.map((h) => ({
958
- name: h.name,
959
- missing: h.missing
960
- }))
961
- }
962
- }, null, 2);
963
- }
964
- const eligible = report.hooks.filter((h) => h.eligible);
965
- const notEligible = report.hooks.filter((h) => !h.eligible);
966
- const lines = [];
967
- lines.push(theme.heading("Hooks Status"));
968
- lines.push("");
969
- lines.push(`${theme.muted("Total hooks:")} ${report.hooks.length}`);
970
- lines.push(`${theme.success("Ready:")} ${eligible.length}`);
971
- lines.push(`${theme.warn("Not ready:")} ${notEligible.length}`);
972
- if (notEligible.length > 0) {
973
- lines.push("");
974
- lines.push(theme.heading("Hooks not ready:"));
975
- for (const hook of notEligible) {
976
- const reasons = [];
977
- if (hook.disabled) reasons.push("disabled");
978
- if (hook.missing.bins.length > 0) reasons.push(`bins: ${hook.missing.bins.join(", ")}`);
979
- if (hook.missing.anyBins.length > 0) reasons.push(`anyBins: ${hook.missing.anyBins.join(", ")}`);
980
- if (hook.missing.env.length > 0) reasons.push(`env: ${hook.missing.env.join(", ")}`);
981
- if (hook.missing.config.length > 0) reasons.push(`config: ${hook.missing.config.join(", ")}`);
982
- if (hook.missing.os.length > 0) reasons.push(`os: ${hook.missing.os.join(", ")}`);
983
- lines.push(` ${hook.emoji ?? "🔗"} ${hook.name} - ${reasons.join("; ")}`);
984
- }
985
- }
986
- return lines.join("\n");
987
- }
988
- async function enableHook(hookName) {
989
- const config = loadConfig();
990
- const hook = resolveHookForToggle(buildHooksReport(config), hookName, { requireEligible: true });
991
- await writeConfigFile(buildConfigWithHookEnabled({
992
- config,
993
- hookName,
994
- enabled: true,
995
- ensureHooksEnabled: true
996
- }));
997
- defaultRuntime.log(`${theme.success("✓")} Enabled hook: ${hook.emoji ?? "🔗"} ${theme.command(hookName)}`);
998
- }
999
- async function disableHook(hookName) {
1000
- const config = loadConfig();
1001
- const hook = resolveHookForToggle(buildHooksReport(config), hookName);
1002
- await writeConfigFile(buildConfigWithHookEnabled({
1003
- config,
1004
- hookName,
1005
- enabled: false
1006
- }));
1007
- defaultRuntime.log(`${theme.warn("⏸")} Disabled hook: ${hook.emoji ?? "🔗"} ${theme.command(hookName)}`);
1008
- }
1009
- function registerHooksCli(program) {
1010
- const hooks = program.command("hooks").description("Manage internal agent hooks").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/hooks", "docs.remoteclaw.org/cli/hooks")}\n`);
1011
- hooks.command("list").description("List all hooks").option("--eligible", "Show only eligible hooks", false).option("--json", "Output as JSON", false).option("-v, --verbose", "Show more details including missing requirements", false).action(async (opts) => runHooksCliAction(async () => {
1012
- const report = buildHooksReport(loadConfig());
1013
- defaultRuntime.log(formatHooksList(report, opts));
1014
- }));
1015
- hooks.command("info <name>").description("Show detailed information about a hook").option("--json", "Output as JSON", false).action(async (name, opts) => runHooksCliAction(async () => {
1016
- const report = buildHooksReport(loadConfig());
1017
- defaultRuntime.log(formatHookInfo(report, name, opts));
1018
- }));
1019
- hooks.command("check").description("Check hooks eligibility status").option("--json", "Output as JSON", false).action(async (opts) => runHooksCliAction(async () => {
1020
- const report = buildHooksReport(loadConfig());
1021
- defaultRuntime.log(formatHooksCheck(report, opts));
1022
- }));
1023
- hooks.command("enable <name>").description("Enable a hook").action(async (name) => runHooksCliAction(async () => {
1024
- await enableHook(name);
1025
- }));
1026
- hooks.command("disable <name>").description("Disable a hook").action(async (name) => runHooksCliAction(async () => {
1027
- await disableHook(name);
1028
- }));
1029
- hooks.command("install").description("Install a hook pack (path, archive, or npm spec)").argument("<path-or-spec>", "Path to a hook pack or npm package spec").option("-l, --link", "Link a local path instead of copying", false).option("--pin", "Record npm installs as exact resolved <name>@<version>", false).action(async (raw, opts) => {
1030
- const resolved = resolveUserPath(raw);
1031
- const cfg = loadConfig();
1032
- if (fs.existsSync(resolved)) {
1033
- if (opts.link) {
1034
- if (!fs.statSync(resolved).isDirectory()) {
1035
- defaultRuntime.error("Linked hook paths must be directories.");
1036
- process.exit(1);
1037
- }
1038
- const existing = cfg.hooks?.internal?.load?.extraDirs ?? [];
1039
- const merged = Array.from(new Set([...existing, resolved]));
1040
- const probe = await installHooksFromPath({
1041
- path: resolved,
1042
- dryRun: true
1043
- });
1044
- if (!probe.ok) {
1045
- defaultRuntime.error(probe.error);
1046
- process.exit(1);
1047
- }
1048
- let next = {
1049
- ...cfg,
1050
- hooks: {
1051
- ...cfg.hooks,
1052
- internal: {
1053
- ...cfg.hooks?.internal,
1054
- enabled: true,
1055
- load: {
1056
- ...cfg.hooks?.internal?.load,
1057
- extraDirs: merged
1058
- }
1059
- }
1060
- }
1061
- };
1062
- next = enableInternalHookEntries(next, probe.hooks);
1063
- next = recordHookInstall(next, {
1064
- hookId: probe.hookPackId,
1065
- source: "path",
1066
- sourcePath: resolved,
1067
- installPath: resolved,
1068
- version: probe.version,
1069
- hooks: probe.hooks
1070
- });
1071
- await writeConfigFile(next);
1072
- defaultRuntime.log(`Linked hook path: ${shortenHomePath(resolved)}`);
1073
- logGatewayRestartHint();
1074
- return;
1075
- }
1076
- const result = await installHooksFromPath({
1077
- path: resolved,
1078
- logger: createInstallLogger()
1079
- });
1080
- if (!result.ok) {
1081
- defaultRuntime.error(result.error);
1082
- process.exit(1);
1083
- }
1084
- let next = enableInternalHookEntries(cfg, result.hooks);
1085
- const source = resolveArchiveKind(resolved) ? "archive" : "path";
1086
- next = recordHookInstall(next, {
1087
- hookId: result.hookPackId,
1088
- source,
1089
- sourcePath: resolved,
1090
- installPath: result.targetDir,
1091
- version: result.version,
1092
- hooks: result.hooks
1093
- });
1094
- await writeConfigFile(next);
1095
- defaultRuntime.log(`Installed hooks: ${result.hooks.join(", ")}`);
1096
- logGatewayRestartHint();
1097
- return;
1098
- }
1099
- if (opts.link) {
1100
- defaultRuntime.error("`--link` requires a local path.");
1101
- process.exit(1);
1102
- }
1103
- if (raw.startsWith(".") || raw.startsWith("~") || path.isAbsolute(raw) || raw.endsWith(".zip") || raw.endsWith(".tgz") || raw.endsWith(".tar.gz") || raw.endsWith(".tar")) {
1104
- defaultRuntime.error(`Path not found: ${resolved}`);
1105
- process.exit(1);
1106
- }
1107
- const result = await installHooksFromNpmSpec({
1108
- spec: raw,
1109
- logger: createInstallLogger()
1110
- });
1111
- if (!result.ok) {
1112
- defaultRuntime.error(result.error);
1113
- process.exit(1);
1114
- }
1115
- let next = enableInternalHookEntries(cfg, result.hooks);
1116
- const installRecord = resolvePinnedNpmInstallRecordForCli(raw, Boolean(opts.pin), result.targetDir, result.version, result.npmResolution, defaultRuntime.log, theme.warn);
1117
- next = recordHookInstall(next, {
1118
- hookId: result.hookPackId,
1119
- ...installRecord,
1120
- hooks: result.hooks
1121
- });
1122
- await writeConfigFile(next);
1123
- defaultRuntime.log(`Installed hooks: ${result.hooks.join(", ")}`);
1124
- logGatewayRestartHint();
1125
- });
1126
- hooks.command("update").description("Update installed hooks (npm installs only)").argument("[id]", "Hook pack id (omit with --all)").option("--all", "Update all tracked hooks", false).option("--dry-run", "Show what would change without writing", false).action(async (id, opts) => {
1127
- const cfg = loadConfig();
1128
- const installs = cfg.hooks?.internal?.installs ?? {};
1129
- const targets = opts.all ? Object.keys(installs) : id ? [id] : [];
1130
- if (targets.length === 0) {
1131
- defaultRuntime.error("Provide a hook id or use --all.");
1132
- process.exit(1);
1133
- }
1134
- let nextCfg = cfg;
1135
- let updatedCount = 0;
1136
- for (const hookId of targets) {
1137
- const record = installs[hookId];
1138
- if (!record) {
1139
- defaultRuntime.log(theme.warn(`No install record for "${hookId}".`));
1140
- continue;
1141
- }
1142
- if (record.source !== "npm") {
1143
- defaultRuntime.log(theme.warn(`Skipping "${hookId}" (source: ${record.source}).`));
1144
- continue;
1145
- }
1146
- if (!record.spec) {
1147
- defaultRuntime.log(theme.warn(`Skipping "${hookId}" (missing npm spec).`));
1148
- continue;
1149
- }
1150
- let installPath;
1151
- try {
1152
- installPath = record.installPath ?? resolveHookInstallDir(hookId);
1153
- } catch (err) {
1154
- defaultRuntime.log(theme.error(`Invalid install path for "${hookId}": ${String(err)}`));
1155
- continue;
1156
- }
1157
- const currentVersion = await readInstalledPackageVersion(installPath);
1158
- if (opts.dryRun) {
1159
- const probe = await installHooksFromNpmSpec({
1160
- spec: record.spec,
1161
- mode: "update",
1162
- dryRun: true,
1163
- expectedHookPackId: hookId,
1164
- expectedIntegrity: record.integrity,
1165
- onIntegrityDrift: async (drift) => {
1166
- logIntegrityDriftWarning(hookId, drift);
1167
- return true;
1168
- },
1169
- logger: createInstallLogger()
1170
- });
1171
- if (!probe.ok) {
1172
- defaultRuntime.log(theme.error(`Failed to check ${hookId}: ${probe.error}`));
1173
- continue;
1174
- }
1175
- const nextVersion = probe.version ?? "unknown";
1176
- const currentLabel = currentVersion ?? "unknown";
1177
- if (currentVersion && probe.version && currentVersion === probe.version) defaultRuntime.log(`${hookId} is up to date (${currentLabel}).`);
1178
- else defaultRuntime.log(`Would update ${hookId}: ${currentLabel} → ${nextVersion}.`);
1179
- continue;
1180
- }
1181
- const result = await installHooksFromNpmSpec({
1182
- spec: record.spec,
1183
- mode: "update",
1184
- expectedHookPackId: hookId,
1185
- expectedIntegrity: record.integrity,
1186
- onIntegrityDrift: async (drift) => {
1187
- logIntegrityDriftWarning(hookId, drift);
1188
- return await promptYesNo(`Continue updating "${hookId}" with this artifact?`);
1189
- },
1190
- logger: createInstallLogger()
1191
- });
1192
- if (!result.ok) {
1193
- defaultRuntime.log(theme.error(`Failed to update ${hookId}: ${result.error}`));
1194
- continue;
1195
- }
1196
- const nextVersion = result.version ?? await readInstalledPackageVersion(result.targetDir);
1197
- nextCfg = recordHookInstall(nextCfg, {
1198
- hookId,
1199
- ...buildNpmInstallRecordFields({
1200
- spec: record.spec,
1201
- installPath: result.targetDir,
1202
- version: nextVersion,
1203
- resolution: result.npmResolution
1204
- }),
1205
- hooks: result.hooks
1206
- });
1207
- updatedCount += 1;
1208
- const currentLabel = currentVersion ?? "unknown";
1209
- const nextLabel = nextVersion ?? "unknown";
1210
- if (currentVersion && nextVersion && currentVersion === nextVersion) defaultRuntime.log(`${hookId} already at ${currentLabel}.`);
1211
- else defaultRuntime.log(`Updated ${hookId}: ${currentLabel} → ${nextLabel}.`);
1212
- }
1213
- if (updatedCount > 0) {
1214
- await writeConfigFile(nextCfg);
1215
- logGatewayRestartHint();
1216
- }
1217
- });
1218
- hooks.action(async () => runHooksCliAction(async () => {
1219
- const report = buildHooksReport(loadConfig());
1220
- defaultRuntime.log(formatHooksList(report, {}));
1221
- }));
1222
- }
1223
-
1224
- //#endregion
1225
- export { registerHooksCli };