remoteclaw 0.1.0-next.87fb2cd → 0.1.0-next.9f7caba

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 (849) hide show
  1. package/dist/accounts-B5BNJ_lk.js +36 -0
  2. package/dist/accounts-BnkzjNsj.js +32 -0
  3. package/dist/accounts-DOwpPNpJ.js +47 -0
  4. package/dist/accounts-Y6fBCsx_.js +272 -0
  5. package/dist/ack-reactions-DndoGKeN.js +446 -0
  6. package/dist/ack-reactions-XQPdJAzb.js +446 -0
  7. package/dist/acp-cli-C2sAKfGR.js +1326 -0
  8. package/dist/acp-cli-DSmofBAf.js +1320 -0
  9. package/dist/active-listener-D4pocaWh.js +37 -0
  10. package/dist/agent-BA1XT2jG.js +728 -0
  11. package/dist/agent-CyVs7WvP.js +727 -0
  12. package/dist/agent-helpers-DlqwUqOd.js +606 -0
  13. package/dist/agent-scope-BDF8U7HM.js +99 -0
  14. package/dist/agent-scope-Dzc3Pxwr.js +101 -0
  15. package/dist/agents-GDnr7rw4.js +788 -0
  16. package/dist/agents.config-Ba4A6sdg.js +116 -0
  17. package/dist/agents.config-CeN3byLA.js +116 -0
  18. package/dist/audio-preflight-BFPZB_BA.js +69 -0
  19. package/dist/audio-preflight-CowiaUIn.js +64 -0
  20. package/dist/audit-BHUOvUJw.js +3149 -0
  21. package/dist/audit-oXRhFtwT.js +3149 -0
  22. package/dist/auth-0nvm_vu0.js +448 -0
  23. package/dist/auth-DCGEkWB5.js +448 -0
  24. package/dist/auth-profiles-DJsaxEsz.js +281 -0
  25. package/dist/banner--jCLPIfU.js +294 -0
  26. package/dist/binaries-DEBQrQj9.js +13 -0
  27. package/dist/bindings-C6J0GYWO.js +69 -0
  28. package/dist/bindings-D0yqi_XP.js +69 -0
  29. package/dist/bonjour-discovery-JS2eV51P.js +378 -0
  30. package/dist/bonjour-discovery-hfRH88nW.js +378 -0
  31. package/dist/boot/handler.js +30 -33
  32. package/dist/browser-cli-BABicrdh.js +1692 -0
  33. package/dist/browser-cli-Qa_1PYDv.js +1687 -0
  34. package/dist/build-info.json +3 -3
  35. package/dist/call-fGA-3SDL.js +2828 -0
  36. package/dist/call-jLXWNKPQ.js +2829 -0
  37. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  38. package/dist/catalog-BzeCPOus.js +185 -0
  39. package/dist/catalog-oYxNmkeA.js +185 -0
  40. package/dist/channel-account-context-BVnz5r1H.js +550 -0
  41. package/dist/channel-account-context-BcPTaTZb.js +550 -0
  42. package/dist/channel-activity-BuZbH6WD.js +94 -0
  43. package/dist/channel-activity-CDdk0baN.js +94 -0
  44. package/dist/channel-activity-hL4KZrCz.js +292 -0
  45. package/dist/channel-options-XhTwtBf5.js +33 -0
  46. package/dist/channel-options-ctxY53Lc.js +32 -0
  47. package/dist/channel-selection-CMK4YLlO.js +51 -0
  48. package/dist/channel-selection-_eCHA2U9.js +51 -0
  49. package/dist/channel-web-BZpC6hhV.js +2134 -0
  50. package/dist/channel-web-CQ6_87Mm.js +2136 -0
  51. package/dist/channels-cli-BNl9vUWn.js +1421 -0
  52. package/dist/channels-cli-DZR57uHI.js +1426 -0
  53. package/dist/channels-status-issues-CVIgTe2p.js +18 -0
  54. package/dist/channels-status-issues-DcC43ljl.js +18 -0
  55. package/dist/chat-envelope-CRqgofiw.js +248 -0
  56. package/dist/chrome-8vydo3dJ.js +1733 -0
  57. package/dist/chrome-B_rPhRU5.js +1732 -0
  58. package/dist/chunk-Cx-gs159.js +341 -0
  59. package/dist/clack-prompter-BzCKGyUs.js +121 -0
  60. package/dist/clack-prompter-D7MCzOPT.js +122 -0
  61. package/dist/cli/daemon-cli.js +1 -1
  62. package/dist/cli-CpAjRQ-P.js +125 -0
  63. package/dist/cli-DUXK9wJZ.js +130 -0
  64. package/dist/clipboard-DIewy_WG.js +31 -0
  65. package/dist/command-logger/handler.js +1 -1
  66. package/dist/command-registry-DJNQEtnc.js +215 -0
  67. package/dist/commands-CX-o6Gzn.js +41 -0
  68. package/dist/commands-ChY7s9hy.js +41 -0
  69. package/dist/commands-registry-C-NFTH7P.js +891 -0
  70. package/dist/commands-registry-C_sd8Lmg.js +892 -0
  71. package/dist/common-Gc07uSGw.js +156 -0
  72. package/dist/completion-cli-DhuIE5Go.js +452 -0
  73. package/dist/completion-cli-DpaiSYzH.js +452 -0
  74. package/dist/config-BzYPJgWg.js +6919 -0
  75. package/dist/config-CxSZl93L.js +6917 -0
  76. package/dist/config-cli-CWeRxEJK.js +241 -0
  77. package/dist/config-cli-CYQ2SdRU.js +246 -0
  78. package/dist/config-guard-CYJDizl5.js +97 -0
  79. package/dist/config-guard-D1Q3ZQbe.js +75 -0
  80. package/dist/config-validation-BQqpcnJj.js +18 -0
  81. package/dist/config-validation-DFt9nI1w.js +18 -0
  82. package/dist/configure-BQw2dIdc.js +891 -0
  83. package/dist/configure-CXTvRKTB.js +889 -0
  84. package/dist/constants-CMq8PtHp.js +70 -0
  85. package/dist/constants-tLOgmZZ1.js +70 -0
  86. package/dist/control-auth-DWYlgWkO.js +397 -0
  87. package/dist/control-auth-pDCKtSlm.js +397 -0
  88. package/dist/control-ui/assets/index-D8iWlx90.js +7738 -0
  89. package/dist/control-ui/assets/index-D8iWlx90.js.map +1 -0
  90. package/dist/control-ui/assets/index-D_fjkN3g.css +1 -0
  91. package/dist/control-ui/index.html +2 -2
  92. package/dist/control-ui-assets-BQiFibyu.js +186 -0
  93. package/dist/control-ui-assets-DvQAtkDy.js +186 -0
  94. package/dist/cron-cli-B06geKKo.js +490 -0
  95. package/dist/cron-cli-Ct2y3uRB.js +495 -0
  96. package/dist/daemon-cli-Bt5Kcq3U.js +1197 -0
  97. package/dist/daemon-cli-Cd0bKq3g.js +1199 -0
  98. package/dist/daemon-cli.js +29 -69
  99. package/dist/daemon-install-C3Q8Jcx3.js +55 -0
  100. package/dist/daemon-install-helpers-B7UgD_mo.js +462 -0
  101. package/dist/daemon-install-helpers-Crqe5m8B.js +462 -0
  102. package/dist/daemon-install-oa7I86B_.js +60 -0
  103. package/dist/deliver-04fDIQb1.js +481 -0
  104. package/dist/deliver-D4QqtgMj.js +481 -0
  105. package/dist/delivery-queue-BM3aWQIK.js +244 -0
  106. package/dist/devices-cli-B7jdFjR6.js +316 -0
  107. package/dist/devices-cli-D-YMJZn1.js +321 -0
  108. package/dist/diagnostics-lMmEIZdJ.js +46 -0
  109. package/dist/diagnostics-rgiIJEXZ.js +46 -0
  110. package/dist/directory-cli-DWHQF2VD.js +222 -0
  111. package/dist/directory-cli-D_pT4Je0.js +217 -0
  112. package/dist/dm-policy-shared-BHRB2wzi.js +22 -0
  113. package/dist/dm-policy-shared-BTzThzqQ.js +22 -0
  114. package/dist/dns-cli-BbdtaLDe.js +202 -0
  115. package/dist/dns-cli-DghCMHgj.js +197 -0
  116. package/dist/dock-BtLbLczG.js +928 -0
  117. package/dist/dock-_qq4sBie.js +929 -0
  118. package/dist/doctor-completion-Cs6sL_IA.js +92 -0
  119. package/dist/doctor-completion-Cx2tN3vQ.js +92 -0
  120. package/dist/doctor-config-flow-CilyEptw.js +1934 -0
  121. package/dist/doctor-config-flow-PRWWIepI.js +1933 -0
  122. package/dist/enable-BEScoJBZ.js +59 -0
  123. package/dist/enable-Dt27_ZMm.js +59 -0
  124. package/dist/entry.js +1 -3
  125. package/dist/env-DUb5GiQe.js +60 -0
  126. package/dist/exec-D6PvFXKb.js +164 -0
  127. package/dist/export-html/template.css +0 -36
  128. package/dist/export-html/template.js +0 -26
  129. package/dist/extensionAPI.js +78 -77
  130. package/dist/fetch-Duxh68Ws.js +67 -0
  131. package/dist/fs-safe-S3Zvbabd.js +98 -0
  132. package/dist/gateway-cli-Mo6X1-yC.js +23756 -0
  133. package/dist/gateway-cli-P6QI1rgs.js +23761 -0
  134. package/dist/gateway-rpc-AYvHI3Um.js +28 -0
  135. package/dist/gateway-rpc-Bsz_VM32.js +28 -0
  136. package/dist/gmail-setup-utils-D_g2PQOA.js +423 -0
  137. package/dist/gmail-setup-utils-ni_zkMpC.js +422 -0
  138. package/dist/health-C903Uthy.js +1423 -0
  139. package/dist/health-vO9pggEr.js +1420 -0
  140. package/dist/heartbeat-visibility-BHb-m9Fu.js +125 -0
  141. package/dist/heartbeat-visibility-DgRcKpeV.js +125 -0
  142. package/dist/helpers-DkUEDuKD.js +10 -0
  143. package/dist/hook-runner-global-CyIDoO1Z.js +527 -0
  144. package/dist/hooks-cli-B5oVqP3O.js +1222 -0
  145. package/dist/hooks-cli-xRelj3fq.js +1217 -0
  146. package/dist/image-ops-XoE9nn-z.js +354 -0
  147. package/dist/import-buqTDG9j.js +250 -0
  148. package/dist/import-j_5xbT7b.js +248 -0
  149. package/dist/inbound-path-policy-gHabNHWN.js +250 -0
  150. package/dist/index.js +93 -93
  151. package/dist/inspect-CV7o4EFm.js +559 -0
  152. package/dist/inspect-CkEMQlFE.js +559 -0
  153. package/dist/installs--lvmS_5X.js +325 -0
  154. package/dist/installs-BA3T7VAz.js +325 -0
  155. package/dist/ir-BaHZnJJM.js +940 -0
  156. package/dist/loader-8b9zCJni.js +22621 -0
  157. package/dist/loader-FZXIZr3R.js +22624 -0
  158. package/dist/local-roots-CWQNmgUt.js +313 -0
  159. package/dist/local-roots-DJo8GN9l.js +314 -0
  160. package/dist/logger-BiVcvOhw.js +49 -0
  161. package/dist/login-9iJ6gWZk.js +61 -0
  162. package/dist/login-EqnFreqS.js +62 -0
  163. package/dist/login-qr-C-iNjUWs.js +327 -0
  164. package/dist/login-qr-WMfGy6v_.js +322 -0
  165. package/dist/logs-cli-DFZz2ger.js +238 -0
  166. package/dist/logs-cli-gX4_EMx4.js +233 -0
  167. package/dist/markdown-tables-Bry8gXRC.js +29 -0
  168. package/dist/markdown-tables-vq6-CCk-.js +29 -0
  169. package/dist/media-C0_rYTSG.js +10455 -0
  170. package/dist/media-DNm8s1nv.js +940 -0
  171. package/dist/message-action-names-BMv6kUc8.js +2521 -0
  172. package/dist/message-action-names-DSrGq84w.js +2521 -0
  173. package/dist/message-channel-DF4I2vOK.js +91 -0
  174. package/dist/net-Dl7oQfqm.js +225 -0
  175. package/dist/node-cli-Cv_2cuVQ.js +24 -0
  176. package/dist/nodes-cli-Bh5kE7rx.js +1343 -0
  177. package/dist/nodes-cli-C1nJHXNR.js +1348 -0
  178. package/dist/note-CAx7Id1-.js +92 -0
  179. package/dist/note-CpSd8qLI.js +92 -0
  180. package/dist/npm-registry-spec-CaHkYE_x.js +786 -0
  181. package/dist/npm-registry-spec-CocXp7ba.js +786 -0
  182. package/dist/npm-resolution-DQS5ZVqD.js +86 -0
  183. package/dist/npm-resolution-w3878lun.js +86 -0
  184. package/dist/onboard-BCal_4Gv.js +407 -0
  185. package/dist/onboard-YnHnBbNe.js +405 -0
  186. package/dist/onboard-channels-B87Gz5qD.js +2547 -0
  187. package/dist/onboard-channels-RBADpVYy.js +2548 -0
  188. package/dist/onboard-config-DgTNC3ZT.js +39 -0
  189. package/dist/onboard-config-x054Cod3.js +39 -0
  190. package/dist/onboard-helpers-CoKiZn8s.js +363 -0
  191. package/dist/onboard-helpers-DKApDaN3.js +362 -0
  192. package/dist/onboard-remote-B1RsWyDT.js +127 -0
  193. package/dist/onboard-remote-BKJJgiD6.js +127 -0
  194. package/dist/onboarding-B4xiRmix.js +534 -0
  195. package/dist/onboarding-CBzaoGrg.js +532 -0
  196. package/dist/onboarding.finalize-CmKkVYDg.js +401 -0
  197. package/dist/onboarding.finalize-Deue-iB5.js +398 -0
  198. package/dist/onboarding.gateway-config-CVzVE8Em.js +191 -0
  199. package/dist/onboarding.gateway-config-Z5kbnB3s.js +198 -0
  200. package/dist/outbound-BFD5_jba.js +221 -0
  201. package/dist/outbound-Cnqvf0fO.js +220 -0
  202. package/dist/outbound-attachment-BnqWk5_B.js +18 -0
  203. package/dist/outbound-attachment-D05iLA7W.js +18 -0
  204. package/dist/outbound-attachment-DEyKzFjb.js +18 -0
  205. package/dist/pairing-cli-Blm356D6.js +122 -0
  206. package/dist/pairing-cli-h_rEV_wP.js +127 -0
  207. package/dist/pairing-labels-D1m2vZ16.js +9 -0
  208. package/dist/pairing-labels-DtbcpHbW.js +9 -0
  209. package/dist/pairing-store-3EoUkpJk.js +459 -0
  210. package/dist/pairing-store-DlhFf9Sd.js +460 -0
  211. package/dist/path-env-BHe995Zs.js +89 -0
  212. package/dist/path-env-Dt0Pot3Y.js +89 -0
  213. package/dist/path-safety-BlhW64vx.js +14 -0
  214. package/dist/plugin-auto-enable-CAXV8TAD.js +301 -0
  215. package/dist/plugin-auto-enable-SoRyAF_8.js +302 -0
  216. package/dist/plugin-registry-B3Ovot-q.js +33 -0
  217. package/dist/plugin-registry-CLs2mk9g.js +33 -0
  218. package/dist/plugin-sdk/auto-reply/reply/agent-runner-execution.d.ts +0 -1
  219. package/dist/plugin-sdk/auto-reply/reply/session-run-accounting.d.ts +0 -7
  220. package/dist/plugin-sdk/auto-reply/reply/session-updates.d.ts +0 -10
  221. package/dist/plugin-sdk/auto-reply/status.d.ts +1 -3
  222. package/dist/plugin-sdk/config/defaults.d.ts +0 -1
  223. package/dist/plugin-sdk/config/sessions/types.d.ts +0 -6
  224. package/dist/plugin-sdk/config/types.agent-defaults.d.ts +21 -101
  225. package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +8 -63
  226. package/dist/plugin-sdk/config/zod-schema.agent-runtime.d.ts +2 -10
  227. package/dist/plugin-sdk/config/zod-schema.agents.d.ts +10 -71
  228. package/dist/plugin-sdk/config/zod-schema.d.ts +10 -71
  229. package/dist/plugin-sdk/daemon/constants.d.ts +2 -2
  230. package/dist/plugin-sdk/index.js +34 -67
  231. package/dist/plugin-sdk/middleware/channel-bridge.d.ts +4 -0
  232. package/dist/plugin-sdk/middleware/runtime-factory.d.ts +42 -0
  233. package/dist/plugin-sdk/middleware/types.d.ts +4 -0
  234. package/dist/plugins-BtMu6L8i.js +453 -0
  235. package/dist/plugins-HyUNaoYP.js +455 -0
  236. package/dist/plugins-cli-Bfz5q2Eu.js +793 -0
  237. package/dist/plugins-cli-IC5XEIJP.js +798 -0
  238. package/dist/ports-B5ckNet-.js +96 -0
  239. package/dist/ports-Bd3hoh8b.js +96 -0
  240. package/dist/ports-BookgaRI.js +370 -0
  241. package/dist/ports-UXImZGj6.js +316 -0
  242. package/dist/program-DHHHUVxq.js +244 -0
  243. package/dist/program-context-CJ5VtH21.js +474 -0
  244. package/dist/progress-WaSih6uF.js +124 -0
  245. package/dist/prompt-select-styled-CvndflSu.js +1647 -0
  246. package/dist/prompt-select-styled-DRpXaDjZ.js +1650 -0
  247. package/dist/provider-dispatcher-BtSfIQn3.js +659 -0
  248. package/dist/provider-dispatcher-CUXHJBTf.js +660 -0
  249. package/dist/push-apns-BH90TRlq.js +713 -0
  250. package/dist/pw-ai-89JDYEsx.js +1906 -0
  251. package/dist/pw-ai-DLMRJYTF.js +1910 -0
  252. package/dist/qr-cli-B-vXl2tJ.js +352 -0
  253. package/dist/qr-cli-CPLEROlB.js +347 -0
  254. package/dist/redact-snapshot-D6v5Y3cH.js +2016 -0
  255. package/dist/redact-snapshot-DRkh_GXw.js +2016 -0
  256. package/dist/register.agent-6t54SCKS.js +1043 -0
  257. package/dist/register.agent-CrTeig6j.js +286 -0
  258. package/dist/register.configure-CLKO7CBz.js +124 -0
  259. package/dist/register.configure-CYhzeMUN.js +130 -0
  260. package/dist/register.import-CwB3CVmx.js +30 -0
  261. package/dist/register.import-DuMlmKVZ.js +27 -0
  262. package/dist/register.maintenance-BywvjbLM.js +494 -0
  263. package/dist/register.maintenance-CmZiik6M.js +497 -0
  264. package/dist/register.message-C4uOmrmu.js +681 -0
  265. package/dist/register.message-_xLO9io6.js +686 -0
  266. package/dist/register.onboard-D70dDDQi.js +262 -0
  267. package/dist/register.onboard-FyyzQnPJ.js +257 -0
  268. package/dist/register.setup-D6gZLMvn.js +114 -0
  269. package/dist/register.setup-PQ_egL-s.js +109 -0
  270. package/dist/register.status-health-sessions-CPGqgxER.js +668 -0
  271. package/dist/register.status-health-sessions-D0hrBo9e.js +423 -0
  272. package/dist/register.subclis-B4JkPvWw.js +267 -0
  273. package/dist/replies-DwXyI317.js +136 -0
  274. package/dist/replies-vM-49F7Z.js +136 -0
  275. package/dist/reply-DO3tkAbl.js +13717 -0
  276. package/dist/reply-directives-BSHSMfOP.js +182 -0
  277. package/dist/reply-directives-Bd8xCxw5.js +182 -0
  278. package/dist/reply-gX7Zk9R8.js +13720 -0
  279. package/dist/reply-payloads-BzxytLE1.js +527 -0
  280. package/dist/reply-prefix-BPUsoqRv.js +38 -0
  281. package/dist/reply-prefix-Cz79Mk_9.js +38 -0
  282. package/dist/resolve-route-CbxnmqSZ.js +249 -0
  283. package/dist/resolve-route-RsSFZfEu.js +249 -0
  284. package/dist/response-prefix-template-BqmQwHFv.js +136 -0
  285. package/dist/response-prefix-template-oS-m4x5k.js +136 -0
  286. package/dist/retry-BMUvSHT-.js +77 -0
  287. package/dist/run-main-D_Yvs705.js +302 -0
  288. package/dist/runner-BvtNyNts.js +2294 -0
  289. package/dist/runner-bzffxuwY.js +2294 -0
  290. package/dist/runtime-guard-B43sm9Yk.js +60 -0
  291. package/dist/secure-random-CsKN1dAJ.js +44 -0
  292. package/dist/security-cli-ClDV4uPt.js +484 -0
  293. package/dist/security-cli-D578rt9i.js +478 -0
  294. package/dist/send-16QFH4iu.js +492 -0
  295. package/dist/send-1ch3HEta.js +29 -0
  296. package/dist/send-B5mtDLya.js +492 -0
  297. package/dist/send-BA-OQAbS.js +547 -0
  298. package/dist/send-BAki96aY.js +547 -0
  299. package/dist/send-BzYdvFV2.js +1775 -0
  300. package/dist/send-C-Vix83b.js +374 -0
  301. package/dist/send-C2vPu8jr.js +2245 -0
  302. package/dist/send-CCpFrPS3.js +426 -0
  303. package/dist/send-CXoL2Zzi.js +349 -0
  304. package/dist/send-Cp7xKp6y.js +2245 -0
  305. package/dist/send-DmR0m7rx.js +332 -0
  306. package/dist/send-MwvIhKYv.js +11 -0
  307. package/dist/send-YjzTu9Vf.js +1778 -0
  308. package/dist/send-jlq_MH8C.js +1174 -0
  309. package/dist/send-ysN09khs.js +349 -0
  310. package/dist/server-02ElXzP1.js +200 -0
  311. package/dist/server-lifecycle-B8xKnzsQ.js +2437 -0
  312. package/dist/server-lifecycle-CEvhrc0-.js +2437 -0
  313. package/dist/server-node-events-DU4X16h1.js +398 -0
  314. package/dist/server-node-events-DrH58PI5.js +393 -0
  315. package/dist/server-ur9b1Yzm.js +205 -0
  316. package/dist/service-CiiOMO48.js +670 -0
  317. package/dist/service-Csa_Zp8l.js +670 -0
  318. package/dist/session-BtRSSNK_.js +170 -0
  319. package/dist/session-cost-usage-Cd5Heqqu.js +627 -0
  320. package/dist/session-cost-usage-CnPZY4id.js +627 -0
  321. package/dist/session-dirs-DhnTK_rA.js +947 -0
  322. package/dist/session-dirs-Ii3gbgos.js +947 -0
  323. package/dist/session-utils-Cs0dVU0y.js +624 -0
  324. package/dist/session-utils-DuK3Cyeh.js +624 -0
  325. package/dist/sessions-B3mSpWqX.js +2568 -0
  326. package/dist/sessions-BKYYI9GY.js +251 -0
  327. package/dist/status-B2d7Lmls.js +2067 -0
  328. package/dist/status-DSrcpDkP.js +2071 -0
  329. package/dist/status.update-BdkJ6oB8.js +79 -0
  330. package/dist/status.update-Cx6moscN.js +79 -0
  331. package/dist/store-COXTNbLU.js +53 -0
  332. package/dist/store-DdUK8zTC.js +2570 -0
  333. package/dist/subagent-registry-CpaLEiLw.js +4860 -0
  334. package/dist/subagent-registry-CwfHcOru.js +4858 -0
  335. package/dist/subsystem-BgxIzx7w.js +1137 -0
  336. package/dist/system-cli-C_3mdl-Y.js +75 -0
  337. package/dist/system-cli-Cg3uYNSx.js +70 -0
  338. package/dist/systemd-C9CRJ1Vh.js +547 -0
  339. package/dist/systemd-Clsb90Zg.js +547 -0
  340. package/dist/systemd-linger-CeBq5lTN.js +75 -0
  341. package/dist/systemd-linger-D70Sc4ia.js +75 -0
  342. package/dist/table-DVVqt1iT.js +279 -0
  343. package/dist/tables-6RxRFEl1.js +55 -0
  344. package/dist/tables-CamcS9gx.js +55 -0
  345. package/dist/tables-CmbvfFUi.js +55 -0
  346. package/dist/tailscale-C_8-YaZu.js +230 -0
  347. package/dist/targets--D1Sgq6T.js +220 -0
  348. package/dist/targets-BEON1rlZ.js +650 -0
  349. package/dist/targets-DRd0Al1y.js +650 -0
  350. package/dist/targets-DzGG0A-J.js +2245 -0
  351. package/dist/targets-IkURIBGL.js +53 -0
  352. package/dist/targets-NcJOa0-P.js +2244 -0
  353. package/dist/tool-images-BLldmoMO.js +263 -0
  354. package/dist/trash-CLx3VKz0.js +125 -0
  355. package/dist/tui-BqrwhnqU.js +3392 -0
  356. package/dist/tui-D1yYpK5L.js +3392 -0
  357. package/dist/tui-cli-DSoJ3FKB.js +58 -0
  358. package/dist/tui-cli-DmT2z3u-.js +63 -0
  359. package/dist/update-Bqxd57w0.js +349 -0
  360. package/dist/update-DNLS8oRs.js +349 -0
  361. package/dist/update-cli-CU9ZXQY3.js +1373 -0
  362. package/dist/update-cli-CVyu40ky.js +1370 -0
  363. package/dist/usage-DmDjx45Z.js +5337 -0
  364. package/dist/web-BUwk0Z14.js +3065 -0
  365. package/dist/web-D0Q23mS6.js +70 -0
  366. package/dist/web-Dbsn7rM8.js +76 -0
  367. package/dist/webhooks-cli-CVkKq_i_.js +328 -0
  368. package/dist/webhooks-cli-DUcnf7Eh.js +333 -0
  369. package/dist/whatsapp-actions-Drtn7JXc.js +128 -0
  370. package/dist/whatsapp-actions-OYitul5l.js +122 -0
  371. package/dist/workspace-CZ3yxyNd.js +447 -0
  372. package/dist/workspace-DJ7hsM9r.js +449 -0
  373. package/package.json +3 -3
  374. package/dist/accounts-B1aJFYXr.js +0 -272
  375. package/dist/accounts-Bexa80SB.js +0 -32
  376. package/dist/accounts-Cl_cFv9X.js +0 -47
  377. package/dist/accounts-Dn9h7HHT.js +0 -36
  378. package/dist/ack-reactions-B11TAC2D.js +0 -446
  379. package/dist/ack-reactions-CDUSdN8O.js +0 -446
  380. package/dist/acp-cli-CA1xMmVo.js +0 -1320
  381. package/dist/acp-cli-Dr83tqAg.js +0 -1326
  382. package/dist/active-listener-VzhWW8W6.js +0 -37
  383. package/dist/agent-CFKgqSEH.js +0 -732
  384. package/dist/agent-D2RVoS5g.js +0 -731
  385. package/dist/agent-helpers-D_9mS2Ti.js +0 -606
  386. package/dist/agent-scope-9WY5O-KK.js +0 -121
  387. package/dist/agent-scope-C50VuLKh.js +0 -119
  388. package/dist/agents-BBXCuDMp.js +0 -788
  389. package/dist/agents.config-BPGQ3Qyn.js +0 -116
  390. package/dist/agents.config-p3V3b9u6.js +0 -116
  391. package/dist/audio-preflight-BwmCYeuM.js +0 -64
  392. package/dist/audio-preflight-Dj6hBcFR.js +0 -69
  393. package/dist/audit-DhIKIeXD.js +0 -3138
  394. package/dist/audit-qgtCT3ik.js +0 -3138
  395. package/dist/auth-C6VDYgb7.js +0 -448
  396. package/dist/auth-Deh9i9Eg.js +0 -448
  397. package/dist/auth-profiles-CeDgZz_7.js +0 -281
  398. package/dist/banner-HCssFZcB.js +0 -294
  399. package/dist/binaries-X6FW-wD4.js +0 -13
  400. package/dist/bindings-B582pDIa.js +0 -69
  401. package/dist/bindings-CRU_udk8.js +0 -69
  402. package/dist/bonjour-discovery-BtPaR8vb.js +0 -378
  403. package/dist/bonjour-discovery-DuhiIZZx.js +0 -378
  404. package/dist/browser-cli-HH45lxP0.js +0 -1687
  405. package/dist/browser-cli-TB-GNoZq.js +0 -1692
  406. package/dist/call-BbwtB9Y-.js +0 -2828
  407. package/dist/call-ByOzoLDI.js +0 -2829
  408. package/dist/catalog-BY7OPtnz.js +0 -185
  409. package/dist/catalog-BqO6yem_.js +0 -185
  410. package/dist/channel-account-context-CjXyzMXE.js +0 -550
  411. package/dist/channel-account-context-CvIDAtHS.js +0 -550
  412. package/dist/channel-activity-BeRrcCd8.js +0 -94
  413. package/dist/channel-activity-DTKGf3j5.js +0 -94
  414. package/dist/channel-activity-hPfValKp.js +0 -292
  415. package/dist/channel-options-BLdLu0xk.js +0 -33
  416. package/dist/channel-options-BQ61blla.js +0 -32
  417. package/dist/channel-selection-CJXZTxae.js +0 -51
  418. package/dist/channel-selection-NNPbxnyZ.js +0 -51
  419. package/dist/channel-web-D1_mlyPg.js +0 -2136
  420. package/dist/channel-web-DmhVkWbP.js +0 -2134
  421. package/dist/channels-cli-C4O8pp1S.js +0 -1426
  422. package/dist/channels-cli-DAu1TXTH.js +0 -1421
  423. package/dist/channels-status-issues-BDAHISWe.js +0 -18
  424. package/dist/channels-status-issues-DwRDzwrV.js +0 -18
  425. package/dist/chat-envelope-el7Uo-Fe.js +0 -248
  426. package/dist/chrome-CNDtczoM.js +0 -1733
  427. package/dist/chrome-CdcwZN9t.js +0 -1732
  428. package/dist/chunk-DAjFKt2g.js +0 -341
  429. package/dist/clack-prompter-CCFnKP_1.js +0 -121
  430. package/dist/clack-prompter-CabwzmG4.js +0 -122
  431. package/dist/cli-BuMX-jRY.js +0 -130
  432. package/dist/cli-Ci4DmAyk.js +0 -125
  433. package/dist/clipboard-B2j4qGIl.js +0 -31
  434. package/dist/command-registry-DxsFXB5t.js +0 -215
  435. package/dist/commands-C2uNKRTf.js +0 -41
  436. package/dist/commands-CDonBOrw.js +0 -41
  437. package/dist/commands-registry-BvESmXoK.js +0 -893
  438. package/dist/commands-registry-CWJv6xe2.js +0 -892
  439. package/dist/common-Cp3rsBqx.js +0 -156
  440. package/dist/completion-cli-B-X5nwdT.js +0 -452
  441. package/dist/completion-cli-DD3pVpPn.js +0 -452
  442. package/dist/config-BqY7k-L8.js +0 -6953
  443. package/dist/config-FHu9Bn4R.js +0 -6951
  444. package/dist/config-cli-CPH_PfVk.js +0 -241
  445. package/dist/config-cli-Czvt02PC.js +0 -246
  446. package/dist/config-guard-5oI2BiSY.js +0 -97
  447. package/dist/config-guard-cB5a_ANg.js +0 -75
  448. package/dist/config-validation-BPNyd9_3.js +0 -18
  449. package/dist/config-validation-J3cJ0OCa.js +0 -18
  450. package/dist/configure-Bi_9d94n.js +0 -889
  451. package/dist/configure-DiQaHI3s.js +0 -891
  452. package/dist/constants-BmRFoHl0.js +0 -67
  453. package/dist/constants-C9WPAluB.js +0 -67
  454. package/dist/control-auth-D0tpV3ts.js +0 -397
  455. package/dist/control-auth-q4zZXaoS.js +0 -397
  456. package/dist/control-ui/assets/index-B4ZM1lW1.js +0 -7738
  457. package/dist/control-ui/assets/index-B4ZM1lW1.js.map +0 -1
  458. package/dist/control-ui/assets/index-PED72sKF.css +0 -1
  459. package/dist/control-ui-assets-Cx_mw4D0.js +0 -186
  460. package/dist/control-ui-assets-D4yaD8jm.js +0 -186
  461. package/dist/cron-cli-Bfh7ftYz.js +0 -495
  462. package/dist/cron-cli-C8j_uslU.js +0 -490
  463. package/dist/daemon-cli-DQFZB1yM.js +0 -1197
  464. package/dist/daemon-cli-lTsfNeDm.js +0 -1199
  465. package/dist/daemon-install-CcohRvKV.js +0 -55
  466. package/dist/daemon-install-DrTvAWhM.js +0 -60
  467. package/dist/daemon-install-helpers-CFGAfRlj.js +0 -462
  468. package/dist/daemon-install-helpers-DIUzSFG1.js +0 -462
  469. package/dist/defaults-B5KStIBg.js +0 -7
  470. package/dist/defaults-xUAL2Z-F.js +0 -7
  471. package/dist/deliver-912khjLK.js +0 -481
  472. package/dist/deliver-D78pwuPC.js +0 -481
  473. package/dist/delivery-queue-CxVRi4tw.js +0 -244
  474. package/dist/devices-cli-0qDhTgZR.js +0 -316
  475. package/dist/devices-cli-CstkYXzr.js +0 -321
  476. package/dist/diagnostics-HGkN467d.js +0 -46
  477. package/dist/diagnostics-VC0cz7kX.js +0 -46
  478. package/dist/directory-cli-5YXdoVdn.js +0 -217
  479. package/dist/directory-cli-duhBZl2c.js +0 -222
  480. package/dist/dm-policy-shared-BBfEyAN1.js +0 -22
  481. package/dist/dm-policy-shared-D8lgnmrC.js +0 -22
  482. package/dist/dns-cli-11CtErVU.js +0 -197
  483. package/dist/dns-cli-Sr6SB9ei.js +0 -202
  484. package/dist/dock-BqNINg7k.js +0 -928
  485. package/dist/dock-O8ArYwed.js +0 -929
  486. package/dist/doctor-completion-B1UlvZFx.js +0 -92
  487. package/dist/doctor-completion-C0j7b_f8.js +0 -92
  488. package/dist/doctor-config-flow-BVkHcvoj.js +0 -1933
  489. package/dist/doctor-config-flow-BiShkCxs.js +0 -1934
  490. package/dist/enable-DMIq6evt.js +0 -59
  491. package/dist/enable-ibNq4UWy.js +0 -59
  492. package/dist/env-Br2Bl6Ht.js +0 -60
  493. package/dist/exec-C6ACg_Mn.js +0 -164
  494. package/dist/fetch-Bmv93nu9.js +0 -67
  495. package/dist/fs-safe-DkBhNAc3.js +0 -98
  496. package/dist/gateway-cli-D4cDhvZx.js +0 -23747
  497. package/dist/gateway-cli-DuMjB8Ff.js +0 -23742
  498. package/dist/gateway-rpc-B4jTtupy.js +0 -28
  499. package/dist/gateway-rpc-Dq44SkOv.js +0 -28
  500. package/dist/gmail-setup-utils-BPmUIqso.js +0 -423
  501. package/dist/gmail-setup-utils-Cnx8A5pW.js +0 -422
  502. package/dist/health-SOuaKNRa.js +0 -1420
  503. package/dist/health-wr-JDHlc.js +0 -1423
  504. package/dist/heartbeat-visibility-BxkZjE5m.js +0 -125
  505. package/dist/heartbeat-visibility-ossI_l4t.js +0 -125
  506. package/dist/helpers-kkeXif0Q.js +0 -10
  507. package/dist/hook-runner-global-DJ14gXFP.js +0 -527
  508. package/dist/hooks-cli-BUTtESiX.js +0 -1217
  509. package/dist/hooks-cli-eqPYjw4l.js +0 -1222
  510. package/dist/image-ops-DRdKC0uO.js +0 -354
  511. package/dist/import-Be73VPF2.js +0 -170
  512. package/dist/import-DQ6NI4Fz.js +0 -168
  513. package/dist/inbound-path-policy-C_Qo8rqg.js +0 -250
  514. package/dist/inspect-B1Fq39RC.js +0 -559
  515. package/dist/inspect-Dt8hogS3.js +0 -559
  516. package/dist/installs-C8apg11p.js +0 -325
  517. package/dist/installs-pWdqG8HL.js +0 -325
  518. package/dist/ir-Ch9FC9Z_.js +0 -940
  519. package/dist/loader-Cuq-saEl.js +0 -22621
  520. package/dist/loader-u9FC6kYG.js +0 -22624
  521. package/dist/local-roots-BrH0Q63K.js +0 -313
  522. package/dist/local-roots-z2u_s7jG.js +0 -314
  523. package/dist/logger-pznB_IdT.js +0 -49
  524. package/dist/login-CYq-visu.js +0 -62
  525. package/dist/login-DOmWDMeP.js +0 -61
  526. package/dist/login-qr-CXU0wC5K.js +0 -322
  527. package/dist/login-qr-D85vVatX.js +0 -327
  528. package/dist/logs-cli-Cu2S08Y3.js +0 -238
  529. package/dist/logs-cli-D7ayUvz_.js +0 -233
  530. package/dist/markdown-tables-hhOWaw8L.js +0 -29
  531. package/dist/markdown-tables-jrnSPvZ6.js +0 -29
  532. package/dist/media-DN7yRfrH.js +0 -940
  533. package/dist/media-DOQIalam.js +0 -10492
  534. package/dist/message-action-names-Dk9kxwRd.js +0 -2521
  535. package/dist/message-action-names-EsOcuFpq.js +0 -2521
  536. package/dist/message-channel-BlYrtmIp.js +0 -91
  537. package/dist/net-D6D0wgcF.js +0 -225
  538. package/dist/node-cli-Q2-n3Fgv.js +0 -24
  539. package/dist/nodes-cli-BDq-4dHm.js +0 -1348
  540. package/dist/nodes-cli-C2SoKfCv.js +0 -1343
  541. package/dist/note-DR8A0G5H.js +0 -92
  542. package/dist/note-Dlv4NmlQ.js +0 -92
  543. package/dist/npm-registry-spec-COvUzy5J.js +0 -786
  544. package/dist/npm-registry-spec-Cobb5KYR.js +0 -786
  545. package/dist/npm-resolution-BmgD7x45.js +0 -86
  546. package/dist/npm-resolution-DNYcV-Br.js +0 -86
  547. package/dist/onboard-Dy0q82Mj.js +0 -405
  548. package/dist/onboard-channels-9QS_7iph.js +0 -2548
  549. package/dist/onboard-channels-EH2wvu6Y.js +0 -2547
  550. package/dist/onboard-config-BCTthQ7J.js +0 -24
  551. package/dist/onboard-config-y-2cgT0V.js +0 -24
  552. package/dist/onboard-helpers-ChPmr3lh.js +0 -363
  553. package/dist/onboard-helpers-Jy3345Jk.js +0 -362
  554. package/dist/onboard-remote-CM6Yl1oL.js +0 -127
  555. package/dist/onboard-remote-Id80PV28.js +0 -127
  556. package/dist/onboard-uvDMehqu.js +0 -407
  557. package/dist/onboarding-BVtzeopT.js +0 -534
  558. package/dist/onboarding-DlXBAIDc.js +0 -532
  559. package/dist/onboarding.finalize-Dve-3p-y.js +0 -398
  560. package/dist/onboarding.finalize-GIK3ktiW.js +0 -401
  561. package/dist/onboarding.gateway-config-BCV5T35-.js +0 -198
  562. package/dist/onboarding.gateway-config-DW-09FX5.js +0 -191
  563. package/dist/outbound-CFfJC1j5.js +0 -220
  564. package/dist/outbound-CjFRpudN.js +0 -221
  565. package/dist/outbound-attachment-BxMSma9v.js +0 -18
  566. package/dist/outbound-attachment-DIiKB_mP.js +0 -18
  567. package/dist/outbound-attachment-o0seS0CP.js +0 -18
  568. package/dist/pairing-cli-BeydfoF9.js +0 -122
  569. package/dist/pairing-cli-GgwzEWJX.js +0 -127
  570. package/dist/pairing-labels-B_53dY5L.js +0 -9
  571. package/dist/pairing-labels-BiSZLitI.js +0 -9
  572. package/dist/pairing-store-BgAv4uN8.js +0 -460
  573. package/dist/pairing-store-CTkD51uW.js +0 -459
  574. package/dist/path-env-ErEKbxOI.js +0 -89
  575. package/dist/path-env-qRJbjJzj.js +0 -89
  576. package/dist/path-safety-juI2XbO1.js +0 -14
  577. package/dist/plugin-auto-enable-CloCFyTz.js +0 -302
  578. package/dist/plugin-auto-enable-DuPS9XiJ.js +0 -301
  579. package/dist/plugin-registry-D5QsH-IS.js +0 -33
  580. package/dist/plugin-registry-DnO3azwy.js +0 -33
  581. package/dist/plugin-sdk/agents/defaults.d.ts +0 -3
  582. package/dist/plugin-sdk/auto-reply/model-runtime.d.ts +0 -17
  583. package/dist/plugin-sdk/config/model-input.d.ts +0 -9
  584. package/dist/plugin-sdk/config/zod-schema.agent-model.d.ts +0 -5
  585. package/dist/plugin-sdk/sessions/model-overrides.d.ts +0 -14
  586. package/dist/plugins-BXkDApVh.js +0 -455
  587. package/dist/plugins-BflZz0sp.js +0 -453
  588. package/dist/plugins-cli-Cf_RP_bn.js +0 -798
  589. package/dist/plugins-cli-DmbjYnO9.js +0 -793
  590. package/dist/ports-DIYJq-SY.js +0 -370
  591. package/dist/ports-DPL-Pzfh.js +0 -96
  592. package/dist/ports-NPqtlfp0.js +0 -316
  593. package/dist/ports-QMI4-F9m.js +0 -96
  594. package/dist/program-BaATq6CL.js +0 -244
  595. package/dist/program-context-C7b5MQbg.js +0 -474
  596. package/dist/progress--dapuyZA.js +0 -124
  597. package/dist/prompt-select-styled-BAsxl6hj.js +0 -1650
  598. package/dist/prompt-select-styled-aqjxCbwP.js +0 -1647
  599. package/dist/provider-dispatcher-B4QMe-I6.js +0 -659
  600. package/dist/provider-dispatcher-mAkRbPyH.js +0 -660
  601. package/dist/push-apns-CLmNS5AZ.js +0 -713
  602. package/dist/pw-ai-DuK87zsJ.js +0 -1906
  603. package/dist/pw-ai-ulOU3Ya1.js +0 -1910
  604. package/dist/qr-cli-9WQBnauO.js +0 -352
  605. package/dist/qr-cli-hSLixZCe.js +0 -347
  606. package/dist/redact-snapshot-BZYLIqe-.js +0 -2028
  607. package/dist/redact-snapshot-D2P_lRgf.js +0 -2028
  608. package/dist/register.agent-CquY2yLI.js +0 -286
  609. package/dist/register.agent-DZL_fw2K.js +0 -1043
  610. package/dist/register.configure-C2HjaKO0.js +0 -124
  611. package/dist/register.configure-D7Di47Lb.js +0 -130
  612. package/dist/register.import-Bs-UkOs-.js +0 -27
  613. package/dist/register.import-CaJ0DS1t.js +0 -30
  614. package/dist/register.maintenance-CslelbHK.js +0 -497
  615. package/dist/register.maintenance-Dd4fn6oX.js +0 -494
  616. package/dist/register.message-D2xmx0xB.js +0 -681
  617. package/dist/register.message-_Q8ehgQP.js +0 -686
  618. package/dist/register.onboard-BFSwh5g4.js +0 -262
  619. package/dist/register.onboard-CIupEYmX.js +0 -257
  620. package/dist/register.setup-7pk1r-54.js +0 -114
  621. package/dist/register.setup-Bm1Jtx0c.js +0 -109
  622. package/dist/register.status-health-sessions-C-Pbi-qq.js +0 -669
  623. package/dist/register.status-health-sessions-Cn4yWBWw.js +0 -423
  624. package/dist/register.subclis-DXmLofHX.js +0 -267
  625. package/dist/replies-BKrzM0QI.js +0 -136
  626. package/dist/replies-BkXDql3c.js +0 -136
  627. package/dist/reply-DSKC8kyS.js +0 -13897
  628. package/dist/reply-directives-CBeNSCHL.js +0 -182
  629. package/dist/reply-directives-CD2WycBM.js +0 -182
  630. package/dist/reply-n8KWtBQB.js +0 -13900
  631. package/dist/reply-payloads-CeL_cBnD.js +0 -527
  632. package/dist/reply-prefix-4zLS7A1Y.js +0 -38
  633. package/dist/reply-prefix-DBLCYiup.js +0 -38
  634. package/dist/resolve-route-BDGdM-l3.js +0 -249
  635. package/dist/resolve-route-CBVbY0xS.js +0 -249
  636. package/dist/response-prefix-template-CSxp9HN5.js +0 -136
  637. package/dist/response-prefix-template-up4REfuR.js +0 -136
  638. package/dist/retry-C81p7BZU.js +0 -77
  639. package/dist/run-main-CuA7VmAq.js +0 -320
  640. package/dist/runner-BbLPl1dz.js +0 -2294
  641. package/dist/runner-z92MWZ3m.js +0 -2294
  642. package/dist/runtime-guard-DZ_xuCc4.js +0 -60
  643. package/dist/secure-random-D2IOpBkk.js +0 -44
  644. package/dist/security-cli-BR3Y1FBJ.js +0 -484
  645. package/dist/security-cli-DP5QJpa5.js +0 -478
  646. package/dist/send-0uEtKwU_.js +0 -2245
  647. package/dist/send-B3O7bzYU.js +0 -1174
  648. package/dist/send-BWSo3i3H.js +0 -1778
  649. package/dist/send-BkSUAGj6.js +0 -349
  650. package/dist/send-Bx9bUGav.js +0 -492
  651. package/dist/send-CBGSXjfD.js +0 -2245
  652. package/dist/send-CRS-OcnW.js +0 -29
  653. package/dist/send-DPttDPIR.js +0 -374
  654. package/dist/send-D_DUQJ6H.js +0 -349
  655. package/dist/send-DyftOlFD.js +0 -332
  656. package/dist/send-Lij9A7lk.js +0 -547
  657. package/dist/send-YRVDWfSs.js +0 -547
  658. package/dist/send-dzS4fa9O.js +0 -492
  659. package/dist/send-uchxcHYC.js +0 -11
  660. package/dist/send-xUPOqzUr.js +0 -426
  661. package/dist/send-xnwty9cY.js +0 -1775
  662. package/dist/server-BE5lybcS.js +0 -205
  663. package/dist/server-LdLsvPPw.js +0 -200
  664. package/dist/server-lifecycle-B3Rdmq7-.js +0 -2437
  665. package/dist/server-lifecycle-CFmE_Adm.js +0 -2437
  666. package/dist/server-node-events-De4WZQQD.js +0 -393
  667. package/dist/server-node-events-d7eK4LBW.js +0 -398
  668. package/dist/service-BHos7oX8.js +0 -670
  669. package/dist/service-Bjqii5nW.js +0 -670
  670. package/dist/session-aUptxSVD.js +0 -170
  671. package/dist/session-cost-usage-DX09eTPU.js +0 -627
  672. package/dist/session-cost-usage-yYi525j3.js +0 -627
  673. package/dist/session-dirs-BADAi9Iz.js +0 -947
  674. package/dist/session-dirs-DdF6TDsE.js +0 -947
  675. package/dist/session-key-5YLnn_qf.js +0 -235
  676. package/dist/session-utils-CEtEq6bi.js +0 -625
  677. package/dist/session-utils-CiXbZkM2.js +0 -625
  678. package/dist/sessions--PykPynp.js +0 -2593
  679. package/dist/sessions-Bw4LRnSr.js +0 -252
  680. package/dist/status-CrGLegI6.js +0 -2072
  681. package/dist/status-D_3sszaS.js +0 -2068
  682. package/dist/status.update-C55QM2xs.js +0 -79
  683. package/dist/status.update-CVnonGHu.js +0 -79
  684. package/dist/store-C6w1sB5x.js +0 -53
  685. package/dist/store-DoOPG3rl.js +0 -2595
  686. package/dist/subagent-registry-C-xI2uK4.js +0 -4860
  687. package/dist/subagent-registry-Db4Ho_2Y.js +0 -4858
  688. package/dist/subsystem-CrJCqjAh.js +0 -1139
  689. package/dist/system-cli-CCKzF3uh.js +0 -75
  690. package/dist/system-cli-eAk5wVbP.js +0 -70
  691. package/dist/systemd-B5lyaCc3.js +0 -547
  692. package/dist/systemd-DSnlM3jX.js +0 -547
  693. package/dist/systemd-linger-DRPSEQVw.js +0 -75
  694. package/dist/systemd-linger-_0_-RY4v.js +0 -75
  695. package/dist/table-CpmqqcxJ.js +0 -279
  696. package/dist/tables-DI5LGEr1.js +0 -55
  697. package/dist/tables-D_PTzthR.js +0 -55
  698. package/dist/tables-DcQUNIvB.js +0 -55
  699. package/dist/tailscale-Dxyz13fn.js +0 -230
  700. package/dist/targets-B2vBpQdr.js +0 -2173
  701. package/dist/targets-B54vK3wc.js +0 -220
  702. package/dist/targets-Cm1X3IyA.js +0 -650
  703. package/dist/targets-D7OKVXMI.js +0 -650
  704. package/dist/targets-DB4vBpIQ.js +0 -2172
  705. package/dist/targets-DyybKefq.js +0 -53
  706. package/dist/tool-images-DVrUJEqc.js +0 -263
  707. package/dist/trash-DzrtBoP1.js +0 -125
  708. package/dist/tui-CyHwc2uX.js +0 -3392
  709. package/dist/tui-cHd20SZm.js +0 -3392
  710. package/dist/tui-cli-C7kQj9ef.js +0 -63
  711. package/dist/tui-cli-C9I18SfW.js +0 -58
  712. package/dist/update-DeQGoaIC.js +0 -349
  713. package/dist/update-IX7vdqA8.js +0 -349
  714. package/dist/update-cli-C52dmo3x.js +0 -1370
  715. package/dist/update-cli-DY_iE1E5.js +0 -1373
  716. package/dist/usage-B--dL37U.js +0 -5279
  717. package/dist/web-CMxp78WA.js +0 -76
  718. package/dist/web-DMweaNnG.js +0 -3065
  719. package/dist/web-Dquzwqf4.js +0 -70
  720. package/dist/webhooks-cli-BpZHQlVd.js +0 -328
  721. package/dist/webhooks-cli-CqFX8Ywl.js +0 -333
  722. package/dist/whatsapp-actions-C31Zdwez.js +0 -128
  723. package/dist/whatsapp-actions-DaA291Ya.js +0 -122
  724. package/dist/workspace-B4ZvVYT9.js +0 -447
  725. package/dist/workspace-B8qk__ff.js +0 -449
  726. /package/dist/{ansi-D04X81yq.js → ansi-aRwLYlzD.js} +0 -0
  727. /package/dist/{api-BeQMq2iS.js → api-B5a-GhRx.js} +0 -0
  728. /package/dist/{api-CxX8-gGz.js → api-CIseA2oL.js} +0 -0
  729. /package/dist/{argv-Co-b9Zsc.js → argv-BpnfFual.js} +0 -0
  730. /package/dist/{audio-DPOuhNq7.js → audio-B_mzy948.js} +0 -0
  731. /package/dist/{audio-VBcVDa08.js → audio-DDvXRwh-.js} +0 -0
  732. /package/dist/{brew-DbSbN8sD.js → brew-DJ_dfLHZ.js} +0 -0
  733. /package/dist/{brew-C4zKZsHX.js → brew-j-qOseim.js} +0 -0
  734. /package/dist/{cleanup-utils-CwQvD73q.js → cleanup-utils-CELo1uhg.js} +0 -0
  735. /package/dist/{cleanup-utils-o2MM9xyf.js → cleanup-utils-iC7eNxVL.js} +0 -0
  736. /package/dist/{cli-utils-BhXbz2UF.js → cli-utils-BRpudJBb.js} +0 -0
  737. /package/dist/{cli-utils-DZe_rVkZ.js → cli-utils-DJwgT-LP.js} +0 -0
  738. /package/dist/{client-C61M8zI3.js → client-Ck9_YeG3.js} +0 -0
  739. /package/dist/{client-DdpmATKq.js → client-CwnX0nXo.js} +0 -0
  740. /package/dist/{clipboard-Dzkx6Q2K.js → clipboard-DT-6OtUP.js} +0 -0
  741. /package/dist/{command-options-C4paWSGf.js → command-options-BOLa_fOM.js} +0 -0
  742. /package/dist/{command-options-CA30lfLK.js → command-options-DbRrl8qF.js} +0 -0
  743. /package/dist/{config-eval-CjGZtLwx.js → config-eval-BsrVpg0A.js} +0 -0
  744. /package/dist/{config-eval-H_wlEYIG.js → config-eval-BzDtybYL.js} +0 -0
  745. /package/dist/{constants-ChptG3d7.js → constants-B1UiXFxs.js} +0 -0
  746. /package/dist/{constants-DY6b-_Wl.js → constants-DKUEbLZr.js} +0 -0
  747. /package/dist/{credentials-DFsi1_e8.js → credentials-C82aU5z-.js} +0 -0
  748. /package/dist/{daemon-runtime-CMnbwryP.js → daemon-runtime-BOcdJaFy.js} +0 -0
  749. /package/dist/{daemon-runtime-CvqE4ysg.js → daemon-runtime-CbyS9Xgu.js} +0 -0
  750. /package/dist/{dangerous-name-matching-BzmiLXmA.js → dangerous-name-matching-C2i9AEgf.js} +0 -0
  751. /package/dist/{dangerous-name-matching-DaVRgwer.js → dangerous-name-matching-CCBwBn49.js} +0 -0
  752. /package/dist/{dangerous-tools-BOLoCRv4.js → dangerous-tools-BRtX1d_K.js} +0 -0
  753. /package/dist/{dangerous-tools-Baq7Q-i6.js → dangerous-tools-D8hrp16Q.js} +0 -0
  754. /package/dist/{delivery-queue-Cfa9Wmxp.js → delivery-queue-CgAgO5_a.js} +0 -0
  755. /package/dist/{errors-DZ199hOo.js → errors-Dblex1kc.js} +0 -0
  756. /package/dist/{fetch-C6XKGA11.js → fetch-Du9BJ20J.js} +0 -0
  757. /package/dist/{fetch-CEDsOiql.js → fetch-KSHIFKGH.js} +0 -0
  758. /package/dist/{format-duration-CqUERz51.js → format-duration-BRNiDrqx.js} +0 -0
  759. /package/dist/{format-duration-Ct-yiwkS.js → format-duration-C11mR8D_.js} +0 -0
  760. /package/dist/{format-relative-79_Y1n2Y.js → format-relative-C6kUHuOj.js} +0 -0
  761. /package/dist/{format-relative-CxLpEQOX.js → format-relative-CEWK-aoC.js} +0 -0
  762. /package/dist/{health-format-B_QRD8Si.js → health-format-D-AQZK4v.js} +0 -0
  763. /package/dist/{health-format-Bygse7KA.js → health-format-DGyISuUh.js} +0 -0
  764. /package/dist/{heartbeat-wake-LGEgcXjs.js → heartbeat-wake-BtRrOB-t.js} +0 -0
  765. /package/dist/{heartbeat-wake-Y97geucO.js → heartbeat-wake-SJ-JCo-E.js} +0 -0
  766. /package/dist/{help-format-sqWgYEdL.js → help-format-BjjZaoq3.js} +0 -0
  767. /package/dist/{help-format-NNm_Ov4H.js → help-format-DB1wv6bQ.js} +0 -0
  768. /package/dist/{helpers-R7bU5IBz.js → helpers-BVw8gMr-.js} +0 -0
  769. /package/dist/{helpers-BAsMXprO.js → helpers-D-8vB6NY.js} +0 -0
  770. /package/dist/{helpers-DLgbkcEn.js → helpers-D04-Gim7.js} +0 -0
  771. /package/dist/{inbound-context-DS_kpIYI.js → inbound-context-D94rw0Oq.js} +0 -0
  772. /package/dist/{input-provenance-Bn6thJNm.js → input-provenance-BDPOaXFk.js} +0 -0
  773. /package/dist/{ipv4-CDQpx1A7.js → ipv4-Bp2lJpEb.js} +0 -0
  774. /package/dist/{ipv4--2WXMVtE.js → ipv4-D73_qHXL.js} +0 -0
  775. /package/dist/{is-main-DN8-sNR5.js → is-main-CqNDOs3L.js} +0 -0
  776. /package/dist/{json-files-CmpYSF4G.js → json-files-Ct2lDInr.js} +0 -0
  777. /package/dist/{lanes-ByWMUgrz.js → lanes-DKkroN9D.js} +0 -0
  778. /package/dist/{links-Cm43Vcft.js → links-BWZPW7Lq.js} +0 -0
  779. /package/dist/{links-Bz4V7R_p.js → links-Y3epeqjH.js} +0 -0
  780. /package/dist/{location-DBWCGNLq.js → location-BcldrVN7.js} +0 -0
  781. /package/dist/{location-GbZ0bBRU.js → location-BrkAgrz9.js} +0 -0
  782. /package/dist/{logger-DyL5G2DO.js → logger-BuGfr7KR.js} +0 -0
  783. /package/dist/{logger-GvipVDfh.js → logger-TzwNwShm.js} +0 -0
  784. /package/dist/{logging-D8-Kozjc.js → logging-BiGr95aB.js} +0 -0
  785. /package/dist/{logging-D8R0sLY9.js → logging-DZhZ5xLX.js} +0 -0
  786. /package/dist/{mutable-allowlist-detectors-DiZDtmlZ.js → mutable-allowlist-detectors-BaVrnZS3.js} +0 -0
  787. /package/dist/{mutable-allowlist-detectors-U5ThQr9V.js → mutable-allowlist-detectors-NtI6s4TE.js} +0 -0
  788. /package/dist/{node-cli-Uf6lAntf.js → node-cli-DFKT5s4K.js} +0 -0
  789. /package/dist/{nodes-screen-Bmp1l9wY.js → nodes-screen-ByJHtT0R.js} +0 -0
  790. /package/dist/{nodes-screen-Cw7Hv7M2.js → nodes-screen-C17NdAyR.js} +0 -0
  791. /package/dist/{parse-log-line-enq8pduH.js → parse-log-line-CM1cOe-W.js} +0 -0
  792. /package/dist/{parse-log-line-mz9TG6ig.js → parse-log-line-DXE28Ti3.js} +0 -0
  793. /package/dist/{parse-timeout-BMP8a0_a.js → parse-timeout-DFxbkOgy.js} +0 -0
  794. /package/dist/{parse-timeout-CDkco8kd.js → parse-timeout-dIdCY9EB.js} +0 -0
  795. /package/dist/{path-guards-CrQOUlsq.js → path-guards-DJteVA0d.js} +0 -0
  796. /package/dist/{path-safety-DkT9RmTG.js → path-safety-BGnQWeUs.js} +0 -0
  797. /package/dist/{plugins-allowlist-BbTQ5Z2k.js → plugins-allowlist-Bvd3WXPX.js} +0 -0
  798. /package/dist/{plugins-allowlist-C20oaESO.js → plugins-allowlist-DyoGDzwZ.js} +0 -0
  799. /package/dist/{polls-B0CCBDeR.js → polls-DXd67TD8.js} +0 -0
  800. /package/dist/{ports-lsof-Wteul3ju.js → ports-lsof-BNQJW1Qu.js} +0 -0
  801. /package/dist/{program-context-jqeI5alP.js → program-context-DpJ5udOA.js} +0 -0
  802. /package/dist/{progress-C1kUfYL-.js → progress-Dvx-ExOb.js} +0 -0
  803. /package/dist/{prompt-Yn2yClg1.js → prompt-DRT7xYvH.js} +0 -0
  804. /package/dist/{prompt-BVZVovoB.js → prompt-YAKpM1vg.js} +0 -0
  805. /package/dist/{prompt-style-D0LUnqXi.js → prompt-style-BsR0RICZ.js} +0 -0
  806. /package/dist/{prompt-style-DjEYC_s-.js → prompt-style-inF3A_oX.js} +0 -0
  807. /package/dist/{proxy-DL3MD6-P.js → proxy-GJkoUC6V.js} +0 -0
  808. /package/dist/{proxy-DpNv2cSV.js → proxy-yk1Oqe9p.js} +0 -0
  809. /package/dist/{push-apns-DuG95AKC.js → push-apns-Ak1TkhPj.js} +0 -0
  810. /package/dist/{pw-ai-state-CGfLv6nV.js → pw-ai-state-D2Fjn4L6.js} +0 -0
  811. /package/dist/{pw-ai-state-Dynx20hr.js → pw-ai-state-Ds_-5nzI.js} +0 -0
  812. /package/dist/{redact-identifier-CAagcfWA.js → redact-identifier-CKA9ZTIc.js} +0 -0
  813. /package/dist/{remoteclaw-root-DybYl8PL.js → remoteclaw-root-BbqPSH6q.js} +0 -0
  814. /package/dist/{remoteclaw-root-C2HV2VeC.js → remoteclaw-root-dHyfh_2E.js} +0 -0
  815. /package/dist/{render-CCLsW6Lz.js → render-CUAKPmvZ.js} +0 -0
  816. /package/dist/{retry-DnqPAqWp.js → retry-0uBjohL-.js} +0 -0
  817. /package/dist/{retry-CxXVRdes.js → retry-BbVJvOUo.js} +0 -0
  818. /package/dist/{runtime-DJNp29jv.js → runtime-Ds3E9SqF.js} +0 -0
  819. /package/dist/{runtime-guard-U-ewY_QH.js → runtime-guard-Dw19MuxF.js} +0 -0
  820. /package/dist/{secret-equal-BbHdTtqY.js → secret-equal-DgjJcvjv.js} +0 -0
  821. /package/dist/{secure-random-CS2mSdTn.js → secure-random-Bla7VjVG.js} +0 -0
  822. /package/dist/{session-DBL5nHDy.js → session-C7PLQQMA.js} +0 -0
  823. /package/dist/{stagger-BXv_apuy.js → stagger-Cu9_3JD_.js} +0 -0
  824. /package/dist/{stagger-MI9gd2rQ.js → stagger-NmUOU1S6.js} +0 -0
  825. /package/dist/{status-BmtCS3T1.js → status-BNw-xk6B.js} +0 -0
  826. /package/dist/{status-BrwHRn2B.js → status-D98glect.js} +0 -0
  827. /package/dist/{store-BPZo49zT.js → store-CmRidfgp.js} +0 -0
  828. /package/dist/{store-v3P-OWhi.js → store-oxFp4Iqf.js} +0 -0
  829. /package/dist/{strip-inbound-meta-jy3bkUab.js → strip-inbound-meta-B21Qdh8I.js} +0 -0
  830. /package/dist/{subsystem-CDhxwtDd.js → subsystem-SgROXN1v.js} +0 -0
  831. /package/dist/{table-C1rdyYl9.js → table-DhGVhmP-.js} +0 -0
  832. /package/dist/{tailnet-PnMrjwGT.js → tailnet-wUV6epIk.js} +0 -0
  833. /package/dist/{tailscale-Dbyahx0J.js → tailscale-DAa9lokU.js} +0 -0
  834. /package/dist/{target-errors-BDpPcwh5.js → target-errors-BDipwemU.js} +0 -0
  835. /package/dist/{targets-C-2xwh9f.js → targets-DfXObWaL.js} +0 -0
  836. /package/dist/{targets-UncQvCVs.js → targets-PM39J-YL.js} +0 -0
  837. /package/dist/{text-format-BQ3z_OXA.js → text-format-CFm4X8Ze.js} +0 -0
  838. /package/dist/{text-format-oWqzVmah.js → text-format-Cy1bnk2A.js} +0 -0
  839. /package/dist/{tool-display-B-nr7cSF.js → tool-display-BAIuLbtW.js} +0 -0
  840. /package/dist/{trash-DPi0aCCQ.js → trash-BS86zpVy.js} +0 -0
  841. /package/dist/{usage-BdhBT0Vz.js → usage-BvSX010R.js} +0 -0
  842. /package/dist/{usage-format-C3mNLfhI.js → usage-format-C6Iz_Ws9.js} +0 -0
  843. /package/dist/{usage-format-DAaPzr_z.js → usage-format-CHBrzgvG.js} +0 -0
  844. /package/dist/{usage-BtQcAnf6.js → usage-sF5tij7A.js} +0 -0
  845. /package/dist/{widearea-dns-CsmBVbez.js → widearea-dns-CsqvX85g.js} +0 -0
  846. /package/dist/{widearea-dns-BXGCmXnD.js → widearea-dns-DtACcM7M.js} +0 -0
  847. /package/dist/{workspace-BzPeZDew.js → workspace-DpbQppPf.js} +0 -0
  848. /package/dist/{wsl-B_sPlzWw.js → wsl-B5ccPr42.js} +0 -0
  849. /package/dist/{wsl-BCnYV9O0.js → wsl-BJW8nTyL.js} +0 -0
@@ -1,448 +0,0 @@
1
- import { t as safeEqualSecret } from "./secret-equal-BbHdTtqY.js";
2
- import { a as isTrustedProxyAddress, l as resolveClientIp, n as isLoopbackAddress, t as isLocalishHost } from "./net-D6D0wgcF.js";
3
- import { n as resolveGatewayCredentialsFromValues } from "./credentials-DFsi1_e8.js";
4
- import { c as readTailscaleWhoisIdentity } from "./tailscale-Dxyz13fn.js";
5
-
6
- //#region src/gateway/auth-rate-limit.ts
7
- /**
8
- * In-memory sliding-window rate limiter for gateway authentication attempts.
9
- *
10
- * Tracks failed auth attempts by {scope, clientIp}. A scope lets callers keep
11
- * independent counters for different credential classes (for example, shared
12
- * gateway token/password vs device-token auth) while still sharing one
13
- * limiter instance.
14
- *
15
- * Design decisions:
16
- * - Pure in-memory Map – no external dependencies; suitable for a single
17
- * gateway process. The Map is periodically pruned to avoid unbounded
18
- * growth.
19
- * - Loopback addresses (127.0.0.1 / ::1) are exempt by default so that local
20
- * CLI sessions are never locked out.
21
- * - The module is side-effect-free: callers create an instance via
22
- * {@link createAuthRateLimiter} and pass it where needed.
23
- */
24
- const AUTH_RATE_LIMIT_SCOPE_DEFAULT = "default";
25
- const AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET = "shared-secret";
26
- const AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN = "device-token";
27
- const AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH = "hook-auth";
28
- const DEFAULT_MAX_ATTEMPTS = 10;
29
- const DEFAULT_WINDOW_MS = 6e4;
30
- const DEFAULT_LOCKOUT_MS = 3e5;
31
- const PRUNE_INTERVAL_MS = 6e4;
32
- /**
33
- * Canonicalize client IPs used for auth throttling so all call sites
34
- * share one representation (including IPv4-mapped IPv6 forms).
35
- */
36
- function normalizeRateLimitClientIp(ip) {
37
- return resolveClientIp({ remoteAddr: ip }) ?? "unknown";
38
- }
39
- function createAuthRateLimiter(config) {
40
- const maxAttempts = config?.maxAttempts ?? DEFAULT_MAX_ATTEMPTS;
41
- const windowMs = config?.windowMs ?? DEFAULT_WINDOW_MS;
42
- const lockoutMs = config?.lockoutMs ?? DEFAULT_LOCKOUT_MS;
43
- const exemptLoopback = config?.exemptLoopback ?? true;
44
- const pruneIntervalMs = config?.pruneIntervalMs ?? PRUNE_INTERVAL_MS;
45
- const entries = /* @__PURE__ */ new Map();
46
- const pruneTimer = pruneIntervalMs > 0 ? setInterval(() => prune(), pruneIntervalMs) : null;
47
- if (pruneTimer?.unref) pruneTimer.unref();
48
- function normalizeScope(scope) {
49
- return (scope ?? AUTH_RATE_LIMIT_SCOPE_DEFAULT).trim() || AUTH_RATE_LIMIT_SCOPE_DEFAULT;
50
- }
51
- function normalizeIp(ip) {
52
- return normalizeRateLimitClientIp(ip);
53
- }
54
- function resolveKey(rawIp, rawScope) {
55
- const ip = normalizeIp(rawIp);
56
- return {
57
- key: `${normalizeScope(rawScope)}:${ip}`,
58
- ip
59
- };
60
- }
61
- function isExempt(ip) {
62
- return exemptLoopback && isLoopbackAddress(ip);
63
- }
64
- function slideWindow(entry, now) {
65
- const cutoff = now - windowMs;
66
- entry.attempts = entry.attempts.filter((ts) => ts > cutoff);
67
- }
68
- function check(rawIp, rawScope) {
69
- const { key, ip } = resolveKey(rawIp, rawScope);
70
- if (isExempt(ip)) return {
71
- allowed: true,
72
- remaining: maxAttempts,
73
- retryAfterMs: 0
74
- };
75
- const now = Date.now();
76
- const entry = entries.get(key);
77
- if (!entry) return {
78
- allowed: true,
79
- remaining: maxAttempts,
80
- retryAfterMs: 0
81
- };
82
- if (entry.lockedUntil && now < entry.lockedUntil) return {
83
- allowed: false,
84
- remaining: 0,
85
- retryAfterMs: entry.lockedUntil - now
86
- };
87
- if (entry.lockedUntil && now >= entry.lockedUntil) {
88
- entry.lockedUntil = void 0;
89
- entry.attempts = [];
90
- }
91
- slideWindow(entry, now);
92
- const remaining = Math.max(0, maxAttempts - entry.attempts.length);
93
- return {
94
- allowed: remaining > 0,
95
- remaining,
96
- retryAfterMs: 0
97
- };
98
- }
99
- function recordFailure(rawIp, rawScope) {
100
- const { key, ip } = resolveKey(rawIp, rawScope);
101
- if (isExempt(ip)) return;
102
- const now = Date.now();
103
- let entry = entries.get(key);
104
- if (!entry) {
105
- entry = { attempts: [] };
106
- entries.set(key, entry);
107
- }
108
- if (entry.lockedUntil && now < entry.lockedUntil) return;
109
- slideWindow(entry, now);
110
- entry.attempts.push(now);
111
- if (entry.attempts.length >= maxAttempts) entry.lockedUntil = now + lockoutMs;
112
- }
113
- function reset(rawIp, rawScope) {
114
- const { key } = resolveKey(rawIp, rawScope);
115
- entries.delete(key);
116
- }
117
- function prune() {
118
- const now = Date.now();
119
- for (const [key, entry] of entries) {
120
- if (entry.lockedUntil && now < entry.lockedUntil) continue;
121
- slideWindow(entry, now);
122
- if (entry.attempts.length === 0) entries.delete(key);
123
- }
124
- }
125
- function size() {
126
- return entries.size;
127
- }
128
- function dispose() {
129
- if (pruneTimer) clearInterval(pruneTimer);
130
- entries.clear();
131
- }
132
- return {
133
- check,
134
- recordFailure,
135
- reset,
136
- size,
137
- prune,
138
- dispose
139
- };
140
- }
141
-
142
- //#endregion
143
- //#region src/gateway/auth.ts
144
- function normalizeLogin(login) {
145
- return login.trim().toLowerCase();
146
- }
147
- function headerValue(value) {
148
- return Array.isArray(value) ? value[0] : value;
149
- }
150
- const TAILSCALE_TRUSTED_PROXIES = ["127.0.0.1", "::1"];
151
- function resolveTailscaleClientIp(req) {
152
- if (!req) return;
153
- return resolveClientIp({
154
- remoteAddr: req.socket?.remoteAddress ?? "",
155
- forwardedFor: headerValue(req.headers?.["x-forwarded-for"]),
156
- trustedProxies: [...TAILSCALE_TRUSTED_PROXIES]
157
- });
158
- }
159
- function resolveRequestClientIp(req, trustedProxies, allowRealIpFallback = false) {
160
- if (!req) return;
161
- return resolveClientIp({
162
- remoteAddr: req.socket?.remoteAddress ?? "",
163
- forwardedFor: headerValue(req.headers?.["x-forwarded-for"]),
164
- realIp: headerValue(req.headers?.["x-real-ip"]),
165
- trustedProxies,
166
- allowRealIpFallback
167
- });
168
- }
169
- function isLocalDirectRequest(req, trustedProxies, allowRealIpFallback = false) {
170
- if (!req) return false;
171
- if (!isLoopbackAddress(resolveRequestClientIp(req, trustedProxies, allowRealIpFallback) ?? "")) return false;
172
- const hasForwarded = Boolean(req.headers?.["x-forwarded-for"] || req.headers?.["x-real-ip"] || req.headers?.["x-forwarded-host"]);
173
- const remoteIsTrustedProxy = isTrustedProxyAddress(req.socket?.remoteAddress, trustedProxies);
174
- return isLocalishHost(req.headers?.host) && (!hasForwarded || remoteIsTrustedProxy);
175
- }
176
- function getTailscaleUser(req) {
177
- if (!req) return null;
178
- const login = req.headers["tailscale-user-login"];
179
- if (typeof login !== "string" || !login.trim()) return null;
180
- const nameRaw = req.headers["tailscale-user-name"];
181
- const profilePic = req.headers["tailscale-user-profile-pic"];
182
- const name = typeof nameRaw === "string" && nameRaw.trim() ? nameRaw.trim() : login.trim();
183
- return {
184
- login: login.trim(),
185
- name,
186
- profilePic: typeof profilePic === "string" && profilePic.trim() ? profilePic.trim() : void 0
187
- };
188
- }
189
- function hasTailscaleProxyHeaders(req) {
190
- if (!req) return false;
191
- return Boolean(req.headers["x-forwarded-for"] && req.headers["x-forwarded-proto"] && req.headers["x-forwarded-host"]);
192
- }
193
- function isTailscaleProxyRequest(req) {
194
- if (!req) return false;
195
- return isLoopbackAddress(req.socket?.remoteAddress) && hasTailscaleProxyHeaders(req);
196
- }
197
- async function resolveVerifiedTailscaleUser(params) {
198
- const { req, tailscaleWhois } = params;
199
- const tailscaleUser = getTailscaleUser(req);
200
- if (!tailscaleUser) return {
201
- ok: false,
202
- reason: "tailscale_user_missing"
203
- };
204
- if (!isTailscaleProxyRequest(req)) return {
205
- ok: false,
206
- reason: "tailscale_proxy_missing"
207
- };
208
- const clientIp = resolveTailscaleClientIp(req);
209
- if (!clientIp) return {
210
- ok: false,
211
- reason: "tailscale_whois_failed"
212
- };
213
- const whois = await tailscaleWhois(clientIp);
214
- if (!whois?.login) return {
215
- ok: false,
216
- reason: "tailscale_whois_failed"
217
- };
218
- if (normalizeLogin(whois.login) !== normalizeLogin(tailscaleUser.login)) return {
219
- ok: false,
220
- reason: "tailscale_user_mismatch"
221
- };
222
- return {
223
- ok: true,
224
- user: {
225
- login: whois.login,
226
- name: whois.name ?? tailscaleUser.name,
227
- profilePic: tailscaleUser.profilePic
228
- }
229
- };
230
- }
231
- function resolveGatewayAuth(params) {
232
- const baseAuthConfig = params.authConfig ?? {};
233
- const authOverride = params.authOverride ?? void 0;
234
- const authConfig = { ...baseAuthConfig };
235
- if (authOverride) {
236
- if (authOverride.mode !== void 0) authConfig.mode = authOverride.mode;
237
- if (authOverride.token !== void 0) authConfig.token = authOverride.token;
238
- if (authOverride.password !== void 0) authConfig.password = authOverride.password;
239
- if (authOverride.allowTailscale !== void 0) authConfig.allowTailscale = authOverride.allowTailscale;
240
- if (authOverride.rateLimit !== void 0) authConfig.rateLimit = authOverride.rateLimit;
241
- if (authOverride.trustedProxy !== void 0) authConfig.trustedProxy = authOverride.trustedProxy;
242
- }
243
- const env = params.env ?? process.env;
244
- const resolvedCredentials = resolveGatewayCredentialsFromValues({
245
- configToken: authConfig.token,
246
- configPassword: authConfig.password,
247
- env,
248
- includeLegacyEnv: false,
249
- tokenPrecedence: "config-first",
250
- passwordPrecedence: "config-first"
251
- });
252
- const token = resolvedCredentials.token;
253
- const password = resolvedCredentials.password;
254
- const trustedProxy = authConfig.trustedProxy;
255
- let mode;
256
- let modeSource;
257
- if (authOverride?.mode !== void 0) {
258
- mode = authOverride.mode;
259
- modeSource = "override";
260
- } else if (authConfig.mode) {
261
- mode = authConfig.mode;
262
- modeSource = "config";
263
- } else if (password) {
264
- mode = "password";
265
- modeSource = "password";
266
- } else if (token) {
267
- mode = "token";
268
- modeSource = "token";
269
- } else {
270
- mode = "token";
271
- modeSource = "default";
272
- }
273
- const allowTailscale = authConfig.allowTailscale ?? (params.tailscaleMode === "serve" && mode !== "password" && mode !== "trusted-proxy");
274
- return {
275
- mode,
276
- modeSource,
277
- token,
278
- password,
279
- allowTailscale,
280
- trustedProxy
281
- };
282
- }
283
- function assertGatewayAuthConfigured(auth) {
284
- if (auth.mode === "token" && !auth.token) {
285
- if (auth.allowTailscale) return;
286
- throw new Error("gateway auth mode is token, but no token was configured (set gateway.auth.token or REMOTECLAW_GATEWAY_TOKEN)");
287
- }
288
- if (auth.mode === "password" && !auth.password) throw new Error("gateway auth mode is password, but no password was configured");
289
- if (auth.mode === "trusted-proxy") {
290
- if (!auth.trustedProxy) throw new Error("gateway auth mode is trusted-proxy, but no trustedProxy config was provided (set gateway.auth.trustedProxy)");
291
- if (!auth.trustedProxy.userHeader || auth.trustedProxy.userHeader.trim() === "") throw new Error("gateway auth mode is trusted-proxy, but trustedProxy.userHeader is empty (set gateway.auth.trustedProxy.userHeader)");
292
- }
293
- }
294
- /**
295
- * Check if the request came from a trusted proxy and extract user identity.
296
- * Returns the user identity if valid, or null with a reason if not.
297
- */
298
- function authorizeTrustedProxy(params) {
299
- const { req, trustedProxies, trustedProxyConfig } = params;
300
- if (!req) return { reason: "trusted_proxy_no_request" };
301
- const remoteAddr = req.socket?.remoteAddress;
302
- if (!remoteAddr || !isTrustedProxyAddress(remoteAddr, trustedProxies)) return { reason: "trusted_proxy_untrusted_source" };
303
- const requiredHeaders = trustedProxyConfig.requiredHeaders ?? [];
304
- for (const header of requiredHeaders) {
305
- const value = headerValue(req.headers[header.toLowerCase()]);
306
- if (!value || value.trim() === "") return { reason: `trusted_proxy_missing_header_${header}` };
307
- }
308
- const userHeaderValue = headerValue(req.headers[trustedProxyConfig.userHeader.toLowerCase()]);
309
- if (!userHeaderValue || userHeaderValue.trim() === "") return { reason: "trusted_proxy_user_missing" };
310
- const user = userHeaderValue.trim();
311
- const allowUsers = trustedProxyConfig.allowUsers ?? [];
312
- if (allowUsers.length > 0 && !allowUsers.includes(user)) return { reason: "trusted_proxy_user_not_allowed" };
313
- return { user };
314
- }
315
- function shouldAllowTailscaleHeaderAuth(authSurface) {
316
- return authSurface === "ws-control-ui";
317
- }
318
- async function authorizeGatewayConnect(params) {
319
- const { auth, connectAuth, req, trustedProxies } = params;
320
- const tailscaleWhois = params.tailscaleWhois ?? readTailscaleWhoisIdentity;
321
- const allowTailscaleHeaderAuth = shouldAllowTailscaleHeaderAuth(params.authSurface ?? "http");
322
- const localDirect = isLocalDirectRequest(req, trustedProxies, params.allowRealIpFallback === true);
323
- if (auth.mode === "trusted-proxy") {
324
- if (!auth.trustedProxy) return {
325
- ok: false,
326
- reason: "trusted_proxy_config_missing"
327
- };
328
- if (!trustedProxies || trustedProxies.length === 0) return {
329
- ok: false,
330
- reason: "trusted_proxy_no_proxies_configured"
331
- };
332
- const result = authorizeTrustedProxy({
333
- req,
334
- trustedProxies,
335
- trustedProxyConfig: auth.trustedProxy
336
- });
337
- if ("user" in result) return {
338
- ok: true,
339
- method: "trusted-proxy",
340
- user: result.user
341
- };
342
- return {
343
- ok: false,
344
- reason: result.reason
345
- };
346
- }
347
- if (auth.mode === "none") return {
348
- ok: true,
349
- method: "none"
350
- };
351
- const limiter = params.rateLimiter;
352
- const ip = params.clientIp ?? resolveRequestClientIp(req, trustedProxies, params.allowRealIpFallback === true) ?? req?.socket?.remoteAddress;
353
- const rateLimitScope = params.rateLimitScope ?? AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET;
354
- if (limiter) {
355
- const rlCheck = limiter.check(ip, rateLimitScope);
356
- if (!rlCheck.allowed) return {
357
- ok: false,
358
- reason: "rate_limited",
359
- rateLimited: true,
360
- retryAfterMs: rlCheck.retryAfterMs
361
- };
362
- }
363
- if (allowTailscaleHeaderAuth && auth.allowTailscale && !localDirect) {
364
- const tailscaleCheck = await resolveVerifiedTailscaleUser({
365
- req,
366
- tailscaleWhois
367
- });
368
- if (tailscaleCheck.ok) {
369
- limiter?.reset(ip, rateLimitScope);
370
- return {
371
- ok: true,
372
- method: "tailscale",
373
- user: tailscaleCheck.user.login
374
- };
375
- }
376
- }
377
- if (auth.mode === "token") {
378
- if (!auth.token) return {
379
- ok: false,
380
- reason: "token_missing_config"
381
- };
382
- if (!connectAuth?.token) {
383
- limiter?.recordFailure(ip, rateLimitScope);
384
- return {
385
- ok: false,
386
- reason: "token_missing"
387
- };
388
- }
389
- if (!safeEqualSecret(connectAuth.token, auth.token)) {
390
- limiter?.recordFailure(ip, rateLimitScope);
391
- return {
392
- ok: false,
393
- reason: "token_mismatch"
394
- };
395
- }
396
- limiter?.reset(ip, rateLimitScope);
397
- return {
398
- ok: true,
399
- method: "token"
400
- };
401
- }
402
- if (auth.mode === "password") {
403
- const password = connectAuth?.password;
404
- if (!auth.password) return {
405
- ok: false,
406
- reason: "password_missing_config"
407
- };
408
- if (!password) {
409
- limiter?.recordFailure(ip, rateLimitScope);
410
- return {
411
- ok: false,
412
- reason: "password_missing"
413
- };
414
- }
415
- if (!safeEqualSecret(password, auth.password)) {
416
- limiter?.recordFailure(ip, rateLimitScope);
417
- return {
418
- ok: false,
419
- reason: "password_mismatch"
420
- };
421
- }
422
- limiter?.reset(ip, rateLimitScope);
423
- return {
424
- ok: true,
425
- method: "password"
426
- };
427
- }
428
- limiter?.recordFailure(ip, rateLimitScope);
429
- return {
430
- ok: false,
431
- reason: "unauthorized"
432
- };
433
- }
434
- async function authorizeHttpGatewayConnect(params) {
435
- return authorizeGatewayConnect({
436
- ...params,
437
- authSurface: "http"
438
- });
439
- }
440
- async function authorizeWsControlUiGatewayConnect(params) {
441
- return authorizeGatewayConnect({
442
- ...params,
443
- authSurface: "ws-control-ui"
444
- });
445
- }
446
-
447
- //#endregion
448
- export { resolveGatewayAuth as a, AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET as c, isLocalDirectRequest as i, createAuthRateLimiter as l, authorizeHttpGatewayConnect as n, AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN as o, authorizeWsControlUiGatewayConnect as r, AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH as s, assertGatewayAuthConfigured as t, normalizeRateLimitClientIp as u };