@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
|
@@ -17,8 +17,9 @@
|
|
|
17
17
|
* Layering — pure vs I/O, so the valuable logic is unit-testable without SSH:
|
|
18
18
|
* - `scrapeLogin` / `classifyLoginFlow` / `selectLoginTargets` /
|
|
19
19
|
* `buildRemoteLoginSshCommand` / `buildDashboardHtml` are PURE.
|
|
20
|
-
* - `driveRemoteLogin` drives a
|
|
21
|
-
* (fake in tests; real over the
|
|
20
|
+
* - `driveRemoteLogin` drives a terminal through an injectable {@link TermDriver}
|
|
21
|
+
* (fake in tests; real over the standalone `term` CLI in prod — see
|
|
22
|
+
* `../term-client.js`).
|
|
22
23
|
* - `detectPending` / `runFleetLogin` do the real fleet I/O.
|
|
23
24
|
*
|
|
24
25
|
* The device codes have a ~15 min TTL, so the default (bulk) mode requests every
|
|
@@ -32,7 +33,7 @@ import { deviceIdentityArgs, fleetDialTarget } from '../devices/connect.js';
|
|
|
32
33
|
import { planFleetTargets } from '../devices/fleet.js';
|
|
33
34
|
import { assertValidSshTarget, shellQuote, sshExecAsync } from '../ssh-exec.js';
|
|
34
35
|
import { machineId } from '../session/sync/config.js';
|
|
35
|
-
import {
|
|
36
|
+
import { termStart, termExec, termWrite, termScreen, termStop } from '../term-client.js';
|
|
36
37
|
import { showUrl } from '../open-url.js';
|
|
37
38
|
import { readAuthHealthCache, } from '../auth-health.js';
|
|
38
39
|
import { FLEET_LOGIN_FLOWS, KEYCHAIN_BOUND_ON_MAC, } from './auth-sync.js';
|
|
@@ -144,7 +145,7 @@ export function selectLoginTargets(devices, agents, cache, opts = {}) {
|
|
|
144
145
|
}
|
|
145
146
|
/**
|
|
146
147
|
* Build the `ssh -tt <target> <loginCommand>` command string driven through the
|
|
147
|
-
*
|
|
148
|
+
* `term` CLI. `-tt` forces a tty so the remote CLI enters its interactive
|
|
148
149
|
* device-code flow; `accept-new` learns a first-seen host key without a prompt.
|
|
149
150
|
* Both the target and the login command are shell-quoted. Pure/testable.
|
|
150
151
|
*
|
|
@@ -331,42 +332,42 @@ export function buildDashboardHtml(pending, mode) {
|
|
|
331
332
|
</body>
|
|
332
333
|
</html>`;
|
|
333
334
|
}
|
|
334
|
-
/** Real driver over the
|
|
335
|
-
export function
|
|
335
|
+
/** Real driver over the standalone `term` CLI (`../term-client.js`). */
|
|
336
|
+
export function defaultTermDriver() {
|
|
336
337
|
const expectOk = (res, what) => {
|
|
337
338
|
if (!res.ok)
|
|
338
|
-
throw new Error(`
|
|
339
|
+
throw new Error(`term ${what} failed: ${res.error ?? 'unknown'}`);
|
|
339
340
|
};
|
|
340
341
|
return {
|
|
341
342
|
async start(opts) {
|
|
342
|
-
const res = await
|
|
343
|
+
const res = await termStart({ rows: opts?.rows ?? 40, cols: opts?.cols ?? 120 });
|
|
343
344
|
expectOk(res, 'start');
|
|
344
345
|
return res.id;
|
|
345
346
|
},
|
|
346
347
|
async exec(id, command) {
|
|
347
|
-
expectOk(await
|
|
348
|
+
expectOk(await termExec(id, command), 'exec');
|
|
348
349
|
},
|
|
349
350
|
async write(id, input) {
|
|
350
|
-
expectOk(await
|
|
351
|
+
expectOk(await termWrite(id, input), 'write');
|
|
351
352
|
},
|
|
352
353
|
async screen(id) {
|
|
353
|
-
const res = await
|
|
354
|
+
const res = await termScreen(id);
|
|
354
355
|
expectOk(res, 'screen');
|
|
355
356
|
return { screen: res.screen ?? '', exited: Boolean(res.exited) };
|
|
356
357
|
},
|
|
357
358
|
async stop(id) {
|
|
358
|
-
await
|
|
359
|
+
await termStop(id).catch(() => undefined);
|
|
359
360
|
},
|
|
360
361
|
};
|
|
361
362
|
}
|
|
362
363
|
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));
|
|
363
364
|
/**
|
|
364
365
|
* Drive one remote device-code login: launch `ssh -tt <target> <loginCommand>`
|
|
365
|
-
* in a
|
|
366
|
+
* in a `term` session, send the flow's `deviceCodeSelect` keystrokes (if any) to reach the
|
|
366
367
|
* device-code path, then poll the screen until {@link scrapeLogin} yields both a
|
|
367
368
|
* URL and a code (or the deadline / session-exit). The human completes the code
|
|
368
369
|
* in the browser; the caller polls the credential file for completion. Testable
|
|
369
|
-
* against a fake {@link
|
|
370
|
+
* against a fake {@link TermDriver}.
|
|
370
371
|
*/
|
|
371
372
|
export async function driveRemoteLogin(target, flow, driver, opts = {}, extraSshArgs = []) {
|
|
372
373
|
const initialDelayMs = opts.initialDelayMs ?? 4000;
|
|
@@ -374,8 +375,8 @@ export async function driveRemoteLogin(target, flow, driver, opts = {}, extraSsh
|
|
|
374
375
|
const timeoutMs = opts.timeoutMs ?? 90000;
|
|
375
376
|
const id = await driver.start();
|
|
376
377
|
// Everything past start() must tear the session down on a mid-flight throw —
|
|
377
|
-
// otherwise the caller never receives a sessionId and the
|
|
378
|
-
// `ssh -tt` process it drives) leaks until
|
|
378
|
+
// otherwise the caller never receives a sessionId and the term session (and
|
|
379
|
+
// the `ssh -tt` process it drives) leaks until term's own idle reaper. On the
|
|
379
380
|
// normal return paths the caller owns stop() via the returned sessionId.
|
|
380
381
|
try {
|
|
381
382
|
await driver.exec(id, buildRemoteLoginSshCommand(target, flow, extraSshArgs));
|
|
@@ -412,7 +413,7 @@ export async function driveRemoteLogin(target, flow, driver, opts = {}, extraSsh
|
|
|
412
413
|
* over the pure {@link selectLoginTargets}. Devices/agents can be narrowed by the
|
|
413
414
|
* caller's flags; the default agent set is every agent with a defined flow.
|
|
414
415
|
*/
|
|
415
|
-
|
|
416
|
+
async function detectPending(opts = {}) {
|
|
416
417
|
const reg = await loadDevices();
|
|
417
418
|
const self = machineId();
|
|
418
419
|
const online = planFleetTargets(reg)
|
|
@@ -432,7 +433,7 @@ export async function detectPending(opts = {}) {
|
|
|
432
433
|
* bumping after the human completes the browser step. POSIX `stat` only (the
|
|
433
434
|
* device-code agents are all POSIX-fleet).
|
|
434
435
|
*/
|
|
435
|
-
|
|
436
|
+
async function remoteFileMtime(target, homeRel, extraSshArgs = []) {
|
|
436
437
|
const cmd = `stat -c %Y "$HOME/${homeRel}" 2>/dev/null || stat -f %m "$HOME/${homeRel}" 2>/dev/null || echo 0`;
|
|
437
438
|
const res = await sshExecAsync(target, cmd, { timeoutMs: 15000, multiplex: true, extraSshArgs }).catch(() => null);
|
|
438
439
|
if (!res || res.code !== 0)
|
|
@@ -507,7 +508,7 @@ export async function runFleetLogin(opts = {}) {
|
|
|
507
508
|
console.error(` ${dashUrl}`);
|
|
508
509
|
}
|
|
509
510
|
}
|
|
510
|
-
const driver = opts.driver ??
|
|
511
|
+
const driver = opts.driver ?? defaultTermDriver();
|
|
511
512
|
const remotable = pending.filter((p) => p.remotable);
|
|
512
513
|
const driveOne = async (p) => {
|
|
513
514
|
const k = key(p.device, p.agent);
|
|
@@ -204,14 +204,6 @@ export interface AuthFilePayload {
|
|
|
204
204
|
/** POSIX mode to restore (e.g. 0o600 for credentials). */
|
|
205
205
|
mode: number;
|
|
206
206
|
}
|
|
207
|
-
/** The plaintext we encrypt before shipping auth over the wire. */
|
|
208
|
-
export interface AuthBundle {
|
|
209
|
-
/** Schema version for forward-compat. */
|
|
210
|
-
v: 1;
|
|
211
|
-
/** Source machine name the snapshot was taken on. */
|
|
212
|
-
source: string;
|
|
213
|
-
files: AuthFilePayload[];
|
|
214
|
-
}
|
|
215
207
|
/** Result of classifying one source agent's auth for propagation. */
|
|
216
208
|
export interface AuthSnapshotResult {
|
|
217
209
|
files: AuthFilePayload[];
|
|
@@ -1,18 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* One synchronous, disk-only read facade over the fleet/usage caches.
|
|
3
|
-
*
|
|
4
|
-
* These readers NEVER touch the network and NEVER SSH — they read the caches
|
|
5
|
-
* the daemon keeps warm (usage snapshot, projected headroom, fleet status) and
|
|
6
|
-
* return instantly. That is the whole point: the routing hot path
|
|
7
|
-
* (`agents run` → rotate.ts), device affinity (smart-launch.ts), and Factory can
|
|
8
|
-
* consult live-ish fleet state without paying a provider fetch or an ssh probe
|
|
9
|
-
* on a latency-sensitive path.
|
|
10
|
-
*
|
|
11
|
-
* Writers live elsewhere (the daemon's `runUsageRefresh` for usage/headroom,
|
|
12
|
-
* `runFleetStatusPublish` for the fleet-status mirror); this module is the read
|
|
13
|
-
* side only.
|
|
14
|
-
*/
|
|
15
|
-
import { type UsageSnapshot } from './accounting/usage.js';
|
|
16
1
|
import { type FleetStatusRow } from './fleet-status.js';
|
|
17
2
|
/**
|
|
18
3
|
* The fleet-status union the daemon publishes (own row) and the fleet-status
|
|
@@ -21,10 +6,8 @@ import { type FleetStatusRow } from './fleet-status.js';
|
|
|
21
6
|
*/
|
|
22
7
|
export declare function readFleetStatus(): Record<string, FleetStatusRow>;
|
|
23
8
|
export type { FleetStatusRow };
|
|
24
|
-
/** The last cached usage snapshot for an account, or null. Cache-only. */
|
|
25
|
-
export declare function readAccountUsage(usageKey: string): UsageSnapshot | null;
|
|
26
9
|
/** An account's projected headroom, as published by the daemon refresher. */
|
|
27
|
-
|
|
10
|
+
interface AccountHeadroom {
|
|
28
11
|
status: 'available' | 'rate_limited' | null;
|
|
29
12
|
/** Projected minutes until the session window caps; null = unknown/idle. */
|
|
30
13
|
minutesToLimit: number | null;
|
package/dist/lib/fleet-cache.js
CHANGED
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
* `runFleetStatusPublish` for the fleet-status mirror); this module is the read
|
|
13
13
|
* side only.
|
|
14
14
|
*/
|
|
15
|
-
import { readClaudeUsageCache } from './accounting/usage.js';
|
|
16
15
|
import { readHeadroomEntry } from './usage-refresh.js';
|
|
17
16
|
import { readFleetStatus as readFleetStatusMirror } from './fleet-status.js';
|
|
18
17
|
/**
|
|
@@ -23,10 +22,6 @@ import { readFleetStatus as readFleetStatusMirror } from './fleet-status.js';
|
|
|
23
22
|
export function readFleetStatus() {
|
|
24
23
|
return readFleetStatusMirror();
|
|
25
24
|
}
|
|
26
|
-
/** The last cached usage snapshot for an account, or null. Cache-only. */
|
|
27
|
-
export function readAccountUsage(usageKey) {
|
|
28
|
-
return readClaudeUsageCache(usageKey);
|
|
29
|
-
}
|
|
30
25
|
/**
|
|
31
26
|
* The daemon-computed headroom for an account, or null when nothing has been
|
|
32
27
|
* published yet. Cache-only — a cold cache simply yields null, and callers
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export declare const FLEET_SHARED_REPO_SYNC_DEADLINE_MS = 45000;
|
|
2
|
-
export declare const FLEET_SHARED_REPO_KILL_GRACE_MS = 250;
|
|
3
2
|
export declare const FLEET_SHARED_REPO_OUTPUT_MAX_BYTES: number;
|
|
4
3
|
/**
|
|
5
4
|
* When the shared-state exchange last completed successfully, in epoch ms, or
|
|
@@ -7,13 +6,13 @@ export declare const FLEET_SHARED_REPO_OUTPUT_MAX_BYTES: number;
|
|
|
7
6
|
* Reads the default daemon-dir marker the periodic exchange writes.
|
|
8
7
|
*/
|
|
9
8
|
export declare function readLastSuccessfulExchangeMs(): number | null;
|
|
10
|
-
|
|
9
|
+
interface BoundedProcessResult {
|
|
11
10
|
code: number | null;
|
|
12
11
|
stdout: string;
|
|
13
12
|
stderr: string;
|
|
14
13
|
timedOut: boolean;
|
|
15
14
|
}
|
|
16
|
-
|
|
15
|
+
interface FleetSharedRepoSyncOptions {
|
|
17
16
|
userAgentsDir?: string;
|
|
18
17
|
device?: string;
|
|
19
18
|
timeoutMs?: number;
|
|
@@ -53,3 +52,4 @@ export declare function runBoundedProcess(command: string, args: string[], optio
|
|
|
53
52
|
* this resolves successfully.
|
|
54
53
|
*/
|
|
55
54
|
export declare function syncFleetSharedStateRepo(options?: FleetSharedRepoSyncOptions): Promise<FleetSharedRepoSyncResult>;
|
|
55
|
+
export {};
|
|
@@ -18,7 +18,7 @@ import { logAndContinueOnLockCompromised } from './lock-compromise.js';
|
|
|
18
18
|
import { machineId } from './session/sync/config.js';
|
|
19
19
|
import { getDaemonDir, getUserAgentsDir } from './state.js';
|
|
20
20
|
export const FLEET_SHARED_REPO_SYNC_DEADLINE_MS = 45_000;
|
|
21
|
-
|
|
21
|
+
const FLEET_SHARED_REPO_KILL_GRACE_MS = 250;
|
|
22
22
|
export const FLEET_SHARED_REPO_OUTPUT_MAX_BYTES = 1024 * 1024;
|
|
23
23
|
const FLEET_SHARED_REPO_PUSH_ATTEMPTS = 3;
|
|
24
24
|
const FLEET_SHARED_REPO_REBASE_CLEANUP_RESERVE_MS = 5_000;
|
|
@@ -57,12 +57,12 @@ export interface FleetSharedDeviceState {
|
|
|
57
57
|
rows: SessionMirrorRow[];
|
|
58
58
|
};
|
|
59
59
|
}
|
|
60
|
-
|
|
60
|
+
interface FleetSharedStatePatch {
|
|
61
61
|
usage?: FleetSharedDeviceState['usage'];
|
|
62
62
|
auth?: FleetSharedDeviceState['auth'];
|
|
63
63
|
sessions?: FleetSharedDeviceState['sessions'];
|
|
64
64
|
}
|
|
65
|
-
|
|
65
|
+
interface FleetSharedStateReadResult {
|
|
66
66
|
states: FleetSharedDeviceState[];
|
|
67
67
|
errors: Array<{
|
|
68
68
|
device: string;
|
|
@@ -89,3 +89,4 @@ export declare function updateFleetSharedDeviceStateAsync(device: string, patch:
|
|
|
89
89
|
}>;
|
|
90
90
|
/** Read every valid peer-owned state file; malformed peers fail separately. */
|
|
91
91
|
export declare function readFleetSharedDeviceStates(userAgentsDir?: string): FleetSharedStateReadResult;
|
|
92
|
+
export {};
|
package/dist/lib/format.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** Options for {@link die} — opt into machine-readable failure output. */
|
|
2
|
-
|
|
2
|
+
interface DieOptions {
|
|
3
3
|
/**
|
|
4
4
|
* Emit a machine-readable `{"error", "hint"?}` object to **stdout** instead of
|
|
5
5
|
* red text on stderr. Pass `isJsonMode(options)` from a `--json` command so an
|
|
@@ -61,7 +61,7 @@ export declare function relTime(iso: string): string;
|
|
|
61
61
|
export declare function humanDuration(ms: number): string;
|
|
62
62
|
/**
|
|
63
63
|
* Human-readable byte size. Previously copy-pasted into five files
|
|
64
|
-
* (`commands/prune.ts`, `commands/
|
|
64
|
+
* (`commands/prune.ts`, `commands/inspect.ts`,
|
|
65
65
|
* `commands/sessions.ts`, `lib/browser/sessions-list.ts`) — this is the
|
|
66
66
|
* canonical home.
|
|
67
67
|
*/
|
|
@@ -98,3 +98,4 @@ export declare function readStdinSync(): string;
|
|
|
98
98
|
* stdout is a TTY; otherwise return `text` unchanged.
|
|
99
99
|
*/
|
|
100
100
|
export declare function termLink(text: string, filePath: string): string;
|
|
101
|
+
export {};
|
package/dist/lib/format.js
CHANGED
|
@@ -115,7 +115,7 @@ export function humanDuration(ms) {
|
|
|
115
115
|
}
|
|
116
116
|
/**
|
|
117
117
|
* Human-readable byte size. Previously copy-pasted into five files
|
|
118
|
-
* (`commands/prune.ts`, `commands/
|
|
118
|
+
* (`commands/prune.ts`, `commands/inspect.ts`,
|
|
119
119
|
* `commands/sessions.ts`, `lib/browser/sessions-list.ts`) — this is the
|
|
120
120
|
* canonical home.
|
|
121
121
|
*/
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* an agent stuck retrying the SAME denied action instead of adapting.
|
|
8
8
|
*/
|
|
9
9
|
import type { EventRecord } from './feed/events.js';
|
|
10
|
-
|
|
10
|
+
interface RepeatedGuardBlockFinding {
|
|
11
11
|
/** Session id the repeated blocks happened in, or 'unknown' when the
|
|
12
12
|
* friction event carried no session (e.g. a guard fired outside any
|
|
13
13
|
* tracked agent session). */
|
|
@@ -30,3 +30,4 @@ export interface RepeatedGuardBlockFinding {
|
|
|
30
30
|
export declare function detectRepeatedGuardBlocks(events: EventRecord[], opts?: {
|
|
31
31
|
minRepeats?: number;
|
|
32
32
|
}): RepeatedGuardBlockFinding[];
|
|
33
|
+
export {};
|
package/dist/lib/fs-walk.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** A file surfaced by the walk, carrying the mtime+size from the walk's own stat. */
|
|
2
|
-
|
|
2
|
+
interface WalkedFile {
|
|
3
3
|
path: string;
|
|
4
4
|
mtimeMs: number;
|
|
5
5
|
size: number;
|
|
@@ -19,3 +19,4 @@ export declare function walkForFiles(dir: string, ext: string, limit: number): s
|
|
|
19
19
|
* Hot-path helper for the `agents run` account-recency probe.
|
|
20
20
|
*/
|
|
21
21
|
export declare function latestFileMtimeMs(dir: string, ext: string): number | null;
|
|
22
|
+
export {};
|
package/dist/lib/fuzzy.d.ts
CHANGED
|
@@ -11,7 +11,7 @@ export declare function levenshtein(a: string, b: string): number;
|
|
|
11
11
|
* "one misspelling."
|
|
12
12
|
*/
|
|
13
13
|
export declare function damerauLevenshtein(a: string, b: string): number;
|
|
14
|
-
|
|
14
|
+
interface FuzzyOptions {
|
|
15
15
|
/** Absolute max edit distance allowed. */
|
|
16
16
|
maxDistance?: number;
|
|
17
17
|
/** Max ratio of distance to input length. If set, effective threshold = min(maxDistance, floor(len * maxRatio)). */
|
|
@@ -61,3 +61,4 @@ export declare const FUZZY_PRESETS: {
|
|
|
61
61
|
readonly maxRatio: 0.3;
|
|
62
62
|
};
|
|
63
63
|
};
|
|
64
|
+
export {};
|
|
@@ -1,3 +1,2 @@
|
|
|
1
1
|
export declare function readGeminiSettings(settingsPath: string): Record<string, unknown>;
|
|
2
|
-
export declare function writeGeminiSettings(settingsPath: string, settings: Record<string, unknown>): void;
|
|
3
2
|
export declare function updateGeminiSettings(settingsPath: string, mutate: (settings: Record<string, unknown>) => void): Record<string, unknown>;
|
|
@@ -26,7 +26,7 @@ export function readGeminiSettings(settingsPath) {
|
|
|
26
26
|
}
|
|
27
27
|
return parsed;
|
|
28
28
|
}
|
|
29
|
-
|
|
29
|
+
function writeGeminiSettings(settingsPath, settings) {
|
|
30
30
|
fs.mkdirSync(path.dirname(settingsPath), { recursive: true });
|
|
31
31
|
fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + '\n', 'utf-8');
|
|
32
32
|
}
|
package/dist/lib/git.d.ts
CHANGED
|
@@ -48,7 +48,7 @@ export declare function assertValidBranchName(branch: string): void;
|
|
|
48
48
|
*/
|
|
49
49
|
export declare function pushOrigin(git: SimpleGit, branch: string, targetBranch?: string): Promise<void>;
|
|
50
50
|
/** Parsed representation of a git source string (GitHub, generic URL, or local path). */
|
|
51
|
-
|
|
51
|
+
interface GitSource {
|
|
52
52
|
type: 'github' | 'url' | 'local';
|
|
53
53
|
url: string;
|
|
54
54
|
ref?: string;
|
|
@@ -71,30 +71,19 @@ export interface GitSource {
|
|
|
71
71
|
* ./relative/path -> local path
|
|
72
72
|
*/
|
|
73
73
|
export declare function parseSource(source: string): GitSource;
|
|
74
|
-
/** Clone a remote repo or pull updates if it already exists locally. */
|
|
75
|
-
export declare function cloneOrPull(source: GitSource, targetDir: string): Promise<{
|
|
76
|
-
isNew: boolean;
|
|
77
|
-
commit: string;
|
|
78
|
-
}>;
|
|
79
74
|
/** Clone a repository from a source string, returning the local path and commit hash. */
|
|
80
75
|
export declare function cloneRepo(source: string): Promise<{
|
|
81
76
|
localPath: string;
|
|
82
77
|
commit: string;
|
|
83
78
|
isNew: boolean;
|
|
84
79
|
}>;
|
|
85
|
-
/** Clone a package from a source string into the packages directory. */
|
|
86
|
-
export declare function clonePackage(source: string): Promise<{
|
|
87
|
-
localPath: string;
|
|
88
|
-
commit: string;
|
|
89
|
-
isNew: boolean;
|
|
90
|
-
}>;
|
|
91
80
|
/** Get the short commit hash (8 chars) of the latest commit in a repo. */
|
|
92
81
|
export declare function getRepoCommit(repoPath: string): Promise<string>;
|
|
93
82
|
/** Compact, self-contained state of a git repo — branch, short HEAD, and a
|
|
94
83
|
* dirty flag — for cross-device comparison (RUSH-2027). Synchronous and
|
|
95
84
|
* best-effort: a non-repo or unreadable path yields `null` fields, never a
|
|
96
85
|
* throw, so a device's `doctor --json` payload always serializes. */
|
|
97
|
-
|
|
86
|
+
interface RepoStateSnapshot {
|
|
98
87
|
branch: string | null;
|
|
99
88
|
head: string | null;
|
|
100
89
|
dirty: boolean;
|
|
@@ -117,33 +106,10 @@ export declare function readRepoState(repoPath: string): RepoStateSnapshot | nul
|
|
|
117
106
|
export declare function resolveSnapshotSha(repoRoot: string): string | undefined;
|
|
118
107
|
/** Test seam: clear the memoized snapshot-sha cache between test cases. */
|
|
119
108
|
export declare function _resetSnapshotShaCacheForTest(): void;
|
|
120
|
-
/**
|
|
121
|
-
* Get the current GitHub username using gh CLI.
|
|
122
|
-
* Returns null if gh is not installed or user is not authenticated.
|
|
123
|
-
*/
|
|
124
|
-
export declare function getGitHubUsername(): Promise<string | null>;
|
|
125
|
-
/**
|
|
126
|
-
* Resolve the GitHub username synchronously for `agents artifacts share`. Order:
|
|
127
|
-
* 1. `AGENTS_SHARE_GITHUB_USER` env override
|
|
128
|
-
* 2. `git config --global github.user`
|
|
129
|
-
* Falls back to null so callers can decide whether to require auth or proceed
|
|
130
|
-
* without a namespace.
|
|
131
|
-
*/
|
|
132
|
-
export declare function resolveGitHubUsernameSync(): string | null;
|
|
133
|
-
/**
|
|
134
|
-
* Resolve the GitHub username asynchronously. Order:
|
|
135
|
-
* 1. `AGENTS_SHARE_GITHUB_USER` env override
|
|
136
|
-
* 2. `gh api user --jq ".login"`
|
|
137
|
-
* 3. `git config --global github.user`
|
|
138
|
-
* Returns null if none succeed.
|
|
139
|
-
*/
|
|
140
|
-
export declare function resolveGitHubUsername(): Promise<string | null>;
|
|
141
109
|
/**
|
|
142
110
|
* Get the remote URL for origin in a git repo.
|
|
143
111
|
*/
|
|
144
112
|
export declare function getRemoteUrl(repoPath: string): Promise<string | null>;
|
|
145
|
-
/** The repo's checked-out branch, or 'main' on a detached HEAD / read failure. */
|
|
146
|
-
export declare function getCurrentBranch(repoPath: string): Promise<string>;
|
|
147
113
|
/**
|
|
148
114
|
* Canonical `host/owner/repo` form of a git remote, transport-agnostic, so the
|
|
149
115
|
* same repo cloned over SSH vs HTTPS compares equal. Strips protocol, any
|
|
@@ -178,16 +144,8 @@ export declare function isSystemRepoRemote(remote: string | null | undefined): b
|
|
|
178
144
|
export declare function isExpectedSystemRepoRemote(remote: string | null | undefined): boolean;
|
|
179
145
|
/** True when two git remote URLs point at the same repo across transport forms. */
|
|
180
146
|
export declare function sameGitRemote(a: string | null | undefined, b: string | null | undefined): boolean;
|
|
181
|
-
/**
|
|
182
|
-
* Set the remote URL for origin in a git repo.
|
|
183
|
-
*/
|
|
184
|
-
export declare function setRemoteUrl(repoPath: string, url: string): Promise<void>;
|
|
185
|
-
/**
|
|
186
|
-
* Check if a GitHub repo exists.
|
|
187
|
-
*/
|
|
188
|
-
export declare function checkGitHubRepoExists(owner: string, repo: string): Promise<boolean>;
|
|
189
147
|
/** Result of {@link commitAndPush}. */
|
|
190
|
-
|
|
148
|
+
type CommitAndPushResult = {
|
|
191
149
|
success: boolean;
|
|
192
150
|
error?: string;
|
|
193
151
|
/** Human detail for success: "already up to date", "pushed abc..def", "committed and pushed …". */
|
|
@@ -318,7 +276,7 @@ export declare function resolveUserRepoRemoteUrl(dir: string): string | null;
|
|
|
318
276
|
* real local edit and left alone — it surfaces as a modified path instead.
|
|
319
277
|
*/
|
|
320
278
|
export declare function isStaleAgentsYamlStub(local: string, committed: string): boolean;
|
|
321
|
-
|
|
279
|
+
interface AdoptInPlaceResult {
|
|
322
280
|
success: boolean;
|
|
323
281
|
commit: string;
|
|
324
282
|
/** Tracked files that were absent locally and materialized from origin/main. */
|
|
@@ -384,10 +342,6 @@ export declare function adoptUserRepoIfNeeded(dir: string, opts?: {
|
|
|
384
342
|
* {@link isSystemRepoRemote}.
|
|
385
343
|
*/
|
|
386
344
|
export declare function isSystemRepoOrigin(dir: string): Promise<boolean>;
|
|
387
|
-
/**
|
|
388
|
-
* Check if repo has uncommitted changes (including untracked files).
|
|
389
|
-
*/
|
|
390
|
-
export declare function hasLocalChanges(dir: string): Promise<boolean>;
|
|
391
345
|
/**
|
|
392
346
|
* Render an absolute path in ~-relative form with forward slashes, matching the
|
|
393
347
|
* way the rest of the CLI prints home-anchored paths (e.g. `~/.agents/.system`).
|
|
@@ -468,7 +422,7 @@ export declare function syncRepoGit(dir: string, opts: {
|
|
|
468
422
|
* Get git status for sync display.
|
|
469
423
|
* Returns files categorized by their status relative to HEAD.
|
|
470
424
|
*/
|
|
471
|
-
|
|
425
|
+
interface GitSyncStatus {
|
|
472
426
|
/** Tracked and unchanged files. */
|
|
473
427
|
synced: string[];
|
|
474
428
|
/** Modified but not staged files. */
|
|
@@ -486,38 +440,9 @@ export declare function getGitSyncStatus(dir: string, subdir?: string): Promise<
|
|
|
486
440
|
* Get list of files tracked by git in a directory.
|
|
487
441
|
*/
|
|
488
442
|
export declare function getTrackedFiles(dir: string, subdir?: string): Promise<string[]>;
|
|
489
|
-
/**
|
|
490
|
-
* Check if upstream remote is configured.
|
|
491
|
-
*/
|
|
492
|
-
export declare function hasUpstreamRemote(dir: string): Promise<boolean>;
|
|
493
|
-
/**
|
|
494
|
-
* Get the upstream remote fetch URL, or null if none configured.
|
|
495
|
-
*/
|
|
496
|
-
export declare function getUpstreamUrl(dir: string): Promise<string | null>;
|
|
497
|
-
/**
|
|
498
|
-
* Add or update the upstream remote.
|
|
499
|
-
*/
|
|
500
|
-
export declare function setUpstreamRemote(dir: string, url: string): Promise<void>;
|
|
501
|
-
/**
|
|
502
|
-
* Pull from upstream remote (merge updates from system repo).
|
|
503
|
-
*/
|
|
504
|
-
export declare function pullFromUpstream(dir: string): Promise<{
|
|
505
|
-
success: boolean;
|
|
506
|
-
commit: string;
|
|
507
|
-
error?: string;
|
|
508
|
-
}>;
|
|
509
|
-
/**
|
|
510
|
-
* Try to auto-pull a git repo if it's clean and has a remote.
|
|
511
|
-
* Uses --ff-only for safety (fails if diverged instead of creating merge commits).
|
|
512
|
-
* Returns silently on success, returns error message on failure.
|
|
513
|
-
*/
|
|
514
|
-
export declare function tryAutoPull(dir: string): Promise<{
|
|
515
|
-
pulled: boolean;
|
|
516
|
-
error?: string;
|
|
517
|
-
}>;
|
|
518
443
|
/** Result of {@link tryAutoPullSystemRepo}. `refused` is set only when the pull
|
|
519
444
|
* was blocked because origin is not the expected system remote. */
|
|
520
|
-
|
|
445
|
+
interface SystemRepoPullResult {
|
|
521
446
|
pulled: boolean;
|
|
522
447
|
error?: string;
|
|
523
448
|
/** True when origin is present but is NOT the expected system remote; no
|
|
@@ -552,3 +477,4 @@ export declare function commitsBehindUpstream(dir: string): {
|
|
|
552
477
|
behind: number;
|
|
553
478
|
branch: string;
|
|
554
479
|
} | null;
|
|
480
|
+
export {};
|