@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
|
@@ -103,7 +103,7 @@ export declare function renderForwardDecision(command: string, allArgs: string[]
|
|
|
103
103
|
env?: Record<string, string>;
|
|
104
104
|
};
|
|
105
105
|
/** Injectable dependencies for {@link runFleetPassthrough} — used by tests. */
|
|
106
|
-
|
|
106
|
+
interface FleetPassthroughOptions {
|
|
107
107
|
/** Override the device registry loader (tests). */
|
|
108
108
|
loadDevices?: () => Promise<DeviceRegistry>;
|
|
109
109
|
/** Override the per-device runner (tests). Defaults to `runOnDevice`. */
|
|
@@ -131,11 +131,6 @@ export declare function buildStreamingFollowCommand(opts: {
|
|
|
131
131
|
}): string;
|
|
132
132
|
/** Extract the remote watcher frame from stderr, if the stream ended normally. */
|
|
133
133
|
export declare function parseStreamingExitFrame(stderr: Buffer, taskId: string): Buffer | null;
|
|
134
|
-
/**
|
|
135
|
-
* File identity (`dev:ino`) of a path on the remote host, or null if it can't be
|
|
136
|
-
* stat'd. GNU (`-c`) then BSD (`-f`) format, so it works on Linux and macOS hosts.
|
|
137
|
-
*/
|
|
138
|
-
export declare function readRemoteFileId(target: string, remotePath: string, extraSshArgs?: string[]): string | null;
|
|
139
134
|
/**
|
|
140
135
|
* True when the local mirror file IS the very file we're tailing — the
|
|
141
136
|
* localhost-as-host case, where `remoteLog` ($HOME-expanded) and `localLogPath`
|
|
@@ -177,7 +177,7 @@ export function parseStreamingExitFrame(stderr, taskId) {
|
|
|
177
177
|
* File identity (`dev:ino`) of a path on the remote host, or null if it can't be
|
|
178
178
|
* stat'd. GNU (`-c`) then BSD (`-f`) format, so it works on Linux and macOS hosts.
|
|
179
179
|
*/
|
|
180
|
-
|
|
180
|
+
function readRemoteFileId(target, remotePath, extraSshArgs) {
|
|
181
181
|
const res = sshExec(target, `stat -c '%d:%i' ${remotePath} 2>/dev/null || stat -f '%d:%i' ${remotePath} 2>/dev/null`, { timeoutMs: 8000, extraSshArgs });
|
|
182
182
|
const id = res.stdout.trim();
|
|
183
183
|
return id || null;
|
|
@@ -24,8 +24,6 @@ export declare function probeHost(target: string, os?: string, extraSshArgs?: st
|
|
|
24
24
|
};
|
|
25
25
|
/** ssh command that prints the remote agents-cli version. Pure/exported. */
|
|
26
26
|
export declare function buildRemoteVersionCommand(os?: string): string;
|
|
27
|
-
/** Remote agents-cli version (PATH-resolved on the remote), or null if not installed. */
|
|
28
|
-
export declare function remoteAgentsVersion(target: string, os?: string, extraSshArgs?: string[]): string | null;
|
|
29
27
|
/** ssh command that installs/upgrades agents-cli to `spec` then `agents setup`.
|
|
30
28
|
* PowerShell has no `tail`/`[ -d ]`/`||`, so the Windows branch uses native
|
|
31
29
|
* equivalents (`Select-Object -Last`, `Test-Path`). Pure/exported. */
|
|
@@ -89,7 +87,7 @@ export declare function viewHasAgentVersion(view: string, agent: string, version
|
|
|
89
87
|
/** Actionable fail-loud message for a missing remote pin (RUSH-2313). */
|
|
90
88
|
export declare function missingPinnedVersionMessage(hostName: string, agent: string, version: string, installed?: string[]): string;
|
|
91
89
|
/** Account eligibility extracted from one device's `agents view --json`. */
|
|
92
|
-
|
|
90
|
+
interface ViewAgentAccountEligibility {
|
|
93
91
|
/** At least one account can launch immediately. */
|
|
94
92
|
signedIn: boolean | undefined;
|
|
95
93
|
/** At least one account can launch immediately or enter the harness login flow. */
|
|
@@ -111,7 +109,7 @@ export interface ViewAgentAccountEligibility {
|
|
|
111
109
|
*/
|
|
112
110
|
export declare function viewAgentAccountEligibility(view: string, agent: string, now?: number): ViewAgentAccountEligibility;
|
|
113
111
|
export declare function viewAgentSignedIn(view: string, agent: string): boolean | undefined;
|
|
114
|
-
|
|
112
|
+
interface EnsureReadyOptions {
|
|
115
113
|
agent: string;
|
|
116
114
|
/**
|
|
117
115
|
* Explicit version pin (e.g. `"0.145.0"`). Concrete pins fail loud when the
|
|
@@ -143,3 +141,4 @@ export declare function evaluateHostAgentInstall(view: string, opts: EnsureReady
|
|
|
143
141
|
export declare function ensureHostReady(host: Host, opts: EnsureReadyOptions): {
|
|
144
142
|
warnings: string[];
|
|
145
143
|
};
|
|
144
|
+
export {};
|
package/dist/lib/hosts/ready.js
CHANGED
|
@@ -64,14 +64,6 @@ export function buildRemoteVersionCommand(os) {
|
|
|
64
64
|
? buildWindowsAgentsCommand({ args: ['--version'] })
|
|
65
65
|
: 'bash -lc "agents --version 2>/dev/null"';
|
|
66
66
|
}
|
|
67
|
-
/** Remote agents-cli version (PATH-resolved on the remote), or null if not installed. */
|
|
68
|
-
export function remoteAgentsVersion(target, os, extraSshArgs = []) {
|
|
69
|
-
const r = sshExec(target, buildRemoteVersionCommand(os), { timeoutMs: 20000, extraSshArgs });
|
|
70
|
-
if (r.code !== 0)
|
|
71
|
-
return null;
|
|
72
|
-
const v = r.stdout.trim();
|
|
73
|
-
return v || null;
|
|
74
|
-
}
|
|
75
67
|
/** ssh command that installs/upgrades agents-cli to `spec` then `agents setup`.
|
|
76
68
|
* PowerShell has no `tail`/`[ -d ]`/`||`, so the Windows branch uses native
|
|
77
69
|
* equivalents (`Select-Object -Last`, `Test-Path`). Pure/exported. */
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
*/
|
|
13
13
|
import { type SshExecResult } from '../ssh-exec.js';
|
|
14
14
|
import { type HostTask } from './tasks.js';
|
|
15
|
-
|
|
15
|
+
type RemoteExitState = {
|
|
16
16
|
state: 'running';
|
|
17
17
|
} | {
|
|
18
18
|
state: 'done';
|
|
@@ -31,13 +31,6 @@ export type RemoteExitState = {
|
|
|
31
31
|
*/
|
|
32
32
|
export declare function classifyExit(res: Pick<SshExecResult, 'code' | 'stdout' | 'timedOut'>): RemoteExitState;
|
|
33
33
|
export declare function readRemoteExit(target: string, remoteExit: string, timeoutMs?: number, identityFile?: string, remoteShell?: 'posix' | 'powershell'): RemoteExitState;
|
|
34
|
-
/**
|
|
35
|
-
* Async twin of {@link readRemoteExit} for the daemon's heartbeat tick — the ssh
|
|
36
|
-
* read runs on the shared event loop, so it MUST NOT block it with a synchronous
|
|
37
|
-
* `spawnSync('ssh', …)` (PHNX-3695). `sshExecAsync` applies the same
|
|
38
|
-
* timeout/kill-grace bound.
|
|
39
|
-
*/
|
|
40
|
-
export declare function readRemoteExitAsync(target: string, remoteExit: string, timeoutMs?: number, identityFile?: string, remoteShell?: 'posix' | 'powershell'): Promise<RemoteExitState>;
|
|
41
34
|
/**
|
|
42
35
|
* Heal one record. Terminal records are immutable (and never re-probed); a
|
|
43
36
|
* `running` record is resolved to completed/failed only when the remote `.exit`
|
|
@@ -59,3 +52,4 @@ export declare function reconcileTaskAsync(task: HostTask): Promise<HostTask>;
|
|
|
59
52
|
*/
|
|
60
53
|
export declare function reconcileRunningTasks(tasks: HostTask[]): HostTask[];
|
|
61
54
|
export declare function reachabilityProbeCommand(remoteShell?: 'posix' | 'powershell'): string;
|
|
55
|
+
export {};
|
|
@@ -57,7 +57,7 @@ export function readRemoteExit(target, remoteExit, timeoutMs = 6000, identityFil
|
|
|
57
57
|
* `spawnSync('ssh', …)` (PHNX-3695). `sshExecAsync` applies the same
|
|
58
58
|
* timeout/kill-grace bound.
|
|
59
59
|
*/
|
|
60
|
-
|
|
60
|
+
async function readRemoteExitAsync(target, remoteExit, timeoutMs = 6000, identityFile, remoteShell = 'posix') {
|
|
61
61
|
return classifyExit(await sshExecAsync(target, remoteExitCommand(remoteExit, remoteShell), remoteExitSshOpts(timeoutMs, identityFile)));
|
|
62
62
|
}
|
|
63
63
|
/**
|
|
@@ -34,7 +34,7 @@ export interface ReconnectOutcome {
|
|
|
34
34
|
/** How long the interactive attach held after the probe returned. */
|
|
35
35
|
heldMs: number;
|
|
36
36
|
}
|
|
37
|
-
|
|
37
|
+
type ReconnectDecision = {
|
|
38
38
|
action: 'stop';
|
|
39
39
|
code: number;
|
|
40
40
|
} | {
|
|
@@ -81,8 +81,6 @@ export type ReconnectTarget = {
|
|
|
81
81
|
kind: 'launch';
|
|
82
82
|
id: string;
|
|
83
83
|
};
|
|
84
|
-
/** The short form shown to a human. Both kinds are uuid-shaped, so 8 chars reads the same. */
|
|
85
|
-
export declare function targetLabel(target: ReconnectTarget): string;
|
|
86
84
|
/**
|
|
87
85
|
* The command a user can run to re-enter a session after reconnect gives up.
|
|
88
86
|
* The full id is printed on its own line so it remains copyable after a drop.
|
|
@@ -124,7 +122,7 @@ export declare function afterInteractiveRemoteExit(opts: {
|
|
|
124
122
|
notice: string | undefined;
|
|
125
123
|
};
|
|
126
124
|
/** Inputs the launcher has once its interactive stream has returned. */
|
|
127
|
-
|
|
125
|
+
interface ReconnectTargetInputs {
|
|
128
126
|
agent: string;
|
|
129
127
|
sessionId?: string;
|
|
130
128
|
resolvedId?: string;
|
|
@@ -141,13 +139,7 @@ export declare function pickReconnectTarget(inputs: ReconnectTargetInputs): Reco
|
|
|
141
139
|
* a network drop. No `--attach-only`: focus resumes in place when no pane survived.
|
|
142
140
|
*/
|
|
143
141
|
export declare function reattachRemoteCommand(target: ReconnectTarget): string;
|
|
144
|
-
|
|
145
|
-
* Re-attach the live remote pane by driving the peer's `agents sessions focus`.
|
|
146
|
-
* A fast preflight probe decides reachability; only then do we run the
|
|
147
|
-
* interactive attach/resume. Returns the exit code, connected bit, and hold time.
|
|
148
|
-
*/
|
|
149
|
-
export declare function reattachRemoteSession(host: Host, target: ReconnectTarget): ReconnectOutcome;
|
|
150
|
-
export interface ReconnectLoopOpts {
|
|
142
|
+
interface ReconnectLoopOpts {
|
|
151
143
|
host: Host;
|
|
152
144
|
target: ReconnectTarget;
|
|
153
145
|
/** Exit code from the initial interactive run (treated as connected). */
|
|
@@ -159,3 +151,4 @@ export interface ReconnectLoopOpts {
|
|
|
159
151
|
}
|
|
160
152
|
/** Drive the reconnect loop from the initial run's outcome to a terminal code. */
|
|
161
153
|
export declare function reconnectInteractiveSession(opts: ReconnectLoopOpts): Promise<number>;
|
|
154
|
+
export {};
|
|
@@ -112,7 +112,7 @@ export function wrapRemoteExitCode(cmd) {
|
|
|
112
112
|
return `bash -lc ${shellQuote(guarded)}`;
|
|
113
113
|
}
|
|
114
114
|
/** The short form shown to a human. Both kinds are uuid-shaped, so 8 chars reads the same. */
|
|
115
|
-
|
|
115
|
+
function targetLabel(target) {
|
|
116
116
|
return target.id.slice(0, 8);
|
|
117
117
|
}
|
|
118
118
|
/**
|
|
@@ -201,7 +201,7 @@ export function reattachRemoteCommand(target) {
|
|
|
201
201
|
* A fast preflight probe decides reachability; only then do we run the
|
|
202
202
|
* interactive attach/resume. Returns the exit code, connected bit, and hold time.
|
|
203
203
|
*/
|
|
204
|
-
|
|
204
|
+
function reattachRemoteSession(host, target) {
|
|
205
205
|
const sshTarget = sshTargetFor(host);
|
|
206
206
|
const extraSshArgs = hostIdentityArgs(host);
|
|
207
207
|
// Fresh (non-multiplexed) reachability probe: only a completed handshake is
|
|
@@ -30,7 +30,7 @@ export declare function getAllProviders(): HostProvider[];
|
|
|
30
30
|
* doesn't hold, and lets dispatch callers apply the device-only refusal
|
|
31
31
|
* (password auth) without re-reading the registry.
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
interface ResolvedHost extends Host {
|
|
34
34
|
device?: DeviceProfile;
|
|
35
35
|
/** True when the host is a synthesized ad-hoc `user@host` / IP / FQDN literal
|
|
36
36
|
* (never registered) rather than a device or overlay/ssh-config match. Lets the
|
|
@@ -33,7 +33,7 @@ export declare function stripRoutingFlags(args: string[], specs: StripSpec[]): s
|
|
|
33
33
|
*/
|
|
34
34
|
export declare const HOST_ROUTING_SPECS: StripSpec[];
|
|
35
35
|
/** How one `agents run` option behaves when the run is offloaded with `--device`. */
|
|
36
|
-
|
|
36
|
+
type RunOptionForwarding =
|
|
37
37
|
/** Appended to the remote `agents run` argv — same behavior local or remote. */
|
|
38
38
|
'forward'
|
|
39
39
|
/** Refused with an actionable error BEFORE dispatch — never silently dropped. */
|
|
@@ -79,7 +79,7 @@ export declare function buildRemoteAgentsInvocation(forwardedArgs: string[], rem
|
|
|
79
79
|
*/
|
|
80
80
|
export declare function posixEnvExports(env?: Record<string, string>): string;
|
|
81
81
|
/** The two remote shell dialects we build commands for. */
|
|
82
|
-
|
|
82
|
+
type RemoteShell = 'posix' | 'powershell';
|
|
83
83
|
/**
|
|
84
84
|
* Pick the remote shell dialect from a recorded OS/platform string. A Windows
|
|
85
85
|
* host (device-registry `platform: 'windows'`, or an enrolled `HostEntry.os`
|
|
@@ -105,7 +105,7 @@ export declare function encodePowershell(script: string): string;
|
|
|
105
105
|
* back to its script. Used by tests to assert on the built command. */
|
|
106
106
|
export declare function decodePowershell(encoded: string): string;
|
|
107
107
|
/** A single `agents …` invocation to run on a Windows remote. */
|
|
108
|
-
|
|
108
|
+
interface WindowsAgentsCommand {
|
|
109
109
|
/** `agents` argv (command name NOT included; `agents` is prepended). */
|
|
110
110
|
args: string[];
|
|
111
111
|
/** Env vars scoped to this invocation (POSIX `VAR=val` ↔ PS `$env:VAR=…`). */
|
|
@@ -192,3 +192,4 @@ export declare function buildWindowsStdinImportCommand(bundle: string, opts?: {
|
|
|
192
192
|
force?: boolean;
|
|
193
193
|
policyNever?: boolean;
|
|
194
194
|
}): string;
|
|
195
|
+
export {};
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
*/
|
|
19
19
|
import type { SessionMeta } from '../session/types.js';
|
|
20
20
|
import { type HostTask } from './tasks.js';
|
|
21
|
-
|
|
21
|
+
interface HostSessionContext {
|
|
22
22
|
/** Local directory the `agents run --device` was invoked from. */
|
|
23
23
|
cwd: string;
|
|
24
24
|
/** Prompt the run was launched with, used for the session topic. */
|
|
@@ -53,7 +53,7 @@ export declare function registerHostSession(task: HostTask, ctx: HostSessionCont
|
|
|
53
53
|
* missing/unreadable mirror or absent marker yields null, never an exception.
|
|
54
54
|
*/
|
|
55
55
|
export declare function captureRemoteSessionId(task: HostTask): HostTask | null;
|
|
56
|
-
|
|
56
|
+
interface InteractiveHostSessionContext {
|
|
57
57
|
cwd: string;
|
|
58
58
|
host: string;
|
|
59
59
|
agent: string;
|
|
@@ -68,3 +68,4 @@ export interface InteractiveHostSessionContext {
|
|
|
68
68
|
* surface and resume it by id.
|
|
69
69
|
*/
|
|
70
70
|
export declare function registerInteractiveHostSession(ctx: InteractiveHostSessionContext): void;
|
|
71
|
+
export {};
|
|
@@ -19,11 +19,9 @@ export declare function parseSshConfigHosts(content: string): string[];
|
|
|
19
19
|
export declare function parseKnownHosts(content: string): string[];
|
|
20
20
|
/** `Host` names from ~/.ssh/config, following `Include` globs (best-effort). */
|
|
21
21
|
export declare function listSshConfigHosts(): string[];
|
|
22
|
-
/** Hostnames recorded in ~/.ssh/known_hosts (hashed entries skipped). */
|
|
23
|
-
export declare function listKnownHosts(): string[];
|
|
24
22
|
/** True if `name` is a concrete `Host` stanza in ssh config. */
|
|
25
23
|
export declare function isSshConfigHost(name: string): boolean;
|
|
26
|
-
|
|
24
|
+
interface SshGResult {
|
|
27
25
|
hostname?: string;
|
|
28
26
|
user?: string;
|
|
29
27
|
port?: string;
|
|
@@ -35,3 +33,4 @@ export interface SshGResult {
|
|
|
35
33
|
* to decide whether a name is actually configured.
|
|
36
34
|
*/
|
|
37
35
|
export declare function sshResolve(name: string): SshGResult | undefined;
|
|
36
|
+
export {};
|
|
@@ -12,7 +12,6 @@ import { spawnSync } from 'child_process';
|
|
|
12
12
|
import { assertValidSshTarget } from '../ssh-exec.js';
|
|
13
13
|
const SSH_DIR = path.join(os.homedir(), '.ssh');
|
|
14
14
|
const SSH_CONFIG = path.join(SSH_DIR, 'config');
|
|
15
|
-
const KNOWN_HOSTS = path.join(SSH_DIR, 'known_hosts');
|
|
16
15
|
/**
|
|
17
16
|
* Parse `Host` stanza names from ssh config text. Wildcard/negated patterns
|
|
18
17
|
* (`*`, `?`, `!`) are skipped — they're match rules, not concrete hosts.
|
|
@@ -110,15 +109,6 @@ function globMaybe(pattern) {
|
|
|
110
109
|
return [];
|
|
111
110
|
}
|
|
112
111
|
}
|
|
113
|
-
/** Hostnames recorded in ~/.ssh/known_hosts (hashed entries skipped). */
|
|
114
|
-
export function listKnownHosts() {
|
|
115
|
-
try {
|
|
116
|
-
return parseKnownHosts(fs.readFileSync(KNOWN_HOSTS, 'utf-8'));
|
|
117
|
-
}
|
|
118
|
-
catch {
|
|
119
|
-
return [];
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
112
|
/** True if `name` is a concrete `Host` stanza in ssh config. */
|
|
123
113
|
export function isSshConfigHost(name) {
|
|
124
114
|
return listSshConfigHosts().includes(name);
|
package/dist/lib/humans.d.ts
CHANGED
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import type { HumansConfig, HumanOwner } from './types.js';
|
|
2
|
-
export declare const HUMANS_VERSION: 1;
|
|
3
|
-
export declare const HUMANS_HEADER = "# humans.yaml \u2014 owner identity and notification channels\n# Managed by agents-cli. See: agents humans --help\n";
|
|
4
2
|
/**
|
|
5
3
|
* Read and parse humans.yaml. Returns null when the file does not exist or
|
|
6
4
|
* is not a valid v1 config — never throws.
|
package/dist/lib/humans.js
CHANGED
|
@@ -10,8 +10,8 @@
|
|
|
10
10
|
import * as fs from 'fs';
|
|
11
11
|
import * as yaml from 'yaml';
|
|
12
12
|
import { getHumansFilePath } from './state.js';
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
const HUMANS_VERSION = 1;
|
|
14
|
+
const HUMANS_HEADER = `# humans.yaml — owner identity and notification channels
|
|
15
15
|
# Managed by agents-cli. See: agents humans --help
|
|
16
16
|
`;
|
|
17
17
|
/**
|
package/dist/lib/import.d.ts
CHANGED
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
* true.
|
|
18
18
|
*/
|
|
19
19
|
import type { AgentId } from './types.js';
|
|
20
|
-
|
|
20
|
+
interface ImportConfigResult {
|
|
21
21
|
success: boolean;
|
|
22
22
|
skipped?: boolean;
|
|
23
23
|
error?: string;
|
|
24
24
|
}
|
|
25
|
-
|
|
25
|
+
interface ImportBinaryResult {
|
|
26
26
|
success: boolean;
|
|
27
27
|
skipped?: boolean;
|
|
28
28
|
error?: string;
|
|
@@ -60,7 +60,7 @@ export declare function finalizeImport(agentId: AgentId, version: string): void;
|
|
|
60
60
|
* farm from the AGENTS registry, which keeps the function pure and avoids
|
|
61
61
|
* fragile coupling in test setups that stub `lib/agents.ts`.
|
|
62
62
|
*/
|
|
63
|
-
|
|
63
|
+
interface AgentBinarySpec {
|
|
64
64
|
/** Agent id used in the marker package.json (`agents-{agentId}-{version}`). */
|
|
65
65
|
agentId: string;
|
|
66
66
|
/** npm package name (e.g. `openclaw`) — used as the `node_modules/<name>` dir. */
|
|
@@ -136,3 +136,4 @@ export declare function seedIsolatedConfigFromLocal(agentId: AgentId, version: s
|
|
|
136
136
|
skippedRuntime: string[];
|
|
137
137
|
error?: string;
|
|
138
138
|
};
|
|
139
|
+
export {};
|
|
@@ -1,6 +1,4 @@
|
|
|
1
1
|
import { type FileLockOptions } from '../fs-atomic.js';
|
|
2
2
|
import { type AgentId } from '../types.js';
|
|
3
3
|
export declare function installationLockTarget(agent: AgentId, label: string): string;
|
|
4
|
-
export declare const INSTALLATION_LOCK_STALE_MS: number;
|
|
5
|
-
export declare const INSTALLATION_LOCK_ACQUIRE_TIMEOUT_MS: number;
|
|
6
4
|
export declare const INSTALLATION_LOCK_OPTIONS: Required<FileLockOptions>;
|
|
@@ -20,8 +20,8 @@ export function installationLockTarget(agent, label) {
|
|
|
20
20
|
ensureLockTarget(target, '', 0o700);
|
|
21
21
|
return target;
|
|
22
22
|
}
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
const INSTALLATION_LOCK_STALE_MS = 10 * 60_000;
|
|
24
|
+
const INSTALLATION_LOCK_ACQUIRE_TIMEOUT_MS = 5 * 60_000;
|
|
25
25
|
export const INSTALLATION_LOCK_OPTIONS = {
|
|
26
26
|
staleMs: INSTALLATION_LOCK_STALE_MS,
|
|
27
27
|
acquireTimeoutMs: INSTALLATION_LOCK_ACQUIRE_TIMEOUT_MS,
|
|
@@ -44,15 +44,6 @@ import type { AgentId } from '../types.js';
|
|
|
44
44
|
* work here serializes launches against each other unnecessarily.
|
|
45
45
|
*/
|
|
46
46
|
export declare function withLaunchGate<T>(agent: AgentId, label: string, fn: () => T): Promise<T>;
|
|
47
|
-
/**
|
|
48
|
-
* Acquire the per-installation update lock, register a launch lease for
|
|
49
|
-
* `pid`, then release. For a caller that already has its own pid before the
|
|
50
|
-
* risky operation (the native shim's `$$`, exec-replaced so the pid is
|
|
51
|
-
* final) — a Node caller that spawns a child should use {@link withLaunchGate}
|
|
52
|
-
* around the spawn itself instead, since here the process already exists by
|
|
53
|
-
* the time the lock is acquired.
|
|
54
|
-
*/
|
|
55
|
-
export declare function acquireLaunchGate(agent: AgentId, label: string, pid: number): Promise<() => void>;
|
|
56
47
|
/** Keep a live launcher's lease until its operation ends, without holding the lock. */
|
|
57
48
|
export declare function withInstallationLease<T>(agent: AgentId, label: string, fn: () => Promise<T>): Promise<T>;
|
|
58
49
|
/**
|
|
@@ -91,7 +91,7 @@ export async function withLaunchGate(agent, label, fn) {
|
|
|
91
91
|
* around the spawn itself instead, since here the process already exists by
|
|
92
92
|
* the time the lock is acquired.
|
|
93
93
|
*/
|
|
94
|
-
|
|
94
|
+
async function acquireLaunchGate(agent, label, pid) {
|
|
95
95
|
return withLaunchGate(agent, label, () => recordLaunchLease(agent, label, pid));
|
|
96
96
|
}
|
|
97
97
|
/** Keep a live launcher's lease until its operation ends, without holding the lock. */
|
|
@@ -45,17 +45,6 @@ export declare function migrateRoutineDeviceToDevices(routinesDir?: string): voi
|
|
|
45
45
|
* Idempotent: a file with only `cwd` (already migrated) is skipped.
|
|
46
46
|
*/
|
|
47
47
|
export declare function migrateRoutineRemoteCwdToCwd(routinesDir?: string): void;
|
|
48
|
-
/**
|
|
49
|
-
* Pause every currently-active routine whose execution context no longer
|
|
50
|
-
* resolves ready (RUSH-2290). An agent/workflow routine with no project/cwd, a
|
|
51
|
-
* missing directory, or a non-portable path used to fire and fail every tick —
|
|
52
|
-
* the mass auth_failed / untrusted-home storm this ticket exists to stop. After
|
|
53
|
-
* the fold, such a routine is deactivated on THIS device (only), preventing it
|
|
54
|
-
* from being scheduled until `agents routines doctor --all --fix` (or a repair +
|
|
55
|
-
* `resume`) makes it ready. Never materializes a device manifest that does not
|
|
56
|
-
* yet exist, and never touches command routines (they run in the target home).
|
|
57
|
-
*/
|
|
58
|
-
export declare function pauseUnreadyEnabledRoutines(): void;
|
|
59
48
|
/**
|
|
60
49
|
* Fold the legacy watchdog enable sentinel into the `watchdog.enabled` config.
|
|
61
50
|
*
|
|
@@ -1871,7 +1871,7 @@ export function migrateRoutineRemoteCwdToCwd(routinesDir) {
|
|
|
1871
1871
|
* `resume`) makes it ready. Never materializes a device manifest that does not
|
|
1872
1872
|
* yet exist, and never touches command routines (they run in the target home).
|
|
1873
1873
|
*/
|
|
1874
|
-
|
|
1874
|
+
function pauseUnreadyEnabledRoutines() {
|
|
1875
1875
|
const enabled = enabledRoutineNames();
|
|
1876
1876
|
if (enabled === null)
|
|
1877
1877
|
return; // no manifest yet — nothing activated to pause
|
|
@@ -358,7 +358,7 @@ export declare function listShimFileNames(): string[];
|
|
|
358
358
|
/**
|
|
359
359
|
* Prune a stale, orphaned shim: one that is NOT a managed agent shim and NOT a user
|
|
360
360
|
* alias, whose baked `AGENTS_BIN` points at an install that no longer exists. These
|
|
361
|
-
* are `exec "$AGENTS_BIN" <cmd>` command shims (browser/
|
|
361
|
+
* are `exec "$AGENTS_BIN" <cmd>` command shims (browser/teams) that
|
|
362
362
|
* `scripts/postinstall.js` writes for the LIVE install; one baked at a removed
|
|
363
363
|
* install either dies with `exit 127` or shadows the real package bin on PATH.
|
|
364
364
|
* Only removed when the baked target is gone, so a working shim is never touched —
|
|
@@ -2197,11 +2197,11 @@ export function listShimFileNames() {
|
|
|
2197
2197
|
* `computer` bin of its own: a machine that installed an older CLI has a real
|
|
2198
2198
|
* shim on PATH under the name the standalone engine now owns.
|
|
2199
2199
|
*/
|
|
2200
|
-
const LEGACY_SHIMS_ALWAYS_PRUNED = new Set(['secrets', 'sessions', 'computer']);
|
|
2200
|
+
const LEGACY_SHIMS_ALWAYS_PRUNED = new Set(['secrets', 'sessions', 'computer', 'pty']);
|
|
2201
2201
|
/**
|
|
2202
2202
|
* Prune a stale, orphaned shim: one that is NOT a managed agent shim and NOT a user
|
|
2203
2203
|
* alias, whose baked `AGENTS_BIN` points at an install that no longer exists. These
|
|
2204
|
-
* are `exec "$AGENTS_BIN" <cmd>` command shims (browser/
|
|
2204
|
+
* are `exec "$AGENTS_BIN" <cmd>` command shims (browser/teams) that
|
|
2205
2205
|
* `scripts/postinstall.js` writes for the LIVE install; one baked at a removed
|
|
2206
2206
|
* install either dies with `exit 127` or shadows the real package bin on PATH.
|
|
2207
2207
|
* Only removed when the baked target is gone, so a working shim is never touched —
|
|
@@ -299,7 +299,7 @@ async function runAutoUpdatePassUntilCancelled(opts, cancelled) {
|
|
|
299
299
|
// (`ensureShimCurrent`/`ensureVersionedAliasCurrent`). Deliberately
|
|
300
300
|
// NEVER `adoptShadowingLauncher`: that seizes a launcher this pass does
|
|
301
301
|
// not own (a user's own PATH entry, or another install's), and is an
|
|
302
|
-
// operator-triggered `
|
|
302
|
+
// operator-triggered `agents sync` action, not something an unattended
|
|
303
303
|
// background pass may do on its own. Real-pass-only, same reason as the
|
|
304
304
|
// migration above — a `--check` preview must not touch PATH or a
|
|
305
305
|
// config-dir symlink.
|
|
@@ -42,7 +42,7 @@ export declare const LINEAR_CACHE_TTL_MS: number;
|
|
|
42
42
|
*/
|
|
43
43
|
export declare function resolveLinearApiKey(): string | null;
|
|
44
44
|
/** What a lookup found, and how much to trust it. */
|
|
45
|
-
|
|
45
|
+
interface CacheHit<T> {
|
|
46
46
|
value: T;
|
|
47
47
|
/** Age in ms. Past the TTL the value is still returned, flagged stale. */
|
|
48
48
|
ageMs: number;
|
|
@@ -68,3 +68,4 @@ export declare function parseRateLimitReset(header: string | null, nowMs: number
|
|
|
68
68
|
* `resetAtMs` comes from {@link parseRateLimitReset}; without it, back off one TTL.
|
|
69
69
|
*/
|
|
70
70
|
export declare function noteRateLimited(resetAtMs: number | undefined, nowMs: number): void;
|
|
71
|
+
export {};
|
|
@@ -13,7 +13,7 @@ export interface UsernsStatus {
|
|
|
13
13
|
reason?: string;
|
|
14
14
|
}
|
|
15
15
|
/** The raw signals the pure interpreter reasons over. */
|
|
16
|
-
|
|
16
|
+
interface UsernsInputs {
|
|
17
17
|
platform: NodeJS.Platform;
|
|
18
18
|
/**
|
|
19
19
|
* Contents of {@link APPARMOR_USERNS_SYSCTL_PATH} trimmed, or null when the
|
|
@@ -54,5 +54,4 @@ export declare function probeUnshare(): 'ok' | 'denied' | 'no-tool';
|
|
|
54
54
|
* short-circuits to `ok` without spawning anything.
|
|
55
55
|
*/
|
|
56
56
|
export declare function probeUnprivilegedUserns(platform?: NodeJS.Platform): UsernsStatus;
|
|
57
|
-
|
|
58
|
-
export declare function resetUsernsCacheForTests(): void;
|
|
57
|
+
export {};
|
package/dist/lib/linux-userns.js
CHANGED
package/dist/lib/loop.d.ts
CHANGED
|
@@ -40,7 +40,7 @@ export interface LoopSignal {
|
|
|
40
40
|
/** Why the loop stopped. Mirrors the teams supervisor exit reasons. */
|
|
41
41
|
export type LoopStoppedBy = 'condition-met' | 'budget' | 'stalled' | 'max' | 'signal' | 'error';
|
|
42
42
|
/** Result of a loop run. */
|
|
43
|
-
|
|
43
|
+
interface LoopResult {
|
|
44
44
|
/** Iterations actually executed. */
|
|
45
45
|
iterations: number;
|
|
46
46
|
stoppedBy: LoopStoppedBy;
|
|
@@ -152,3 +152,4 @@ export declare function defaultRunIteration(options: ExecOptions): Promise<Itera
|
|
|
152
152
|
* - `error` — an iteration threw or exited non-zero.
|
|
153
153
|
*/
|
|
154
154
|
export declare function runLoop(execOptions: ExecOptions, loop: LoopConfig, ctx: LoopContext, deps?: LoopDeps): Promise<LoopResult>;
|
|
155
|
+
export {};
|
package/dist/lib/mailbox-gc.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ export interface GcResult {
|
|
|
6
6
|
consumedPruned: number;
|
|
7
7
|
blocksRemoved: number;
|
|
8
8
|
}
|
|
9
|
-
|
|
9
|
+
interface GcOptions {
|
|
10
10
|
root?: string;
|
|
11
11
|
/** Feed store root. Defaults to getFeedDir(). */
|
|
12
12
|
feedRoot?: string;
|
|
@@ -20,3 +20,4 @@ export interface GcOptions {
|
|
|
20
20
|
* mailbox. For live boxes, drop expired messages and prune old consumed files.
|
|
21
21
|
*/
|
|
22
22
|
export declare function gcMailbox(activeBoxIds: Set<string>, options?: GcOptions): GcResult;
|
|
23
|
+
export {};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { ActiveSession } from './session/active.js';
|
|
8
8
|
import type { HostTask } from './hosts/tasks.js';
|
|
9
|
-
|
|
9
|
+
type MessageResolution = {
|
|
10
10
|
kind: 'cloud';
|
|
11
11
|
id: string;
|
|
12
12
|
} | {
|
|
@@ -61,3 +61,4 @@ export type HostTaskRoute = {
|
|
|
61
61
|
* latter.
|
|
62
62
|
*/
|
|
63
63
|
export declare function decideHostTaskRoute(task: HostTask | null, target: string): HostTaskRoute;
|
|
64
|
+
export {};
|
package/dist/lib/mailbox.d.ts
CHANGED
|
@@ -2,12 +2,6 @@
|
|
|
2
2
|
export declare const DEFAULT_TTL_SECONDS: number;
|
|
3
3
|
/** Env var that overrides {@link DEFAULT_TTL_SECONDS} with a duration like "24h" or "3600". */
|
|
4
4
|
export declare const MAILBOX_TTL_ENV = "AGENTS_MAILBOX_TTL";
|
|
5
|
-
/**
|
|
6
|
-
* Resolve the default mailbox TTL in seconds. Honors `AGENTS_MAILBOX_TTL`
|
|
7
|
-
* (parsed by {@link parseDuration}); falls back to 24h. A malformed env value
|
|
8
|
-
* fails loud instead of silently disabling expiry.
|
|
9
|
-
*/
|
|
10
|
-
export declare function resolveDefaultTtlSeconds(): number;
|
|
11
5
|
/** A single mailbox message. `text` may embed `host:/path` clip tokens. */
|
|
12
6
|
export interface MailboxMessage {
|
|
13
7
|
/** Unique, time-sortable id. Also the on-disk filename stem. */
|
package/dist/lib/mailbox.js
CHANGED
|
@@ -30,7 +30,7 @@ export const MAILBOX_TTL_ENV = 'AGENTS_MAILBOX_TTL';
|
|
|
30
30
|
* (parsed by {@link parseDuration}); falls back to 24h. A malformed env value
|
|
31
31
|
* fails loud instead of silently disabling expiry.
|
|
32
32
|
*/
|
|
33
|
-
|
|
33
|
+
function resolveDefaultTtlSeconds() {
|
|
34
34
|
const raw = process.env[MAILBOX_TTL_ENV];
|
|
35
35
|
if (raw == null || raw === '')
|
|
36
36
|
return DEFAULT_TTL_SECONDS;
|
package/dist/lib/manifest.d.ts
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
1
|
import type { Manifest } from './types.js';
|
|
2
2
|
/** Canonical filename for the manifest in any agents repo or project root. */
|
|
3
3
|
export declare const MANIFEST_FILENAME = "agents.yaml";
|
|
4
|
-
/** Parse a YAML string into a typed Manifest object. */
|
|
5
|
-
export declare function parseManifest(content: string): Manifest;
|
|
6
|
-
/**
|
|
7
|
-
* Serialize a Manifest to YAML WITHOUT destroying hand-written comments.
|
|
8
|
-
*
|
|
9
|
-
* Plain `yaml.stringify(manifest)` drops every comment, so `agents mcp add`
|
|
10
|
-
* (and every other writeManifest caller) used to clobber annotations in
|
|
11
|
-
* agents.yaml. Matching `serializeCentral` in state.ts: when existing file
|
|
12
|
-
* text is provided, parse it into a `yaml.Document` (comments + key order
|
|
13
|
-
* preserved) and edit only keys that actually changed. Untouched keys and
|
|
14
|
-
* their comments stay byte-stable. Falls back to plain stringify when there
|
|
15
|
-
* is no existing document yet.
|
|
16
|
-
*/
|
|
17
|
-
export declare function serializeManifest(manifest: Manifest, existingContent?: string | null): string;
|
|
18
4
|
/** Read and parse agents.yaml from a directory. Returns null if the file does not exist. */
|
|
19
5
|
export declare function readManifest(repoPath: string): Manifest | null;
|
|
20
6
|
/** Write a Manifest object to agents.yaml in the given directory. */
|
package/dist/lib/manifest.js
CHANGED
|
@@ -14,7 +14,7 @@ export const MANIFEST_FILENAME = 'agents.yaml';
|
|
|
14
14
|
// Per-path re-entrancy depth so withManifestLock is safe against recursive calls.
|
|
15
15
|
const manifestLockDepth = new Map();
|
|
16
16
|
/** Parse a YAML string into a typed Manifest object. */
|
|
17
|
-
|
|
17
|
+
function parseManifest(content) {
|
|
18
18
|
return yaml.parse(content);
|
|
19
19
|
}
|
|
20
20
|
/**
|
|
@@ -28,7 +28,7 @@ export function parseManifest(content) {
|
|
|
28
28
|
* their comments stay byte-stable. Falls back to plain stringify when there
|
|
29
29
|
* is no existing document yet.
|
|
30
30
|
*/
|
|
31
|
-
|
|
31
|
+
function serializeManifest(manifest, existingContent) {
|
|
32
32
|
const entries = Object.entries(manifest).filter(([, v]) => v !== undefined);
|
|
33
33
|
const isEmpty = entries.length === 0;
|
|
34
34
|
if (existingContent == null || existingContent.trim() === '') {
|
|
@@ -19,7 +19,7 @@ export type McpFormat =
|
|
|
19
19
|
/** `{ schema_version, mcp_servers: { "<name>": {transport, ..., enabled} } }` */
|
|
20
20
|
| 'muse-json';
|
|
21
21
|
/** The complete MCP contract for one agent. */
|
|
22
|
-
|
|
22
|
+
interface McpTarget {
|
|
23
23
|
/** MCP config file under a HOME root (a version home, or the real HOME). */
|
|
24
24
|
home(home: string): string;
|
|
25
25
|
/** Project-scoped MCP config file for a repo at `cwd`. */
|
|
@@ -60,3 +60,4 @@ export declare function mcpTarget(agent: AgentId): McpTarget | undefined;
|
|
|
60
60
|
* MCP-capable, or a hard-deprecated id), or it has one with `format: null`.
|
|
61
61
|
*/
|
|
62
62
|
export declare function mcpWriteUnsupportedReason(agent: AgentId): string | null;
|
|
63
|
+
export {};
|