visionclaw 0.1.193 → 0.1.194-dev.feat-backup-progress-reporting.1

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 (352) hide show
  1. package/dist/agent/backup-uploader.d.ts +44 -0
  2. package/dist/agent/backup-uploader.d.ts.map +1 -0
  3. package/dist/agent/backup-uploader.js +83 -0
  4. package/dist/agent/backup-uploader.js.map +1 -0
  5. package/dist/agent/backup.d.ts +7 -1
  6. package/dist/agent/backup.d.ts.map +1 -1
  7. package/dist/agent/backup.js +337 -52
  8. package/dist/agent/backup.js.map +1 -1
  9. package/dist/agent/command-handlers.d.ts +2 -0
  10. package/dist/agent/command-handlers.d.ts.map +1 -1
  11. package/dist/agent/command-handlers.js +29 -3
  12. package/dist/agent/command-handlers.js.map +1 -1
  13. package/dist/agent/context.d.ts +2 -0
  14. package/dist/agent/context.d.ts.map +1 -1
  15. package/dist/agent/context.js +11 -1
  16. package/dist/agent/context.js.map +1 -1
  17. package/dist/agent/data-collector.d.ts.map +1 -1
  18. package/dist/agent/data-collector.js +23 -38
  19. package/dist/agent/data-collector.js.map +1 -1
  20. package/dist/agent/loop.d.ts +3 -0
  21. package/dist/agent/loop.d.ts.map +1 -1
  22. package/dist/agent/loop.js +48 -0
  23. package/dist/agent/loop.js.map +1 -1
  24. package/dist/agent/message-format.d.ts.map +1 -1
  25. package/dist/agent/message-format.js +3 -0
  26. package/dist/agent/message-format.js.map +1 -1
  27. package/dist/agent/status.d.ts.map +1 -1
  28. package/dist/agent/status.js +2 -1
  29. package/dist/agent/status.js.map +1 -1
  30. package/dist/backup.d.ts +4 -1
  31. package/dist/backup.d.ts.map +1 -1
  32. package/dist/backup.js +86 -3
  33. package/dist/backup.js.map +1 -1
  34. package/dist/calendar/google-calendar.d.ts +2 -0
  35. package/dist/calendar/google-calendar.d.ts.map +1 -1
  36. package/dist/calendar/google-calendar.js +3 -0
  37. package/dist/calendar/google-calendar.js.map +1 -1
  38. package/dist/channels/interface.d.ts +9 -0
  39. package/dist/channels/interface.d.ts.map +1 -1
  40. package/dist/channels/manager.d.ts +7 -1
  41. package/dist/channels/manager.d.ts.map +1 -1
  42. package/dist/channels/manager.js +12 -0
  43. package/dist/channels/manager.js.map +1 -1
  44. package/dist/channels/telegram.d.ts.map +1 -1
  45. package/dist/channels/telegram.js +5 -0
  46. package/dist/channels/telegram.js.map +1 -1
  47. package/dist/cli/index.d.ts +1 -0
  48. package/dist/cli/index.d.ts.map +1 -1
  49. package/dist/cli/index.js +42 -2
  50. package/dist/cli/index.js.map +1 -1
  51. package/dist/config/types.d.ts +9 -0
  52. package/dist/config/types.d.ts.map +1 -1
  53. package/dist/config/types.js +6 -0
  54. package/dist/config/types.js.map +1 -1
  55. package/dist/drive/google-drive.d.ts +1 -0
  56. package/dist/drive/google-drive.d.ts.map +1 -1
  57. package/dist/drive/google-drive.js +5 -0
  58. package/dist/drive/google-drive.js.map +1 -1
  59. package/dist/i18n/messages.d.ts +4 -0
  60. package/dist/i18n/messages.d.ts.map +1 -1
  61. package/dist/i18n/messages.js +7 -2
  62. package/dist/i18n/messages.js.map +1 -1
  63. package/dist/index.js.map +1 -1
  64. package/dist/obs/server.d.ts +7 -0
  65. package/dist/obs/server.d.ts.map +1 -1
  66. package/dist/obs/server.js +22 -0
  67. package/dist/obs/server.js.map +1 -1
  68. package/dist/onboarding/bot-profile.d.ts.map +1 -1
  69. package/dist/onboarding/bot-profile.js +1 -0
  70. package/dist/onboarding/bot-profile.js.map +1 -1
  71. package/dist/onboarding/index.d.ts.map +1 -1
  72. package/dist/onboarding/index.js +5 -0
  73. package/dist/onboarding/index.js.map +1 -1
  74. package/dist/onboarding/prepare-mac.d.ts +1 -0
  75. package/dist/onboarding/prepare-mac.d.ts.map +1 -1
  76. package/dist/onboarding/prepare-mac.js +32 -15
  77. package/dist/onboarding/prepare-mac.js.map +1 -1
  78. package/dist/onboarding/setup-shared.d.ts.map +1 -1
  79. package/dist/onboarding/setup-shared.js +6 -0
  80. package/dist/onboarding/setup-shared.js.map +1 -1
  81. package/dist/onboarding/setup-steps.d.ts.map +1 -1
  82. package/dist/onboarding/setup-steps.js +8 -0
  83. package/dist/onboarding/setup-steps.js.map +1 -1
  84. package/dist/realtime/agent-bridge.d.ts +7 -0
  85. package/dist/realtime/agent-bridge.d.ts.map +1 -0
  86. package/dist/realtime/agent-bridge.js +31 -0
  87. package/dist/realtime/agent-bridge.js.map +1 -0
  88. package/dist/realtime/assets/index.html +1058 -0
  89. package/dist/realtime/assets/samples/alloy.mp3 +0 -0
  90. package/dist/realtime/assets/samples/ash.mp3 +0 -0
  91. package/dist/realtime/assets/samples/ballad.mp3 +0 -0
  92. package/dist/realtime/assets/samples/cedar.mp3 +0 -0
  93. package/dist/realtime/assets/samples/coral.mp3 +0 -0
  94. package/dist/realtime/assets/samples/echo.mp3 +0 -0
  95. package/dist/realtime/assets/samples/marin.mp3 +0 -0
  96. package/dist/realtime/assets/samples/sage.mp3 +0 -0
  97. package/dist/realtime/assets/samples/shimmer.mp3 +0 -0
  98. package/dist/realtime/assets/samples/verse.mp3 +0 -0
  99. package/dist/realtime/context.d.ts +14 -0
  100. package/dist/realtime/context.d.ts.map +1 -0
  101. package/dist/realtime/context.js +153 -0
  102. package/dist/realtime/context.js.map +1 -0
  103. package/dist/realtime/http-helpers.d.ts +5 -0
  104. package/dist/realtime/http-helpers.d.ts.map +1 -0
  105. package/dist/realtime/http-helpers.js +29 -0
  106. package/dist/realtime/http-helpers.js.map +1 -0
  107. package/dist/realtime/index.d.ts +62 -0
  108. package/dist/realtime/index.d.ts.map +1 -0
  109. package/dist/realtime/index.js +94 -0
  110. package/dist/realtime/index.js.map +1 -0
  111. package/dist/realtime/server.d.ts +6 -0
  112. package/dist/realtime/server.d.ts.map +1 -0
  113. package/dist/realtime/server.js +476 -0
  114. package/dist/realtime/server.js.map +1 -0
  115. package/dist/realtime/telegram-auth.d.ts +2 -0
  116. package/dist/realtime/telegram-auth.d.ts.map +1 -0
  117. package/dist/realtime/telegram-auth.js +24 -0
  118. package/dist/realtime/telegram-auth.js.map +1 -0
  119. package/dist/realtime/tools.d.ts +829 -0
  120. package/dist/realtime/tools.d.ts.map +1 -0
  121. package/dist/realtime/tools.js +630 -0
  122. package/dist/realtime/tools.js.map +1 -0
  123. package/dist/realtime/types.d.ts +62 -0
  124. package/dist/realtime/types.d.ts.map +1 -0
  125. package/dist/realtime/types.js +3 -0
  126. package/dist/realtime/types.js.map +1 -0
  127. package/dist/realtime/voice-summarizer.d.ts +4 -0
  128. package/dist/realtime/voice-summarizer.d.ts.map +1 -0
  129. package/dist/realtime/voice-summarizer.js +129 -0
  130. package/dist/realtime/voice-summarizer.js.map +1 -0
  131. package/dist/restore.d.ts +5 -0
  132. package/dist/restore.d.ts.map +1 -1
  133. package/dist/restore.js +132 -16
  134. package/dist/restore.js.map +1 -1
  135. package/dist/tools/email.d.ts +1 -1
  136. package/dist/tools/memory.d.ts +13 -0
  137. package/dist/tools/memory.d.ts.map +1 -1
  138. package/dist/tools/memory.js +43 -43
  139. package/dist/tools/memory.js.map +1 -1
  140. package/dist/tools/stock-data.d.ts +16 -0
  141. package/dist/tools/stock-data.d.ts.map +1 -1
  142. package/dist/tools/stock-data.js +36 -38
  143. package/dist/tools/stock-data.js.map +1 -1
  144. package/dist/tools/web-fetch.d.ts +4 -0
  145. package/dist/tools/web-fetch.d.ts.map +1 -1
  146. package/dist/tools/web-fetch.js +95 -23
  147. package/dist/tools/web-fetch.js.map +1 -1
  148. package/dist/tos-storage.d.ts +45 -0
  149. package/dist/tos-storage.d.ts.map +1 -0
  150. package/dist/tos-storage.js +134 -0
  151. package/dist/tos-storage.js.map +1 -0
  152. package/dist-agent/bundle.cjs +170934 -167547
  153. package/package.json +3 -2
  154. package/dist/agent/applied-credential-signature.d.ts +0 -53
  155. package/dist/agent/applied-credential-signature.d.ts.map +0 -1
  156. package/dist/agent/applied-credential-signature.js +0 -137
  157. package/dist/agent/applied-credential-signature.js.map +0 -1
  158. package/dist/agent/engines/claude/cli-resolver.d.ts +0 -16
  159. package/dist/agent/engines/claude/cli-resolver.d.ts.map +0 -1
  160. package/dist/agent/engines/claude/cli-resolver.js +0 -83
  161. package/dist/agent/engines/claude/cli-resolver.js.map +0 -1
  162. package/dist/agent/engines/claude/session-browser-policy.d.ts +0 -9
  163. package/dist/agent/engines/claude/session-browser-policy.d.ts.map +0 -1
  164. package/dist/agent/engines/claude/session-browser-policy.js +0 -49
  165. package/dist/agent/engines/claude/session-browser-policy.js.map +0 -1
  166. package/dist/agent/engines/claude/session.d.ts +0 -291
  167. package/dist/agent/engines/claude/session.d.ts.map +0 -1
  168. package/dist/agent/engines/claude/session.js +0 -1177
  169. package/dist/agent/engines/claude/session.js.map +0 -1
  170. package/dist/agent/engines/client-factory.d.ts +0 -63
  171. package/dist/agent/engines/client-factory.d.ts.map +0 -1
  172. package/dist/agent/engines/client-factory.js +0 -382
  173. package/dist/agent/engines/client-factory.js.map +0 -1
  174. package/dist/agent/engines/engine.d.ts +0 -8
  175. package/dist/agent/engines/engine.d.ts.map +0 -1
  176. package/dist/agent/engines/engine.js +0 -15
  177. package/dist/agent/engines/engine.js.map +0 -1
  178. package/dist/agent/engines/openai/file-session.d.ts +0 -49
  179. package/dist/agent/engines/openai/file-session.d.ts.map +0 -1
  180. package/dist/agent/engines/openai/file-session.js +0 -108
  181. package/dist/agent/engines/openai/file-session.js.map +0 -1
  182. package/dist/agent/engines/openai/file-tools.d.ts +0 -35
  183. package/dist/agent/engines/openai/file-tools.d.ts.map +0 -1
  184. package/dist/agent/engines/openai/file-tools.js +0 -194
  185. package/dist/agent/engines/openai/file-tools.js.map +0 -1
  186. package/dist/agent/engines/openai/session.d.ts +0 -190
  187. package/dist/agent/engines/openai/session.d.ts.map +0 -1
  188. package/dist/agent/engines/openai/session.js +0 -1066
  189. package/dist/agent/engines/openai/session.js.map +0 -1
  190. package/dist/agent/engines/openai/tools.d.ts +0 -13
  191. package/dist/agent/engines/openai/tools.d.ts.map +0 -1
  192. package/dist/agent/engines/openai/tools.js +0 -248
  193. package/dist/agent/engines/openai/tools.js.map +0 -1
  194. package/dist/agent/engines/session-types.d.ts +0 -146
  195. package/dist/agent/engines/session-types.d.ts.map +0 -1
  196. package/dist/agent/engines/session-types.js +0 -2
  197. package/dist/agent/engines/session-types.js.map +0 -1
  198. package/dist/agent/engines/system-prompt-log.d.ts +0 -9
  199. package/dist/agent/engines/system-prompt-log.d.ts.map +0 -1
  200. package/dist/agent/engines/system-prompt-log.js +0 -46
  201. package/dist/agent/engines/system-prompt-log.js.map +0 -1
  202. package/dist/agent/transcript/transcript-backfill.d.ts +0 -54
  203. package/dist/agent/transcript/transcript-backfill.d.ts.map +0 -1
  204. package/dist/agent/transcript/transcript-backfill.js +0 -604
  205. package/dist/agent/transcript/transcript-backfill.js.map +0 -1
  206. package/dist/agent/transcript/transcript-indexer.d.ts +0 -273
  207. package/dist/agent/transcript/transcript-indexer.d.ts.map +0 -1
  208. package/dist/agent/transcript/transcript-indexer.js +0 -1217
  209. package/dist/agent/transcript/transcript-indexer.js.map +0 -1
  210. package/dist/agent/transcript/transcript-memory-migrations.d.ts +0 -25
  211. package/dist/agent/transcript/transcript-memory-migrations.d.ts.map +0 -1
  212. package/dist/agent/transcript/transcript-memory-migrations.js +0 -87
  213. package/dist/agent/transcript/transcript-memory-migrations.js.map +0 -1
  214. package/dist/agent/transcript-memory-migrations.d.ts +0 -25
  215. package/dist/agent/transcript-memory-migrations.d.ts.map +0 -1
  216. package/dist/agent/transcript-memory-migrations.js +0 -87
  217. package/dist/agent/transcript-memory-migrations.js.map +0 -1
  218. package/dist/agent/tunnel-credential-handler.d.ts +0 -90
  219. package/dist/agent/tunnel-credential-handler.d.ts.map +0 -1
  220. package/dist/agent/tunnel-credential-handler.js +0 -162
  221. package/dist/agent/tunnel-credential-handler.js.map +0 -1
  222. package/dist/agent/usage/usage-backfill-handler.d.ts +0 -18
  223. package/dist/agent/usage/usage-backfill-handler.d.ts.map +0 -1
  224. package/dist/agent/usage/usage-backfill-handler.js +0 -69
  225. package/dist/agent/usage/usage-backfill-handler.js.map +0 -1
  226. package/dist/agent/usage/usage-gate.d.ts +0 -25
  227. package/dist/agent/usage/usage-gate.d.ts.map +0 -1
  228. package/dist/agent/usage/usage-gate.js +0 -83
  229. package/dist/agent/usage/usage-gate.js.map +0 -1
  230. package/dist/agent/usage/usage-handler.d.ts +0 -7
  231. package/dist/agent/usage/usage-handler.d.ts.map +0 -1
  232. package/dist/agent/usage/usage-handler.js +0 -28
  233. package/dist/agent/usage/usage-handler.js.map +0 -1
  234. package/dist/agent/usage/usage-report-builder.d.ts +0 -26
  235. package/dist/agent/usage/usage-report-builder.d.ts.map +0 -1
  236. package/dist/agent/usage/usage-report-builder.js +0 -80
  237. package/dist/agent/usage/usage-report-builder.js.map +0 -1
  238. package/dist/agent/usage/usage-report-queue.d.ts +0 -26
  239. package/dist/agent/usage/usage-report-queue.d.ts.map +0 -1
  240. package/dist/agent/usage/usage-report-queue.js +0 -199
  241. package/dist/agent/usage/usage-report-queue.js.map +0 -1
  242. package/dist/agent/usage/usage-report-types.d.ts +0 -41
  243. package/dist/agent/usage/usage-report-types.d.ts.map +0 -1
  244. package/dist/agent/usage/usage-report-types.js +0 -2
  245. package/dist/agent/usage/usage-report-types.js.map +0 -1
  246. package/dist/agent/usage/usage-reporter.d.ts +0 -31
  247. package/dist/agent/usage/usage-reporter.d.ts.map +0 -1
  248. package/dist/agent/usage/usage-reporter.js +0 -102
  249. package/dist/agent/usage/usage-reporter.js.map +0 -1
  250. package/dist/agent/usage-backfill-handler.d.ts +0 -18
  251. package/dist/agent/usage-backfill-handler.d.ts.map +0 -1
  252. package/dist/agent/usage-backfill-handler.js +0 -69
  253. package/dist/agent/usage-backfill-handler.js.map +0 -1
  254. package/dist/agent/usage-gate.d.ts +0 -25
  255. package/dist/agent/usage-gate.d.ts.map +0 -1
  256. package/dist/agent/usage-gate.js +0 -83
  257. package/dist/agent/usage-gate.js.map +0 -1
  258. package/dist/agent/usage-report-builder.d.ts +0 -26
  259. package/dist/agent/usage-report-builder.d.ts.map +0 -1
  260. package/dist/agent/usage-report-builder.js +0 -80
  261. package/dist/agent/usage-report-builder.js.map +0 -1
  262. package/dist/agent/usage-report-queue.d.ts +0 -26
  263. package/dist/agent/usage-report-queue.d.ts.map +0 -1
  264. package/dist/agent/usage-report-queue.js +0 -199
  265. package/dist/agent/usage-report-queue.js.map +0 -1
  266. package/dist/agent/usage-report-types.d.ts +0 -41
  267. package/dist/agent/usage-report-types.d.ts.map +0 -1
  268. package/dist/agent/usage-report-types.js +0 -2
  269. package/dist/agent/usage-report-types.js.map +0 -1
  270. package/dist/agent/usage-reporter.d.ts +0 -31
  271. package/dist/agent/usage-reporter.d.ts.map +0 -1
  272. package/dist/agent/usage-reporter.js +0 -102
  273. package/dist/agent/usage-reporter.js.map +0 -1
  274. package/dist/agent/wake-cycle-tool-tracker.d.ts +0 -39
  275. package/dist/agent/wake-cycle-tool-tracker.d.ts.map +0 -1
  276. package/dist/agent/wake-cycle-tool-tracker.js +0 -72
  277. package/dist/agent/wake-cycle-tool-tracker.js.map +0 -1
  278. package/dist/billing/payg-handler.d.ts +0 -29
  279. package/dist/billing/payg-handler.d.ts.map +0 -1
  280. package/dist/billing/payg-handler.js +0 -92
  281. package/dist/billing/payg-handler.js.map +0 -1
  282. package/dist/billing/payment-handler.d.ts +0 -24
  283. package/dist/billing/payment-handler.d.ts.map +0 -1
  284. package/dist/billing/payment-handler.js +0 -101
  285. package/dist/billing/payment-handler.js.map +0 -1
  286. package/dist/builtin-skills/catalog/phone-adb-automation/SKILL.md +0 -412
  287. package/dist/builtin-skills/catalog/phone-adb-automation/phone_input.sh +0 -132
  288. package/dist/builtin-skills/catalog/phone-adb-automation/phone_launch.sh +0 -166
  289. package/dist/builtin-skills/catalog/phone-adb-automation/phone_screenshot.sh +0 -87
  290. package/dist/builtin-skills/catalog/phone-adb-automation/phone_security_kbd.py +0 -174
  291. package/dist/builtin-skills/catalog/phone-adb-automation/phone_setup.sh +0 -274
  292. package/dist/builtin-skills/catalog/phone-adb-automation/phone_swipe.sh +0 -111
  293. package/dist/builtin-skills/catalog/phone-adb-automation/phone_tap.sh +0 -87
  294. package/dist/builtin-skills/catalog/phone-adb-automation/phone_ui_parse.py +0 -176
  295. package/dist/builtin-skills/catalog/phone-adb-automation/phone_wake_unlock.sh +0 -67
  296. package/dist/builtin-skills/transcribe-audio/SKILL.md +0 -122
  297. package/dist/data-processing/convert-demo-cli.d.ts +0 -7
  298. package/dist/data-processing/convert-demo-cli.d.ts.map +0 -1
  299. package/dist/data-processing/convert-demo-cli.js +0 -30
  300. package/dist/data-processing/convert-demo-cli.js.map +0 -1
  301. package/dist/data-processing/convert-demo.d.ts +0 -26
  302. package/dist/data-processing/convert-demo.d.ts.map +0 -1
  303. package/dist/data-processing/convert-demo.js +0 -233
  304. package/dist/data-processing/convert-demo.js.map +0 -1
  305. package/dist/obs/rdp/icons/icons/app_windows.svg +0 -4
  306. package/dist/obs/rdp/icons/icons/clip_get.svg +0 -4
  307. package/dist/obs/rdp/icons/icons/clip_send.svg +0 -4
  308. package/dist/obs/rdp/icons/icons/clip_shared.svg +0 -4
  309. package/dist/obs/rdp/icons/icons/clipboard.svg +0 -4
  310. package/dist/obs/rdp/icons/icons/clipboard_shared.svg +0 -4
  311. package/dist/obs/rdp/icons/icons/control.svg +0 -4
  312. package/dist/obs/rdp/icons/icons/desktop.svg +0 -4
  313. package/dist/obs/rdp/icons/icons/display.svg +0 -4
  314. package/dist/obs/rdp/icons/icons/launchpad.svg +0 -4
  315. package/dist/obs/rdp/icons/icons/mission_control.svg +0 -4
  316. package/dist/obs/rdp/icons/icons/screenshot.svg +0 -4
  317. package/dist/obs/rdp/icons/icons/zoom_actual.svg +0 -4
  318. package/dist/obs/rdp/icons/icons/zoom_fit.svg +0 -4
  319. package/dist/obs/rdp/icons/icons/zoom_in.svg +0 -4
  320. package/dist/obs/rdp/icons/icons/zoom_out.svg +0 -4
  321. package/dist/obs/tunnel-telemetry.d.ts +0 -46
  322. package/dist/obs/tunnel-telemetry.d.ts.map +0 -1
  323. package/dist/obs/tunnel-telemetry.js +0 -70
  324. package/dist/obs/tunnel-telemetry.js.map +0 -1
  325. package/dist/onboarding/cloudflared-cert.d.ts +0 -15
  326. package/dist/onboarding/cloudflared-cert.d.ts.map +0 -1
  327. package/dist/onboarding/cloudflared-cert.js +0 -57
  328. package/dist/onboarding/cloudflared-cert.js.map +0 -1
  329. package/dist/onboarding/playwriter-extension.d.ts +0 -19
  330. package/dist/onboarding/playwriter-extension.d.ts.map +0 -1
  331. package/dist/onboarding/playwriter-extension.js +0 -246
  332. package/dist/onboarding/playwriter-extension.js.map +0 -1
  333. package/dist/service/gbox-tun.d.ts +0 -14
  334. package/dist/service/gbox-tun.d.ts.map +0 -1
  335. package/dist/service/gbox-tun.js +0 -315
  336. package/dist/service/gbox-tun.js.map +0 -1
  337. package/dist/skills/installed.d.ts +0 -11
  338. package/dist/skills/installed.d.ts.map +0 -1
  339. package/dist/skills/installed.js +0 -35
  340. package/dist/skills/installed.js.map +0 -1
  341. package/dist/tools/coordinate-resolver.d.ts +0 -30
  342. package/dist/tools/coordinate-resolver.d.ts.map +0 -1
  343. package/dist/tools/coordinate-resolver.js +0 -104
  344. package/dist/tools/coordinate-resolver.js.map +0 -1
  345. package/dist/utils/playwriter-relay.d.ts +0 -9
  346. package/dist/utils/playwriter-relay.d.ts.map +0 -1
  347. package/dist/utils/playwriter-relay.js +0 -77
  348. package/dist/utils/playwriter-relay.js.map +0 -1
  349. package/dist/utils/wechat-monitor.d.ts +0 -21
  350. package/dist/utils/wechat-monitor.d.ts.map +0 -1
  351. package/dist/utils/wechat-monitor.js +0 -88
  352. package/dist/utils/wechat-monitor.js.map +0 -1
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
2
- <title>arrow.up.left.and.down.right.magnifyingglass</title>
3
- <path transform="matrix(0.9082615306639635, 0, 0, 0.9082615306639635, -2.258489609731373, 52.478459199189054)" d="M7.19-28.44C7.19-14.69 18.38-3.50 32.13-3.50C37.56-3.50 42.53-5.25 46.63-8.19L62 7.22C62.72 7.94 63.66 8.28 64.66 8.28C66.78 8.28 68.25 6.69 68.25 4.59C68.25 3.59 67.88 2.69 67.22 2.03L51.94-13.34C55.16-17.53 57.06-22.75 57.06-28.44C57.06-42.19 45.88-53.38 32.13-53.38C18.38-53.38 7.19-42.19 7.19-28.44ZM12.53-28.44C12.53-39.25 21.31-48.03 32.13-48.03C42.94-48.03 51.72-39.25 51.72-28.44C51.72-17.63 42.94-8.84 32.13-8.84C21.31-8.84 12.53-17.63 12.53-28.44ZM23.81-28.69L26.47-31.28L34.84-22.91L32.13-20.22C31.16-19.28 31.47-17.53 33.16-17.53L41.25-17.53C42.38-17.53 43-18.25 43-19.53L43-27.22C43-28.91 41.22-29.13 40.31-28.25L37.69-25.69L29.31-34.09L32-36.72C32.97-37.66 32.66-39.41 30.97-39.41L22.88-39.41C21.75-39.41 21.13-38.69 21.13-37.41L21.13-29.72C21.13-28.03 22.91-27.81 23.81-28.69Z" fill="currentColor"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
2
- <title>plus.magnifyingglass</title>
3
- <path transform="matrix(0.9082615306639635, 0, 0, 0.9082615306639635, -2.258489609731373, 52.478459199189054)" d="M7.19-28.44C7.19-14.69 18.38-3.50 32.13-3.50C37.56-3.50 42.53-5.25 46.63-8.19L62 7.22C62.72 7.94 63.66 8.28 64.66 8.28C66.78 8.28 68.25 6.69 68.25 4.59C68.25 3.59 67.88 2.69 67.22 2.03L51.94-13.34C55.16-17.53 57.06-22.75 57.06-28.44C57.06-42.19 45.88-53.38 32.13-53.38C18.38-53.38 7.19-42.19 7.19-28.44ZM12.53-28.44C12.53-39.25 21.31-48.03 32.13-48.03C42.94-48.03 51.72-39.25 51.72-28.44C51.72-17.63 42.94-8.84 32.13-8.84C21.31-8.84 12.53-17.63 12.53-28.44ZM24.09-26.16L29.84-26.16L29.84-20.41C29.84-19.13 30.84-18.13 32.13-18.13C33.41-18.13 34.44-19.13 34.44-20.41L34.44-26.16L40.16-26.16C41.44-26.16 42.44-27.16 42.44-28.44C42.44-29.72 41.44-30.75 40.16-30.75L34.44-30.75L34.44-36.47C34.44-37.75 33.41-38.75 32.13-38.75C30.84-38.75 29.84-37.75 29.84-36.47L29.84-30.75L24.09-30.75C22.81-30.75 21.81-29.72 21.81-28.44C21.81-27.16 22.81-26.16 24.09-26.16Z" fill="currentColor"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64" width="64" height="64">
2
- <title>minus.magnifyingglass</title>
3
- <path transform="matrix(0.9082615306639635, 0, 0, 0.9082615306639635, -2.258489609731373, 52.478459199189054)" d="M7.19-28.44C7.19-14.69 18.38-3.50 32.13-3.50C37.56-3.50 42.53-5.25 46.63-8.19L62 7.22C62.72 7.94 63.66 8.28 64.66 8.28C66.78 8.28 68.25 6.69 68.25 4.59C68.25 3.59 67.88 2.69 67.22 2.03L51.94-13.34C55.16-17.53 57.06-22.75 57.06-28.44C57.06-42.19 45.88-53.38 32.13-53.38C18.38-53.38 7.19-42.19 7.19-28.44ZM12.53-28.44C12.53-39.25 21.31-48.03 32.13-48.03C42.94-48.03 51.72-39.25 51.72-28.44C51.72-17.63 42.94-8.84 32.13-8.84C21.31-8.84 12.53-17.63 12.53-28.44ZM24.09-26.16L40.16-26.16C41.41-26.16 42.44-27.19 42.44-28.44C42.44-29.69 41.41-30.75 40.16-30.75L24.09-30.75C22.84-30.75 21.78-29.69 21.78-28.44C21.78-27.19 22.84-26.16 24.09-26.16Z" fill="currentColor"/>
4
- </svg>
@@ -1,46 +0,0 @@
1
- export type TunnelRuntimeMode = "legacy" | "profile-managed" | "server-issued";
2
- export type TunnelHealthState = "unknown" | "healthy" | "unhealthy";
3
- export interface TunnelMigrationTelemetry {
4
- status: "not_attempted" | "adopted" | "skipped" | "failed";
5
- reason?: string;
6
- tunnelId?: string;
7
- tunnelName?: string;
8
- hostname?: string;
9
- stoppedLegacyPids?: number[];
10
- survivingLegacyPids?: number[];
11
- observedAt: string;
12
- }
13
- export interface TunnelRuntimeTelemetry {
14
- mode: TunnelRuntimeMode;
15
- source: "legacy-config" | "profile-dir";
16
- tunnelId?: string;
17
- tunnelName?: string;
18
- hostname?: string;
19
- configPath?: string;
20
- credentialsFile?: string;
21
- cloudflaredPid?: number;
22
- observedAt: string;
23
- }
24
- export interface TunnelHealthTelemetry {
25
- status: TunnelHealthState;
26
- url?: string;
27
- checkedAt: string;
28
- detail?: string;
29
- }
30
- export interface TunnelTelemetrySnapshot {
31
- migration: TunnelMigrationTelemetry;
32
- runtime: TunnelRuntimeTelemetry;
33
- health: TunnelHealthTelemetry;
34
- }
35
- export declare function getTunnelTelemetrySnapshot(): TunnelTelemetrySnapshot;
36
- export declare function recordTunnelMigrationTelemetry(update: Omit<TunnelMigrationTelemetry, "observedAt"> & {
37
- observedAt?: string;
38
- }): void;
39
- export declare function recordTunnelRuntimeTelemetry(update: Omit<TunnelRuntimeTelemetry, "observedAt"> & {
40
- observedAt?: string;
41
- }): void;
42
- export declare function recordTunnelHealthTelemetry(update: Omit<TunnelHealthTelemetry, "checkedAt"> & {
43
- checkedAt?: string;
44
- }): void;
45
- export declare function __resetTunnelTelemetryForTests(): void;
46
- //# sourceMappingURL=tunnel-telemetry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tunnel-telemetry.d.ts","sourceRoot":"","sources":["../../src/obs/tunnel-telemetry.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,iBAAiB,GAAG,eAAe,CAAC;AAC/E,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;AAEpE,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,eAAe,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,iBAAiB,CAAC;IACxB,MAAM,EAAE,eAAe,GAAG,aAAa,CAAC;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,wBAAwB,CAAC;IACpC,OAAO,EAAE,sBAAsB,CAAC;IAChC,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAsBD,wBAAgB,0BAA0B,IAAI,uBAAuB,CAMpE;AAED,wBAAgB,8BAA8B,CAC5C,MAAM,EAAE,IAAI,CAAC,wBAAwB,EAAE,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7E,IAAI,CAQN;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,IAAI,CAAC,sBAAsB,EAAE,YAAY,CAAC,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,GAC3E,IAAI,CAQN;AAED,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,IAAI,CAAC,qBAAqB,EAAE,WAAW,CAAC,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GACxE,IAAI,CAQN;AAED,wBAAgB,8BAA8B,IAAI,IAAI,CAgBrD"}
@@ -1,70 +0,0 @@
1
- let current = {
2
- migration: {
3
- status: "not_attempted",
4
- observedAt: new Date(0).toISOString(),
5
- },
6
- runtime: {
7
- mode: "legacy",
8
- source: "legacy-config",
9
- observedAt: new Date(0).toISOString(),
10
- },
11
- health: {
12
- status: "unknown",
13
- checkedAt: new Date(0).toISOString(),
14
- },
15
- };
16
- function nowIso() {
17
- return new Date().toISOString();
18
- }
19
- export function getTunnelTelemetrySnapshot() {
20
- return {
21
- migration: { ...current.migration },
22
- runtime: { ...current.runtime },
23
- health: { ...current.health },
24
- };
25
- }
26
- export function recordTunnelMigrationTelemetry(update) {
27
- current = {
28
- ...current,
29
- migration: {
30
- ...update,
31
- observedAt: update.observedAt ?? nowIso(),
32
- },
33
- };
34
- }
35
- export function recordTunnelRuntimeTelemetry(update) {
36
- current = {
37
- ...current,
38
- runtime: {
39
- ...update,
40
- observedAt: update.observedAt ?? nowIso(),
41
- },
42
- };
43
- }
44
- export function recordTunnelHealthTelemetry(update) {
45
- current = {
46
- ...current,
47
- health: {
48
- ...update,
49
- checkedAt: update.checkedAt ?? nowIso(),
50
- },
51
- };
52
- }
53
- export function __resetTunnelTelemetryForTests() {
54
- current = {
55
- migration: {
56
- status: "not_attempted",
57
- observedAt: new Date(0).toISOString(),
58
- },
59
- runtime: {
60
- mode: "legacy",
61
- source: "legacy-config",
62
- observedAt: new Date(0).toISOString(),
63
- },
64
- health: {
65
- status: "unknown",
66
- checkedAt: new Date(0).toISOString(),
67
- },
68
- };
69
- }
70
- //# sourceMappingURL=tunnel-telemetry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tunnel-telemetry.js","sourceRoot":"","sources":["../../src/obs/tunnel-telemetry.ts"],"names":[],"mappings":"AAuCA,IAAI,OAAO,GAA4B;IACrC,SAAS,EAAE;QACT,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;KACtC;IACD,OAAO,EAAE;QACP,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;KACtC;IACD,MAAM,EAAE;QACN,MAAM,EAAE,SAAS;QACjB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;KACrC;CACF,CAAC;AAEF,SAAS,MAAM;IACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO;QACL,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,SAAS,EAAE;QACnC,OAAO,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE;QAC/B,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE;KAC9B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,MAA8E;IAE9E,OAAO,GAAG;QACR,GAAG,OAAO;QACV,SAAS,EAAE;YACT,GAAG,MAAM;YACT,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM,EAAE;SAC1C;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,MAA4E;IAE5E,OAAO,GAAG;QACR,GAAG,OAAO;QACV,OAAO,EAAE;YACP,GAAG,MAAM;YACT,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,MAAM,EAAE;SAC1C;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,MAAyE;IAEzE,OAAO,GAAG;QACR,GAAG,OAAO;QACV,MAAM,EAAE;YACN,GAAG,MAAM;YACT,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM,EAAE;SACxC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC5C,OAAO,GAAG;QACR,SAAS,EAAE;YACT,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;SACtC;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,eAAe;YACvB,UAAU,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;SACtC;QACD,MAAM,EAAE;YACN,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;SACrC;KACF,CAAC;AACJ,CAAC"}
@@ -1,15 +0,0 @@
1
- export declare function getCloudflaredCertPemPath(): string;
2
- /**
3
- * LEGACY fallback: install a shared `~/.cloudflared/cert.pem` from a local
4
- * path or HTTPS URL. This is used by install-time tunnel provisioning to
5
- * call `cloudflared tunnel create` / `tunnel route dns`, which require the
6
- * cert to be present on disk.
7
- *
8
- * With server-side tunnel provisioning (heartbeat runtime-credentials
9
- * channel) the agent no longer needs this cert — it receives the tunnel id
10
- * plus `{UUID}.json` credentials and writes them into the profile tunnel
11
- * dir instead. Callers should treat failures here as non-fatal when they
12
- * have a runtime credential already materialised.
13
- */
14
- export declare function installCloudflaredCertPem(source: string): Promise<string>;
15
- //# sourceMappingURL=cloudflared-cert.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloudflared-cert.d.ts","sourceRoot":"","sources":["../../src/onboarding/cloudflared-cert.ts"],"names":[],"mappings":"AAsBA,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,yBAAyB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA2B/E"}
@@ -1,57 +0,0 @@
1
- import fs from "node:fs";
2
- import os from "node:os";
3
- import path from "node:path";
4
- const CLOUDFLARED_DIR = path.join(os.homedir(), ".cloudflared");
5
- const CERT_PEM_PATH = path.join(CLOUDFLARED_DIR, "cert.pem");
6
- function isRemoteSource(source) {
7
- return /^https?:\/\//i.test(source);
8
- }
9
- function resolveLocalSourcePath(source) {
10
- const trimmed = source.trim();
11
- if (trimmed === "~") {
12
- return os.homedir();
13
- }
14
- if (trimmed.startsWith("~/")) {
15
- return path.join(os.homedir(), trimmed.slice(2));
16
- }
17
- return trimmed;
18
- }
19
- export function getCloudflaredCertPemPath() {
20
- return CERT_PEM_PATH;
21
- }
22
- /**
23
- * LEGACY fallback: install a shared `~/.cloudflared/cert.pem` from a local
24
- * path or HTTPS URL. This is used by install-time tunnel provisioning to
25
- * call `cloudflared tunnel create` / `tunnel route dns`, which require the
26
- * cert to be present on disk.
27
- *
28
- * With server-side tunnel provisioning (heartbeat runtime-credentials
29
- * channel) the agent no longer needs this cert — it receives the tunnel id
30
- * plus `{UUID}.json` credentials and writes them into the profile tunnel
31
- * dir instead. Callers should treat failures here as non-fatal when they
32
- * have a runtime credential already materialised.
33
- */
34
- export async function installCloudflaredCertPem(source) {
35
- if (!source.trim()) {
36
- throw new Error("cloudflared.certPemSource is required when cloudflared is enabled");
37
- }
38
- fs.mkdirSync(CLOUDFLARED_DIR, { recursive: true });
39
- if (isRemoteSource(source)) {
40
- const response = await fetch(source, {
41
- signal: AbortSignal.timeout(30_000),
42
- });
43
- if (!response.ok) {
44
- throw new Error(`Failed to fetch cert.pem: HTTP ${response.status}`);
45
- }
46
- const content = Buffer.from(await response.arrayBuffer());
47
- fs.writeFileSync(CERT_PEM_PATH, content);
48
- return CERT_PEM_PATH;
49
- }
50
- const localSourcePath = resolveLocalSourcePath(source);
51
- if (!fs.existsSync(localSourcePath)) {
52
- throw new Error(`cloudflared cert.pem source file not found: ${source}`);
53
- }
54
- fs.copyFileSync(localSourcePath, CERT_PEM_PATH);
55
- return CERT_PEM_PATH;
56
- }
57
- //# sourceMappingURL=cloudflared-cert.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cloudflared-cert.js","sourceRoot":"","sources":["../../src/onboarding/cloudflared-cert.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;AAChE,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;AAE7D,SAAS,cAAc,CAAC,MAAc;IACpC,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,sBAAsB,CAAC,MAAc;IAC5C,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QACpB,OAAO,EAAE,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,yBAAyB;IACvC,OAAO,aAAa,CAAC;AACvB,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,MAAc;IAC5D,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEnD,IAAI,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,MAAM,EAAE;YACnC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACpC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,kCAAkC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC1D,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,eAAe,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAEvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,+CAA+C,MAAM,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;IAChD,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -1,19 +0,0 @@
1
- export declare function getPlaywriterExtensionInstallations(opts?: {
2
- includeExternalConfig?: boolean;
3
- }): string[];
4
- /**
5
- * Returns true when any of the entries in `removed` describe a mutation against
6
- * a Chrome managed-policy plist (path label or surgical-key label like
7
- * `<plist>:ExtensionSettings/<id>`). Used to decide whether the caller should
8
- * tell the user to fully restart Chrome for the policy change to take effect.
9
- */
10
- export declare function hasPolicyPlistMutations(removed: readonly string[]): boolean;
11
- export declare function cleanupPlaywriterExtensionOutsidePlaywrightProfile(): string[];
12
- export declare function isPlaywriterExtensionInstalled(): {
13
- installed: boolean;
14
- profiles: string[];
15
- };
16
- export declare function isPlaywriterPolicyConfigured(): boolean;
17
- export declare function ensureChromeRunningForPlaywriter(): void;
18
- export declare function installPlaywriterExtension(): boolean;
19
- //# sourceMappingURL=playwriter-extension.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"playwriter-extension.d.ts","sourceRoot":"","sources":["../../src/onboarding/playwriter-extension.ts"],"names":[],"mappings":"AAkBA,wBAAgB,mCAAmC,CACjD,IAAI,GAAE;IAAE,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7C,MAAM,EAAE,CAoCV;AAiCD;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAE3E;AA0ED,wBAAgB,kDAAkD,IAAI,MAAM,EAAE,CAgD7E;AAED,wBAAgB,8BAA8B,IAAI;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAI3F;AAED,wBAAgB,4BAA4B,IAAI,OAAO,CAEtD;AAED,wBAAgB,gCAAgC,IAAI,IAAI,CAEvD;AAYD,wBAAgB,0BAA0B,IAAI,OAAO,CAWpD"}
@@ -1,246 +0,0 @@
1
- import { execSync } from "node:child_process";
2
- import { existsSync, mkdirSync, readdirSync, rmSync, writeFileSync } from "node:fs";
3
- import { homedir } from "node:os";
4
- import { join } from "node:path";
5
- import { launchPlaywriterProfileChrome } from "../agent/browser-launcher.js";
6
- import { getPlaywrightProfileDir } from "../config/index.js";
7
- const PLAYWRITER_EXTENSION_ID = "jfeammnjpkecdekppnclgkkffahnhfhe";
8
- const PLAYWRITER_UPDATE_URL = "https://clients2.google.com/service/update2/crx";
9
- const LEGACY_PLAYWRITER_POLICY_PLISTS = [
10
- "/Library/Managed Preferences/com.google.Chrome.plist",
11
- "/Library/Preferences/com.google.Chrome.plist",
12
- ];
13
- function getChromeUserDataDir() {
14
- return join(homedir(), "Library/Application Support/Google/Chrome");
15
- }
16
- export function getPlaywriterExtensionInstallations(opts = {}) {
17
- const installations = [];
18
- const profileRoots = [
19
- { label: ".playwright-mcp", dir: getPlaywrightProfileDir() },
20
- { label: "Chrome", dir: getChromeUserDataDir() },
21
- ];
22
- for (const { label, dir } of profileRoots) {
23
- try {
24
- if (!existsSync(dir))
25
- continue;
26
- if (existsSync(join(dir, "Extensions", PLAYWRITER_EXTENSION_ID))) {
27
- installations.push(label);
28
- }
29
- if (opts.includeExternalConfig && existsSync(join(dir, "External Extensions", `${PLAYWRITER_EXTENSION_ID}.json`))) {
30
- installations.push(`${label}/External Extensions`);
31
- }
32
- for (const entry of readdirSync(dir)) {
33
- if (entry !== "Default" && !entry.startsWith("Profile "))
34
- continue;
35
- if (existsSync(join(dir, entry, "Extensions", PLAYWRITER_EXTENSION_ID))) {
36
- installations.push(`${label}/${entry}`);
37
- }
38
- if (opts.includeExternalConfig
39
- && existsSync(join(dir, entry, "External Extensions", `${PLAYWRITER_EXTENSION_ID}.json`))) {
40
- installations.push(`${label}/${entry}/External Extensions`);
41
- }
42
- }
43
- }
44
- catch {
45
- // Best-effort scan; callers use this for safety checks and status text.
46
- }
47
- }
48
- return [...new Set(installations)];
49
- }
50
- function removePath(path) {
51
- if (!existsSync(path))
52
- return false;
53
- rmSync(path, { recursive: true, force: true });
54
- return true;
55
- }
56
- function removePathWithSudo(path) {
57
- if (!existsSync(path))
58
- return false;
59
- execSync(`sudo rm -rf "${path}"`, { stdio: "pipe", timeout: 10_000 });
60
- return true;
61
- }
62
- /**
63
- * After mutating a Chrome managed-policy plist on disk, macOS still serves the
64
- * old values from the cfprefsd cache. Restarting cfprefsd in both scopes makes
65
- * the new (cleared) policy visible to subsequent Chrome launches. Best-effort:
66
- * if sudo is unavailable or pkill fails, we just continue.
67
- */
68
- function flushChromePolicyCache() {
69
- try {
70
- execSync("sudo killall cfprefsd", { stdio: "ignore", timeout: 5_000 });
71
- }
72
- catch {
73
- // sudo not available / no system cfprefsd — fall through.
74
- }
75
- try {
76
- execSync("killall cfprefsd", { stdio: "ignore", timeout: 5_000 });
77
- }
78
- catch {
79
- // user cfprefsd may not be running — ignore.
80
- }
81
- }
82
- /**
83
- * Returns true when any of the entries in `removed` describe a mutation against
84
- * a Chrome managed-policy plist (path label or surgical-key label like
85
- * `<plist>:ExtensionSettings/<id>`). Used to decide whether the caller should
86
- * tell the user to fully restart Chrome for the policy change to take effect.
87
- */
88
- export function hasPolicyPlistMutations(removed) {
89
- return removed.some((entry) => entry.includes("com.google.Chrome.plist"));
90
- }
91
- function getConsoleUsername() {
92
- const username = (process.env.SUDO_USER ?? process.env.USER ?? "").trim()
93
- || execSync("id -un", { encoding: "utf-8" }).trim();
94
- return username === "root" ? "" : username;
95
- }
96
- /**
97
- * Surgically prune Playwriter-related entries from a Chrome managed-policy plist
98
- * without touching unrelated MDM/policy keys. Returns the labels of mutations
99
- * actually performed (caller-friendly, e.g. "<plist>:ExtensionSettings/<id>").
100
- *
101
- * Strategy:
102
- * 1. Use PlistBuddy to list each key. If the entry mentions PLAYWRITER_EXTENSION_ID,
103
- * delete just that nested entry (array element or dict key).
104
- * 2. After scrubbing, if the plist becomes effectively empty (no top-level keys),
105
- * delete the whole file. Otherwise leave other policies untouched.
106
- */
107
- function scrubPlaywriterFromPolicyPlist(plistPath) {
108
- const mutations = [];
109
- if (!existsSync(plistPath))
110
- return mutations;
111
- const run = (cmd) => {
112
- try {
113
- const stdout = execSync(cmd, { stdio: ["ignore", "pipe", "pipe"], timeout: 10_000, encoding: "utf-8" });
114
- return { code: 0, stdout };
115
- }
116
- catch (err) {
117
- const e = err;
118
- const out = typeof e.stdout === "string" ? e.stdout : e.stdout?.toString("utf-8") ?? "";
119
- return { code: e.status ?? 1, stdout: out };
120
- }
121
- };
122
- // Allowlist / forcelist: arrays of strings like "<id>;<update_url>" or "<id>".
123
- for (const key of ["ExtensionInstallForcelist", "ExtensionInstallAllowlist"]) {
124
- const list = run(`/usr/libexec/PlistBuddy -c "Print :${key}" "${plistPath}"`);
125
- if (list.code !== 0)
126
- continue;
127
- // Walk indices high-to-low so deletions don't shift remaining ones.
128
- const lines = list.stdout.split("\n");
129
- const indices = [];
130
- let idx = 0;
131
- for (const line of lines) {
132
- if (line.includes(PLAYWRITER_EXTENSION_ID))
133
- indices.push(idx);
134
- // PlistBuddy prints one element per line inside the array body; ignore wrappers.
135
- if (/^\s{4}/.test(line))
136
- idx += 1;
137
- }
138
- for (const i of indices.reverse()) {
139
- const del = run(`sudo /usr/libexec/PlistBuddy -c "Delete :${key}:${i}" "${plistPath}"`);
140
- if (del.code === 0)
141
- mutations.push(`${plistPath}:${key}[${i}]`);
142
- }
143
- }
144
- // ExtensionSettings: dict keyed by extension id.
145
- {
146
- const probe = run(`/usr/libexec/PlistBuddy -c "Print :ExtensionSettings:${PLAYWRITER_EXTENSION_ID}" "${plistPath}"`);
147
- if (probe.code === 0) {
148
- const del = run(`sudo /usr/libexec/PlistBuddy -c "Delete :ExtensionSettings:${PLAYWRITER_EXTENSION_ID}" "${plistPath}"`);
149
- if (del.code === 0)
150
- mutations.push(`${plistPath}:ExtensionSettings/${PLAYWRITER_EXTENSION_ID}`);
151
- }
152
- }
153
- // If plist is now empty, remove the whole file (sudo); otherwise leave it.
154
- const top = run(`/usr/libexec/PlistBuddy -c "Print" "${plistPath}"`);
155
- const trimmed = top.stdout.trim();
156
- // PlistBuddy prints "Dict {\n}" for an empty dict.
157
- const isEmpty = top.code === 0 && /^Dict\s*\{\s*\}$/.test(trimmed);
158
- if (isEmpty && removePathWithSudo(plistPath)) {
159
- mutations.push(plistPath);
160
- }
161
- return mutations;
162
- }
163
- export function cleanupPlaywriterExtensionOutsidePlaywrightProfile() {
164
- const removed = [];
165
- const chromeDataDir = getChromeUserDataDir();
166
- try {
167
- if (existsSync(chromeDataDir)) {
168
- const externalJson = join(chromeDataDir, "External Extensions", `${PLAYWRITER_EXTENSION_ID}.json`);
169
- if (removePath(externalJson))
170
- removed.push("Chrome/External Extensions");
171
- for (const entry of readdirSync(chromeDataDir)) {
172
- if (entry !== "Default" && !entry.startsWith("Profile "))
173
- continue;
174
- const extensionDir = join(chromeDataDir, entry, "Extensions", PLAYWRITER_EXTENSION_ID);
175
- const profileExternalJson = join(chromeDataDir, entry, "External Extensions", `${PLAYWRITER_EXTENSION_ID}.json`);
176
- if (removePath(extensionDir))
177
- removed.push(entry);
178
- if (removePath(profileExternalJson))
179
- removed.push(`${entry}/External Extensions`);
180
- }
181
- }
182
- }
183
- catch {
184
- // Best-effort cleanup; callers continue by ensuring the dedicated profile.
185
- }
186
- let policyMutated = false;
187
- try {
188
- const candidatePlists = [...LEGACY_PLAYWRITER_POLICY_PLISTS];
189
- const username = getConsoleUsername();
190
- if (username) {
191
- candidatePlists.push(`/Library/Managed Preferences/${username}/com.google.Chrome.plist`);
192
- }
193
- for (const plistPath of candidatePlists) {
194
- try {
195
- const mutations = scrubPlaywriterFromPolicyPlist(plistPath);
196
- if (mutations.length > 0)
197
- policyMutated = true;
198
- for (const m of mutations)
199
- removed.push(m);
200
- }
201
- catch {
202
- // PlistBuddy or sudo may be unavailable; fall through to next plist.
203
- }
204
- }
205
- }
206
- catch {
207
- // Sudo may be unavailable; the dedicated profile install still proceeds.
208
- }
209
- // If we changed any Chrome policy plist, drop the cfprefsd cache so the next
210
- // Chrome launch sees the cleared policy. Without this, `chrome://policy`
211
- // continues to advertise the (now-deleted) force-install entry until the
212
- // machine is rebooted, which surprised us during reconfigure testing.
213
- if (policyMutated)
214
- flushChromePolicyCache();
215
- return removed;
216
- }
217
- export function isPlaywriterExtensionInstalled() {
218
- const profiles = getPlaywriterExtensionInstallations()
219
- .filter((profile) => profile === ".playwright-mcp" || profile.startsWith(".playwright-mcp/"));
220
- return { installed: profiles.length > 0, profiles };
221
- }
222
- export function isPlaywriterPolicyConfigured() {
223
- return existsSync(join(getPlaywrightProfileDir(), "External Extensions", `${PLAYWRITER_EXTENSION_ID}.json`));
224
- }
225
- export function ensureChromeRunningForPlaywriter() {
226
- launchPlaywriterProfileChrome();
227
- }
228
- function writePlaywriterExternalExtensionJson(extDir) {
229
- const jsonPath = join(extDir, `${PLAYWRITER_EXTENSION_ID}.json`);
230
- mkdirSync(extDir, { recursive: true });
231
- writeFileSync(jsonPath, JSON.stringify({ external_update_url: PLAYWRITER_UPDATE_URL }, null, 2), "utf-8");
232
- }
233
- export function installPlaywriterExtension() {
234
- try {
235
- writePlaywriterExternalExtensionJson(join(getPlaywrightProfileDir(), "External Extensions"));
236
- // Note: callers are responsible for launching Chrome with the dedicated
237
- // profile (e.g., via `ensureChromeRunningForPlaywriter()`). Keeping this
238
- // helper file-only avoids surprising side effects when used as a building
239
- // block for status checks or composite flows.
240
- return true;
241
- }
242
- catch {
243
- return false;
244
- }
245
- }
246
- //# sourceMappingURL=playwriter-extension.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"playwriter-extension.js","sourceRoot":"","sources":["../../src/onboarding/playwriter-extension.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- interface GboxTunServiceOptions {
2
- server: string;
3
- apikey: string;
4
- }
5
- export declare function downloadGboxTunBinary(_server: string): Promise<void>;
6
- export declare function installGboxTunService(options: GboxTunServiceOptions): Promise<void>;
7
- export declare function uninstallGboxTunService(): void;
8
- export declare function printGboxTunServiceStatus(): void;
9
- export declare function startGboxTun(options: GboxTunServiceOptions & {
10
- foreground: boolean;
11
- }): Promise<void>;
12
- export declare function stopGboxTun(): void;
13
- export {};
14
- //# sourceMappingURL=gbox-tun.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gbox-tun.d.ts","sourceRoot":"","sources":["../../src/service/gbox-tun.ts"],"names":[],"mappings":"AAoCA,UAAU,qBAAqB;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAoDD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB1E;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwDzF;AAED,wBAAgB,uBAAuB,IAAI,IAAI,CAwC9C;AAED,wBAAgB,yBAAyB,IAAI,IAAI,CA0ChD;AAED,wBAAsB,YAAY,CAAC,OAAO,EAAE,qBAAqB,GAAG;IAAE,UAAU,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAkF1G;AAED,wBAAgB,WAAW,IAAI,IAAI,CA2BlC"}