@phnx-labs/agents-cli 1.22.113 → 1.22.114
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 +29 -0
- package/README.md +10 -11
- package/dist/cli/command-registry.d.ts +0 -60
- package/dist/cli/command-registry.js +59 -61
- package/dist/commands/apply.d.ts +0 -4
- package/dist/commands/apply.js +3 -3
- 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/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/feed.d.ts +3 -3
- package/dist/commands/feed.js +1 -1
- package/dist/commands/focus.d.ts +4 -4
- 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/message.d.ts +1 -1
- package/dist/commands/message.js +3 -3
- package/dist/commands/projects.d.ts +2 -18
- package/dist/commands/projects.js +89 -3
- package/dist/commands/resource-view.d.ts +3 -2
- package/dist/commands/resume.d.ts +0 -1
- package/dist/commands/resume.js +1 -1
- 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 +21 -2
- package/dist/commands/sessions-backfill.d.ts +2 -35
- package/dist/commands/sessions-backfill.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 -5
- 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 +10 -10
- package/dist/commands/setup-mine.d.ts +0 -6
- package/dist/commands/setup-mine.js +1 -1
- package/dist/commands/setup.d.ts +3 -4
- package/dist/commands/setup.js +1 -1
- package/dist/commands/share.d.ts +8 -8
- 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 +1 -1
- package/dist/commands/tmux.d.ts +1 -1
- package/dist/commands/tmux.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/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/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 +5 -5
- 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 +4 -4
- package/dist/lib/browser/service.d.ts +4 -4
- 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 +1 -1
- 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/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/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-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 +1 -1
- 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 +2 -1
- 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 +2 -1
- 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/events.d.ts +2 -47
- package/dist/lib/feed/events.js +1 -141
- package/dist/lib/feed/feed.d.ts +9 -42
- package/dist/lib/feed/feed.js +1 -60
- package/dist/lib/feed/pr-status.d.ts +0 -2
- package/dist/lib/feed/pr-status.js +1 -5
- package/dist/lib/feed/watch.d.ts +1 -2
- package/dist/lib/feed/watch.js +0 -1
- 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 +2 -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 -65
- package/dist/lib/git.js +3 -142
- 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 +4 -3
- 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/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/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/reconcile-and-repair.d.ts +5 -4
- package/dist/lib/redact.d.ts +7 -1
- package/dist/lib/redact.js +94 -3
- package/dist/lib/refresh-coordinator.d.ts +2 -1
- package/dist/lib/refresh.d.ts +3 -2
- 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-client.d.ts +0 -17
- package/dist/lib/secrets-client.js +4 -26
- 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 +2 -1
- package/dist/lib/session/detached.js +2 -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 +2 -5
- package/dist/lib/session/remote/peer-stream.js +2 -2
- 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 +5 -5
- 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/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/settings-manifest.d.ts +2 -1
- package/dist/lib/share/delete.d.ts +5 -4
- package/dist/lib/share/html.d.ts +0 -2
- package/dist/lib/share/html.js +9 -9
- package/dist/lib/share/http-error.d.ts +3 -2
- package/dist/lib/share/og.d.ts +2 -1
- package/dist/lib/share/provision.d.ts +2 -2
- package/dist/lib/share/publish.d.ts +4 -13
- package/dist/lib/share/publish.js +2 -2
- package/dist/lib/shim-heal.d.ts +1 -5
- package/dist/lib/shim-heal.js +0 -6
- package/dist/lib/smart-launch.d.ts +4 -5
- package/dist/lib/smart-launch.js +1 -1
- package/dist/lib/snapshot.d.ts +3 -2
- package/dist/lib/ssh-exec.d.ts +5 -4
- 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.js +1 -1
- package/dist/lib/state.d.ts +1 -3
- package/dist/lib/state.js +1 -4
- 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 +4 -3
- 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/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 +1 -3
- package/dist/lib/traces/provision.js +1 -1
- 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 +3 -3
- 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 +2 -3
- package/scripts/postinstall.js +5 -4
- package/dist/commands/pty.d.ts +0 -20
- package/dist/commands/pty.js +0 -404
- 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
|
@@ -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
|
/**
|
|
@@ -46,7 +46,7 @@ export declare function identityLoopbackMismatch(profile: BrowserProfileWithDecl
|
|
|
46
46
|
* The one-value-per-file fields are kept for backward compat with older
|
|
47
47
|
* builds; `meta.json` is additive and consulted preferentially.
|
|
48
48
|
*/
|
|
49
|
-
|
|
49
|
+
interface ProfileRuntime {
|
|
50
50
|
pid: number;
|
|
51
51
|
port?: number;
|
|
52
52
|
command?: string;
|
|
@@ -110,7 +110,7 @@ export declare function isProcessAlive(pid: number, expectedCommand?: string): b
|
|
|
110
110
|
* Combines the on-disk meta record with live-process probes so callers can
|
|
111
111
|
* tell at a glance which entries are alive, stale, or have outright leaked.
|
|
112
112
|
*/
|
|
113
|
-
|
|
113
|
+
interface ProfileSnapshot {
|
|
114
114
|
/** Composite name as the cache dir is keyed: `<profile>` or `<profile>@<endpoint>`. */
|
|
115
115
|
name: string;
|
|
116
116
|
/** Absolute path of the cache dir. */
|
|
@@ -160,7 +160,7 @@ export declare function reapOrphanedProcesses(): {
|
|
|
160
160
|
*/
|
|
161
161
|
export declare function isProfileInUse(profileName: string): boolean;
|
|
162
162
|
/** Why a profile is considered dead. */
|
|
163
|
-
|
|
163
|
+
type PruneReason = 'binary-missing' | 'never-used';
|
|
164
164
|
export interface PruneCandidate {
|
|
165
165
|
name: string;
|
|
166
166
|
scope: PruneProfileClass;
|
|
@@ -168,7 +168,7 @@ export interface PruneCandidate {
|
|
|
168
168
|
/** Cache dirs that would be removed along with the config entry. */
|
|
169
169
|
cacheDirs: string[];
|
|
170
170
|
}
|
|
171
|
-
|
|
171
|
+
interface PrunePlan {
|
|
172
172
|
/** Profiles that would be (or were) removed. */
|
|
173
173
|
candidates: PruneCandidate[];
|
|
174
174
|
/** Profiles deliberately left alone, with the guard that kept them. */
|
|
@@ -6,7 +6,7 @@ import { type ReapOptions } from './hygiene.js';
|
|
|
6
6
|
import { type RefOpts, type RefNode } from './refs.js';
|
|
7
7
|
import type { TargetFilter, PageOpenResult, ArcNativeProfileIdentity, FirefoxProfileIdentity } from './types.js';
|
|
8
8
|
import { FirefoxBiDiClient } from './drivers/firefox.js';
|
|
9
|
-
|
|
9
|
+
type UploadMode = 'auto' | 'input' | 'drop' | 'chooser';
|
|
10
10
|
export declare function resolveScreenshotOutputPath(outputPath: string | undefined, automaticPath: string): string;
|
|
11
11
|
/**
|
|
12
12
|
* Parse a `targetFilter` string into its kind + value, or return `null`
|
|
@@ -137,7 +137,7 @@ type TargetInfo = {
|
|
|
137
137
|
title?: string;
|
|
138
138
|
};
|
|
139
139
|
/** Describes a ref that was re-resolved from a drifted integer via its cached descriptor. */
|
|
140
|
-
|
|
140
|
+
interface HealInfo {
|
|
141
141
|
from: number;
|
|
142
142
|
to: number;
|
|
143
143
|
role: string;
|
|
@@ -161,7 +161,7 @@ export declare function resolveTaskIdentity(forwarded: {
|
|
|
161
161
|
launchId?: string;
|
|
162
162
|
sessionId?: string;
|
|
163
163
|
};
|
|
164
|
-
|
|
164
|
+
interface StartOptions {
|
|
165
165
|
taskName?: string;
|
|
166
166
|
url?: string;
|
|
167
167
|
endpointName?: string;
|
|
@@ -180,7 +180,7 @@ export interface StartOptions {
|
|
|
180
180
|
/** Injected reachability probe — production uses ssh; tests pass a fake. */
|
|
181
181
|
probe?: DeviceProbe;
|
|
182
182
|
}
|
|
183
|
-
|
|
183
|
+
interface StartResult {
|
|
184
184
|
task: string;
|
|
185
185
|
name: string;
|
|
186
186
|
tabId?: string;
|
|
@@ -15,16 +15,6 @@ export interface ProfileArtifacts {
|
|
|
15
15
|
profile: string;
|
|
16
16
|
artifacts: BrowserArtifact[];
|
|
17
17
|
}
|
|
18
|
-
/** Every capture for one profile, newest first. */
|
|
19
|
-
export declare function listProfileArtifacts(profile: string): BrowserArtifact[];
|
|
20
|
-
/**
|
|
21
|
-
* Captures grouped by profile. With `only` set, returns just that profile (even
|
|
22
|
-
* when empty); otherwise every profile dir on disk that has at least one capture.
|
|
23
|
-
*/
|
|
24
|
-
export declare function listBrowserSessions(only?: string): ProfileArtifacts[];
|
|
25
|
-
/** Per-kind counts over a flat artifact list — shared by the printed table and
|
|
26
|
-
* the interactive row labels. */
|
|
27
|
-
export declare function countByKind(artifacts: BrowserArtifact[]): Record<ArtifactKind, number>;
|
|
28
18
|
/** Human table for the CLI. Returns lines (no trailing newline). */
|
|
29
19
|
export declare function renderBrowserSessions(groups: ProfileArtifacts[]): string;
|
|
30
20
|
/**
|
|
@@ -62,7 +62,7 @@ function walkFiles(dir) {
|
|
|
62
62
|
return out;
|
|
63
63
|
}
|
|
64
64
|
/** Every capture for one profile, newest first. */
|
|
65
|
-
|
|
65
|
+
function listProfileArtifacts(profile) {
|
|
66
66
|
const root = getProfileRuntimeDir(profile);
|
|
67
67
|
const artifacts = [];
|
|
68
68
|
const sessionsRoot = path.join(root, 'sessions');
|
|
@@ -97,7 +97,7 @@ export function listProfileArtifacts(profile) {
|
|
|
97
97
|
* Captures grouped by profile. With `only` set, returns just that profile (even
|
|
98
98
|
* when empty); otherwise every profile dir on disk that has at least one capture.
|
|
99
99
|
*/
|
|
100
|
-
|
|
100
|
+
function listBrowserSessions(only) {
|
|
101
101
|
let profiles;
|
|
102
102
|
if (only) {
|
|
103
103
|
// A profile's live tasks/captures may live under a composite runtime dir
|
|
@@ -127,7 +127,7 @@ export function listBrowserSessions(only) {
|
|
|
127
127
|
}
|
|
128
128
|
/** Per-kind counts over a flat artifact list — shared by the printed table and
|
|
129
129
|
* the interactive row labels. */
|
|
130
|
-
|
|
130
|
+
function countByKind(artifacts) {
|
|
131
131
|
const counts = { screenshot: 0, pdf: 0, recording: 0, download: 0 };
|
|
132
132
|
for (const a of artifacts)
|
|
133
133
|
counts[a.kind]++;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Readable, Writable } from 'stream';
|
|
2
|
-
|
|
2
|
+
interface BrowserIPCStreamOptions {
|
|
3
3
|
input: Readable;
|
|
4
4
|
output: Writable;
|
|
5
5
|
task?: string;
|
|
@@ -14,3 +14,4 @@ export interface BrowserIPCStreamOptions {
|
|
|
14
14
|
* The Node process and daemon connection stay alive until input closes.
|
|
15
15
|
*/
|
|
16
16
|
export declare function runBrowserIPCStream(options: BrowserIPCStreamOptions): Promise<void>;
|
|
17
|
+
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
interface TaskBinding {
|
|
2
2
|
device: string;
|
|
3
3
|
profile?: string;
|
|
4
4
|
url?: string;
|
|
@@ -6,9 +6,9 @@ export interface TaskBinding {
|
|
|
6
6
|
launchId?: string;
|
|
7
7
|
createdAt: number;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
type TaskIndex = Record<string, TaskBinding>;
|
|
10
10
|
export declare const REJECT_DEVICE_MESSAGE: string;
|
|
11
|
-
|
|
11
|
+
type TaskRoute = {
|
|
12
12
|
kind: 'proceed';
|
|
13
13
|
task?: string;
|
|
14
14
|
device: string;
|
|
@@ -24,7 +24,6 @@ export type TaskRoute = {
|
|
|
24
24
|
message: string;
|
|
25
25
|
};
|
|
26
26
|
export declare function isTerminalBrowserVerb(verb: string): boolean;
|
|
27
|
-
export declare function taskIndexPath(): string;
|
|
28
27
|
export declare function readTaskIndex(): TaskIndex;
|
|
29
28
|
export declare function getTaskBinding(name: string): TaskBinding | undefined;
|
|
30
29
|
export declare function listTaskBindings(): Array<{
|
|
@@ -76,3 +75,4 @@ export declare function resolveTaskRoute(opts: {
|
|
|
76
75
|
* the captured file to the requested path. Same path → no copy.
|
|
77
76
|
*/
|
|
78
77
|
export declare function honorScreenshotOutput(requested: string | undefined, daemonPath: string): string;
|
|
78
|
+
export {};
|
|
@@ -32,7 +32,7 @@ const TERMINAL_BROWSER_VERBS = new Set(['done', 'stop']);
|
|
|
32
32
|
export function isTerminalBrowserVerb(verb) {
|
|
33
33
|
return TERMINAL_BROWSER_VERBS.has(verb);
|
|
34
34
|
}
|
|
35
|
-
|
|
35
|
+
function taskIndexPath() {
|
|
36
36
|
return path.join(getBrowserRuntimeDir(), 'task-index.json');
|
|
37
37
|
}
|
|
38
38
|
export function readTaskIndex() {
|
|
@@ -523,17 +523,6 @@ export interface PageOpenResult {
|
|
|
523
523
|
refreshed: boolean;
|
|
524
524
|
message?: string;
|
|
525
525
|
}
|
|
526
|
-
/** Subset of IPCResponse describing a recording start result. */
|
|
527
|
-
export interface RecordStartFields {
|
|
528
|
-
fps?: number;
|
|
529
|
-
durationCapSec?: number;
|
|
530
|
-
maxMb?: number;
|
|
531
|
-
}
|
|
532
|
-
/** Subset of IPCResponse describing a recording stop result. */
|
|
533
|
-
export interface RecordStopFields {
|
|
534
|
-
durationMs?: number;
|
|
535
|
-
stopReason?: 'manual' | 'duration-cap' | 'size-cap';
|
|
536
|
-
}
|
|
537
526
|
export interface IPCResponse {
|
|
538
527
|
ok: boolean;
|
|
539
528
|
error?: string;
|
|
@@ -635,15 +624,6 @@ export interface DeviceDescriptor {
|
|
|
635
624
|
deviceScaleFactor: number;
|
|
636
625
|
mobile: boolean;
|
|
637
626
|
}
|
|
638
|
-
export declare const TASK_ID_REGEX: RegExp;
|
|
639
627
|
export declare function isValidTaskId(id: string): boolean;
|
|
640
628
|
export declare function generateTaskId(): string;
|
|
641
629
|
export declare function generateShortId(): string;
|
|
642
|
-
export declare function generateFunName(): string;
|
|
643
|
-
/**
|
|
644
|
-
* Auto-generated task name: `<adjective>-<noun>-<noun>-<hex8>`, e.g.
|
|
645
|
-
* `swift-crab-falcon-a3f92b1c`. Three English words make it memorable and
|
|
646
|
-
* easy to read; 32 bits of hex give every spawned task enough entropy that
|
|
647
|
-
* parallel agents never collide on the daemon side.
|
|
648
|
-
*/
|
|
649
|
-
export declare function generateTaskName(): string;
|