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.
- package/dist/agent/backup-uploader.d.ts +44 -0
- package/dist/agent/backup-uploader.d.ts.map +1 -0
- package/dist/agent/backup-uploader.js +83 -0
- package/dist/agent/backup-uploader.js.map +1 -0
- package/dist/agent/backup.d.ts +7 -1
- package/dist/agent/backup.d.ts.map +1 -1
- package/dist/agent/backup.js +337 -52
- package/dist/agent/backup.js.map +1 -1
- package/dist/agent/command-handlers.d.ts +2 -0
- package/dist/agent/command-handlers.d.ts.map +1 -1
- package/dist/agent/command-handlers.js +29 -3
- package/dist/agent/command-handlers.js.map +1 -1
- package/dist/agent/context.d.ts +2 -0
- package/dist/agent/context.d.ts.map +1 -1
- package/dist/agent/context.js +11 -1
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/data-collector.d.ts.map +1 -1
- package/dist/agent/data-collector.js +23 -38
- package/dist/agent/data-collector.js.map +1 -1
- package/dist/agent/loop.d.ts +3 -0
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +48 -0
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/message-format.d.ts.map +1 -1
- package/dist/agent/message-format.js +3 -0
- package/dist/agent/message-format.js.map +1 -1
- package/dist/agent/status.d.ts.map +1 -1
- package/dist/agent/status.js +2 -1
- package/dist/agent/status.js.map +1 -1
- package/dist/backup.d.ts +4 -1
- package/dist/backup.d.ts.map +1 -1
- package/dist/backup.js +86 -3
- package/dist/backup.js.map +1 -1
- package/dist/calendar/google-calendar.d.ts +2 -0
- package/dist/calendar/google-calendar.d.ts.map +1 -1
- package/dist/calendar/google-calendar.js +3 -0
- package/dist/calendar/google-calendar.js.map +1 -1
- package/dist/channels/interface.d.ts +9 -0
- package/dist/channels/interface.d.ts.map +1 -1
- package/dist/channels/manager.d.ts +7 -1
- package/dist/channels/manager.d.ts.map +1 -1
- package/dist/channels/manager.js +12 -0
- package/dist/channels/manager.js.map +1 -1
- package/dist/channels/telegram.d.ts.map +1 -1
- package/dist/channels/telegram.js +5 -0
- package/dist/channels/telegram.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +42 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/config/types.d.ts +9 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +6 -0
- package/dist/config/types.js.map +1 -1
- package/dist/drive/google-drive.d.ts +1 -0
- package/dist/drive/google-drive.d.ts.map +1 -1
- package/dist/drive/google-drive.js +5 -0
- package/dist/drive/google-drive.js.map +1 -1
- package/dist/i18n/messages.d.ts +4 -0
- package/dist/i18n/messages.d.ts.map +1 -1
- package/dist/i18n/messages.js +7 -2
- package/dist/i18n/messages.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/obs/server.d.ts +7 -0
- package/dist/obs/server.d.ts.map +1 -1
- package/dist/obs/server.js +22 -0
- package/dist/obs/server.js.map +1 -1
- package/dist/onboarding/bot-profile.d.ts.map +1 -1
- package/dist/onboarding/bot-profile.js +1 -0
- package/dist/onboarding/bot-profile.js.map +1 -1
- package/dist/onboarding/index.d.ts.map +1 -1
- package/dist/onboarding/index.js +5 -0
- package/dist/onboarding/index.js.map +1 -1
- package/dist/onboarding/prepare-mac.d.ts +1 -0
- package/dist/onboarding/prepare-mac.d.ts.map +1 -1
- package/dist/onboarding/prepare-mac.js +32 -15
- package/dist/onboarding/prepare-mac.js.map +1 -1
- package/dist/onboarding/setup-shared.d.ts.map +1 -1
- package/dist/onboarding/setup-shared.js +6 -0
- package/dist/onboarding/setup-shared.js.map +1 -1
- package/dist/onboarding/setup-steps.d.ts.map +1 -1
- package/dist/onboarding/setup-steps.js +8 -0
- package/dist/onboarding/setup-steps.js.map +1 -1
- package/dist/realtime/agent-bridge.d.ts +7 -0
- package/dist/realtime/agent-bridge.d.ts.map +1 -0
- package/dist/realtime/agent-bridge.js +31 -0
- package/dist/realtime/agent-bridge.js.map +1 -0
- package/dist/realtime/assets/index.html +1058 -0
- package/dist/realtime/assets/samples/alloy.mp3 +0 -0
- package/dist/realtime/assets/samples/ash.mp3 +0 -0
- package/dist/realtime/assets/samples/ballad.mp3 +0 -0
- package/dist/realtime/assets/samples/cedar.mp3 +0 -0
- package/dist/realtime/assets/samples/coral.mp3 +0 -0
- package/dist/realtime/assets/samples/echo.mp3 +0 -0
- package/dist/realtime/assets/samples/marin.mp3 +0 -0
- package/dist/realtime/assets/samples/sage.mp3 +0 -0
- package/dist/realtime/assets/samples/shimmer.mp3 +0 -0
- package/dist/realtime/assets/samples/verse.mp3 +0 -0
- package/dist/realtime/context.d.ts +14 -0
- package/dist/realtime/context.d.ts.map +1 -0
- package/dist/realtime/context.js +153 -0
- package/dist/realtime/context.js.map +1 -0
- package/dist/realtime/http-helpers.d.ts +5 -0
- package/dist/realtime/http-helpers.d.ts.map +1 -0
- package/dist/realtime/http-helpers.js +29 -0
- package/dist/realtime/http-helpers.js.map +1 -0
- package/dist/realtime/index.d.ts +62 -0
- package/dist/realtime/index.d.ts.map +1 -0
- package/dist/realtime/index.js +94 -0
- package/dist/realtime/index.js.map +1 -0
- package/dist/realtime/server.d.ts +6 -0
- package/dist/realtime/server.d.ts.map +1 -0
- package/dist/realtime/server.js +476 -0
- package/dist/realtime/server.js.map +1 -0
- package/dist/realtime/telegram-auth.d.ts +2 -0
- package/dist/realtime/telegram-auth.d.ts.map +1 -0
- package/dist/realtime/telegram-auth.js +24 -0
- package/dist/realtime/telegram-auth.js.map +1 -0
- package/dist/realtime/tools.d.ts +829 -0
- package/dist/realtime/tools.d.ts.map +1 -0
- package/dist/realtime/tools.js +630 -0
- package/dist/realtime/tools.js.map +1 -0
- package/dist/realtime/types.d.ts +62 -0
- package/dist/realtime/types.d.ts.map +1 -0
- package/dist/realtime/types.js +3 -0
- package/dist/realtime/types.js.map +1 -0
- package/dist/realtime/voice-summarizer.d.ts +4 -0
- package/dist/realtime/voice-summarizer.d.ts.map +1 -0
- package/dist/realtime/voice-summarizer.js +129 -0
- package/dist/realtime/voice-summarizer.js.map +1 -0
- package/dist/restore.d.ts +5 -0
- package/dist/restore.d.ts.map +1 -1
- package/dist/restore.js +132 -16
- package/dist/restore.js.map +1 -1
- package/dist/tools/email.d.ts +1 -1
- package/dist/tools/memory.d.ts +13 -0
- package/dist/tools/memory.d.ts.map +1 -1
- package/dist/tools/memory.js +43 -43
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/stock-data.d.ts +16 -0
- package/dist/tools/stock-data.d.ts.map +1 -1
- package/dist/tools/stock-data.js +36 -38
- package/dist/tools/stock-data.js.map +1 -1
- package/dist/tools/web-fetch.d.ts +4 -0
- package/dist/tools/web-fetch.d.ts.map +1 -1
- package/dist/tools/web-fetch.js +95 -23
- package/dist/tools/web-fetch.js.map +1 -1
- package/dist/tos-storage.d.ts +45 -0
- package/dist/tos-storage.d.ts.map +1 -0
- package/dist/tos-storage.js +134 -0
- package/dist/tos-storage.js.map +1 -0
- package/dist-agent/bundle.cjs +170934 -167547
- package/package.json +3 -2
- package/dist/agent/applied-credential-signature.d.ts +0 -53
- package/dist/agent/applied-credential-signature.d.ts.map +0 -1
- package/dist/agent/applied-credential-signature.js +0 -137
- package/dist/agent/applied-credential-signature.js.map +0 -1
- package/dist/agent/engines/claude/cli-resolver.d.ts +0 -16
- package/dist/agent/engines/claude/cli-resolver.d.ts.map +0 -1
- package/dist/agent/engines/claude/cli-resolver.js +0 -83
- package/dist/agent/engines/claude/cli-resolver.js.map +0 -1
- package/dist/agent/engines/claude/session-browser-policy.d.ts +0 -9
- package/dist/agent/engines/claude/session-browser-policy.d.ts.map +0 -1
- package/dist/agent/engines/claude/session-browser-policy.js +0 -49
- package/dist/agent/engines/claude/session-browser-policy.js.map +0 -1
- package/dist/agent/engines/claude/session.d.ts +0 -291
- package/dist/agent/engines/claude/session.d.ts.map +0 -1
- package/dist/agent/engines/claude/session.js +0 -1177
- package/dist/agent/engines/claude/session.js.map +0 -1
- package/dist/agent/engines/client-factory.d.ts +0 -63
- package/dist/agent/engines/client-factory.d.ts.map +0 -1
- package/dist/agent/engines/client-factory.js +0 -382
- package/dist/agent/engines/client-factory.js.map +0 -1
- package/dist/agent/engines/engine.d.ts +0 -8
- package/dist/agent/engines/engine.d.ts.map +0 -1
- package/dist/agent/engines/engine.js +0 -15
- package/dist/agent/engines/engine.js.map +0 -1
- package/dist/agent/engines/openai/file-session.d.ts +0 -49
- package/dist/agent/engines/openai/file-session.d.ts.map +0 -1
- package/dist/agent/engines/openai/file-session.js +0 -108
- package/dist/agent/engines/openai/file-session.js.map +0 -1
- package/dist/agent/engines/openai/file-tools.d.ts +0 -35
- package/dist/agent/engines/openai/file-tools.d.ts.map +0 -1
- package/dist/agent/engines/openai/file-tools.js +0 -194
- package/dist/agent/engines/openai/file-tools.js.map +0 -1
- package/dist/agent/engines/openai/session.d.ts +0 -190
- package/dist/agent/engines/openai/session.d.ts.map +0 -1
- package/dist/agent/engines/openai/session.js +0 -1066
- package/dist/agent/engines/openai/session.js.map +0 -1
- package/dist/agent/engines/openai/tools.d.ts +0 -13
- package/dist/agent/engines/openai/tools.d.ts.map +0 -1
- package/dist/agent/engines/openai/tools.js +0 -248
- package/dist/agent/engines/openai/tools.js.map +0 -1
- package/dist/agent/engines/session-types.d.ts +0 -146
- package/dist/agent/engines/session-types.d.ts.map +0 -1
- package/dist/agent/engines/session-types.js +0 -2
- package/dist/agent/engines/session-types.js.map +0 -1
- package/dist/agent/engines/system-prompt-log.d.ts +0 -9
- package/dist/agent/engines/system-prompt-log.d.ts.map +0 -1
- package/dist/agent/engines/system-prompt-log.js +0 -46
- package/dist/agent/engines/system-prompt-log.js.map +0 -1
- package/dist/agent/transcript/transcript-backfill.d.ts +0 -54
- package/dist/agent/transcript/transcript-backfill.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-backfill.js +0 -604
- package/dist/agent/transcript/transcript-backfill.js.map +0 -1
- package/dist/agent/transcript/transcript-indexer.d.ts +0 -273
- package/dist/agent/transcript/transcript-indexer.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-indexer.js +0 -1217
- package/dist/agent/transcript/transcript-indexer.js.map +0 -1
- package/dist/agent/transcript/transcript-memory-migrations.d.ts +0 -25
- package/dist/agent/transcript/transcript-memory-migrations.d.ts.map +0 -1
- package/dist/agent/transcript/transcript-memory-migrations.js +0 -87
- package/dist/agent/transcript/transcript-memory-migrations.js.map +0 -1
- package/dist/agent/transcript-memory-migrations.d.ts +0 -25
- package/dist/agent/transcript-memory-migrations.d.ts.map +0 -1
- package/dist/agent/transcript-memory-migrations.js +0 -87
- package/dist/agent/transcript-memory-migrations.js.map +0 -1
- package/dist/agent/tunnel-credential-handler.d.ts +0 -90
- package/dist/agent/tunnel-credential-handler.d.ts.map +0 -1
- package/dist/agent/tunnel-credential-handler.js +0 -162
- package/dist/agent/tunnel-credential-handler.js.map +0 -1
- package/dist/agent/usage/usage-backfill-handler.d.ts +0 -18
- package/dist/agent/usage/usage-backfill-handler.d.ts.map +0 -1
- package/dist/agent/usage/usage-backfill-handler.js +0 -69
- package/dist/agent/usage/usage-backfill-handler.js.map +0 -1
- package/dist/agent/usage/usage-gate.d.ts +0 -25
- package/dist/agent/usage/usage-gate.d.ts.map +0 -1
- package/dist/agent/usage/usage-gate.js +0 -83
- package/dist/agent/usage/usage-gate.js.map +0 -1
- package/dist/agent/usage/usage-handler.d.ts +0 -7
- package/dist/agent/usage/usage-handler.d.ts.map +0 -1
- package/dist/agent/usage/usage-handler.js +0 -28
- package/dist/agent/usage/usage-handler.js.map +0 -1
- package/dist/agent/usage/usage-report-builder.d.ts +0 -26
- package/dist/agent/usage/usage-report-builder.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-builder.js +0 -80
- package/dist/agent/usage/usage-report-builder.js.map +0 -1
- package/dist/agent/usage/usage-report-queue.d.ts +0 -26
- package/dist/agent/usage/usage-report-queue.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-queue.js +0 -199
- package/dist/agent/usage/usage-report-queue.js.map +0 -1
- package/dist/agent/usage/usage-report-types.d.ts +0 -41
- package/dist/agent/usage/usage-report-types.d.ts.map +0 -1
- package/dist/agent/usage/usage-report-types.js +0 -2
- package/dist/agent/usage/usage-report-types.js.map +0 -1
- package/dist/agent/usage/usage-reporter.d.ts +0 -31
- package/dist/agent/usage/usage-reporter.d.ts.map +0 -1
- package/dist/agent/usage/usage-reporter.js +0 -102
- package/dist/agent/usage/usage-reporter.js.map +0 -1
- package/dist/agent/usage-backfill-handler.d.ts +0 -18
- package/dist/agent/usage-backfill-handler.d.ts.map +0 -1
- package/dist/agent/usage-backfill-handler.js +0 -69
- package/dist/agent/usage-backfill-handler.js.map +0 -1
- package/dist/agent/usage-gate.d.ts +0 -25
- package/dist/agent/usage-gate.d.ts.map +0 -1
- package/dist/agent/usage-gate.js +0 -83
- package/dist/agent/usage-gate.js.map +0 -1
- package/dist/agent/usage-report-builder.d.ts +0 -26
- package/dist/agent/usage-report-builder.d.ts.map +0 -1
- package/dist/agent/usage-report-builder.js +0 -80
- package/dist/agent/usage-report-builder.js.map +0 -1
- package/dist/agent/usage-report-queue.d.ts +0 -26
- package/dist/agent/usage-report-queue.d.ts.map +0 -1
- package/dist/agent/usage-report-queue.js +0 -199
- package/dist/agent/usage-report-queue.js.map +0 -1
- package/dist/agent/usage-report-types.d.ts +0 -41
- package/dist/agent/usage-report-types.d.ts.map +0 -1
- package/dist/agent/usage-report-types.js +0 -2
- package/dist/agent/usage-report-types.js.map +0 -1
- package/dist/agent/usage-reporter.d.ts +0 -31
- package/dist/agent/usage-reporter.d.ts.map +0 -1
- package/dist/agent/usage-reporter.js +0 -102
- package/dist/agent/usage-reporter.js.map +0 -1
- package/dist/agent/wake-cycle-tool-tracker.d.ts +0 -39
- package/dist/agent/wake-cycle-tool-tracker.d.ts.map +0 -1
- package/dist/agent/wake-cycle-tool-tracker.js +0 -72
- package/dist/agent/wake-cycle-tool-tracker.js.map +0 -1
- package/dist/billing/payg-handler.d.ts +0 -29
- package/dist/billing/payg-handler.d.ts.map +0 -1
- package/dist/billing/payg-handler.js +0 -92
- package/dist/billing/payg-handler.js.map +0 -1
- package/dist/billing/payment-handler.d.ts +0 -24
- package/dist/billing/payment-handler.d.ts.map +0 -1
- package/dist/billing/payment-handler.js +0 -101
- package/dist/billing/payment-handler.js.map +0 -1
- package/dist/builtin-skills/catalog/phone-adb-automation/SKILL.md +0 -412
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_input.sh +0 -132
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_launch.sh +0 -166
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_screenshot.sh +0 -87
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_security_kbd.py +0 -174
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_setup.sh +0 -274
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_swipe.sh +0 -111
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_tap.sh +0 -87
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_ui_parse.py +0 -176
- package/dist/builtin-skills/catalog/phone-adb-automation/phone_wake_unlock.sh +0 -67
- package/dist/builtin-skills/transcribe-audio/SKILL.md +0 -122
- package/dist/data-processing/convert-demo-cli.d.ts +0 -7
- package/dist/data-processing/convert-demo-cli.d.ts.map +0 -1
- package/dist/data-processing/convert-demo-cli.js +0 -30
- package/dist/data-processing/convert-demo-cli.js.map +0 -1
- package/dist/data-processing/convert-demo.d.ts +0 -26
- package/dist/data-processing/convert-demo.d.ts.map +0 -1
- package/dist/data-processing/convert-demo.js +0 -233
- package/dist/data-processing/convert-demo.js.map +0 -1
- package/dist/obs/rdp/icons/icons/app_windows.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_get.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_send.svg +0 -4
- package/dist/obs/rdp/icons/icons/clip_shared.svg +0 -4
- package/dist/obs/rdp/icons/icons/clipboard.svg +0 -4
- package/dist/obs/rdp/icons/icons/clipboard_shared.svg +0 -4
- package/dist/obs/rdp/icons/icons/control.svg +0 -4
- package/dist/obs/rdp/icons/icons/desktop.svg +0 -4
- package/dist/obs/rdp/icons/icons/display.svg +0 -4
- package/dist/obs/rdp/icons/icons/launchpad.svg +0 -4
- package/dist/obs/rdp/icons/icons/mission_control.svg +0 -4
- package/dist/obs/rdp/icons/icons/screenshot.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_actual.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_fit.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_in.svg +0 -4
- package/dist/obs/rdp/icons/icons/zoom_out.svg +0 -4
- package/dist/obs/tunnel-telemetry.d.ts +0 -46
- package/dist/obs/tunnel-telemetry.d.ts.map +0 -1
- package/dist/obs/tunnel-telemetry.js +0 -70
- package/dist/obs/tunnel-telemetry.js.map +0 -1
- package/dist/onboarding/cloudflared-cert.d.ts +0 -15
- package/dist/onboarding/cloudflared-cert.d.ts.map +0 -1
- package/dist/onboarding/cloudflared-cert.js +0 -57
- package/dist/onboarding/cloudflared-cert.js.map +0 -1
- package/dist/onboarding/playwriter-extension.d.ts +0 -19
- package/dist/onboarding/playwriter-extension.d.ts.map +0 -1
- package/dist/onboarding/playwriter-extension.js +0 -246
- package/dist/onboarding/playwriter-extension.js.map +0 -1
- package/dist/service/gbox-tun.d.ts +0 -14
- package/dist/service/gbox-tun.d.ts.map +0 -1
- package/dist/service/gbox-tun.js +0 -315
- package/dist/service/gbox-tun.js.map +0 -1
- package/dist/skills/installed.d.ts +0 -11
- package/dist/skills/installed.d.ts.map +0 -1
- package/dist/skills/installed.js +0 -35
- package/dist/skills/installed.js.map +0 -1
- package/dist/tools/coordinate-resolver.d.ts +0 -30
- package/dist/tools/coordinate-resolver.d.ts.map +0 -1
- package/dist/tools/coordinate-resolver.js +0 -104
- package/dist/tools/coordinate-resolver.js.map +0 -1
- package/dist/utils/playwriter-relay.d.ts +0 -9
- package/dist/utils/playwriter-relay.d.ts.map +0 -1
- package/dist/utils/playwriter-relay.js +0 -77
- package/dist/utils/playwriter-relay.js.map +0 -1
- package/dist/utils/wechat-monitor.d.ts +0 -21
- package/dist/utils/wechat-monitor.d.ts.map +0 -1
- package/dist/utils/wechat-monitor.js +0 -88
- 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"}
|