@phnx-labs/agents-cli 1.22.113 → 1.22.115
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/CHANGELOG.md +139 -0
- package/README.md +32 -113
- package/dist/browser.js +0 -0
- package/dist/cli/command-registry.d.ts +0 -60
- package/dist/cli/command-registry.js +57 -66
- package/dist/commands/accounts.d.ts +3 -77
- package/dist/commands/accounts.js +13 -366
- package/dist/commands/apply.d.ts +0 -4
- package/dist/commands/apply.js +3 -3
- package/dist/commands/audit.js +1 -1
- package/dist/commands/auth.js +0 -2
- package/dist/commands/browser-picker.d.ts +3 -6
- package/dist/commands/browser-picker.js +2 -2
- package/dist/commands/browser-sessions-picker.d.ts +2 -1
- package/dist/commands/browser.d.ts +53 -0
- package/dist/commands/browser.js +199 -9
- package/dist/commands/computer-sessions-picker.d.ts +2 -1
- package/dist/commands/computer.d.ts +14 -19
- package/dist/commands/computer.js +65 -10
- package/dist/commands/config.js +46 -2
- package/dist/commands/daemon.d.ts +0 -23
- package/dist/commands/daemon.js +1 -1
- package/dist/commands/detach-core.d.ts +2 -1
- package/dist/commands/detach.d.ts +0 -3
- package/dist/commands/detach.js +3 -3
- package/dist/commands/doctor.d.ts +2 -3
- package/dist/commands/doctor.js +0 -11
- package/dist/commands/events.d.ts +1 -3
- package/dist/commands/events.js +4 -7
- package/dist/commands/exec.d.ts +0 -1
- package/dist/commands/exec.js +2 -7
- package/dist/commands/feed-watch.js +52 -8
- package/dist/commands/feed.d.ts +3 -3
- package/dist/commands/feed.js +1 -1
- package/dist/commands/focus.d.ts +4 -4
- package/dist/commands/focus.js +1 -1
- package/dist/commands/go.d.ts +0 -17
- package/dist/commands/go.js +2 -19
- package/dist/commands/harness-hooks.d.ts +0 -7
- package/dist/commands/harness-hooks.js +1 -1
- package/dist/commands/harness-wizard.d.ts +2 -2
- package/dist/commands/harness.d.ts +3 -8
- package/dist/commands/harness.js +1 -1
- package/dist/commands/inspect.d.ts +2 -3
- package/dist/commands/inspect.js +1 -1
- package/dist/commands/logs.js +1 -1
- package/dist/commands/mcp.js +8 -83
- package/dist/commands/memory.js +4 -47
- package/dist/commands/message.d.ts +1 -1
- package/dist/commands/message.js +7 -7
- package/dist/commands/plugins.js +1 -93
- package/dist/commands/projects.d.ts +2 -18
- package/dist/commands/projects.js +89 -3
- package/dist/commands/repo.js +0 -44
- package/dist/commands/resource-view.d.ts +3 -2
- package/dist/commands/resume.d.ts +0 -1
- package/dist/commands/resume.js +5 -2
- package/dist/commands/routines.d.ts +1 -3
- package/dist/commands/routines.js +1 -1
- package/dist/commands/run-account-picker.d.ts +2 -1
- package/dist/commands/run-broadcast.d.ts +2 -1
- package/dist/commands/run-device-picker.d.ts +2 -1
- package/dist/commands/secrets-passthrough.d.ts +14 -0
- package/dist/commands/secrets-passthrough.js +23 -4
- package/dist/commands/send.d.ts +4 -4
- package/dist/commands/send.js +6 -51
- package/dist/commands/sessions-backfill.d.ts +2 -35
- package/dist/commands/sessions-backfill.js +1 -1
- package/dist/commands/sessions-backup-setup.js +1 -1
- package/dist/commands/sessions-bookmark.d.ts +0 -10
- package/dist/commands/sessions-bookmark.js +1 -1
- package/dist/commands/sessions-inject.d.ts +2 -3
- package/dist/commands/sessions-inject.js +8 -17
- package/dist/commands/sessions-picker-factory.d.ts +4 -14
- package/dist/commands/sessions-picker-factory.js +2 -2
- package/dist/commands/sessions-picker.d.ts +3 -9
- package/dist/commands/sessions-picker.js +2 -2
- package/dist/commands/sessions-resume.d.ts +2 -4
- package/dist/commands/sessions-resume.js +0 -6
- package/dist/commands/sessions-share.d.ts +5 -7
- package/dist/commands/sessions-share.js +98 -49
- package/dist/commands/sessions-stats.d.ts +2 -1
- package/dist/commands/sessions-stop.d.ts +0 -3
- package/dist/commands/sessions-stop.js +1 -1
- package/dist/commands/sessions-tail.d.ts +2 -1
- package/dist/commands/sessions-trace.d.ts +4 -6
- package/dist/commands/sessions-trace.js +1 -1
- package/dist/commands/sessions.d.ts +13 -104
- package/dist/commands/sessions.js +11 -18
- package/dist/commands/setup-browser.js +18 -2
- package/dist/commands/setup-computer.js +20 -6
- package/dist/commands/setup-mine.d.ts +0 -6
- package/dist/commands/setup-mine.js +1 -1
- package/dist/commands/setup-secrets.js +24 -4
- package/dist/commands/setup-terminal.d.ts +3 -0
- package/dist/commands/setup-terminal.js +22 -0
- package/dist/commands/setup.d.ts +3 -4
- package/dist/commands/setup.js +21 -11
- package/dist/commands/skills.js +0 -8
- package/dist/commands/ssh.d.ts +6 -0
- package/dist/commands/ssh.js +92 -233
- package/dist/commands/sync.js +14 -5
- package/dist/commands/teams-picker.d.ts +2 -5
- package/dist/commands/teams-picker.js +2 -2
- package/dist/commands/teams.d.ts +1 -7
- package/dist/commands/teams.js +2 -2
- package/dist/commands/tmux.d.ts +1 -1
- package/dist/commands/tmux.js +1 -1
- package/dist/commands/traces.js +1 -1
- package/dist/commands/upgrade.d.ts +2 -1
- package/dist/commands/utils.d.ts +1 -1
- package/dist/commands/utils.js +1 -1
- package/dist/lib/account-capabilities.d.ts +2 -1
- package/dist/lib/account-catalog.d.ts +4 -13
- package/dist/lib/account-catalog.js +1 -1
- package/dist/lib/account-registry.d.ts +3 -4
- package/dist/lib/account-registry.js +1 -1
- package/dist/lib/accounting/account-launch.d.ts +4 -3
- package/dist/lib/accounting/account-pool.d.ts +2 -1
- package/dist/lib/accounting/rotate.d.ts +3 -9
- package/dist/lib/accounting/rotate.js +2 -14
- package/dist/lib/accounting/usage-sync.d.ts +5 -4
- package/dist/lib/accounting/usage.d.ts +7 -31
- package/dist/lib/accounting/usage.js +4 -4
- package/dist/lib/accounts/add.d.ts +0 -5
- package/dist/lib/accounts/add.js +1 -7
- package/dist/lib/accounts/migrate.d.ts +8 -8
- package/dist/lib/accounts/migrate.js +1 -1
- package/dist/lib/acp/client.d.ts +3 -2
- package/dist/lib/acp/harnesses.d.ts +2 -2
- package/dist/lib/acp/harnesses.js +1 -1
- package/dist/lib/acp/run.d.ts +2 -1
- package/dist/lib/actor.d.ts +3 -2
- package/dist/lib/add-dir.d.ts +2 -17
- package/dist/lib/add-dir.js +2 -6
- package/dist/lib/address.d.ts +56 -0
- package/dist/lib/address.js +143 -0
- package/dist/lib/agent-spec/agents.d.ts +12 -28
- package/dist/lib/agent-spec/agents.js +2 -6
- package/dist/lib/agent-spec/primitives.d.ts +0 -7
- package/dist/lib/agent-spec/primitives.js +0 -6
- package/dist/lib/agent-spec/types.d.ts +2 -1
- package/dist/lib/analytics/dashboard.d.ts +1 -5
- package/dist/lib/analytics/dashboard.js +0 -2
- package/dist/lib/analytics/mix-commands.d.ts +0 -7
- package/dist/lib/analytics/mix-commands.js +3 -3
- package/dist/lib/analytics/recipes.d.ts +0 -12
- package/dist/lib/analytics/recipes.js +7 -31
- package/dist/lib/analytics/usage-db.d.ts +5 -32
- package/dist/lib/analytics/usage-db.js +1 -70
- package/dist/lib/answer-router.d.ts +7 -6
- package/dist/lib/answer-router.js +5 -11
- package/dist/lib/artifact-actions.d.ts +0 -4
- package/dist/lib/artifacts-client.d.ts +20 -0
- package/dist/lib/artifacts-client.js +46 -0
- package/dist/lib/ask-classifier.d.ts +3 -4
- package/dist/lib/ask-classifier.js +0 -7
- package/dist/lib/auth-health.d.ts +3 -46
- package/dist/lib/auth-health.js +3 -3
- package/dist/lib/auth-mint.d.ts +6 -6
- package/dist/lib/auth-mint.js +7 -7
- package/dist/lib/bench/runner.d.ts +2 -2
- package/dist/lib/bench/runner.js +1 -1
- package/dist/lib/bench/storage.d.ts +0 -1
- package/dist/lib/bench/storage.js +1 -1
- package/dist/lib/boot-profile.d.ts +0 -2
- package/dist/lib/boot-profile.js +0 -4
- package/dist/lib/brand.d.ts +0 -6
- package/dist/lib/brand.js +1 -1
- package/dist/lib/browser/arc-discovery.d.ts +4 -12
- package/dist/lib/browser/arc-discovery.js +1 -1
- package/dist/lib/browser/cdp.d.ts +1 -1
- package/dist/lib/browser/chrome.d.ts +2 -2
- package/dist/lib/browser/chrome.js +0 -4
- package/dist/lib/browser/chromium-discovery.d.ts +3 -2
- package/dist/lib/browser/drivers/arc.d.ts +3 -20
- package/dist/lib/browser/drivers/arc.js +2 -7
- package/dist/lib/browser/drivers/firefox.d.ts +2 -6
- package/dist/lib/browser/drivers/firefox.js +1 -1
- package/dist/lib/browser/drivers/local.d.ts +2 -1
- package/dist/lib/browser/drivers/ssh.d.ts +2 -3
- package/dist/lib/browser/drivers/ssh.js +0 -7
- package/dist/lib/browser/firefox-discovery.d.ts +4 -3
- package/dist/lib/browser/har.d.ts +8 -7
- package/dist/lib/browser/hygiene.d.ts +2 -3
- package/dist/lib/browser/hygiene.js +1 -1
- package/dist/lib/browser/ipc.d.ts +4 -3
- package/dist/lib/browser/ipc.js +1 -1
- package/dist/lib/browser/login-detection.d.ts +1 -8
- package/dist/lib/browser/registry.d.ts +2 -1
- package/dist/lib/browser/remote-control.d.ts +0 -7
- package/dist/lib/browser/remote-control.js +2 -2
- package/dist/lib/browser/resolve-target.d.ts +2 -6
- package/dist/lib/browser/resolve-target.js +3 -3
- package/dist/lib/browser/runtime-state.d.ts +59 -4
- package/dist/lib/browser/runtime-state.js +99 -18
- package/dist/lib/browser/service.d.ts +4 -4
- package/dist/lib/browser/service.js +21 -1
- package/dist/lib/browser/sessions-list.d.ts +0 -10
- package/dist/lib/browser/sessions-list.js +3 -3
- package/dist/lib/browser/stream.d.ts +2 -1
- package/dist/lib/browser/task-index.d.ts +4 -4
- package/dist/lib/browser/task-index.js +1 -1
- package/dist/lib/browser/types.d.ts +0 -20
- package/dist/lib/browser/types.js +1 -34
- package/dist/lib/browser/upload.d.ts +0 -27
- package/dist/lib/budget/ledger.d.ts +0 -2
- package/dist/lib/budget/ledger.js +1 -1
- package/dist/lib/budget/live-cloud.d.ts +2 -1
- package/dist/lib/budget/preflight.d.ts +3 -5
- package/dist/lib/budget/preflight.js +1 -1
- package/dist/lib/catchup.d.ts +2 -1
- package/dist/lib/channels/owner-forward.d.ts +5 -4
- package/dist/lib/channels/owner-sink.js +2 -2
- package/dist/lib/channels/providers/desktop.js +1 -1
- package/dist/lib/channels/providers/rush.d.ts +2 -1
- package/dist/lib/channels/registry.d.ts +1 -1
- package/dist/lib/channels/registry.js +1 -1
- package/dist/lib/channels/resolve.d.ts +3 -2
- package/dist/lib/channels/send.d.ts +5 -4
- package/dist/lib/cli-resources.d.ts +3 -9
- package/dist/lib/cli-resources.js +4 -2
- package/dist/lib/cloud/cursor.d.ts +1 -2
- package/dist/lib/cloud/cursor.js +1 -1
- package/dist/lib/cloud/dispatch.d.ts +2 -1
- package/dist/lib/cloud/dispatch.js +1 -1
- package/dist/lib/cloud/factory.d.ts +0 -2
- package/dist/lib/cloud/factory.js +1 -1
- package/dist/lib/cloud/rush.d.ts +3 -11
- package/dist/lib/cloud/rush.js +1 -1
- package/dist/lib/cloud/session-index.d.ts +2 -1
- package/dist/lib/cloud/types.d.ts +2 -1
- package/dist/lib/cloudflare/creds.d.ts +10 -0
- package/dist/lib/cloudflare/creds.js +46 -0
- package/dist/lib/cloudflare/provision.d.ts +35 -0
- package/dist/lib/cloudflare/provision.js +144 -0
- package/dist/lib/codex-policy.d.ts +2 -1
- package/dist/lib/commands.d.ts +7 -7
- package/dist/lib/commands.js +1 -1
- package/dist/lib/comms-render.d.ts +1 -1
- package/dist/lib/computer/context.d.ts +11 -3
- package/dist/lib/computer/context.js +2 -2
- package/dist/lib/computer/policy.d.ts +0 -12
- package/dist/lib/computer/policy.js +1 -1
- package/dist/lib/computer/sessions-list.d.ts +55 -0
- package/dist/lib/computer/sessions-list.js +168 -1
- package/dist/lib/computer-client.d.ts +3 -3
- package/dist/lib/computer-client.js +0 -1
- package/dist/lib/concurrency.d.ts +2 -1
- package/dist/lib/config-keys.d.ts +16 -3
- package/dist/lib/config-keys.js +47 -2
- package/dist/lib/convert.d.ts +0 -12
- package/dist/lib/convert.js +1 -12
- package/dist/lib/crabbox/cli.d.ts +6 -24
- package/dist/lib/crabbox/cli.js +2 -28
- package/dist/lib/crabbox/lease.d.ts +5 -6
- package/dist/lib/crabbox/lease.js +1 -1
- package/dist/lib/crabbox/progress.d.ts +2 -1
- package/dist/lib/crabbox/setup-copy.d.ts +2 -3
- package/dist/lib/crabbox/setup-copy.js +1 -1
- package/dist/lib/daemon/account-state-daemon-service.d.ts +1 -1
- package/dist/lib/daemon/attention-notify-service.d.ts +2 -1
- package/dist/lib/daemon/catchup-service.d.ts +2 -1
- package/dist/lib/daemon/daemon.d.ts +4 -4
- package/dist/lib/daemon/daemon.js +9 -2
- package/dist/lib/daemon/feed-stream-service.d.ts +23 -0
- package/dist/lib/daemon/feed-stream-service.js +40 -0
- package/dist/lib/daemon/harness-update-service.d.ts +2 -19
- package/dist/lib/daemon/harness-update-service.js +3 -3
- package/dist/lib/daemon/runner.d.ts +3 -3
- package/dist/lib/daemon/self-update-service.d.ts +1 -16
- package/dist/lib/daemon/self-update-service.js +6 -6
- package/dist/lib/daemon/state-dir-check-service.d.ts +2 -1
- package/dist/lib/daemon/supervisor.d.ts +3 -2
- package/dist/lib/daemon-services.d.ts +3 -2
- package/dist/lib/daemon-services.js +5 -0
- package/dist/lib/daemon-webhooks.d.ts +1 -1
- package/dist/lib/deeplink/register.d.ts +3 -13
- package/dist/lib/deeplink/register.js +3 -3
- package/dist/lib/deeplink/url.d.ts +3 -2
- package/dist/lib/device-config.d.ts +4 -15
- package/dist/lib/device-config.js +164 -8
- package/dist/lib/devices/connect.d.ts +51 -6
- package/dist/lib/devices/connect.js +169 -21
- package/dist/lib/devices/discovery-policy.d.ts +3 -2
- package/dist/lib/devices/doctor-findings.js +1 -1
- package/dist/lib/devices/doctor-overview-cache.d.ts +3 -2
- package/dist/lib/devices/fleet-divergence.d.ts +2 -1
- package/dist/lib/devices/fleet.d.ts +3 -4
- package/dist/lib/devices/fleet.js +1 -1
- package/dist/lib/devices/harness-inventory.d.ts +3 -2
- package/dist/lib/devices/health-report.d.ts +3 -2
- package/dist/lib/devices/health.d.ts +1 -8
- package/dist/lib/devices/health.js +1 -1
- package/dist/lib/devices/interactive-host.d.ts +0 -2
- package/dist/lib/devices/interactive-host.js +1 -1
- package/dist/lib/devices/known-hosts.d.ts +2 -20
- package/dist/lib/devices/known-hosts.js +2 -2
- package/dist/lib/devices/pool.d.ts +2 -1
- package/dist/lib/devices/resolve-target.d.ts +2 -2
- package/dist/lib/devices/rollout-verify.d.ts +3 -2
- package/dist/lib/devices/stats-cache.d.ts +3 -2
- package/dist/lib/devices/sync.d.ts +6 -5
- package/dist/lib/devices/worker-pick.d.ts +3 -12
- package/dist/lib/devices/worker-pick.js +1 -1
- package/dist/lib/diff-text.d.ts +2 -1
- package/dist/lib/doctor-diff.d.ts +2 -1
- package/dist/lib/drift-sync.d.ts +3 -2
- package/dist/lib/drift.d.ts +3 -3
- package/dist/lib/drift.js +1 -1
- package/dist/lib/event-families.d.ts +0 -6
- package/dist/lib/event-families.js +3 -3
- package/dist/lib/event-provenance.d.ts +2 -1
- package/dist/lib/events-ingest.d.ts +4 -3
- package/dist/lib/exec-account-home.d.ts +2 -4
- package/dist/lib/exec-account-home.js +1 -1
- package/dist/lib/exec-bounded.d.ts +3 -4
- package/dist/lib/exec-bounded.js +1 -1
- package/dist/lib/exec.d.ts +6 -18
- package/dist/lib/exec.js +1 -1
- package/dist/lib/factory/snapshot.d.ts +2 -2
- package/dist/lib/factory/snapshot.js +1 -1
- package/dist/lib/feed/activity-stream.d.ts +2 -5
- package/dist/lib/feed/activity-stream.js +2 -2
- package/dist/lib/feed/activity.d.ts +8 -33
- package/dist/lib/feed/activity.js +8 -8
- package/dist/lib/feed/answer.d.ts +3 -2
- package/dist/lib/feed/attention.js +5 -1
- package/dist/lib/feed/envelope.d.ts +79 -0
- package/dist/lib/feed/envelope.js +23 -0
- package/dist/lib/feed/events.d.ts +8 -47
- package/dist/lib/feed/events.js +9 -141
- package/dist/lib/feed/feed.d.ts +9 -42
- package/dist/lib/feed/feed.js +1 -60
- package/dist/lib/feed/hub-server.d.ts +86 -0
- package/dist/lib/feed/hub-server.js +334 -0
- package/dist/lib/feed/hub.d.ts +95 -0
- package/dist/lib/feed/hub.js +255 -0
- package/dist/lib/feed/pr-status.d.ts +0 -2
- package/dist/lib/feed/pr-status.js +1 -5
- package/dist/lib/feed/tool-activity.d.ts +108 -0
- package/dist/lib/feed/tool-activity.js +313 -0
- package/dist/lib/feed/tools.d.ts +198 -0
- package/dist/lib/feed/tools.js +265 -0
- package/dist/lib/feed/watch.d.ts +51 -52
- package/dist/lib/feed/watch.js +147 -17
- package/dist/lib/feed-broadcast.d.ts +5 -47
- package/dist/lib/feed-broadcast.js +9 -9
- package/dist/lib/feed-outcome.d.ts +3 -6
- package/dist/lib/feed-outcome.js +2 -2
- package/dist/lib/feed-policy.d.ts +5 -6
- package/dist/lib/feed-policy.js +2 -2
- package/dist/lib/feed-post.d.ts +3 -4
- package/dist/lib/feed-post.js +1 -1
- package/dist/lib/feed-ranking.d.ts +2 -2
- package/dist/lib/feed-ranking.js +1 -1
- package/dist/lib/fleet/apply.d.ts +5 -6
- package/dist/lib/fleet/apply.js +4 -4
- package/dist/lib/fleet/manifest.d.ts +2 -1
- package/dist/lib/fleet/remote-login.d.ts +18 -36
- package/dist/lib/fleet/remote-login.js +20 -19
- package/dist/lib/fleet/types.d.ts +0 -8
- package/dist/lib/fleet-cache.d.ts +1 -18
- package/dist/lib/fleet-cache.js +0 -5
- package/dist/lib/fleet-shared-repo-sync.d.ts +3 -3
- package/dist/lib/fleet-shared-repo-sync.js +1 -1
- package/dist/lib/fleet-shared-state.d.ts +3 -2
- package/dist/lib/format.d.ts +3 -2
- package/dist/lib/format.js +1 -1
- package/dist/lib/friction-heuristics.d.ts +2 -1
- package/dist/lib/fs-walk.d.ts +2 -1
- package/dist/lib/fuzzy.d.ts +2 -1
- package/dist/lib/gemini-settings.d.ts +0 -1
- package/dist/lib/gemini-settings.js +1 -1
- package/dist/lib/git.d.ts +7 -81
- package/dist/lib/git.js +2 -199
- package/dist/lib/github/gh-overload.d.ts +0 -4
- package/dist/lib/github/gh-overload.js +2 -2
- package/dist/lib/github/project-prs.d.ts +118 -0
- package/dist/lib/github/project-prs.js +173 -0
- package/dist/lib/github/rest.d.ts +2 -1
- package/dist/lib/harness/exec-config-version.d.ts +2 -1
- package/dist/lib/harness-auth-capabilities.d.ts +5 -4
- package/dist/lib/harness-connection-test.d.ts +2 -1
- package/dist/lib/heal.d.ts +3 -20
- package/dist/lib/heal.js +2 -39
- package/dist/lib/help.d.ts +3 -2
- package/dist/lib/helper-download.d.ts +0 -12
- package/dist/lib/helper-download.js +2 -2
- package/dist/lib/helper-versions.d.ts +2 -1
- package/dist/lib/helper-versions.js +1 -1
- package/dist/lib/hooks/install.d.ts +8 -49
- package/dist/lib/hooks/install.js +2 -96
- package/dist/lib/hooks/match.d.ts +2 -1
- package/dist/lib/hosts/credential-transport.d.ts +0 -2
- package/dist/lib/hosts/credential-transport.js +1 -1
- package/dist/lib/hosts/dispatch.d.ts +2 -24
- package/dist/lib/hosts/dispatch.js +2 -2
- package/dist/lib/hosts/logs.d.ts +2 -1
- package/dist/lib/hosts/passthrough.d.ts +1 -1
- package/dist/lib/hosts/passthrough.js +0 -1
- package/dist/lib/hosts/progress.d.ts +0 -5
- package/dist/lib/hosts/progress.js +1 -1
- package/dist/lib/hosts/ready.d.ts +3 -4
- package/dist/lib/hosts/ready.js +0 -8
- package/dist/lib/hosts/reconcile.d.ts +2 -8
- package/dist/lib/hosts/reconcile.js +1 -1
- package/dist/lib/hosts/reconnect.d.ts +4 -11
- package/dist/lib/hosts/reconnect.js +2 -2
- package/dist/lib/hosts/registry.d.ts +1 -1
- package/dist/lib/hosts/remote-cmd.d.ts +55 -4
- package/dist/lib/hosts/remote-cmd.js +125 -8
- package/dist/lib/hosts/remote-cmd.test-fixture.d.ts +2 -0
- package/dist/lib/hosts/remote-cmd.test-fixture.js +22 -0
- package/dist/lib/hosts/session-index.d.ts +3 -2
- package/dist/lib/hosts/ssh-config.d.ts +2 -3
- package/dist/lib/hosts/ssh-config.js +0 -10
- package/dist/lib/humans.d.ts +0 -2
- package/dist/lib/humans.js +2 -2
- package/dist/lib/import.d.ts +4 -3
- package/dist/lib/installations/installation-lock.d.ts +0 -2
- package/dist/lib/installations/installation-lock.js +2 -2
- package/dist/lib/installations/launch-gate.d.ts +0 -9
- package/dist/lib/installations/launch-gate.js +1 -1
- package/dist/lib/installations/migrate.d.ts +0 -11
- package/dist/lib/installations/migrate.js +1 -1
- package/dist/lib/installations/shims.d.ts +1 -1
- package/dist/lib/installations/shims.js +2 -2
- package/dist/lib/installations/update-runtime.js +1 -1
- package/dist/lib/linear-cache.d.ts +2 -1
- package/dist/lib/linux-userns.d.ts +2 -3
- package/dist/lib/linux-userns.js +0 -4
- package/dist/lib/loop.d.ts +2 -1
- package/dist/lib/mailbox-gc.d.ts +2 -1
- package/dist/lib/mailbox-target.d.ts +2 -1
- package/dist/lib/mailbox.d.ts +0 -6
- package/dist/lib/mailbox.js +1 -1
- package/dist/lib/manifest.d.ts +0 -14
- package/dist/lib/manifest.js +2 -2
- package/dist/lib/mcp-registry.d.ts +2 -1
- package/dist/lib/mcp.js +17 -11
- package/dist/lib/memory.d.ts +2 -13
- package/dist/lib/memory.js +4 -4
- package/dist/lib/menubar/download-menubar.d.ts +0 -2
- package/dist/lib/menubar/download-menubar.js +1 -5
- package/dist/lib/menubar/install-menubar.d.ts +3 -14
- package/dist/lib/menubar/install-menubar.js +3 -3
- package/dist/lib/menubar/migrate-prefs.d.ts +53 -0
- package/dist/lib/menubar/migrate-prefs.js +168 -0
- package/dist/lib/menubar/resolve-version.d.ts +1 -9
- package/dist/lib/menubar/resolve-version.js +4 -4
- package/dist/lib/menubar/snapshot.d.ts +24 -2
- package/dist/lib/menubar/snapshot.js +26 -0
- package/dist/lib/model-tier-overrides.d.ts +3 -2
- package/dist/lib/monitors/config.d.ts +0 -2
- package/dist/lib/monitors/config.js +0 -4
- package/dist/lib/monitors/engine.d.ts +1 -1
- package/dist/lib/monitors/remote.d.ts +3 -2
- package/dist/lib/monitors/sources/webhook.d.ts +2 -15
- package/dist/lib/monitors/sources/webhook.js +1 -38
- package/dist/lib/monitors/state.d.ts +4 -7
- package/dist/lib/monitors/state.js +2 -2
- package/dist/lib/notify.d.ts +1 -1
- package/dist/lib/notify.js +1 -1
- package/dist/lib/onepassword.d.ts +5 -14
- package/dist/lib/onepassword.js +0 -64
- package/dist/lib/open-url.d.ts +3 -2
- package/dist/lib/openclaw-keychain.d.ts +4 -17
- package/dist/lib/openclaw-keychain.js +3 -33
- package/dist/lib/operator.d.ts +2 -2
- package/dist/lib/operator.js +1 -1
- package/dist/lib/output/git-output.d.ts +4 -14
- package/dist/lib/output/git-output.js +1 -1
- package/dist/lib/owner-message.d.ts +3 -29
- package/dist/lib/owner-message.js +3 -3
- package/dist/lib/packages/output-home.d.ts +2 -4
- package/dist/lib/packages/output-home.js +2 -2
- package/dist/lib/perf/db.d.ts +0 -2
- package/dist/lib/perf/db.js +2 -7
- package/dist/lib/permissions-registry.d.ts +2 -3
- package/dist/lib/permissions-registry.js +0 -4
- package/dist/lib/permissions.d.ts +6 -16
- package/dist/lib/permissions.js +2 -15
- package/dist/lib/picker.d.ts +6 -5
- package/dist/lib/placement.d.ts +3 -6
- package/dist/lib/placement.js +0 -17
- package/dist/lib/platform/posixpath.d.ts +2 -1
- package/dist/lib/platform/winpath.d.ts +2 -1
- package/dist/lib/plugins/plugin-marketplace.d.ts +2 -2
- package/dist/lib/plugins/plugin-marketplace.js +1 -1
- package/dist/lib/pr-land-detach.d.ts +2 -1
- package/dist/lib/probe.d.ts +4 -1
- package/dist/lib/probe.js +5 -2
- package/dist/lib/profiles-presets.d.ts +2 -1
- package/dist/lib/profiles.d.ts +3 -9
- package/dist/lib/profiles.js +1 -9
- package/dist/lib/project-doctor.d.ts +2 -1
- package/dist/lib/project-launch.d.ts +2 -2
- package/dist/lib/project-probe.d.ts +4 -3
- package/dist/lib/project-pull.d.ts +2 -1
- package/dist/lib/project-resources.d.ts +2 -2
- package/dist/lib/project-resources.js +1 -1
- package/dist/lib/project-root.d.ts +2 -6
- package/dist/lib/project-root.js +1 -1
- package/dist/lib/project-schedule.d.ts +2 -1
- package/dist/lib/project-status.d.ts +2 -16
- package/dist/lib/project-status.js +3 -3
- package/dist/lib/pwsh.d.ts +33 -0
- package/dist/lib/pwsh.js +56 -0
- package/dist/lib/reconcile-and-repair.d.ts +5 -4
- package/dist/lib/redact.d.ts +15 -1
- package/dist/lib/redact.js +105 -3
- package/dist/lib/refresh-coordinator.d.ts +2 -1
- package/dist/lib/refresh.d.ts +9 -4
- package/dist/lib/refresh.js +92 -72
- package/dist/lib/remote-agents-json.d.ts +3 -2
- package/dist/lib/reserved-stores.d.ts +0 -2
- package/dist/lib/reserved-stores.js +3 -5
- package/dist/lib/resource-content-diff.d.ts +0 -2
- package/dist/lib/resource-content-diff.js +1 -1
- package/dist/lib/resource-patterns.d.ts +2 -1
- package/dist/lib/resource-profiles.d.ts +2 -8
- package/dist/lib/resource-profiles.js +3 -27
- package/dist/lib/resources/workflows.d.ts +1 -1
- package/dist/lib/resources.d.ts +4 -9
- package/dist/lib/resources.js +1 -1
- package/dist/lib/routine-context.d.ts +2 -5
- package/dist/lib/routine-context.js +2 -2
- package/dist/lib/routine-notify-owner.d.ts +8 -7
- package/dist/lib/routine-notify-owner.js +5 -5
- package/dist/lib/routine-process-cleanup.d.ts +2 -1
- package/dist/lib/routine-readiness.d.ts +0 -2
- package/dist/lib/routine-readiness.js +0 -7
- package/dist/lib/routines-project.d.ts +3 -4
- package/dist/lib/routines-project.js +1 -1
- package/dist/lib/rules/compile.d.ts +3 -25
- package/dist/lib/rules/compile.js +1 -1
- package/dist/lib/rules/compose.d.ts +3 -9
- package/dist/lib/rules/rules.d.ts +4 -15
- package/dist/lib/rules/rules.js +1 -64
- package/dist/lib/run-defaults.d.ts +1 -1
- package/dist/lib/run-notify.d.ts +2 -1
- package/dist/lib/run-trace-sync.d.ts +1 -1
- package/dist/lib/run-trace-sync.js +1 -1
- package/dist/lib/scheduler.d.ts +2 -1
- package/dist/lib/scheduling/routines.d.ts +9 -21
- package/dist/lib/scheduling/routines.js +3 -46
- package/dist/lib/secrets-cli.d.ts +11 -0
- package/dist/lib/secrets-cli.js +30 -0
- package/dist/lib/secrets-client.d.ts +0 -17
- package/dist/lib/secrets-client.js +7 -28
- package/dist/lib/secrets-policy.d.ts +12 -17
- package/dist/lib/secrets-policy.js +5 -5
- package/dist/lib/secrets-types.d.ts +3 -2
- package/dist/lib/secrets-types.js +2 -1
- package/dist/lib/self-heal/checks/install-staging.js +1 -1
- package/dist/lib/self-heal/registry.d.ts +3 -2
- package/dist/lib/self-heal/types.d.ts +1 -1
- package/dist/lib/self-heal/types.js +1 -1
- package/dist/lib/self-update.d.ts +5 -5
- package/dist/lib/self-update.js +4 -4
- package/dist/lib/session/actor-sidecar.d.ts +3 -2
- package/dist/lib/session/artifacts.d.ts +0 -2
- package/dist/lib/session/artifacts.js +1 -1
- package/dist/lib/session/bash-command.d.ts +2 -7
- package/dist/lib/session/bundle.d.ts +4 -6
- package/dist/lib/session/bundle.js +1 -5
- package/dist/lib/session/cloud.d.ts +0 -4
- package/dist/lib/session/cloud.js +2 -15
- package/dist/lib/session/detached.d.ts +9 -1
- package/dist/lib/session/detached.js +31 -2
- package/dist/lib/session/digest.d.ts +2 -2
- package/dist/lib/session/digest.js +1 -1
- package/dist/lib/session/fork.d.ts +3 -2
- package/dist/lib/session/highlights.d.ts +6 -5
- package/dist/lib/session/hook-sessions.d.ts +2 -1
- package/dist/lib/session/host-link.d.ts +2 -1
- package/dist/lib/session/inject.d.ts +1 -1
- package/dist/lib/session/inject.js +1 -1
- package/dist/lib/session/insights.d.ts +3 -15
- package/dist/lib/session/insights.js +2 -2
- package/dist/lib/session/local-tmux-attach.d.ts +2 -18
- package/dist/lib/session/local-tmux-attach.js +1 -1
- package/dist/lib/session/migrations.d.ts +0 -1
- package/dist/lib/session/migrations.js +1 -1
- package/dist/lib/session/mirror.d.ts +5 -8
- package/dist/lib/session/mirror.js +2 -2
- package/dist/lib/session/parse.d.ts +1 -32
- package/dist/lib/session/parse.js +4 -4
- package/dist/lib/session/presence.d.ts +2 -1
- package/dist/lib/session/prompt.d.ts +3 -2
- package/dist/lib/session/prompt.js +38 -1
- package/dist/lib/session/recovery.d.ts +3 -2
- package/dist/lib/session/remote/peer-stream.d.ts +26 -7
- package/dist/lib/session/remote/peer-stream.js +35 -8
- package/dist/lib/session/remote/remote-bundle.d.ts +2 -1
- package/dist/lib/session/remote/remote-list.d.ts +5 -5
- package/dist/lib/session/remote/remote.d.ts +4 -3
- package/dist/lib/session/remote/watch.d.ts +2 -7
- package/dist/lib/session/remote/watch.js +3 -3
- package/dist/lib/session/remote-active.d.ts +2 -1
- package/dist/lib/session/render.d.ts +2 -2
- package/dist/lib/session/render.js +1 -1
- package/dist/lib/session/resume-owner.d.ts +1 -1
- package/dist/lib/session/resume-owner.js +1 -1
- package/dist/lib/session/run-names.d.ts +2 -1
- package/dist/lib/session/session-cache.d.ts +7 -26
- package/dist/lib/session/session-cache.js +2 -8
- package/dist/lib/session/share-html.d.ts +1 -21
- package/dist/lib/session/share-html.js +1 -1
- package/dist/lib/session/shell-programs.d.ts +2 -1
- package/dist/lib/session/state.d.ts +41 -8
- package/dist/lib/session/state.js +112 -11
- package/dist/lib/session/stream-render.d.ts +2 -1
- package/dist/lib/session/sync/agents.d.ts +0 -4
- package/dist/lib/session/sync/agents.js +0 -0
- package/dist/lib/session/sync/backend.d.ts +8 -8
- package/dist/lib/session/sync/backend.js +3 -3
- package/dist/lib/session/sync/managed-config.d.ts +0 -8
- package/dist/lib/session/sync/managed-key.d.ts +0 -2
- package/dist/lib/session/sync/managed-key.js +1 -1
- package/dist/lib/session/sync/provision.d.ts +1 -1
- package/dist/lib/session/sync/provision.js +2 -2
- package/dist/lib/session/sync/r2.d.ts +4 -1
- package/dist/lib/session/sync/r2.js +4 -7
- package/dist/lib/session/sync/transcript-crypto.d.ts +2 -1
- package/dist/lib/session/tail.d.ts +2 -1
- package/dist/lib/session/team-filter.d.ts +1 -1
- package/dist/lib/session/throughput.d.ts +2 -3
- package/dist/lib/session/throughput.js +1 -1
- package/dist/lib/session/timeline-pass.d.ts +3 -42
- package/dist/lib/session/timeline-pass.js +4 -4
- package/dist/lib/session/timeline.d.ts +3 -13
- package/dist/lib/session/timeline.js +3 -3
- package/dist/lib/session/tool-calls.d.ts +2 -2
- package/dist/lib/session/tool-calls.js +1 -1
- package/dist/lib/session/tool-index.d.ts +0 -8
- package/dist/lib/session/tool-index.js +2 -2
- package/dist/lib/session/tool-store.d.ts +2 -1
- package/dist/lib/session/trajectory-compare.d.ts +2 -1
- package/dist/lib/session/trajectory-lineage.d.ts +2 -1
- package/dist/lib/session/trajectory-text.d.ts +3 -2
- package/dist/lib/session/trajectory.d.ts +2 -1
- package/dist/lib/session/viewing-in.d.ts +2 -1
- package/dist/lib/sessions-client.js +0 -3
- package/dist/lib/settings-manifest.d.ts +2 -1
- package/dist/lib/setup-tool-install.d.ts +3 -0
- package/dist/lib/setup-tool-install.js +26 -0
- package/dist/lib/setup-tool-status.d.ts +22 -0
- package/dist/lib/setup-tool-status.js +215 -0
- package/dist/lib/share-runtime.d.ts +11 -0
- package/dist/lib/share-runtime.js +63 -0
- package/dist/lib/shim-heal.d.ts +1 -5
- package/dist/lib/shim-heal.js +0 -6
- package/dist/lib/smart-launch.d.ts +5 -10
- package/dist/lib/smart-launch.js +4 -12
- package/dist/lib/snapshot.d.ts +3 -2
- package/dist/lib/ssh-exec.d.ts +49 -4
- package/dist/lib/ssh-exec.js +119 -0
- package/dist/lib/ssh-tunnel.d.ts +3 -2
- package/dist/lib/staleness/checkers/permissions.d.ts +0 -2
- package/dist/lib/staleness/checkers/permissions.js +1 -1
- package/dist/lib/staleness/fingerprint.d.ts +0 -7
- package/dist/lib/staleness/fingerprint.js +1 -1
- package/dist/lib/staleness/prune.d.ts +3 -2
- package/dist/lib/staleness/registry.d.ts +1 -1
- package/dist/lib/staleness/writers/sources.d.ts +0 -8
- package/dist/lib/staleness/writers/sources.js +1 -1
- package/dist/lib/startup/command-registry.d.ts +6 -4
- package/dist/lib/startup/command-registry.js +11 -8
- package/dist/lib/state.d.ts +1 -3
- package/dist/lib/state.js +3 -6
- package/dist/lib/storage/selection.d.ts +2 -2
- package/dist/lib/storage/selection.js +2 -2
- package/dist/lib/subagents-registry.d.ts +4 -3
- package/dist/lib/subagents.d.ts +2 -1
- package/dist/lib/subagents.js +3 -2
- package/dist/lib/summarizer/pass.d.ts +3 -6
- package/dist/lib/summarizer/pass.js +2 -2
- package/dist/lib/summarizer/summarize.d.ts +4 -3
- package/dist/lib/sync-passphrase.d.ts +3 -2
- package/dist/lib/sync-status.d.ts +3 -16
- package/dist/lib/sync-status.js +2 -2
- package/dist/lib/sync-umbrella.d.ts +9 -3
- package/dist/lib/sync-umbrella.js +18 -10
- package/dist/lib/system-run-sync.d.ts +2 -1
- package/dist/lib/teams/agents.d.ts +2 -4
- package/dist/lib/teams/agents.js +1 -1
- package/dist/lib/teams/forEach.d.ts +3 -2
- package/dist/lib/teams/pr-watch.d.ts +4 -11
- package/dist/lib/teams/pr-watch.js +4 -4
- package/dist/lib/teams/registry.d.ts +2 -3
- package/dist/lib/teams/registry.js +1 -1
- package/dist/lib/teams/remoteWorktree.d.ts +0 -16
- package/dist/lib/teams/remoteWorktree.js +3 -3
- package/dist/lib/teams/scheduler.d.ts +6 -5
- package/dist/lib/teams/scheduler.js +1 -1
- package/dist/lib/teams/supervisor.d.ts +4 -3
- package/dist/lib/teams/worktree.d.ts +0 -9
- package/dist/lib/teams/worktree.js +0 -32
- package/dist/lib/term-client.d.ts +44 -0
- package/dist/lib/term-client.js +117 -0
- package/dist/lib/terminal/inject.d.ts +3 -16
- package/dist/lib/terminal/inject.js +1 -29
- package/dist/lib/terminal/resolve.d.ts +3 -9
- package/dist/lib/terminal/resolve.js +3 -7
- package/dist/lib/tmux/binary.d.ts +2 -1
- package/dist/lib/tmux/orphan-reap.d.ts +6 -7
- package/dist/lib/tmux/orphan-reap.js +1 -1
- package/dist/lib/tmux/session.d.ts +4 -3
- package/dist/lib/traces/backend.d.ts +1 -2
- package/dist/lib/traces/backend.js +1 -2
- package/dist/lib/traces/classify.d.ts +3 -2
- package/dist/lib/traces/config.d.ts +0 -8
- package/dist/lib/traces/insights.d.ts +2 -1
- package/dist/lib/traces/phenotype.d.ts +3 -3
- package/dist/lib/traces/provision.d.ts +2 -4
- package/dist/lib/traces/provision.js +3 -3
- package/dist/lib/traces/schema2-build.d.ts +1 -1
- package/dist/lib/traces/schema2-danger.d.ts +2 -1
- package/dist/lib/traces/schema2.d.ts +5 -4
- package/dist/lib/traces/segments.d.ts +4 -20
- package/dist/lib/traces/segments.js +3 -3
- package/dist/lib/traces/sync.d.ts +2 -3
- package/dist/lib/traces/sync.js +1 -1
- package/dist/lib/triggers/handlers.d.ts +4 -13
- package/dist/lib/triggers/handlers.js +1 -1
- package/dist/lib/triggers/webhook.d.ts +5 -27
- package/dist/lib/triggers/webhook.js +4 -4
- package/dist/lib/types.d.ts +11 -9
- package/dist/lib/usage-refresh.d.ts +4 -10
- package/dist/lib/usage-refresh.js +3 -8
- package/dist/lib/verbs.d.ts +2 -1
- package/dist/lib/version-duplicates.d.ts +2 -3
- package/dist/lib/version-duplicates.js +3 -33
- package/dist/lib/version.d.ts +2 -1
- package/dist/lib/warn-unpushed.d.ts +2 -1
- package/dist/lib/watchdog/history.d.ts +3 -2
- package/dist/lib/watchdog/log.d.ts +0 -6
- package/dist/lib/watchdog/log.js +1 -1
- package/dist/lib/watchdog/rotate.d.ts +2 -26
- package/dist/lib/watchdog/rotate.js +4 -12
- package/dist/lib/watchdog/runner.d.ts +0 -7
- package/dist/lib/watchdog/runner.js +4 -4
- package/dist/lib/watchdog/service.d.ts +2 -2
- package/dist/lib/watchdog/service.js +1 -1
- package/dist/lib/watchdog/watchdog-agent.d.ts +2 -1
- package/dist/lib/watchdog/watchdog.d.ts +2 -1
- package/dist/lib/watchdog/watchdogTail.d.ts +2 -1
- package/dist/lib/workflows-registry.d.ts +3 -2
- package/dist/lib/workflows.d.ts +4 -7
- package/dist/lib/workflows.js +1 -1
- package/dist/lib/worktree/held.d.ts +4 -28
- package/dist/lib/worktree/held.js +3 -3
- package/package.json +3 -5
- package/scripts/postinstall.js +5 -4
- package/dist/commands/artifacts-setup.d.ts +0 -53
- package/dist/commands/artifacts-setup.js +0 -161
- package/dist/commands/artifacts.d.ts +0 -18
- package/dist/commands/artifacts.js +0 -58
- package/dist/commands/attach.d.ts +0 -12
- package/dist/commands/attach.js +0 -86
- package/dist/commands/auth-mint.d.ts +0 -12
- package/dist/commands/auth-mint.js +0 -108
- package/dist/commands/pty.d.ts +0 -20
- package/dist/commands/pty.js +0 -404
- package/dist/commands/reconnect.d.ts +0 -46
- package/dist/commands/reconnect.js +0 -115
- package/dist/commands/share.d.ts +0 -293
- package/dist/commands/share.js +0 -1424
- package/dist/lib/config-machine-keys.d.ts +0 -14
- package/dist/lib/config-machine-keys.js +0 -21
- package/dist/lib/pty-client.d.ts +0 -49
- package/dist/lib/pty-client.js +0 -315
- package/dist/lib/pty-server.d.ts +0 -59
- package/dist/lib/pty-server.js +0 -653
- package/dist/lib/share/analytics.d.ts +0 -13
- package/dist/lib/share/analytics.js +0 -45
- package/dist/lib/share/backend.d.ts +0 -120
- package/dist/lib/share/backend.js +0 -176
- package/dist/lib/share/capture.d.ts +0 -31
- package/dist/lib/share/capture.js +0 -174
- package/dist/lib/share/config.d.ts +0 -72
- package/dist/lib/share/config.js +0 -211
- package/dist/lib/share/delete.d.ts +0 -122
- package/dist/lib/share/delete.js +0 -173
- package/dist/lib/share/html.d.ts +0 -22
- package/dist/lib/share/html.js +0 -88
- package/dist/lib/share/http-error.d.ts +0 -52
- package/dist/lib/share/http-error.js +0 -65
- package/dist/lib/share/og.d.ts +0 -25
- package/dist/lib/share/og.js +0 -84
- package/dist/lib/share/provision.d.ts +0 -127
- package/dist/lib/share/provision.js +0 -285
- package/dist/lib/share/publish.d.ts +0 -388
- package/dist/lib/share/publish.js +0 -818
- package/dist/lib/share/worker-template.d.ts +0 -27
- package/dist/lib/share/worker-template.js +0 -2424
- package/dist/lib/storage/index.d.ts +0 -14
- package/dist/lib/storage/index.js +0 -14
- package/dist/lib/storage/visibility.d.ts +0 -82
- package/dist/lib/storage/visibility.js +0 -99
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
|
|
1
|
+
interface ArcSpace {
|
|
2
2
|
/** Stable UUID used for every native operation. */
|
|
3
3
|
id: string;
|
|
4
4
|
/** Display-only title; empty when the Space is untitled. Never part of identity. */
|
|
5
5
|
title: string;
|
|
6
6
|
}
|
|
7
|
-
|
|
7
|
+
interface ArcProfile {
|
|
8
8
|
/** Arc's profile directory basename: the stable profile identity. */
|
|
9
9
|
profileId: string;
|
|
10
10
|
/** Display-only profile name from Local State. */
|
|
11
11
|
displayName: string;
|
|
12
12
|
spaces: ArcSpace[];
|
|
13
13
|
}
|
|
14
|
-
|
|
14
|
+
type ArcDiscoveryResult = {
|
|
15
15
|
ok: true;
|
|
16
16
|
profiles: ArcProfile[];
|
|
17
17
|
userDataDir: string;
|
|
@@ -25,14 +25,6 @@ interface SidebarSpace {
|
|
|
25
25
|
title: string;
|
|
26
26
|
profileId: string;
|
|
27
27
|
}
|
|
28
|
-
/**
|
|
29
|
-
* Arc's application-support root on this Mac. Arc keeps its Chromium `Local
|
|
30
|
-
* State` under `<root>/User Data/` and its own sidebar model (Spaces and their
|
|
31
|
-
* profile bindings) at `<root>/StorableSidebar.json` — two different levels,
|
|
32
|
-
* so discovery is rooted here rather than at the Chromium user-data dir.
|
|
33
|
-
* `AGENTS_ARC_DIR` points tests and non-default installs at another root.
|
|
34
|
-
*/
|
|
35
|
-
export declare function arcSupportDir(): string | undefined;
|
|
36
28
|
export declare function parseLocalStateProfiles(localStatePath: string): Map<string, string> | {
|
|
37
29
|
error: string;
|
|
38
30
|
};
|
|
@@ -42,7 +34,7 @@ export declare function parseSidebarSpaces(sidebarPath: string): SidebarSpace[]
|
|
|
42
34
|
export declare function discoverArcProfilesAt(arcDir: string): ArcDiscoveryResult;
|
|
43
35
|
export declare function discoverArcProfiles(): ArcDiscoveryResult;
|
|
44
36
|
/** One Arc Space, flattened with the Arc profile it belongs to. */
|
|
45
|
-
|
|
37
|
+
interface ArcSpaceProfile {
|
|
46
38
|
/** The agents-cli profile name: `arc-<space-title-slug>`. */
|
|
47
39
|
name: string;
|
|
48
40
|
profileId: string;
|
|
@@ -12,7 +12,7 @@ function isRecord(value) {
|
|
|
12
12
|
* so discovery is rooted here rather than at the Chromium user-data dir.
|
|
13
13
|
* `AGENTS_ARC_DIR` points tests and non-default installs at another root.
|
|
14
14
|
*/
|
|
15
|
-
|
|
15
|
+
function arcSupportDir() {
|
|
16
16
|
const override = process.env.AGENTS_ARC_DIR;
|
|
17
17
|
if (override)
|
|
18
18
|
return path.resolve(override);
|
|
@@ -68,7 +68,6 @@ export declare function storeRelaunchCommand(browserType: BrowserType, port: num
|
|
|
68
68
|
*/
|
|
69
69
|
export declare function resolveProfileSecretsEnv(secrets?: string): Promise<Record<string, string>>;
|
|
70
70
|
export declare function launchBrowser(profileName: string, browserType: BrowserType, port: number, options?: ChromeOptions, secrets?: string, customBinary?: string, isElectron?: boolean): Promise<LaunchResult>;
|
|
71
|
-
export declare function attachToChrome(port: number): Promise<string>;
|
|
72
71
|
export declare function killChrome(pid: number): void;
|
|
73
72
|
export declare function getRunningChromeInfo(profileName: string): {
|
|
74
73
|
pid: number;
|
|
@@ -128,7 +127,7 @@ export declare function getProcessUserDataDir(pid: number): string | null;
|
|
|
128
127
|
* testing without a live process.
|
|
129
128
|
*/
|
|
130
129
|
export declare function parseUserDataDirFromCommandLine(cmdline: string): string | null;
|
|
131
|
-
|
|
130
|
+
interface PortOccupant {
|
|
132
131
|
pid: number;
|
|
133
132
|
command: string;
|
|
134
133
|
}
|
|
@@ -139,3 +138,4 @@ export interface PortOccupant {
|
|
|
139
138
|
* `lsof` on POSIX; `netstat -ano` + `tasklist` on Windows.
|
|
140
139
|
*/
|
|
141
140
|
export declare function getPortOccupant(port: number): PortOccupant | null;
|
|
141
|
+
export {};
|
|
@@ -451,10 +451,6 @@ async function waitForDevToolsPort(port, profileName, child, store, timeoutMs =
|
|
|
451
451
|
throw new Error(`Browser for profile "${profileName}" (pid ${pid}) did not serve the DevTools protocol on ` +
|
|
452
452
|
`port ${port} within ${Math.round(timeoutMs / 1000)}s: ${lastError}`);
|
|
453
453
|
}
|
|
454
|
-
export async function attachToChrome(port) {
|
|
455
|
-
const { wsUrl } = await discoverBrowserWsUrl(port);
|
|
456
|
-
return wsUrl;
|
|
457
|
-
}
|
|
458
454
|
export function killChrome(pid) {
|
|
459
455
|
if (process.platform === 'win32') {
|
|
460
456
|
// On Windows `process.kill(pid, 'SIGINT')` maps to TerminateProcess — a
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { BrowserType } from './types.js';
|
|
2
|
-
|
|
2
|
+
interface ChromiumNativeProfile {
|
|
3
3
|
browser: BrowserType;
|
|
4
4
|
/** The agents-cli profile name: `<browser>-<display-name-slug>`. */
|
|
5
5
|
name: string;
|
|
@@ -10,7 +10,7 @@ export interface ChromiumNativeProfile {
|
|
|
10
10
|
/** Display-only name from Local State. */
|
|
11
11
|
displayName: string;
|
|
12
12
|
}
|
|
13
|
-
|
|
13
|
+
type ChromiumDiscoveryResult = {
|
|
14
14
|
ok: true;
|
|
15
15
|
profiles: ChromiumNativeProfile[];
|
|
16
16
|
userDataDir: string;
|
|
@@ -25,3 +25,4 @@ export declare function discoverChromiumProfilesAt(browser: BrowserType, userDat
|
|
|
25
25
|
export declare function discoverChromiumProfiles(browser: BrowserType): ChromiumDiscoveryResult;
|
|
26
26
|
/** Every browser whose native profiles agents-cli discovers on this platform. */
|
|
27
27
|
export declare function discoverableChromiumBrowsers(): BrowserType[];
|
|
28
|
+
export {};
|
|
@@ -3,39 +3,21 @@ export interface ArcNativeTabRef {
|
|
|
3
3
|
spaceId: string;
|
|
4
4
|
tabId: string;
|
|
5
5
|
}
|
|
6
|
-
|
|
6
|
+
interface ArcNativeTab extends ArcNativeTabRef {
|
|
7
7
|
url: string;
|
|
8
8
|
title: string;
|
|
9
9
|
}
|
|
10
|
-
|
|
10
|
+
interface ArcEnumeratedSpace {
|
|
11
11
|
windowId: string;
|
|
12
12
|
spaceId: string;
|
|
13
13
|
spaceTitle: string;
|
|
14
14
|
activeTabId?: string;
|
|
15
15
|
tabs: ArcNativeTab[];
|
|
16
16
|
}
|
|
17
|
-
export declare const ARC_NATIVE_CAPABILITIES: Readonly<{
|
|
18
|
-
readonly createTab: true;
|
|
19
|
-
readonly navigate: true;
|
|
20
|
-
readonly evaluateSync: true;
|
|
21
|
-
readonly closeTab: true;
|
|
22
|
-
readonly enumerate: true;
|
|
23
|
-
readonly screenshot: false;
|
|
24
|
-
readonly asyncEvaluate: false;
|
|
25
|
-
readonly networkCapture: false;
|
|
26
|
-
readonly consoleCapture: false;
|
|
27
|
-
readonly upload: false;
|
|
28
|
-
readonly pdf: false;
|
|
29
|
-
readonly background: false;
|
|
30
|
-
}>;
|
|
31
17
|
export declare class ArcNativeCapabilityError extends Error {
|
|
32
18
|
readonly capability: string;
|
|
33
19
|
constructor(capability: string, message?: string);
|
|
34
20
|
}
|
|
35
|
-
/** AppleScript strings do not implement JSON's \uXXXX escape syntax. */
|
|
36
|
-
export declare function escapeAppleScriptString(value: string): string;
|
|
37
|
-
/** No shell, bounded output and lifetime, and no blocking of the shared daemon. */
|
|
38
|
-
export declare function execAppleScript(source: string, timeoutMs?: number): Promise<string>;
|
|
39
21
|
export declare function isArcRunning(): Promise<boolean>;
|
|
40
22
|
export declare function enumerateArcSpaces(): Promise<ArcEnumeratedSpace[]>;
|
|
41
23
|
/** Caller durably records marker intent before calling; never use a real page URL as ownership. */
|
|
@@ -55,3 +37,4 @@ export declare function selectArcTab(ref: ArcNativeTabRef): Promise<void>;
|
|
|
55
37
|
export declare function selectWindowTab(windowId: string, tabId: string): Promise<boolean>;
|
|
56
38
|
/** Restore only while the task's new tab is still selected; preserve a later human choice. */
|
|
57
39
|
export declare function restoreArcSelection(owned: ArcNativeTabRef, previousTabId: string): Promise<boolean>;
|
|
40
|
+
export {};
|
|
@@ -1,10 +1,5 @@
|
|
|
1
1
|
/** Native Apple Events transport. Never uses CDP or launches an Arc process. */
|
|
2
2
|
import { spawn } from 'node:child_process';
|
|
3
|
-
export const ARC_NATIVE_CAPABILITIES = Object.freeze({
|
|
4
|
-
createTab: true, navigate: true, evaluateSync: true, closeTab: true, enumerate: true,
|
|
5
|
-
screenshot: false, asyncEvaluate: false, networkCapture: false, consoleCapture: false,
|
|
6
|
-
upload: false, pdf: false, background: false,
|
|
7
|
-
});
|
|
8
3
|
export class ArcNativeCapabilityError extends Error {
|
|
9
4
|
capability;
|
|
10
5
|
constructor(capability, message) {
|
|
@@ -24,7 +19,7 @@ function serialized(operation) {
|
|
|
24
19
|
return result;
|
|
25
20
|
}
|
|
26
21
|
/** AppleScript strings do not implement JSON's \uXXXX escape syntax. */
|
|
27
|
-
|
|
22
|
+
function escapeAppleScriptString(value) {
|
|
28
23
|
const parts = value.split(/([\u0000-\u001f])/u).filter(Boolean);
|
|
29
24
|
if (parts.length === 0)
|
|
30
25
|
return '""';
|
|
@@ -33,7 +28,7 @@ export function escapeAppleScriptString(value) {
|
|
|
33
28
|
: `"${part.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`).join(' & ') + ')';
|
|
34
29
|
}
|
|
35
30
|
/** No shell, bounded output and lifetime, and no blocking of the shared daemon. */
|
|
36
|
-
|
|
31
|
+
function execAppleScript(source, timeoutMs = TIMEOUT_MS) {
|
|
37
32
|
if (process.platform !== 'darwin')
|
|
38
33
|
return Promise.reject(new Error('Native Arc requires macOS.'));
|
|
39
34
|
if (!Number.isFinite(timeoutMs) || timeoutMs <= 0)
|
|
@@ -18,11 +18,6 @@ export declare class FirefoxCapabilityError extends Error {
|
|
|
18
18
|
readonly capability: string;
|
|
19
19
|
constructor(capability: string, message?: string);
|
|
20
20
|
}
|
|
21
|
-
/** A BiDi error frame carrying the protocol error + human message. */
|
|
22
|
-
export declare class FirefoxBiDiError extends Error {
|
|
23
|
-
readonly bidiError: string;
|
|
24
|
-
constructor(bidiError: string, message: string);
|
|
25
|
-
}
|
|
26
21
|
/**
|
|
27
22
|
* Minimal WebDriver BiDi client: request/response keyed by the `id` field, with
|
|
28
23
|
* events drained and ignored. Deliberately shaped like `CDPClient` so the
|
|
@@ -65,7 +60,7 @@ export declare function connectFirefox(profile: BrowserProfile, key: ConnectionK
|
|
|
65
60
|
}): Promise<FirefoxConnection>;
|
|
66
61
|
export declare function deserializeBidi(remote: unknown): unknown;
|
|
67
62
|
/** One top-level browsing context (a tab), flattened from `browsingContext.getTree`. */
|
|
68
|
-
|
|
63
|
+
interface BiDiContext {
|
|
69
64
|
context: string;
|
|
70
65
|
url: string;
|
|
71
66
|
}
|
|
@@ -101,3 +96,4 @@ export declare function bidiScreenshot(bidi: FirefoxBiDiClient, context: string,
|
|
|
101
96
|
* as the CDP click path does.
|
|
102
97
|
*/
|
|
103
98
|
export declare function bidiClickAt(bidi: FirefoxBiDiClient, context: string, x: number, y: number): Promise<void>;
|
|
99
|
+
export {};
|
|
@@ -38,7 +38,7 @@ export class FirefoxCapabilityError extends Error {
|
|
|
38
38
|
}
|
|
39
39
|
}
|
|
40
40
|
/** A BiDi error frame carrying the protocol error + human message. */
|
|
41
|
-
|
|
41
|
+
class FirefoxBiDiError extends Error {
|
|
42
42
|
bidiError;
|
|
43
43
|
constructor(bidiError, message) {
|
|
44
44
|
super(`Firefox BiDi ${bidiError}: ${message}`);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CDPClient } from '../cdp.js';
|
|
2
2
|
import type { BrowserProfile, ConnectionKey } from '../types.js';
|
|
3
|
-
|
|
3
|
+
interface LocalConnection {
|
|
4
4
|
cdp: CDPClient;
|
|
5
5
|
port: number;
|
|
6
6
|
pid: number;
|
|
@@ -52,3 +52,4 @@ export declare function connectLocal(endpoint: string, profile: BrowserProfile,
|
|
|
52
52
|
* stays the bare user-facing name and appears only in messages (RUSH-2709).
|
|
53
53
|
*/
|
|
54
54
|
key: ConnectionKey): Promise<LocalConnection>;
|
|
55
|
+
export {};
|
|
@@ -15,8 +15,8 @@ export interface SSHConnection {
|
|
|
15
15
|
* Server with cmd.exe as the default shell, so the launch/teardown command
|
|
16
16
|
* strings differ (no `&` backgrounding, no `lsof`, `.exe` instead of `.app`).
|
|
17
17
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
18
|
+
type RemoteOs = 'windows' | 'posix';
|
|
19
|
+
interface SSHConnectOptions {
|
|
20
20
|
/**
|
|
21
21
|
* Attach to a browser another device already declared (identity-bearing or
|
|
22
22
|
* a fungible name we don't declare here). Do not launch a fresh remote
|
|
@@ -92,7 +92,6 @@ export declare function buildLaunchCmd(remoteOs: RemoteOs, browserType: string,
|
|
|
92
92
|
*/
|
|
93
93
|
export declare function buildKillCmd(remoteOs: RemoteOs, port: number): string;
|
|
94
94
|
export declare function ensureRemoteBrowser(user: string, host: string, browserType: string, port: number, remoteOs: RemoteOs, customBinary?: string): Promise<void>;
|
|
95
|
-
export declare function restartRemoteBrowser(user: string, host: string, browserType: string, port: number, remoteOs: RemoteOs, customBinary?: string): Promise<void>;
|
|
96
95
|
/**
|
|
97
96
|
* Kill the remote browser holding the CDP port. Invoked on stop/cleanup so the
|
|
98
97
|
* task-launched (Windows) / detached (posix) browser process is not orphaned when
|
|
@@ -382,13 +382,6 @@ export async function ensureRemoteBrowser(user, host, browserType, port, remoteO
|
|
|
382
382
|
});
|
|
383
383
|
});
|
|
384
384
|
}
|
|
385
|
-
export async function restartRemoteBrowser(user, host, browserType, port, remoteOs, customBinary) {
|
|
386
|
-
// Kill any process using the remote debugging port
|
|
387
|
-
await runSSHCommand(user, host, buildKillCmd(remoteOs, port));
|
|
388
|
-
await sleep(500);
|
|
389
|
-
await ensureRemoteBrowser(user, host, browserType, port, remoteOs, customBinary);
|
|
390
|
-
await sleep(1500);
|
|
391
|
-
}
|
|
392
385
|
/**
|
|
393
386
|
* Kill the remote browser holding the CDP port. Invoked on stop/cleanup so the
|
|
394
387
|
* task-launched (Windows) / detached (posix) browser process is not orphaned when
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
interface FirefoxIniProfile {
|
|
2
2
|
/** `Name=` of the `[ProfileN]` section. */
|
|
3
3
|
name: string;
|
|
4
4
|
/** Absolute profile directory (`Path=` resolved against the ini's dir when `IsRelative=1`). */
|
|
@@ -8,7 +8,7 @@ export interface FirefoxIniProfile {
|
|
|
8
8
|
/** The `profiles.ini` this entry came from. */
|
|
9
9
|
iniPath: string;
|
|
10
10
|
}
|
|
11
|
-
|
|
11
|
+
type FirefoxDiscoveryResult = {
|
|
12
12
|
ok: true;
|
|
13
13
|
profiles: FirefoxIniProfile[];
|
|
14
14
|
iniPaths: string[];
|
|
@@ -37,7 +37,7 @@ export declare function parseProfilesIni(iniPath: string): FirefoxIniProfile[] |
|
|
|
37
37
|
export declare function discoverFirefoxProfilesAt(roots: string[]): FirefoxDiscoveryResult;
|
|
38
38
|
export declare function discoverFirefoxProfiles(): FirefoxDiscoveryResult;
|
|
39
39
|
/** One discovered Firefox profile as an agents-cli profile row. */
|
|
40
|
-
|
|
40
|
+
interface FirefoxDiscoveredProfile {
|
|
41
41
|
/** The agents-cli profile name: `firefox-<name-slug>`. */
|
|
42
42
|
name: string;
|
|
43
43
|
profileName: string;
|
|
@@ -66,3 +66,4 @@ export declare function firefoxProfilePort(profileDir: string, taken?: Set<numbe
|
|
|
66
66
|
* characters of their directory hash appended so the names stay distinct.
|
|
67
67
|
*/
|
|
68
68
|
export declare function firefoxDiscoveredProfiles(result: FirefoxDiscoveryResult): FirefoxDiscoveredProfile[];
|
|
69
|
+
export {};
|
|
@@ -7,7 +7,7 @@ import type { NetworkRequest } from './types.js';
|
|
|
7
7
|
*
|
|
8
8
|
* Spec: http://www.softwareishard.com/blog/har-12-spec/
|
|
9
9
|
*/
|
|
10
|
-
|
|
10
|
+
interface HarLog {
|
|
11
11
|
version: '1.2';
|
|
12
12
|
creator: {
|
|
13
13
|
name: string;
|
|
@@ -16,7 +16,7 @@ export interface HarLog {
|
|
|
16
16
|
pages: HarPage[];
|
|
17
17
|
entries: HarEntry[];
|
|
18
18
|
}
|
|
19
|
-
|
|
19
|
+
interface HarPage {
|
|
20
20
|
startedDateTime: string;
|
|
21
21
|
id: string;
|
|
22
22
|
title: string;
|
|
@@ -25,7 +25,7 @@ export interface HarPage {
|
|
|
25
25
|
onLoad: number;
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
|
-
|
|
28
|
+
interface HarEntry {
|
|
29
29
|
startedDateTime: string;
|
|
30
30
|
time: number;
|
|
31
31
|
request: HarRequest;
|
|
@@ -33,7 +33,7 @@ export interface HarEntry {
|
|
|
33
33
|
cache: Record<string, never>;
|
|
34
34
|
timings: HarTimings;
|
|
35
35
|
}
|
|
36
|
-
|
|
36
|
+
interface HarRequest {
|
|
37
37
|
method: string;
|
|
38
38
|
url: string;
|
|
39
39
|
httpVersion: string;
|
|
@@ -46,7 +46,7 @@ export interface HarRequest {
|
|
|
46
46
|
headersSize: number;
|
|
47
47
|
bodySize: number;
|
|
48
48
|
}
|
|
49
|
-
|
|
49
|
+
interface HarResponse {
|
|
50
50
|
status: number;
|
|
51
51
|
statusText: string;
|
|
52
52
|
httpVersion: string;
|
|
@@ -61,12 +61,12 @@ export interface HarResponse {
|
|
|
61
61
|
headersSize: number;
|
|
62
62
|
bodySize: number;
|
|
63
63
|
}
|
|
64
|
-
|
|
64
|
+
interface HarTimings {
|
|
65
65
|
send: number;
|
|
66
66
|
wait: number;
|
|
67
67
|
receive: number;
|
|
68
68
|
}
|
|
69
|
-
|
|
69
|
+
interface BuildHarOptions {
|
|
70
70
|
creatorName?: string;
|
|
71
71
|
creatorVersion?: string;
|
|
72
72
|
}
|
|
@@ -82,3 +82,4 @@ export interface BuildHarOptions {
|
|
|
82
82
|
export declare function buildHar(requests: NetworkRequest[], opts?: BuildHarOptions): {
|
|
83
83
|
log: HarLog;
|
|
84
84
|
};
|
|
85
|
+
export {};
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { type PidSessionEntry } from '../session/pid-registry.js';
|
|
2
2
|
import { type ReapResult, type Task } from './types.js';
|
|
3
|
-
/** Default idle window before an untouched task is reaped. */
|
|
4
|
-
export declare const DEFAULT_IDLE_MS: number;
|
|
5
3
|
/**
|
|
6
4
|
* The slice of `BrowserService` the reaper needs. Structural, so a test drives
|
|
7
5
|
* it with a stub and `BrowserService` satisfies it without an import — which
|
|
@@ -49,7 +47,7 @@ export interface ReapOptions {
|
|
|
49
47
|
dryRun?: boolean;
|
|
50
48
|
deps?: ReapDeps;
|
|
51
49
|
}
|
|
52
|
-
|
|
50
|
+
interface LiveIdentities {
|
|
53
51
|
sessions: Set<string>;
|
|
54
52
|
launches: Set<string>;
|
|
55
53
|
}
|
|
@@ -96,3 +94,4 @@ export declare function taskOwnerIsGone(task: Task, live: LiveIdentities, deps?:
|
|
|
96
94
|
* asked for, and an in-flight recording is itself proof the task is in use.
|
|
97
95
|
*/
|
|
98
96
|
export declare function reapAbandonedTasks(service: ReapableService, opts?: ReapOptions): Promise<ReapResult>;
|
|
97
|
+
export {};
|
|
@@ -30,7 +30,7 @@ import { isPidAlive, isSessionIdLiveOnProcessTable } from '../session/active.js'
|
|
|
30
30
|
import { listPidSessionEntries, sessionIdFromLivePid } from '../session/pid-registry.js';
|
|
31
31
|
import { parseConnectionKey } from './types.js';
|
|
32
32
|
/** Default idle window before an untouched task is reaped. */
|
|
33
|
-
|
|
33
|
+
const DEFAULT_IDLE_MS = 30 * 60_000;
|
|
34
34
|
/**
|
|
35
35
|
* Session and launch ids belonging to a process that is alive right now.
|
|
36
36
|
*
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as net from 'net';
|
|
2
2
|
import { BrowserService } from './service.js';
|
|
3
3
|
import type { IPCRequest, IPCResponse } from './types.js';
|
|
4
|
-
|
|
4
|
+
interface IPCRequestOptions {
|
|
5
5
|
autoStartDaemon?: boolean;
|
|
6
6
|
/**
|
|
7
7
|
* Opt-in client-side deadline in ms — most IPC actions (browser automation,
|
|
@@ -42,7 +42,7 @@ export declare function isBrowserServiceResponsive(endpoint?: string, attempts?:
|
|
|
42
42
|
*/
|
|
43
43
|
export declare function waitForBrowserService(_socketPath: string, timeoutMs?: number): Promise<void>;
|
|
44
44
|
/** Outcome of {@link stopBrowserService} — what the service-scoped stop did. */
|
|
45
|
-
|
|
45
|
+
interface BrowserServiceStopResult {
|
|
46
46
|
/** The browser IPC service was reachable before the stop was requested. */
|
|
47
47
|
wasRunning: boolean;
|
|
48
48
|
/** The shared daemon stayed running while only browser IPC was stopped. */
|
|
@@ -83,7 +83,7 @@ export declare function clearDeadSocketFile(endpoint: string, socketPath: string
|
|
|
83
83
|
* caller that produced them, while the process and socket stay warm between
|
|
84
84
|
* actions.
|
|
85
85
|
*/
|
|
86
|
-
|
|
86
|
+
declare class BrowserIPCConnection {
|
|
87
87
|
private readonly socket;
|
|
88
88
|
private buffer;
|
|
89
89
|
private pending;
|
|
@@ -201,3 +201,4 @@ export declare function connectBrowserIPC(opts?: IPCRequestOptions): Promise<Bro
|
|
|
201
201
|
* actually fires without needing a slow real IPC action to provoke it.
|
|
202
202
|
*/
|
|
203
203
|
export declare function sendRawIPCRequest(request: IPCRequest, opts?: IPCRequestOptions): Promise<IPCResponse>;
|
|
204
|
+
export {};
|
package/dist/lib/browser/ipc.js
CHANGED
|
@@ -353,7 +353,7 @@ export async function clearDeadSocketFile(endpoint, socketPath) {
|
|
|
353
353
|
* caller that produced them, while the process and socket stay warm between
|
|
354
354
|
* actions.
|
|
355
355
|
*/
|
|
356
|
-
|
|
356
|
+
class BrowserIPCConnection {
|
|
357
357
|
socket;
|
|
358
358
|
buffer = '';
|
|
359
359
|
pending;
|
|
@@ -52,7 +52,7 @@ export declare function credKeysForService(service: string): {
|
|
|
52
52
|
} | null;
|
|
53
53
|
/** The interactive login URL for a service, or null. */
|
|
54
54
|
export declare function loginUrlForService(service: string): string | null;
|
|
55
|
-
|
|
55
|
+
interface CookieRow {
|
|
56
56
|
host_key: string;
|
|
57
57
|
name: string;
|
|
58
58
|
}
|
|
@@ -63,13 +63,6 @@ export interface CookieRow {
|
|
|
63
63
|
export declare function detectServices(rows: CookieRow[]): string[];
|
|
64
64
|
/** Map a URL to a known login-gated service key, or null. */
|
|
65
65
|
export declare function serviceForUrl(url: string): string | null;
|
|
66
|
-
/** A saved-login row from Chromium `Login Data` (username plaintext; password
|
|
67
|
-
* encrypted and never read). */
|
|
68
|
-
export interface LoginRow {
|
|
69
|
-
origin_url: string;
|
|
70
|
-
username_value: string;
|
|
71
|
-
signon_realm: string;
|
|
72
|
-
}
|
|
73
66
|
/**
|
|
74
67
|
* Map a profile's saved logins to service → account username (identity, not
|
|
75
68
|
* session). Best-effort; `{}` if `Login Data` is unreadable. The first non-empty
|
|
@@ -13,7 +13,7 @@ export interface ProfileDeclaration {
|
|
|
13
13
|
* parallel store callers read for resolution.
|
|
14
14
|
*/
|
|
15
15
|
export declare function centralBrowserProfiles(): Record<string, BrowserProfileConfig>;
|
|
16
|
-
|
|
16
|
+
interface CentralClaimResult {
|
|
17
17
|
claimed: string[];
|
|
18
18
|
skipped: string[];
|
|
19
19
|
}
|
|
@@ -67,3 +67,4 @@ export declare function profileRegistry(): Map<string, ProfileDeclaration[]>;
|
|
|
67
67
|
export declare function declaringDevices(name: string): string[];
|
|
68
68
|
/** Exactly one declaring device is identity-bearing; several are fungible. */
|
|
69
69
|
export declare function profileKind(name: string): 'identity' | 'fungible' | null;
|
|
70
|
+
export {};
|
|
@@ -30,11 +30,6 @@
|
|
|
30
30
|
export declare const FLEET_REMOTE_ENV = "AGENTS_FLEET_REMOTE";
|
|
31
31
|
/** True when this process was dispatched to this machine by a fleet `--device` or `agents ssh … agents browser` run. */
|
|
32
32
|
export declare function isFleetRemoteInvocation(env?: NodeJS.ProcessEnv): boolean;
|
|
33
|
-
/**
|
|
34
|
-
* Whether this machine allows other fleet machines to drive its browser. Reads
|
|
35
|
-
* the device-scope `browser.remote-control` config key. Unset = off (deny).
|
|
36
|
-
*/
|
|
37
|
-
export declare function remoteControlEnabled(): boolean;
|
|
38
33
|
/**
|
|
39
34
|
* Guard the browser-drive entry point. A fleet-remote invocation may only drive
|
|
40
35
|
* this machine's browser when the owner opted in; otherwise throw a clear,
|
|
@@ -62,5 +57,3 @@ export declare function assertRemoteControlAllowedForRequest(fleetRemote: boolea
|
|
|
62
57
|
actor?: string;
|
|
63
58
|
enabled?: boolean;
|
|
64
59
|
}): void;
|
|
65
|
-
/** The refusal text, shared by the CLI-side and daemon-side gates. */
|
|
66
|
-
export declare function remoteControlRefusal(who: string): string;
|
|
@@ -37,7 +37,7 @@ export function isFleetRemoteInvocation(env = process.env) {
|
|
|
37
37
|
* Whether this machine allows other fleet machines to drive its browser. Reads
|
|
38
38
|
* the device-scope `browser.remote-control` config key. Unset = off (deny).
|
|
39
39
|
*/
|
|
40
|
-
|
|
40
|
+
function remoteControlEnabled() {
|
|
41
41
|
return getConfigValue('browser.remote-control').value === true;
|
|
42
42
|
}
|
|
43
43
|
/**
|
|
@@ -78,7 +78,7 @@ export function assertRemoteControlAllowedForRequest(fleetRemote, opts = {}) {
|
|
|
78
78
|
throw new Error(remoteControlRefusal(opts.actor || 'A fleet machine'));
|
|
79
79
|
}
|
|
80
80
|
/** The refusal text, shared by the CLI-side and daemon-side gates. */
|
|
81
|
-
|
|
81
|
+
function remoteControlRefusal(who) {
|
|
82
82
|
return (`${who} tried to drive this machine's browser over \`browser --device\`, but remote ` +
|
|
83
83
|
`browser control is off here. To allow it, run on THIS machine:\n` +
|
|
84
84
|
` agents browser remote-control on`);
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { type ProfileDeclaration } from './registry.js';
|
|
2
1
|
import { type BrowserProfile, type ConnectionKey } from './types.js';
|
|
3
2
|
import type { BrowserProfileConfig } from '../types.js';
|
|
4
3
|
export type DeviceProbeResult = {
|
|
@@ -9,7 +8,7 @@ export type DeviceProbeResult = {
|
|
|
9
8
|
reason: string;
|
|
10
9
|
};
|
|
11
10
|
export type DeviceProbe = (device: string) => DeviceProbeResult;
|
|
12
|
-
|
|
11
|
+
interface ResolvedBrowserTarget {
|
|
13
12
|
name: string;
|
|
14
13
|
kind: 'identity' | 'fungible';
|
|
15
14
|
/** Device the daemon will talk to. */
|
|
@@ -34,13 +33,9 @@ export declare function shouldForkProfile(kind: 'identity' | 'fungible', conn: {
|
|
|
34
33
|
size: number;
|
|
35
34
|
};
|
|
36
35
|
}): boolean;
|
|
37
|
-
export declare function profileFromDeclaration(name: string, declaration: ProfileDeclaration): BrowserProfile;
|
|
38
36
|
/** Runtime key: profile name plus the resolved device. Drops `@endpoint-N`. */
|
|
39
37
|
export declare function profileConnectionKey(profileName: string, device: string): ConnectionKey;
|
|
40
|
-
/** Declared names that look like `query` — used in the undeclared error. */
|
|
41
|
-
export declare function similarProfileNames(query: string, names: string[]): string[];
|
|
42
38
|
export declare function undeclaredProfileError(name: string): Error;
|
|
43
|
-
export declare function unreachableDeclaringDevicesError(name: string, devices: string[], failures: string[]): Error;
|
|
44
39
|
export declare function sshEndpointForDeclaration(device: string, config: BrowserProfileConfig, endpointName?: string, os?: string): string;
|
|
45
40
|
/**
|
|
46
41
|
* Decide where `name` connects. Never claims a central leftover. Never
|
|
@@ -68,3 +63,4 @@ export declare function adoptLegacyRuntimeIfLocal(local: boolean, profileName: s
|
|
|
68
63
|
export declare function migrateLegacyRuntimeDir(profileName: string, newKey: ConnectionKey, runtimeRoot: string): void;
|
|
69
64
|
/** True when a live key is a leftover `@endpoint-N` key of `profileName`. */
|
|
70
65
|
export declare function isLegacyEndpointKey(key: string, profileName: string): boolean;
|
|
66
|
+
export {};
|
|
@@ -24,7 +24,7 @@ export function shouldForkProfile(kind, conn) {
|
|
|
24
24
|
return false;
|
|
25
25
|
return Boolean(conn.electron && conn.tasks.size > 0);
|
|
26
26
|
}
|
|
27
|
-
|
|
27
|
+
function profileFromDeclaration(name, declaration) {
|
|
28
28
|
const config = declaration.config;
|
|
29
29
|
return {
|
|
30
30
|
name,
|
|
@@ -71,7 +71,7 @@ function levenshtein(a, b) {
|
|
|
71
71
|
return row[b.length];
|
|
72
72
|
}
|
|
73
73
|
/** Declared names that look like `query` — used in the undeclared error. */
|
|
74
|
-
|
|
74
|
+
function similarProfileNames(query, names) {
|
|
75
75
|
const q = query.toLowerCase();
|
|
76
76
|
const maxDist = Math.max(2, Math.floor(q.length / 4));
|
|
77
77
|
return names
|
|
@@ -105,7 +105,7 @@ export function undeclaredProfileError(name) {
|
|
|
105
105
|
? ['Similar names:', ...similarLines]
|
|
106
106
|
: ['No device declares a similar name.']), `Create it on the machine that hosts the browser: agents browser profiles create ${name} --browser <chrome|comet|chromium|brave|edge|arc|custom>`, `Or, if it is a leftover central profile, claim it: agents browser profiles claim ${name}`));
|
|
107
107
|
}
|
|
108
|
-
|
|
108
|
+
function unreachableDeclaringDevicesError(name, devices, failures) {
|
|
109
109
|
return new Error(lines(`Browser profile "${name}" is declared on ${devices.join(', ')}, but none of those devices are reachable.`, ...failures.map((line) => ` ${line}`), `A local browser will not be launched — that would be a logged-out copy of an identity-bearing profile.`));
|
|
110
110
|
}
|
|
111
111
|
/**
|