@phnx-labs/agents-cli 1.22.119 → 1.22.121
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 +236 -0
- package/README.md +19 -2
- package/dist/bootstrap.d.ts +0 -15
- package/dist/bootstrap.js +10 -409
- package/dist/cli/command-registry.d.ts +0 -58
- package/dist/cli/command-registry.js +2 -74
- package/dist/commands/accounts.d.ts +0 -17
- package/dist/commands/accounts.js +1 -52
- package/dist/commands/alias.d.ts +0 -12
- package/dist/commands/alias.js +0 -6
- package/dist/commands/apply.d.ts +0 -15
- package/dist/commands/apply.js +0 -63
- package/dist/commands/audit.d.ts +0 -12
- package/dist/commands/audit.js +0 -13
- package/dist/commands/auth.js +4 -12
- package/dist/commands/beta.d.ts +0 -6
- package/dist/commands/beta.js +2 -6
- package/dist/commands/browser-sessions-picker.d.ts +0 -8
- package/dist/commands/browser-sessions-picker.js +0 -26
- package/dist/commands/browser.d.ts +0 -57
- package/dist/commands/browser.js +0 -80
- package/dist/commands/budget.d.ts +0 -13
- package/dist/commands/budget.js +0 -2
- package/dist/commands/cli.d.ts +0 -12
- package/dist/commands/cli.js +0 -4
- package/dist/commands/cloud.d.ts +0 -9
- package/dist/commands/cloud.js +0 -43
- package/dist/commands/commands.d.ts +0 -9
- package/dist/commands/commands.js +0 -18
- package/dist/commands/computer-sessions-picker.d.ts +0 -11
- package/dist/commands/computer-sessions-picker.js +0 -29
- package/dist/commands/computer.d.ts +0 -62
- package/dist/commands/computer.js +3 -114
- package/dist/commands/config.d.ts +0 -14
- package/dist/commands/config.js +21 -60
- package/dist/commands/cost.d.ts +0 -11
- package/dist/commands/cost.js +1 -17
- package/dist/commands/daemon-test-harness.d.ts +0 -32
- package/dist/commands/daemon-test-harness.js +1 -36
- package/dist/commands/daemon.d.ts +0 -46
- package/dist/commands/daemon.js +8 -255
- package/dist/commands/detach-core.d.ts +0 -28
- package/dist/commands/detach-core.js +0 -30
- package/dist/commands/detach.d.ts +1 -12
- package/dist/commands/detach.js +16 -52
- package/dist/commands/device-config-test-harness.js +0 -12
- package/dist/commands/doctor.d.ts +0 -103
- package/dist/commands/doctor.js +3 -279
- package/dist/commands/events.d.ts +0 -29
- package/dist/commands/events.js +1 -55
- package/dist/commands/exec.d.ts +0 -163
- package/dist/commands/exec.js +15 -964
- package/dist/commands/factory.d.ts +0 -6
- package/dist/commands/factory.js +0 -2
- package/dist/commands/feed-watch.js +0 -20
- package/dist/commands/feed.d.ts +0 -38
- package/dist/commands/feed.js +1 -151
- package/dist/commands/feedback.d.ts +0 -5
- package/dist/commands/feedback.js +0 -5
- package/dist/commands/fleet-capture.d.ts +0 -12
- package/dist/commands/fleet-capture.js +1 -39
- package/dist/commands/focus.d.ts +6 -94
- package/dist/commands/focus.js +13 -183
- package/dist/commands/fork.d.ts +0 -21
- package/dist/commands/fork.js +0 -45
- package/dist/commands/funnel.d.ts +0 -3
- package/dist/commands/go.d.ts +2 -71
- package/dist/commands/go.js +5 -99
- package/dist/commands/harness-hooks.d.ts +0 -41
- package/dist/commands/harness-hooks.js +0 -48
- package/dist/commands/harness-wizard.d.ts +0 -137
- package/dist/commands/harness-wizard.js +0 -109
- package/dist/commands/harness.d.ts +0 -63
- package/dist/commands/harness.js +0 -103
- package/dist/commands/hooks.d.ts +0 -9
- package/dist/commands/hooks.js +0 -26
- package/dist/commands/humans.d.ts +0 -8
- package/dist/commands/humans.js +0 -8
- package/dist/commands/import.d.ts +0 -22
- package/dist/commands/import.js +0 -79
- package/dist/commands/insights.d.ts +0 -37
- package/dist/commands/insights.js +3 -115
- package/dist/commands/inspect.d.ts +0 -117
- package/dist/commands/inspect.js +2 -448
- package/dist/commands/lease.d.ts +0 -28
- package/dist/commands/lease.js +0 -43
- package/dist/commands/logs.d.ts +0 -23
- package/dist/commands/logs.js +0 -30
- package/dist/commands/mailboxes.d.ts +0 -18
- package/dist/commands/mailboxes.js +0 -29
- package/dist/commands/mcp.d.ts +0 -9
- package/dist/commands/mcp.js +0 -53
- package/dist/commands/memory.d.ts +0 -7
- package/dist/commands/memory.js +0 -7
- package/dist/commands/menubar.d.ts +0 -8
- package/dist/commands/menubar.js +0 -24
- package/dist/commands/message.d.ts +0 -23
- package/dist/commands/message.js +0 -50
- package/dist/commands/mine.d.ts +0 -22
- package/dist/commands/mine.js +0 -21
- package/dist/commands/models.d.ts +0 -8
- package/dist/commands/models.js +0 -33
- package/dist/commands/modes.d.ts +0 -10
- package/dist/commands/modes.js +0 -13
- package/dist/commands/monitors.d.ts +0 -9
- package/dist/commands/monitors.js +3 -160
- package/dist/commands/open.d.ts +0 -26
- package/dist/commands/open.js +0 -10
- package/dist/commands/output.d.ts +0 -18
- package/dist/commands/output.js +1 -34
- package/dist/commands/packages-materialize.d.ts +0 -11
- package/dist/commands/packages-materialize.js +0 -3
- package/dist/commands/packages.d.ts +0 -10
- package/dist/commands/packages.js +0 -50
- package/dist/commands/perf.d.ts +0 -41
- package/dist/commands/perf.js +0 -55
- package/dist/commands/permissions.d.ts +0 -9
- package/dist/commands/permissions.js +0 -43
- package/dist/commands/plugins.d.ts +0 -14
- package/dist/commands/plugins.js +2 -55
- package/dist/commands/profiles.d.ts +0 -25
- package/dist/commands/profiles.js +0 -27
- package/dist/commands/projects-todo.d.ts +2 -0
- package/dist/commands/projects-todo.js +132 -0
- package/dist/commands/projects.d.ts +0 -85
- package/dist/commands/projects.js +344 -291
- package/dist/commands/prune.js +0 -30
- package/dist/commands/ps-roster.d.ts +92 -0
- package/dist/commands/ps-roster.js +744 -0
- package/dist/commands/ps.d.ts +6 -0
- package/dist/commands/ps.js +98 -0
- package/dist/commands/refresh-rules.d.ts +0 -13
- package/dist/commands/refresh-rules.js +0 -14
- package/dist/commands/reminders.d.ts +0 -7
- package/dist/commands/repo.d.ts +0 -89
- package/dist/commands/repo.js +7 -205
- package/dist/commands/resource-view.d.ts +0 -33
- package/dist/commands/resource-view.js +0 -49
- package/dist/commands/resume.d.ts +1 -19
- package/dist/commands/resume.js +0 -50
- package/dist/commands/route.d.ts +0 -10
- package/dist/commands/route.js +0 -19
- package/dist/commands/routines.d.ts +0 -42
- package/dist/commands/routines.js +5 -290
- package/dist/commands/routines.test-fixture.d.ts +0 -34
- package/dist/commands/routines.test-fixture.js +4 -100
- package/dist/commands/rules.d.ts +0 -9
- package/dist/commands/rules.js +1 -6
- package/dist/commands/run-account-picker.d.ts +0 -59
- package/dist/commands/run-account-picker.js +0 -71
- package/dist/commands/run-broadcast.d.ts +0 -9
- package/dist/commands/run-broadcast.js +0 -7
- package/dist/commands/run-cloud.d.ts +0 -15
- package/dist/commands/run-cloud.js +0 -37
- package/dist/commands/run-device-picker.d.ts +0 -25
- package/dist/commands/run-device-picker.js +1 -53
- package/dist/commands/secrets-passthrough.d.ts +0 -31
- package/dist/commands/secrets-passthrough.js +0 -10
- package/dist/commands/send.d.ts +0 -20
- package/dist/commands/send.js +14 -18
- package/dist/commands/sessions-backfill.d.ts +0 -7
- package/dist/commands/sessions-backfill.js +1 -16
- package/dist/commands/sessions-backup-setup.js +0 -11
- package/dist/commands/sessions-bookmark.d.ts +0 -8
- package/dist/commands/sessions-bookmark.js +0 -28
- package/dist/commands/sessions-browser.d.ts +2 -117
- package/dist/commands/sessions-browser.js +5 -243
- package/dist/commands/sessions-export.d.ts +1 -26
- package/dist/commands/sessions-export.js +3 -81
- package/dist/commands/sessions-import.d.ts +0 -14
- package/dist/commands/sessions-import.js +0 -59
- package/dist/commands/sessions-inject.d.ts +0 -60
- package/dist/commands/sessions-inject.js +3 -96
- package/dist/commands/sessions-migrate.d.ts +2 -37
- package/dist/commands/sessions-migrate.js +7 -159
- package/dist/commands/sessions-optimize.d.ts +0 -12
- package/dist/commands/sessions-picker-factory.d.ts +0 -7
- package/dist/commands/sessions-picker-factory.js +0 -8
- package/dist/commands/sessions-picker.d.ts +4 -103
- package/dist/commands/sessions-picker.js +13 -352
- package/dist/commands/sessions-render.d.ts +1 -2
- package/dist/commands/sessions-render.js +3 -7
- package/dist/commands/sessions-resume.d.ts +1 -24
- package/dist/commands/sessions-resume.js +2 -65
- package/dist/commands/sessions-share.d.ts +1 -9
- package/dist/commands/sessions-share.js +1 -45
- package/dist/commands/sessions-stats.d.ts +0 -24
- package/dist/commands/sessions-stats.js +0 -49
- package/dist/commands/sessions-stop.d.ts +1 -20
- package/dist/commands/sessions-stop.js +4 -9
- package/dist/commands/sessions-tail.d.ts +1 -19
- package/dist/commands/sessions-tail.js +3 -36
- package/dist/commands/sessions-trace.d.ts +5 -36
- package/dist/commands/sessions-trace.js +7 -82
- package/dist/commands/sessions.d.ts +1 -666
- package/dist/commands/sessions.js +30 -2279
- package/dist/commands/sessions.test-fixture.d.ts +0 -9
- package/dist/commands/sessions.test-fixture.js +8 -23
- package/dist/commands/setup-accounts.d.ts +0 -6
- package/dist/commands/setup-browser.d.ts +0 -23
- package/dist/commands/setup-browser.js +0 -28
- package/dist/commands/setup-computer.d.ts +0 -16
- package/dist/commands/setup-computer.js +0 -28
- package/dist/commands/setup-fleet.d.ts +0 -8
- package/dist/commands/setup-fleet.js +0 -11
- package/dist/commands/setup-mine.d.ts +0 -14
- package/dist/commands/setup-mine.js +0 -25
- package/dist/commands/setup-preferences.d.ts +0 -47
- package/dist/commands/setup-preferences.js +0 -53
- package/dist/commands/setup-secrets.d.ts +2 -24
- package/dist/commands/setup-secrets.js +0 -24
- package/dist/commands/setup-term.d.ts +0 -21
- package/dist/commands/setup-term.js +0 -21
- package/dist/commands/setup-terminal.d.ts +0 -1
- package/dist/commands/setup-terminal.js +0 -1
- package/dist/commands/setup-tools.d.ts +2 -0
- package/dist/commands/setup-tools.js +73 -0
- package/dist/commands/setup.d.ts +0 -20
- package/dist/commands/setup.js +4 -57
- package/dist/commands/skills.d.ts +0 -9
- package/dist/commands/skills.js +1 -22
- package/dist/commands/snapshot.d.ts +0 -9
- package/dist/commands/snapshot.js +0 -10
- package/dist/commands/ssh.d.ts +0 -64
- package/dist/commands/ssh.js +9 -420
- package/dist/commands/status.d.ts +0 -12
- package/dist/commands/status.js +0 -26
- package/dist/commands/subagents.d.ts +0 -8
- package/dist/commands/subagents.js +0 -31
- package/dist/commands/sync.d.ts +0 -37
- package/dist/commands/sync.js +0 -256
- package/dist/commands/teams-picker.d.ts +0 -3
- package/dist/commands/teams-picker.js +0 -34
- package/dist/commands/teams.d.ts +1 -76
- package/dist/commands/teams.js +9 -477
- package/dist/commands/tmux.d.ts +0 -25
- package/dist/commands/tmux.js +0 -46
- package/dist/commands/traces.js +0 -19
- package/dist/commands/trash.d.ts +0 -17
- package/dist/commands/trash.js +1 -11
- package/dist/commands/uninstall.d.ts +0 -9
- package/dist/commands/uninstall.js +0 -6
- package/dist/commands/update.d.ts +0 -22
- package/dist/commands/update.js +0 -44
- package/dist/commands/upgrade.d.ts +0 -1
- package/dist/commands/upgrade.js +0 -1
- package/dist/commands/utils.d.ts +0 -85
- package/dist/commands/utils.js +1 -95
- package/dist/commands/versions.d.ts +0 -16
- package/dist/commands/versions.js +0 -134
- package/dist/commands/view.d.ts +0 -90
- package/dist/commands/view.js +4 -343
- package/dist/commands/watchdog.d.ts +0 -19
- package/dist/commands/watchdog.js +3 -43
- package/dist/commands/webhook.d.ts +0 -8
- package/dist/commands/webhook.js +0 -14
- package/dist/commands/workflows.d.ts +0 -8
- package/dist/commands/workflows.js +0 -6
- package/dist/index.d.ts +0 -25
- package/dist/index.js +5 -119
- package/dist/lib/account-capabilities.d.ts +0 -34
- package/dist/lib/account-capabilities.js +0 -32
- package/dist/lib/account-catalog.d.ts +0 -128
- package/dist/lib/account-catalog.js +8 -154
- package/dist/lib/account-provider-registry.d.ts +0 -14
- package/dist/lib/account-provider-registry.js +0 -8
- package/dist/lib/account-registry.d.ts +0 -74
- package/dist/lib/account-registry.js +14 -189
- package/dist/lib/account-schema.d.ts +0 -19
- package/dist/lib/account-schema.js +0 -43
- package/dist/lib/accounting/account-launch.d.ts +0 -15
- package/dist/lib/accounting/account-launch.js +1 -3
- package/dist/lib/accounting/account-pool-collect.d.ts +0 -26
- package/dist/lib/accounting/account-pool-collect.js +0 -42
- package/dist/lib/accounting/account-pool.d.ts +0 -41
- package/dist/lib/accounting/account-pool.js +0 -17
- package/dist/lib/accounting/capacity.d.ts +0 -32
- package/dist/lib/accounting/capacity.js +0 -32
- package/dist/lib/accounting/rotate.d.ts +0 -518
- package/dist/lib/accounting/rotate.js +4 -598
- package/dist/lib/accounting/usage-ingest.d.ts +0 -1
- package/dist/lib/accounting/usage-ingest.js +0 -44
- package/dist/lib/accounting/usage-sync.d.ts +0 -60
- package/dist/lib/accounting/usage-sync.js +4 -51
- package/dist/lib/accounting/usage.d.ts +0 -632
- package/dist/lib/accounting/usage.js +14 -1055
- package/dist/lib/accounts/add.d.ts +0 -60
- package/dist/lib/accounts/add.js +0 -127
- package/dist/lib/accounts/auth-operation-lock.d.ts +0 -1
- package/dist/lib/accounts/auth-operation-lock.js +0 -4
- package/dist/lib/accounts/migrate.d.ts +0 -9
- package/dist/lib/accounts/migrate.js +3 -42
- package/dist/lib/accounts/slots.d.ts +0 -25
- package/dist/lib/accounts/slots.js +1 -49
- package/dist/lib/acp/client.d.ts +0 -16
- package/dist/lib/acp/client.js +0 -29
- package/dist/lib/acp/harnesses.d.ts +0 -15
- package/dist/lib/acp/harnesses.js +0 -16
- package/dist/lib/acp/run.d.ts +0 -8
- package/dist/lib/acp/run.js +0 -8
- package/dist/lib/actor.d.ts +1 -71
- package/dist/lib/actor.js +1 -99
- package/dist/lib/add-dir.d.ts +0 -46
- package/dist/lib/add-dir.js +1 -70
- package/dist/lib/address.d.ts +0 -17
- package/dist/lib/address.js +0 -15
- package/dist/lib/agent-cli-commands.d.ts +0 -10
- package/dist/lib/agent-cli-commands.js +0 -10
- package/dist/lib/agent-modes.d.ts +0 -29
- package/dist/lib/agent-modes.js +0 -31
- package/dist/lib/agent-spec/agents.d.ts +0 -426
- package/dist/lib/agent-spec/agents.js +37 -924
- package/dist/lib/agent-spec/index.d.ts +0 -5
- package/dist/lib/agent-spec/index.js +0 -14
- package/dist/lib/agent-spec/materialize.d.ts +0 -10
- package/dist/lib/agent-spec/materialize.js +2 -139
- package/dist/lib/agent-spec/package-resolve.d.ts +0 -8
- package/dist/lib/agent-spec/package-resolve.js +1 -44
- package/dist/lib/agent-spec/package-schema.d.ts +0 -2
- package/dist/lib/agent-spec/package-schema.js +0 -11
- package/dist/lib/agent-spec/package-types.d.ts +0 -27
- package/dist/lib/agent-spec/package-types.js +0 -1
- package/dist/lib/agent-spec/primitives.d.ts +0 -18
- package/dist/lib/agent-spec/primitives.js +0 -27
- package/dist/lib/agent-spec/provider.js +0 -2
- package/dist/lib/agent-spec/resolve.d.ts +0 -23
- package/dist/lib/agent-spec/resolve.js +0 -41
- package/dist/lib/agent-spec/types.d.ts +0 -34
- package/dist/lib/agent-spec/types.js +0 -6
- package/dist/lib/agents.d.ts +0 -1
- package/dist/lib/agents.js +0 -1
- package/dist/lib/analytics/mix-commands.d.ts +0 -23
- package/dist/lib/analytics/mix-commands.js +0 -26
- package/dist/lib/analytics/recipes.d.ts +0 -1
- package/dist/lib/analytics/recipes.js +5 -10
- package/dist/lib/analytics/usage-db.js +4 -6
- package/dist/lib/answer-router.d.ts +0 -61
- package/dist/lib/answer-router.js +0 -57
- package/dist/lib/app-bundle-install.d.ts +0 -13
- package/dist/lib/app-bundle-install.js +0 -50
- package/dist/lib/artifact-actions.d.ts +0 -15
- package/dist/lib/artifact-actions.js +0 -18
- package/dist/lib/artifacts-client.d.ts +0 -10
- package/dist/lib/artifacts-client.js +0 -17
- package/dist/lib/ask-classifier.d.ts +0 -38
- package/dist/lib/ask-classifier.js +0 -27
- package/dist/lib/audit/log.d.ts +0 -47
- package/dist/lib/audit/log.js +1 -59
- package/dist/lib/auth-health.d.ts +0 -213
- package/dist/lib/auth-health.js +16 -266
- package/dist/lib/auth-mint.d.ts +0 -83
- package/dist/lib/auth-mint.js +8 -85
- package/dist/lib/auto-pull-worker.d.ts +0 -10
- package/dist/lib/auto-pull-worker.js +3 -48
- package/dist/lib/auto-pull.d.ts +0 -64
- package/dist/lib/auto-pull.js +0 -79
- package/dist/lib/beta.d.ts +0 -9
- package/dist/lib/beta.js +0 -9
- package/dist/lib/binary-shadow.d.ts +0 -22
- package/dist/lib/binary-shadow.js +4 -34
- package/dist/lib/boot-profile.d.ts +0 -10
- package/dist/lib/boot-profile.js +1 -31
- package/dist/lib/brand.d.ts +0 -20
- package/dist/lib/brand.js +0 -50
- package/dist/lib/browser/context.d.ts +0 -54
- package/dist/lib/browser/context.js +0 -49
- package/dist/lib/browser/paths.d.ts +0 -21
- package/dist/lib/browser/paths.js +0 -26
- package/dist/lib/browser/record.d.ts +0 -34
- package/dist/lib/browser/record.js +0 -38
- package/dist/lib/browser/sessions-list.d.ts +1 -79
- package/dist/lib/browser/sessions-list.js +2 -98
- package/dist/lib/browser-client.d.ts +0 -112
- package/dist/lib/browser-client.js +1 -90
- package/dist/lib/budget/config.d.ts +0 -6
- package/dist/lib/budget/config.js +0 -29
- package/dist/lib/budget/enforce.d.ts +0 -50
- package/dist/lib/budget/enforce.js +0 -27
- package/dist/lib/budget/ledger.d.ts +0 -23
- package/dist/lib/budget/ledger.js +0 -28
- package/dist/lib/budget/live-cloud.d.ts +0 -26
- package/dist/lib/budget/live-cloud.js +0 -12
- package/dist/lib/budget/live-team.d.ts +0 -17
- package/dist/lib/budget/live-team.js +1 -35
- package/dist/lib/budget/preflight.d.ts +0 -51
- package/dist/lib/budget/preflight.js +0 -36
- package/dist/lib/byok-usage.d.ts +0 -20
- package/dist/lib/byok-usage.js +1 -24
- package/dist/lib/capabilities.d.ts +0 -24
- package/dist/lib/capabilities.js +0 -29
- package/dist/lib/catchup.d.ts +0 -87
- package/dist/lib/catchup.js +1 -81
- package/dist/lib/channels/owner-forward.d.ts +0 -70
- package/dist/lib/channels/owner-forward.js +1 -43
- package/dist/lib/channels/owner-sink.js +0 -21
- package/dist/lib/channels/providers/desktop.d.ts +0 -37
- package/dist/lib/channels/providers/desktop.js +0 -72
- package/dist/lib/channels/providers/index.d.ts +0 -1
- package/dist/lib/channels/providers/index.js +2 -6
- package/dist/lib/channels/providers/mailbox.js +0 -7
- package/dist/lib/channels/providers/openclaw-telegram.js +0 -8
- package/dist/lib/channels/providers/rush.d.ts +0 -2
- package/dist/lib/channels/providers/rush.js +0 -26
- package/dist/lib/channels/providers/session.d.ts +2 -0
- package/dist/lib/channels/providers/session.js +26 -0
- package/dist/lib/channels/registry.d.ts +0 -27
- package/dist/lib/channels/registry.js +0 -10
- package/dist/lib/channels/resolve.d.ts +0 -19
- package/dist/lib/channels/resolve.js +0 -2
- package/dist/lib/channels/send.d.ts +0 -50
- package/dist/lib/channels/send.js +0 -25
- package/dist/lib/checkpoint.d.ts +0 -36
- package/dist/lib/checkpoint.js +0 -28
- package/dist/lib/claude-account-token.d.ts +0 -98
- package/dist/lib/claude-account-token.js +7 -169
- package/dist/lib/claude-statusline.d.ts +0 -41
- package/dist/lib/claude-statusline.js +0 -68
- package/dist/lib/cli-entry.d.ts +0 -26
- package/dist/lib/cli-entry.js +1 -61
- package/dist/lib/cli-resources.d.ts +31 -89
- package/dist/lib/cli-resources.js +116 -152
- package/dist/lib/cloud/antigravity.d.ts +0 -29
- package/dist/lib/cloud/antigravity.js +0 -36
- package/dist/lib/cloud/codex.d.ts +0 -8
- package/dist/lib/cloud/codex.js +0 -41
- package/dist/lib/cloud/cursor.d.ts +0 -5
- package/dist/lib/cloud/cursor.js +2 -7
- package/dist/lib/cloud/dispatch.d.ts +0 -13
- package/dist/lib/cloud/dispatch.js +1 -48
- package/dist/lib/cloud/factory.d.ts +0 -52
- package/dist/lib/cloud/factory.js +3 -67
- package/dist/lib/cloud/host.d.ts +0 -39
- package/dist/lib/cloud/host.js +5 -48
- package/dist/lib/cloud/registry.d.ts +0 -25
- package/dist/lib/cloud/registry.js +0 -29
- package/dist/lib/cloud/rush.d.ts +0 -47
- package/dist/lib/cloud/rush.js +1 -82
- package/dist/lib/cloud/session-index.d.ts +0 -27
- package/dist/lib/cloud/session-index.js +1 -32
- package/dist/lib/cloud/store.d.ts +0 -18
- package/dist/lib/cloud/store.js +0 -28
- package/dist/lib/cloud/stream.d.ts +0 -14
- package/dist/lib/cloud/stream.js +0 -25
- package/dist/lib/cloud/types.d.ts +0 -168
- package/dist/lib/cloud/types.js +0 -46
- package/dist/lib/cloudflare/creds.d.ts +0 -2
- package/dist/lib/cloudflare/creds.js +0 -14
- package/dist/lib/cloudflare/provision.d.ts +0 -8
- package/dist/lib/cloudflare/provision.js +1 -19
- package/dist/lib/codex-home.d.ts +0 -60
- package/dist/lib/codex-home.js +2 -72
- package/dist/lib/codex-policy.d.ts +0 -10
- package/dist/lib/codex-policy.js +0 -13
- package/dist/lib/command-skills.d.ts +0 -10
- package/dist/lib/command-skills.js +0 -10
- package/dist/lib/commands.d.ts +0 -74
- package/dist/lib/commands.js +0 -112
- package/dist/lib/comms-render.d.ts +0 -5
- package/dist/lib/comms-render.js +0 -5
- package/dist/lib/computer/context.d.ts +0 -23
- package/dist/lib/computer/context.js +0 -14
- package/dist/lib/computer/policy.d.ts +0 -20
- package/dist/lib/computer/policy.js +0 -53
- package/dist/lib/computer/record.d.ts +0 -33
- package/dist/lib/computer/record.js +1 -48
- package/dist/lib/computer/sessions-list.d.ts +1 -128
- package/dist/lib/computer/sessions-list.js +6 -165
- package/dist/lib/computer-client.d.ts +0 -106
- package/dist/lib/computer-client.js +5 -86
- package/dist/lib/concurrency.d.ts +0 -14
- package/dist/lib/concurrency.js +0 -3
- package/dist/lib/config-drift.d.ts +0 -31
- package/dist/lib/config-drift.js +0 -32
- package/dist/lib/config-keys.d.ts +1 -65
- package/dist/lib/config-keys.js +6 -52
- package/dist/lib/config-transfer.d.ts +0 -14
- package/dist/lib/config-transfer.js +0 -26
- package/dist/lib/convert.d.ts +0 -17
- package/dist/lib/convert.js +0 -18
- package/dist/lib/crabbox/cli.d.ts +0 -156
- package/dist/lib/crabbox/cli.js +1 -188
- package/dist/lib/crabbox/config.d.ts +0 -18
- package/dist/lib/crabbox/config.js +1 -19
- package/dist/lib/crabbox/lease.d.ts +0 -93
- package/dist/lib/crabbox/lease.js +4 -148
- package/dist/lib/crabbox/progress.d.ts +0 -56
- package/dist/lib/crabbox/progress.js +2 -49
- package/dist/lib/crabbox/runtimes.d.ts +0 -94
- package/dist/lib/crabbox/runtimes.js +1 -111
- package/dist/lib/crabbox/setup-copy.d.ts +0 -64
- package/dist/lib/crabbox/setup-copy.js +1 -53
- package/dist/lib/daemon/account-state-daemon-service.d.ts +0 -48
- package/dist/lib/daemon/account-state-daemon-service.js +2 -63
- package/dist/lib/daemon/attention-notify-service.d.ts +0 -12
- package/dist/lib/daemon/attention-notify-service.js +1 -24
- package/dist/lib/daemon/auth-sync-service.d.ts +0 -28
- package/dist/lib/daemon/auth-sync-service.js +0 -56
- package/dist/lib/daemon/catchup-service.d.ts +0 -34
- package/dist/lib/daemon/catchup-service.js +0 -30
- package/dist/lib/daemon/daemon.d.ts +0 -374
- package/dist/lib/daemon/daemon.js +44 -1049
- package/dist/lib/daemon/daemon.test-fixture.d.ts +0 -19
- package/dist/lib/daemon/daemon.test-fixture.js +1 -24
- package/dist/lib/daemon/device-probe-service.d.ts +0 -16
- package/dist/lib/daemon/device-probe-service.js +0 -20
- package/dist/lib/daemon/feed-stream-service.d.ts +0 -15
- package/dist/lib/daemon/feed-stream-service.js +0 -20
- package/dist/lib/daemon/harness-update-service.d.ts +2 -61
- package/dist/lib/daemon/harness-update-service.js +6 -86
- package/dist/lib/daemon/heartbeat-service.d.ts +0 -1
- package/dist/lib/daemon/heartbeat-service.js +0 -1
- package/dist/lib/daemon/leaked-daemons.d.ts +0 -46
- package/dist/lib/daemon/leaked-daemons.js +2 -78
- package/dist/lib/daemon/monitor-engine-service.d.ts +0 -13
- package/dist/lib/daemon/monitor-engine-service.js +3 -15
- package/dist/lib/daemon/runner.d.ts +0 -194
- package/dist/lib/daemon/runner.js +39 -760
- package/dist/lib/daemon/self-heal-service.d.ts +18 -17
- package/dist/lib/daemon/self-heal-service.js +83 -37
- package/dist/lib/daemon/self-update-service.d.ts +1 -131
- package/dist/lib/daemon/self-update-service.js +26 -189
- package/dist/lib/daemon/service.d.ts +0 -73
- package/dist/lib/daemon/service.js +0 -34
- package/dist/lib/daemon/session-index-service.d.ts +0 -12
- package/dist/lib/daemon/session-index-service.js +0 -23
- package/dist/lib/daemon/session-state-service.d.ts +0 -8
- package/dist/lib/daemon/session-state-service.js +0 -8
- package/dist/lib/daemon/session-summarizer-service.d.ts +0 -14
- package/dist/lib/daemon/session-summarizer-service.js +1 -19
- package/dist/lib/daemon/session-title-service.d.ts +0 -25
- package/dist/lib/daemon/session-title-service.js +0 -32
- package/dist/lib/daemon/state-dir-check-service.d.ts +0 -24
- package/dist/lib/daemon/state-dir-check-service.js +0 -29
- package/dist/lib/daemon/supervisor.d.ts +0 -112
- package/dist/lib/daemon/supervisor.js +4 -147
- package/dist/lib/daemon/testdata/process-view-daemon.js +0 -2
- package/dist/lib/daemon/testdata/process-view-start.js +0 -5
- package/dist/lib/daemon/tmux-reap-service.d.ts +0 -1
- package/dist/lib/daemon/tmux-reap-service.js +0 -1
- package/dist/lib/daemon/usage-sync-service.d.ts +0 -23
- package/dist/lib/daemon/usage-sync-service.js +0 -26
- package/dist/lib/daemon/watchdog-service.d.ts +0 -9
- package/dist/lib/daemon/watchdog-service.js +0 -13
- package/dist/lib/daemon/webhook-receiver-service.d.ts +0 -1
- package/dist/lib/daemon/webhook-receiver-service.js +0 -1
- package/dist/lib/daemon-health.d.ts +0 -55
- package/dist/lib/daemon-health.js +4 -77
- package/dist/lib/daemon-services.d.ts +0 -36
- package/dist/lib/daemon-services.js +0 -45
- package/dist/lib/daemon-ticks.d.ts +0 -126
- package/dist/lib/daemon-ticks.js +1 -156
- package/dist/lib/daemon-webhooks.d.ts +0 -57
- package/dist/lib/daemon-webhooks.js +2 -54
- package/dist/lib/deeplink/register.d.ts +0 -15
- package/dist/lib/deeplink/register.js +0 -60
- package/dist/lib/deeplink/url.d.ts +0 -24
- package/dist/lib/deeplink/url.js +1 -33
- package/dist/lib/device-config.d.ts +1 -192
- package/dist/lib/device-config.js +86 -240
- package/dist/lib/devices/config-migration.d.ts +0 -43
- package/dist/lib/devices/config-migration.js +7 -127
- package/dist/lib/devices/connect.d.ts +0 -168
- package/dist/lib/devices/connect.js +6 -254
- package/dist/lib/devices/device-docs.d.ts +0 -24
- package/dist/lib/devices/device-docs.js +0 -46
- package/dist/lib/devices/discovery-policy.d.ts +0 -30
- package/dist/lib/devices/discovery-policy.js +3 -34
- package/dist/lib/devices/doctor-findings.d.ts +0 -109
- package/dist/lib/devices/doctor-findings.js +30 -326
- package/dist/lib/devices/doctor-overview-cache.d.ts +0 -33
- package/dist/lib/devices/doctor-overview-cache.js +0 -81
- package/dist/lib/devices/fleet-divergence.d.ts +0 -89
- package/dist/lib/devices/fleet-divergence.js +1 -60
- package/dist/lib/devices/fleet-inventory.d.ts +0 -27
- package/dist/lib/devices/fleet-inventory.js +0 -38
- package/dist/lib/devices/fleet.d.ts +0 -95
- package/dist/lib/devices/fleet.js +0 -79
- package/dist/lib/devices/harness-inventory.d.ts +0 -75
- package/dist/lib/devices/harness-inventory.js +0 -101
- package/dist/lib/devices/health-report.d.ts +0 -37
- package/dist/lib/devices/health-report.js +0 -73
- package/dist/lib/devices/health.d.ts +0 -71
- package/dist/lib/devices/health.js +2 -82
- package/dist/lib/devices/interactive-host.d.ts +0 -10
- package/dist/lib/devices/interactive-host.js +0 -34
- package/dist/lib/devices/known-hosts.d.ts +0 -45
- package/dist/lib/devices/known-hosts.js +0 -77
- package/dist/lib/devices/pending.d.ts +0 -31
- package/dist/lib/devices/pending.js +7 -67
- package/dist/lib/devices/pool.d.ts +0 -36
- package/dist/lib/devices/pool.js +0 -30
- package/dist/lib/devices/reachability.d.ts +0 -25
- package/dist/lib/devices/reachability.js +0 -14
- package/dist/lib/devices/registry.d.ts +0 -141
- package/dist/lib/devices/registry.js +4 -151
- package/dist/lib/devices/resolve-profile.d.ts +0 -18
- package/dist/lib/devices/resolve-profile.js +0 -18
- package/dist/lib/devices/resolve-target.d.ts +0 -20
- package/dist/lib/devices/resolve-target.js +1 -51
- package/dist/lib/devices/rollout-verify.d.ts +1 -81
- package/dist/lib/devices/rollout-verify.js +0 -77
- package/dist/lib/devices/self-host.d.ts +0 -7
- package/dist/lib/devices/self-host.js +1 -29
- package/dist/lib/devices/ssh-config.d.ts +0 -18
- package/dist/lib/devices/ssh-config.js +0 -9
- package/dist/lib/devices/stats-cache.d.ts +0 -48
- package/dist/lib/devices/stats-cache.js +0 -80
- package/dist/lib/devices/sync.d.ts +0 -97
- package/dist/lib/devices/sync.js +0 -88
- package/dist/lib/devices/tailscale.d.ts +0 -18
- package/dist/lib/devices/tailscale.js +1 -38
- package/dist/lib/devices/terminfo.d.ts +0 -27
- package/dist/lib/devices/terminfo.js +2 -64
- package/dist/lib/devices/worker-pick.d.ts +0 -15
- package/dist/lib/devices/worker-pick.js +0 -48
- package/dist/lib/diff-text.d.ts +0 -18
- package/dist/lib/diff-text.js +0 -15
- package/dist/lib/doctor-diff.d.ts +0 -79
- package/dist/lib/doctor-diff.js +2 -181
- package/dist/lib/drift-sync.d.ts +0 -29
- package/dist/lib/drift-sync.js +0 -40
- package/dist/lib/drift.d.ts +0 -43
- package/dist/lib/drift.js +0 -31
- package/dist/lib/event-families.d.ts +0 -17
- package/dist/lib/event-families.js +0 -33
- package/dist/lib/event-provenance.d.ts +0 -4
- package/dist/lib/event-provenance.js +0 -5
- package/dist/lib/event-stream.d.ts +0 -29
- package/dist/lib/event-stream.js +0 -36
- package/dist/lib/events-ingest.d.ts +0 -27
- package/dist/lib/events-ingest.js +0 -54
- package/dist/lib/exec-account-home.d.ts +0 -24
- package/dist/lib/exec-account-home.js +0 -41
- package/dist/lib/exec-bounded.d.ts +1 -37
- package/dist/lib/exec-bounded.js +10 -46
- package/dist/lib/exec.d.ts +3 -583
- package/dist/lib/exec.js +18 -1025
- package/dist/lib/factory/snapshot.js +1 -15
- package/dist/lib/feed/activity-stream.d.ts +0 -27
- package/dist/lib/feed/activity-stream.js +4 -80
- package/dist/lib/feed/activity.d.ts +1 -243
- package/dist/lib/feed/activity.js +8 -273
- package/dist/lib/feed/answer.d.ts +0 -103
- package/dist/lib/feed/answer.js +0 -267
- package/dist/lib/feed/attention.d.ts +0 -56
- package/dist/lib/feed/attention.js +0 -161
- package/dist/lib/feed/envelope.d.ts +2 -17
- package/dist/lib/feed/envelope.js +0 -14
- package/dist/lib/feed/events.d.ts +0 -118
- package/dist/lib/feed/events.js +13 -213
- package/dist/lib/feed/feed.d.ts +1 -250
- package/dist/lib/feed/feed.js +24 -334
- package/dist/lib/feed/hub-server.d.ts +0 -100
- package/dist/lib/feed/hub-server.js +1 -191
- package/dist/lib/feed/hub.d.ts +0 -53
- package/dist/lib/feed/hub.js +0 -89
- package/dist/lib/feed/pr-status.d.ts +1 -19
- package/dist/lib/feed/pr-status.js +0 -18
- package/dist/lib/feed/tool-activity.d.ts +0 -59
- package/dist/lib/feed/tool-activity.js +1 -119
- package/dist/lib/feed/tools.d.ts +0 -100
- package/dist/lib/feed/tools.js +0 -89
- package/dist/lib/feed/watch.d.ts +0 -33
- package/dist/lib/feed/watch.js +2 -94
- package/dist/lib/feed-broadcast.d.ts +0 -148
- package/dist/lib/feed-broadcast.js +1 -283
- package/dist/lib/feed-outcome.d.ts +0 -50
- package/dist/lib/feed-outcome.js +1 -67
- package/dist/lib/feed-policy.d.ts +0 -6
- package/dist/lib/feed-policy.js +1 -27
- package/dist/lib/feed-post.d.ts +0 -61
- package/dist/lib/feed-post.js +4 -61
- package/dist/lib/feed-ranking.d.ts +1 -1
- package/dist/lib/fleet/apply.d.ts +0 -64
- package/dist/lib/fleet/apply.js +0 -125
- package/dist/lib/fleet/auth-sync.d.ts +0 -48
- package/dist/lib/fleet/auth-sync.js +4 -49
- package/dist/lib/fleet/capture.d.ts +0 -26
- package/dist/lib/fleet/capture.js +1 -36
- package/dist/lib/fleet/manifest.d.ts +0 -38
- package/dist/lib/fleet/manifest.js +0 -40
- package/dist/lib/fleet/types.d.ts +1 -138
- package/dist/lib/fleet/types.js +0 -12
- package/dist/lib/fleet-cache.d.ts +0 -12
- package/dist/lib/fleet-cache.js +0 -24
- package/dist/lib/fleet-shared-state.d.ts +6 -59
- package/dist/lib/fleet-shared-state.js +5 -51
- package/dist/lib/fleet-status.d.ts +0 -27
- package/dist/lib/fleet-status.js +0 -48
- package/dist/lib/format.d.ts +0 -74
- package/dist/lib/format.js +3 -77
- package/dist/lib/friction-heuristics.d.ts +0 -20
- package/dist/lib/friction-heuristics.js +0 -8
- package/dist/lib/fs-atomic.d.ts +0 -51
- package/dist/lib/fs-atomic.js +8 -66
- package/dist/lib/fs-walk.d.ts +0 -13
- package/dist/lib/fs-walk.js +0 -22
- package/dist/lib/fuzzy.d.ts +0 -29
- package/dist/lib/fuzzy.js +0 -31
- package/dist/lib/gemini-settings.js +0 -12
- package/dist/lib/git.d.ts +0 -366
- package/dist/lib/git.js +7 -574
- package/dist/lib/github/ci-failure.d.ts +30 -0
- package/dist/lib/github/ci-failure.js +95 -0
- package/dist/lib/github/gh-overload.d.ts +0 -38
- package/dist/lib/github/gh-overload.js +3 -55
- package/dist/lib/github/pr-mergeable.d.ts +3 -34
- package/dist/lib/github/pr-mergeable.js +2 -42
- package/dist/lib/github/pr-verdict.d.ts +0 -44
- package/dist/lib/github/pr-verdict.js +0 -36
- package/dist/lib/github/project-prs.d.ts +135 -105
- package/dist/lib/github/project-prs.js +530 -170
- package/dist/lib/github/release-drift.d.ts +45 -0
- package/dist/lib/github/release-drift.js +91 -0
- package/dist/lib/github/rest.d.ts +0 -50
- package/dist/lib/github/rest.js +0 -49
- package/dist/lib/github/viewer.d.ts +27 -0
- package/dist/lib/github/viewer.js +101 -0
- package/dist/lib/goose-commands.d.ts +0 -29
- package/dist/lib/goose-commands.js +3 -48
- package/dist/lib/harness/adapter.d.ts +0 -151
- package/dist/lib/harness/adapter.js +0 -41
- package/dist/lib/harness/adapters/claude.d.ts +0 -8
- package/dist/lib/harness/adapters/claude.js +0 -89
- package/dist/lib/harness/adapters/codex.js +0 -18
- package/dist/lib/harness/adapters/copilot.js +0 -3
- package/dist/lib/harness/adapters/cursor.js +0 -16
- package/dist/lib/harness/adapters/droid.js +0 -3
- package/dist/lib/harness/adapters/kimi.js +0 -19
- package/dist/lib/harness/adapters/muse.js +0 -9
- package/dist/lib/harness/adapters/opencode.js +0 -2
- package/dist/lib/harness/exec-config-version.d.ts +0 -2
- package/dist/lib/harness/exec-config-version.js +0 -13
- package/dist/lib/harness/index.js +0 -10
- package/dist/lib/harness-auth-capabilities.d.ts +0 -26
- package/dist/lib/harness-auth-capabilities.js +0 -18
- package/dist/lib/harness-connection-test.d.ts +0 -27
- package/dist/lib/harness-connection-test.js +2 -20
- package/dist/lib/heal.d.ts +0 -45
- package/dist/lib/heal.js +2 -82
- package/dist/lib/help.d.ts +0 -32
- package/dist/lib/help.js +0 -41
- package/dist/lib/helper-download.d.ts +0 -85
- package/dist/lib/helper-download.js +0 -95
- package/dist/lib/helper-versions.d.ts +0 -51
- package/dist/lib/helper-versions.js +1 -45
- package/dist/lib/hooks/cache.d.ts +0 -40
- package/dist/lib/hooks/cache.js +8 -122
- package/dist/lib/hooks/install.d.ts +0 -253
- package/dist/lib/hooks/install.js +49 -822
- package/dist/lib/hooks/match.d.ts +0 -24
- package/dist/lib/hooks/match.js +0 -31
- package/dist/lib/hooks/profile.d.ts +0 -21
- package/dist/lib/hooks/profile.js +0 -28
- package/dist/lib/hosts/credential-transport.d.ts +0 -6
- package/dist/lib/hosts/credential-transport.js +0 -17
- package/dist/lib/hosts/credentials.d.ts +0 -35
- package/dist/lib/hosts/credentials.js +0 -38
- package/dist/lib/hosts/dispatch.d.ts +0 -140
- package/dist/lib/hosts/dispatch.js +0 -176
- package/dist/lib/hosts/logs.d.ts +0 -25
- package/dist/lib/hosts/logs.js +1 -51
- package/dist/lib/hosts/option.d.ts +0 -12
- package/dist/lib/hosts/option.js +0 -12
- package/dist/lib/hosts/passthrough.d.ts +0 -129
- package/dist/lib/hosts/passthrough.js +12 -249
- package/dist/lib/hosts/progress.d.ts +0 -90
- package/dist/lib/hosts/progress.js +5 -115
- package/dist/lib/hosts/providers/devices.d.ts +0 -19
- package/dist/lib/hosts/providers/devices.js +1 -34
- package/dist/lib/hosts/providers/local.d.ts +0 -14
- package/dist/lib/hosts/providers/local.js +0 -22
- package/dist/lib/hosts/ready.d.ts +0 -99
- package/dist/lib/hosts/ready.js +0 -101
- package/dist/lib/hosts/reconcile.d.ts +0 -38
- package/dist/lib/hosts/reconcile.js +1 -50
- package/dist/lib/hosts/reconnect.d.ts +0 -75
- package/dist/lib/hosts/reconnect.js +0 -98
- package/dist/lib/hosts/registry.d.ts +0 -74
- package/dist/lib/hosts/registry.js +0 -110
- package/dist/lib/hosts/remote-cmd.d.ts +1 -228
- package/dist/lib/hosts/remote-cmd.js +19 -294
- package/dist/lib/hosts/remote-cmd.test-fixture.d.ts +0 -1
- package/dist/lib/hosts/remote-cmd.test-fixture.js +0 -12
- package/dist/lib/hosts/remote-os.d.ts +0 -19
- package/dist/lib/hosts/remote-os.js +0 -22
- package/dist/lib/hosts/remote-session-id.d.ts +0 -22
- package/dist/lib/hosts/remote-session-id.js +0 -24
- package/dist/lib/hosts/routing-flag.d.ts +0 -21
- package/dist/lib/hosts/routing-flag.js +0 -21
- package/dist/lib/hosts/run-target.d.ts +0 -53
- package/dist/lib/hosts/run-target.js +0 -56
- package/dist/lib/hosts/session-index.d.ts +1 -53
- package/dist/lib/hosts/session-index.js +2 -59
- package/dist/lib/hosts/session-marker.d.ts +0 -31
- package/dist/lib/hosts/session-marker.js +0 -32
- package/dist/lib/hosts/ssh-config.d.ts +0 -25
- package/dist/lib/hosts/ssh-config.js +1 -32
- package/dist/lib/hosts/tasks.d.ts +0 -54
- package/dist/lib/hosts/tasks.js +0 -35
- package/dist/lib/hosts/types.d.ts +0 -39
- package/dist/lib/hosts/types.js +0 -22
- package/dist/lib/humans.d.ts +0 -21
- package/dist/lib/humans.js +0 -30
- package/dist/lib/identity/client.d.ts +1 -35
- package/dist/lib/identity/client.js +3 -29
- package/dist/lib/identity/index.d.ts +3 -27
- package/dist/lib/identity/index.js +8 -24
- package/dist/lib/import.d.ts +0 -104
- package/dist/lib/import.js +1 -137
- package/dist/lib/installations/active-check.d.ts +0 -53
- package/dist/lib/installations/active-check.js +0 -49
- package/dist/lib/installations/index.d.ts +0 -9
- package/dist/lib/installations/index.js +0 -9
- package/dist/lib/installations/installation-lock.js +0 -8
- package/dist/lib/installations/launch-gate.d.ts +0 -56
- package/dist/lib/installations/launch-gate.js +0 -83
- package/dist/lib/installations/migrate.d.ts +0 -100
- package/dist/lib/installations/migrate.js +105 -572
- package/dist/lib/installations/native-command.d.ts +0 -1
- package/dist/lib/installations/native-command.js +0 -6
- package/dist/lib/installations/resolve.d.ts +0 -24
- package/dist/lib/installations/resolve.js +0 -24
- package/dist/lib/installations/shims.d.ts +0 -395
- package/dist/lib/installations/shims.js +30 -957
- package/dist/lib/installations/store.d.ts +0 -199
- package/dist/lib/installations/store.js +1 -297
- package/dist/lib/installations/strategies.d.ts +0 -44
- package/dist/lib/installations/strategies.js +0 -87
- package/dist/lib/installations/types.d.ts +1 -67
- package/dist/lib/installations/types.js +0 -6
- package/dist/lib/installations/update-cancellation.d.ts +0 -74
- package/dist/lib/installations/update-cancellation.js +0 -74
- package/dist/lib/installations/update-policy.d.ts +0 -57
- package/dist/lib/installations/update-policy.js +0 -62
- package/dist/lib/installations/update-runtime.d.ts +0 -88
- package/dist/lib/installations/update-runtime.js +1 -127
- package/dist/lib/installations/update.d.ts +0 -53
- package/dist/lib/installations/update.js +0 -95
- package/dist/lib/installations/versions.d.ts +0 -310
- package/dist/lib/installations/versions.js +14 -837
- package/dist/lib/isolation-boundary-report.d.ts +0 -7
- package/dist/lib/isolation-boundary-report.js +0 -7
- package/dist/lib/launch-identity.d.ts +0 -8
- package/dist/lib/launch-identity.js +0 -8
- package/dist/lib/linear-autoclose.d.ts +0 -25
- package/dist/lib/linear-autoclose.js +0 -19
- package/dist/lib/linear-cache.d.ts +0 -57
- package/dist/lib/linear-cache.js +1 -81
- package/dist/lib/linear-project-counts.d.ts +0 -83
- package/dist/lib/linear-project-counts.js +2 -64
- package/dist/lib/linear-projects.d.ts +0 -62
- package/dist/lib/linear-projects.js +0 -85
- package/dist/lib/linear-rate-limit.d.ts +0 -21
- package/dist/lib/linear-rate-limit.js +1 -93
- package/dist/lib/linux-userns.d.ts +1 -42
- package/dist/lib/linux-userns.js +0 -47
- package/dist/lib/lock-compromise.d.ts +0 -7
- package/dist/lib/lock-compromise.js +0 -7
- package/dist/lib/log-follow.d.ts +0 -2
- package/dist/lib/log-follow.js +5 -15
- package/dist/lib/loop.d.ts +0 -106
- package/dist/lib/loop.js +0 -135
- package/dist/lib/machine-id.d.ts +0 -19
- package/dist/lib/machine-id.js +0 -19
- package/dist/lib/mailbox-gc.d.ts +0 -7
- package/dist/lib/mailbox-gc.js +0 -25
- package/dist/lib/mailbox-target.d.ts +0 -31
- package/dist/lib/mailbox-target.js +0 -27
- package/dist/lib/mailbox.d.ts +0 -77
- package/dist/lib/mailbox.js +5 -105
- package/dist/lib/manifest.d.ts +0 -4
- package/dist/lib/manifest.js +0 -36
- package/dist/lib/markdown.d.ts +0 -3
- package/dist/lib/markdown.js +0 -9
- package/dist/lib/mcp-registry.d.ts +1 -50
- package/dist/lib/mcp-registry.js +0 -64
- package/dist/lib/mcp.d.ts +0 -115
- package/dist/lib/mcp.js +3 -199
- package/dist/lib/memory-cache.d.ts +0 -11
- package/dist/lib/memory-cache.js +0 -9
- package/dist/lib/memory.d.ts +0 -52
- package/dist/lib/memory.js +12 -74
- package/dist/lib/menubar/download-menubar.d.ts +0 -35
- package/dist/lib/menubar/download-menubar.js +0 -38
- package/dist/lib/menubar/install-menubar.d.ts +0 -405
- package/dist/lib/menubar/install-menubar.js +25 -667
- package/dist/lib/menubar/migrate-prefs.d.ts +0 -47
- package/dist/lib/menubar/migrate-prefs.js +1 -70
- package/dist/lib/menubar/notify-desktop.d.ts +0 -82
- package/dist/lib/menubar/notify-desktop.js +0 -68
- package/dist/lib/menubar/resolve-version.d.ts +0 -41
- package/dist/lib/menubar/resolve-version.js +2 -44
- package/dist/lib/menubar/snapshot.d.ts +13 -66
- package/dist/lib/menubar/snapshot.js +45 -39
- package/dist/lib/merged-resources.d.ts +0 -10
- package/dist/lib/merged-resources.js +0 -10
- package/dist/lib/migrate-fold.d.ts +0 -31
- package/dist/lib/migrate-fold.js +6 -38
- package/dist/lib/model-tier-overrides.d.ts +0 -30
- package/dist/lib/model-tier-overrides.js +0 -14
- package/dist/lib/model-tiers.d.ts +0 -43
- package/dist/lib/model-tiers.js +5 -78
- package/dist/lib/models.d.ts +0 -145
- package/dist/lib/models.js +3 -333
- package/dist/lib/monitors/config.d.ts +0 -187
- package/dist/lib/monitors/config.js +4 -101
- package/dist/lib/monitors/dispatch.d.ts +0 -22
- package/dist/lib/monitors/dispatch.js +0 -35
- package/dist/lib/monitors/engine.d.ts +1 -53
- package/dist/lib/monitors/engine.js +17 -106
- package/dist/lib/monitors/fingerprint.d.ts +0 -43
- package/dist/lib/monitors/fingerprint.js +0 -57
- package/dist/lib/monitors/pid-watch.d.ts +0 -31
- package/dist/lib/monitors/pid-watch.js +0 -31
- package/dist/lib/monitors/remote.d.ts +0 -52
- package/dist/lib/monitors/remote.js +0 -42
- package/dist/lib/monitors/sources/command.d.ts +2 -9
- package/dist/lib/monitors/sources/command.js +13 -34
- package/dist/lib/monitors/sources/device.d.ts +0 -10
- package/dist/lib/monitors/sources/device.js +0 -14
- package/dist/lib/monitors/sources/failure.d.ts +0 -27
- package/dist/lib/monitors/sources/failure.js +0 -27
- package/dist/lib/monitors/sources/file.d.ts +0 -10
- package/dist/lib/monitors/sources/file.js +0 -11
- package/dist/lib/monitors/sources/http.d.ts +0 -7
- package/dist/lib/monitors/sources/http.js +0 -9
- package/dist/lib/monitors/sources/index.d.ts +0 -9
- package/dist/lib/monitors/sources/index.js +0 -9
- package/dist/lib/monitors/sources/poll.d.ts +0 -8
- package/dist/lib/monitors/sources/poll.js +0 -8
- package/dist/lib/monitors/sources/types.d.ts +0 -18
- package/dist/lib/monitors/sources/types.js +0 -8
- package/dist/lib/monitors/sources/webhook.d.ts +0 -7
- package/dist/lib/monitors/sources/webhook.js +0 -7
- package/dist/lib/monitors/sources/ws.d.ts +0 -10
- package/dist/lib/monitors/sources/ws.js +3 -13
- package/dist/lib/monitors/state.d.ts +0 -132
- package/dist/lib/monitors/state.js +2 -86
- package/dist/lib/native-accounts.d.ts +0 -32
- package/dist/lib/native-accounts.js +0 -17
- package/dist/lib/net-close.d.ts +0 -9
- package/dist/lib/net-close.js +0 -5
- package/dist/lib/notify.d.ts +0 -47
- package/dist/lib/notify.js +0 -30
- package/dist/lib/onepassword.d.ts +0 -14
- package/dist/lib/onepassword.js +0 -12
- package/dist/lib/open-url.d.ts +0 -38
- package/dist/lib/open-url.js +1 -69
- package/dist/lib/openclaw-keychain.js +2 -7
- package/dist/lib/operator.d.ts +0 -9
- package/dist/lib/operator.js +0 -34
- package/dist/lib/origin-machine.d.ts +0 -16
- package/dist/lib/origin-machine.js +0 -16
- package/dist/lib/output/git-output.d.ts +0 -31
- package/dist/lib/output/git-output.js +4 -43
- package/dist/lib/overdue.d.ts +0 -35
- package/dist/lib/overdue.js +0 -60
- package/dist/lib/owner-message.d.ts +0 -20
- package/dist/lib/owner-message.js +1 -40
- package/dist/lib/packages/output-home.d.ts +0 -28
- package/dist/lib/packages/output-home.js +0 -114
- package/dist/lib/paths.d.ts +0 -26
- package/dist/lib/paths.js +1 -27
- package/dist/lib/percentile.d.ts +0 -11
- package/dist/lib/percentile.js +0 -11
- package/dist/lib/perf/db.d.ts +0 -16
- package/dist/lib/perf/db.js +3 -32
- package/dist/lib/perf/spool.d.ts +0 -12
- package/dist/lib/perf/spool.js +0 -13
- package/dist/lib/perf/types.d.ts +0 -26
- package/dist/lib/perf/types.js +0 -1
- package/dist/lib/permissions-registry.d.ts +0 -48
- package/dist/lib/permissions-registry.js +0 -108
- package/dist/lib/permissions.d.ts +0 -215
- package/dist/lib/permissions.js +4 -407
- package/dist/lib/picker.d.ts +0 -124
- package/dist/lib/picker.js +0 -140
- package/dist/lib/placement.d.ts +0 -57
- package/dist/lib/placement.js +0 -47
- package/dist/lib/platform/exec.d.ts +0 -73
- package/dist/lib/platform/exec.js +0 -80
- package/dist/lib/platform/index.d.ts +0 -14
- package/dist/lib/platform/index.js +0 -14
- package/dist/lib/platform/ipc.d.ts +0 -10
- package/dist/lib/platform/ipc.js +0 -13
- package/dist/lib/platform/links.d.ts +0 -14
- package/dist/lib/platform/links.js +0 -25
- package/dist/lib/platform/paths.d.ts +0 -48
- package/dist/lib/platform/paths.js +0 -52
- package/dist/lib/platform/posixpath.d.ts +0 -18
- package/dist/lib/platform/posixpath.js +0 -62
- package/dist/lib/platform/process.d.ts +0 -67
- package/dist/lib/platform/process.js +5 -99
- package/dist/lib/platform/winpath.d.ts +0 -50
- package/dist/lib/platform/winpath.js +0 -81
- package/dist/lib/plugins/plugin-marketplace.d.ts +0 -165
- package/dist/lib/plugins/plugin-marketplace.js +10 -238
- package/dist/lib/plugins/plugins.d.ts +0 -238
- package/dist/lib/plugins/plugins.js +20 -454
- package/dist/lib/plugins/skills.d.ts +0 -86
- package/dist/lib/plugins/skills.js +1 -139
- package/dist/lib/pr-land-detach.d.ts +0 -17
- package/dist/lib/pr-land-detach.js +0 -30
- package/dist/lib/pricing/cost.d.ts +0 -29
- package/dist/lib/pricing/cost.js +0 -38
- package/dist/lib/pricing/index.d.ts +0 -6
- package/dist/lib/pricing/index.js +0 -6
- package/dist/lib/pricing/table.d.ts +0 -8
- package/dist/lib/pricing/table.js +3 -56
- package/dist/lib/probe.d.ts +0 -5
- package/dist/lib/probe.js +0 -40
- package/dist/lib/profiles-presets.d.ts +0 -20
- package/dist/lib/profiles-presets.js +1 -36
- package/dist/lib/profiles.d.ts +0 -185
- package/dist/lib/profiles.js +1 -158
- package/dist/lib/project-doctor.d.ts +0 -29
- package/dist/lib/project-doctor.js +0 -26
- package/dist/lib/project-focus.d.ts +0 -41
- package/dist/lib/project-focus.js +0 -49
- package/dist/lib/project-import.d.ts +0 -41
- package/dist/lib/project-import.js +0 -36
- package/dist/lib/project-key.d.ts +0 -65
- package/dist/lib/project-key.js +0 -70
- package/dist/lib/project-launch.d.ts +0 -49
- package/dist/lib/project-launch.js +2 -91
- package/dist/lib/project-probe.d.ts +0 -86
- package/dist/lib/project-probe.js +1 -88
- package/dist/lib/project-pull.d.ts +0 -96
- package/dist/lib/project-pull.js +0 -122
- package/dist/lib/project-resources.d.ts +0 -44
- package/dist/lib/project-resources.js +7 -171
- package/dist/lib/project-root.d.ts +0 -95
- package/dist/lib/project-root.js +0 -101
- package/dist/lib/project-schedule.d.ts +0 -43
- package/dist/lib/project-schedule.js +0 -52
- package/dist/lib/project-status.d.ts +0 -108
- package/dist/lib/project-status.js +0 -117
- package/dist/lib/projects.d.ts +0 -197
- package/dist/lib/projects.js +1 -213
- package/dist/lib/pwsh.d.ts +0 -41
- package/dist/lib/pwsh.js +0 -51
- package/dist/lib/quick-todo.d.ts +84 -0
- package/dist/lib/quick-todo.js +243 -0
- package/dist/lib/reconcile-and-repair.d.ts +0 -78
- package/dist/lib/reconcile-and-repair.js +3 -66
- package/dist/lib/redact.d.ts +0 -29
- package/dist/lib/redact.js +0 -54
- package/dist/lib/refresh-coordinator.d.ts +0 -15
- package/dist/lib/refresh-coordinator.js +0 -10
- package/dist/lib/refresh.d.ts +0 -39
- package/dist/lib/refresh.js +0 -45
- package/dist/lib/registry.d.ts +0 -65
- package/dist/lib/registry.js +0 -127
- package/dist/lib/reminders.d.ts +0 -21
- package/dist/lib/reminders.js +0 -30
- package/dist/lib/remote-agents-json.d.ts +0 -44
- package/dist/lib/remote-agents-json.js +1 -44
- package/dist/lib/reserved-stores.d.ts +0 -28
- package/dist/lib/reserved-stores.js +2 -28
- package/dist/lib/resource-aliases.d.ts +0 -12
- package/dist/lib/resource-aliases.js +0 -12
- package/dist/lib/resource-content-diff.d.ts +0 -28
- package/dist/lib/resource-content-diff.js +7 -34
- package/dist/lib/resource-inventory.d.ts +0 -51
- package/dist/lib/resource-inventory.js +0 -45
- package/dist/lib/resource-patterns.d.ts +0 -32
- package/dist/lib/resource-patterns.js +0 -34
- package/dist/lib/resource-profiles.d.ts +0 -7
- package/dist/lib/resource-profiles.js +0 -11
- package/dist/lib/resources/types.d.ts +0 -50
- package/dist/lib/resources/types.js +0 -7
- package/dist/lib/resources/workflows.d.ts +0 -7
- package/dist/lib/resources/workflows.js +0 -13
- package/dist/lib/resources.d.ts +0 -65
- package/dist/lib/resources.js +0 -78
- package/dist/lib/routers.d.ts +0 -67
- package/dist/lib/routers.js +0 -60
- package/dist/lib/routine-activation.d.ts +0 -23
- package/dist/lib/routine-activation.js +0 -24
- package/dist/lib/routine-context.d.ts +1 -91
- package/dist/lib/routine-context.js +0 -107
- package/dist/lib/routine-notify-owner.d.ts +0 -79
- package/dist/lib/routine-notify-owner.js +1 -103
- package/dist/lib/routine-notify.d.ts +0 -70
- package/dist/lib/routine-notify.js +1 -75
- package/dist/lib/routine-process-cleanup.d.ts +0 -1
- package/dist/lib/routine-process-cleanup.js +1 -4
- package/dist/lib/routine-readiness.d.ts +0 -63
- package/dist/lib/routine-readiness.js +4 -86
- package/dist/lib/routines-format.d.ts +0 -40
- package/dist/lib/routines-format.js +0 -67
- package/dist/lib/routines-placement.d.ts +0 -33
- package/dist/lib/routines-placement.js +0 -40
- package/dist/lib/routines-project.d.ts +0 -57
- package/dist/lib/routines-project.js +6 -80
- package/dist/lib/rules/compile.d.ts +0 -66
- package/dist/lib/rules/compile.js +6 -118
- package/dist/lib/rules/compose.d.ts +0 -56
- package/dist/lib/rules/compose.js +2 -83
- package/dist/lib/rules/rules.d.ts +0 -23
- package/dist/lib/rules/rules.js +0 -35
- package/dist/lib/rules/run-sync.d.ts +0 -16
- package/dist/lib/rules/run-sync.js +1 -44
- package/dist/lib/run-config.d.ts +0 -7
- package/dist/lib/run-config.js +0 -8
- package/dist/lib/run-defaults.d.ts +0 -14
- package/dist/lib/run-defaults.js +0 -14
- package/dist/lib/run-notify.d.ts +0 -18
- package/dist/lib/run-notify.js +0 -36
- package/dist/lib/run-trace-sync.d.ts +0 -21
- package/dist/lib/run-trace-sync.js +2 -66
- package/dist/lib/rush-session.d.ts +0 -26
- package/dist/lib/rush-session.js +0 -28
- package/dist/lib/sandbox.d.ts +0 -45
- package/dist/lib/sandbox.js +5 -93
- package/dist/lib/scheduler.d.ts +0 -28
- package/dist/lib/scheduler.js +0 -45
- package/dist/lib/scheduling/routines.d.ts +0 -652
- package/dist/lib/scheduling/routines.js +8 -475
- package/dist/lib/secrets-cli.d.ts +3 -8
- package/dist/lib/secrets-cli.js +1 -19
- package/dist/lib/secrets-client.d.ts +0 -117
- package/dist/lib/secrets-client.js +4 -275
- package/dist/lib/secrets-policy.d.ts +0 -142
- package/dist/lib/secrets-policy.js +4 -237
- package/dist/lib/secrets-types.d.ts +0 -87
- package/dist/lib/secrets-types.js +0 -13
- package/dist/lib/self-heal/checks/hook-manifest.js +0 -25
- package/dist/lib/self-heal/checks/hook-runtime.js +0 -5
- package/dist/lib/self-heal/checks/install-staging.d.ts +0 -1
- package/dist/lib/self-heal/checks/install-staging.js +1 -28
- package/dist/lib/self-heal/checks/menubar-helper.js +0 -5
- package/dist/lib/self-heal/checks/path.js +0 -9
- package/dist/lib/self-heal/checks/resources.js +0 -5
- package/dist/lib/self-heal/checks/shadowing.js +2 -16
- package/dist/lib/self-heal/checks/shims.js +0 -14
- package/dist/lib/self-heal/child.d.ts +12 -0
- package/dist/lib/self-heal/child.js +23 -0
- package/dist/lib/self-heal/registry.d.ts +0 -9
- package/dist/lib/self-heal/registry.js +0 -16
- package/dist/lib/self-heal/types.d.ts +0 -12
- package/dist/lib/self-heal/types.js +0 -15
- package/dist/lib/self-update.d.ts +0 -312
- package/dist/lib/self-update.js +9 -360
- package/dist/lib/service-manifest.d.ts +0 -39
- package/dist/lib/service-manifest.js +0 -72
- package/dist/lib/session/active.d.ts +13 -869
- package/dist/lib/session/active.js +20 -976
- package/dist/lib/session/actor-sidecar.d.ts +1 -32
- package/dist/lib/session/actor-sidecar.js +1 -41
- package/dist/lib/session/bookmarks.d.ts +0 -33
- package/dist/lib/session/bookmarks.js +0 -37
- package/dist/lib/session/bundle.d.ts +0 -86
- package/dist/lib/session/bundle.js +0 -54
- package/dist/lib/session/claude-accounts.d.ts +0 -40
- package/dist/lib/session/claude-accounts.js +0 -49
- package/dist/lib/session/cloud.d.ts +1 -23
- package/dist/lib/session/cloud.js +0 -26
- package/dist/lib/session/db.d.ts +5 -658
- package/dist/lib/session/db.js +22 -1443
- package/dist/lib/session/detached.d.ts +0 -21
- package/dist/lib/session/detached.js +0 -29
- package/dist/lib/session/discover.d.ts +3 -420
- package/dist/lib/session/discover.js +30 -1123
- package/dist/lib/session/fork.d.ts +1 -41
- package/dist/lib/session/fork.js +0 -19
- package/dist/lib/session/ghostty-tabs.d.ts +0 -24
- package/dist/lib/session/ghostty-tabs.js +0 -37
- package/dist/lib/session/glance-files.d.ts +19 -0
- package/dist/lib/session/glance-files.js +258 -0
- package/dist/lib/session/hook-sessions.d.ts +0 -33
- package/dist/lib/session/hook-sessions.js +4 -99
- package/dist/lib/session/host-link.d.ts +1 -94
- package/dist/lib/session/host-link.js +1 -81
- package/dist/lib/session/inject-target.d.ts +8 -0
- package/dist/lib/session/inject-target.js +32 -0
- package/dist/lib/session/inject.d.ts +0 -15
- package/dist/lib/session/inject.js +0 -15
- package/dist/lib/session/live-metadata.d.ts +1 -34
- package/dist/lib/session/live-metadata.js +1 -73
- package/dist/lib/session/local-tmux-attach.d.ts +0 -37
- package/dist/lib/session/local-tmux-attach.js +1 -76
- package/dist/lib/session/migrate-targets.d.ts +0 -46
- package/dist/lib/session/migrate-targets.js +0 -24
- package/dist/lib/session/migrations.d.ts +0 -12
- package/dist/lib/session/migrations.js +1 -20
- package/dist/lib/session/mirror.d.ts +0 -32
- package/dist/lib/session/mirror.js +0 -77
- package/dist/lib/session/origin-machine.js +0 -3
- package/dist/lib/session/pid-registry.d.ts +0 -80
- package/dist/lib/session/pid-registry.js +2 -81
- package/dist/lib/session/presence.d.ts +0 -39
- package/dist/lib/session/presence.js +2 -52
- package/dist/lib/session/process-view.d.ts +0 -11
- package/dist/lib/session/process-view.js +0 -25
- package/dist/lib/session/projection.d.ts +0 -3
- package/dist/lib/session/projection.js +0 -10
- package/dist/lib/session/provenance.d.ts +1 -37
- package/dist/lib/session/provenance.js +0 -69
- package/dist/lib/session/recovery.d.ts +1 -40
- package/dist/lib/session/recovery.js +2 -80
- package/dist/lib/session/relative-time.js +0 -3
- package/dist/lib/session/remote/peer-stream.d.ts +0 -42
- package/dist/lib/session/remote/peer-stream.js +0 -64
- package/dist/lib/session/remote/remote-bundle.d.ts +0 -6
- package/dist/lib/session/remote/remote-bundle.js +0 -21
- package/dist/lib/session/remote/remote-list.d.ts +1 -110
- package/dist/lib/session/remote/remote-list.js +5 -139
- package/dist/lib/session/remote/remote.d.ts +0 -98
- package/dist/lib/session/remote/remote.js +3 -119
- package/dist/lib/session/remote/watch.d.ts +1 -34
- package/dist/lib/session/remote/watch.js +12 -72
- package/dist/lib/session/remote-active.d.ts +0 -35
- package/dist/lib/session/remote-active.js +0 -48
- package/dist/lib/session/remote-bundle.js +0 -2
- package/dist/lib/session/remote-list.js +0 -2
- package/dist/lib/session/remote-preview-cache.d.ts +0 -7
- package/dist/lib/session/remote-preview-cache.js +1 -76
- package/dist/lib/session/remote.js +0 -2
- package/dist/lib/session/resume-command.d.ts +0 -6
- package/dist/lib/session/resume-command.js +0 -6
- package/dist/lib/session/resume-owner.d.ts +1 -52
- package/dist/lib/session/resume-owner.js +0 -56
- package/dist/lib/session/run-names.d.ts +0 -24
- package/dist/lib/session/run-names.js +0 -26
- package/dist/lib/session/session-cache.d.ts +2 -146
- package/dist/lib/session/session-cache.js +26 -203
- package/dist/lib/session/short-id.js +0 -3
- package/dist/lib/session/sync/agents.d.ts +0 -68
- package/dist/lib/session/sync/agents.js +0 -0
- package/dist/lib/session/sync/backend.d.ts +0 -39
- package/dist/lib/session/sync/backend.js +0 -45
- package/dist/lib/session/sync/config.d.ts +0 -27
- package/dist/lib/session/sync/config.js +0 -56
- package/dist/lib/session/sync/managed-config.d.ts +0 -17
- package/dist/lib/session/sync/managed-config.js +0 -17
- package/dist/lib/session/sync/managed-key.d.ts +0 -38
- package/dist/lib/session/sync/managed-key.js +1 -42
- package/dist/lib/session/sync/net-client.d.ts +0 -36
- package/dist/lib/session/sync/net-client.js +0 -30
- package/dist/lib/session/sync/provision.d.ts +0 -2
- package/dist/lib/session/sync/provision.js +0 -13
- package/dist/lib/session/sync/r2.d.ts +0 -20
- package/dist/lib/session/sync/r2.js +0 -20
- package/dist/lib/session/sync/transcript-crypto.d.ts +0 -37
- package/dist/lib/session/sync/transcript-crypto.js +5 -37
- package/dist/lib/session/sync/worker-template.d.ts +0 -5
- package/dist/lib/session/sync/worker-template.js +0 -40
- package/dist/lib/session/testdata/pid-registry-namespace.js +0 -2
- package/dist/lib/session/testdata/process-view-private.js +0 -1
- package/dist/lib/session/throughput.d.ts +0 -24
- package/dist/lib/session/throughput.js +1 -25
- package/dist/lib/session/timeline-pass.d.ts +1 -63
- package/dist/lib/session/timeline-pass.js +161 -148
- package/dist/lib/session/title.d.ts +0 -182
- package/dist/lib/session/title.js +0 -139
- package/dist/lib/session/tool-index.d.ts +2 -21
- package/dist/lib/session/tool-index.js +3 -75
- package/dist/lib/session/tool-store.d.ts +2 -48
- package/dist/lib/session/tool-store.js +1 -33
- package/dist/lib/session/viewing-in.d.ts +0 -67
- package/dist/lib/session/viewing-in.js +1 -71
- package/dist/lib/session/watch.js +0 -2
- package/dist/lib/session/width.js +0 -3
- package/dist/lib/sessions-client.d.ts +0 -46
- package/dist/lib/sessions-client.js +36 -113
- package/dist/lib/settings-manifest.d.ts +1 -17
- package/dist/lib/settings-manifest.js +4 -57
- package/dist/lib/setup-tool-install.d.ts +0 -1
- package/dist/lib/setup-tool-install.js +2 -7
- package/dist/lib/setup-tool-status.d.ts +0 -3
- package/dist/lib/setup-tool-status.js +4 -14
- package/dist/lib/sha256-asset.d.ts +0 -20
- package/dist/lib/sha256-asset.js +0 -20
- package/dist/lib/share-runtime.d.ts +0 -10
- package/dist/lib/share-runtime.js +1 -27
- package/dist/lib/shim-heal.d.ts +0 -15
- package/dist/lib/shim-heal.js +3 -29
- package/dist/lib/signin-badge.d.ts +0 -72
- package/dist/lib/signin-badge.js +0 -86
- package/dist/lib/sink-format.d.ts +0 -32
- package/dist/lib/sink-format.js +0 -14
- package/dist/lib/smart-launch.d.ts +0 -75
- package/dist/lib/smart-launch.js +1 -83
- package/dist/lib/snapshot.d.ts +0 -46
- package/dist/lib/snapshot.js +5 -31
- package/dist/lib/spinner.d.ts +0 -37
- package/dist/lib/spinner.js +0 -37
- package/dist/lib/sqlite.d.ts +0 -13
- package/dist/lib/sqlite.js +3 -71
- package/dist/lib/ssh-exec.d.ts +0 -209
- package/dist/lib/ssh-exec.js +11 -248
- package/dist/lib/ssh-tunnel.d.ts +0 -43
- package/dist/lib/ssh-tunnel.js +2 -48
- package/dist/lib/staleness/checkers/commands.d.ts +0 -4
- package/dist/lib/staleness/checkers/commands.js +0 -4
- package/dist/lib/staleness/checkers/hooks.d.ts +0 -10
- package/dist/lib/staleness/checkers/hooks.js +0 -15
- package/dist/lib/staleness/checkers/mcp.d.ts +0 -9
- package/dist/lib/staleness/checkers/mcp.js +0 -9
- package/dist/lib/staleness/checkers/permissions.d.ts +0 -12
- package/dist/lib/staleness/checkers/permissions.js +0 -13
- package/dist/lib/staleness/checkers/plugins.d.ts +0 -8
- package/dist/lib/staleness/checkers/plugins.js +0 -8
- package/dist/lib/staleness/checkers/rules.d.ts +0 -15
- package/dist/lib/staleness/checkers/rules.js +0 -26
- package/dist/lib/staleness/checkers/skills.d.ts +0 -4
- package/dist/lib/staleness/checkers/skills.js +0 -4
- package/dist/lib/staleness/checkers/subagents.d.ts +0 -9
- package/dist/lib/staleness/checkers/subagents.js +0 -9
- package/dist/lib/staleness/checkers/types.d.ts +0 -34
- package/dist/lib/staleness/checkers/types.js +0 -19
- package/dist/lib/staleness/checkers/workflows.d.ts +0 -7
- package/dist/lib/staleness/checkers/workflows.js +0 -7
- package/dist/lib/staleness/detectors/commands.js +0 -17
- package/dist/lib/staleness/detectors/hooks.js +1 -6
- package/dist/lib/staleness/detectors/mcp.js +0 -4
- package/dist/lib/staleness/detectors/permissions.js +10 -23
- package/dist/lib/staleness/detectors/rules.js +0 -6
- package/dist/lib/staleness/detectors/skills.d.ts +0 -1
- package/dist/lib/staleness/detectors/skills.js +1 -12
- package/dist/lib/staleness/detectors/types.d.ts +0 -10
- package/dist/lib/staleness/fingerprint.d.ts +0 -19
- package/dist/lib/staleness/fingerprint.js +0 -35
- package/dist/lib/staleness/index.d.ts +0 -28
- package/dist/lib/staleness/index.js +1 -45
- package/dist/lib/staleness/layers.d.ts +0 -23
- package/dist/lib/staleness/layers.js +0 -34
- package/dist/lib/staleness/prune.d.ts +0 -71
- package/dist/lib/staleness/prune.js +2 -27
- package/dist/lib/staleness/registry.d.ts +0 -10
- package/dist/lib/staleness/registry.js +3 -33
- package/dist/lib/staleness/types.d.ts +0 -36
- package/dist/lib/staleness/types.js +0 -5
- package/dist/lib/staleness/writers/commands.js +1 -48
- package/dist/lib/staleness/writers/hooks.js +1 -18
- package/dist/lib/staleness/writers/kinds.d.ts +0 -12
- package/dist/lib/staleness/writers/kinds.js +0 -1
- package/dist/lib/staleness/writers/lazy-map.d.ts +0 -11
- package/dist/lib/staleness/writers/mcp.js +0 -13
- package/dist/lib/staleness/writers/plugins.js +0 -4
- package/dist/lib/staleness/writers/rules.d.ts +0 -1
- package/dist/lib/staleness/writers/rules.js +1 -19
- package/dist/lib/staleness/writers/skills.js +3 -14
- package/dist/lib/staleness/writers/sources.d.ts +0 -11
- package/dist/lib/staleness/writers/sources.js +0 -32
- package/dist/lib/staleness/writers/subagents.js +0 -16
- package/dist/lib/staleness/writers/types.d.ts +0 -58
- package/dist/lib/staleness/writers/workflows.js +1 -1
- package/dist/lib/standalone-tools.d.ts +24 -0
- package/dist/lib/standalone-tools.js +58 -0
- package/dist/lib/star-nudge.d.ts +0 -32
- package/dist/lib/star-nudge.js +2 -36
- package/dist/lib/startup/command-registry.d.ts +0 -45
- package/dist/lib/startup/command-registry.js +1 -46
- package/dist/lib/startup/dev-build.d.ts +0 -9
- package/dist/lib/startup/dev-build.js +1 -42
- package/dist/lib/startup/root-command.d.ts +0 -19
- package/dist/lib/startup/root-command.js +0 -19
- package/dist/lib/startup/spellcheck.d.ts +0 -13
- package/dist/lib/startup/spellcheck.js +0 -13
- package/dist/lib/state.d.ts +0 -376
- package/dist/lib/state.js +19 -737
- package/dist/lib/storage/selection.d.ts +0 -40
- package/dist/lib/storage/selection.js +0 -29
- package/dist/lib/subagents-registry.d.ts +0 -56
- package/dist/lib/subagents-registry.js +0 -99
- package/dist/lib/subagents.d.ts +0 -128
- package/dist/lib/subagents.js +1 -158
- package/dist/lib/summarizer/config.d.ts +0 -37
- package/dist/lib/summarizer/config.js +0 -37
- package/dist/lib/summarizer/pass.d.ts +0 -20
- package/dist/lib/summarizer/pass.js +1 -34
- package/dist/lib/summarizer/summarize.d.ts +1 -49
- package/dist/lib/summarizer/summarize.js +0 -35
- package/dist/lib/sync-passphrase.d.ts +0 -16
- package/dist/lib/sync-passphrase.js +1 -18
- package/dist/lib/sync-status.d.ts +0 -72
- package/dist/lib/sync-status.js +0 -55
- package/dist/lib/sync-umbrella.d.ts +0 -54
- package/dist/lib/sync-umbrella.js +0 -48
- package/dist/lib/system-run-sync.d.ts +0 -5
- package/dist/lib/system-run-sync.js +1 -31
- package/dist/lib/teams/agents.d.ts +1 -444
- package/dist/lib/teams/agents.js +11 -871
- package/dist/lib/teams/api.d.ts +2 -52
- package/dist/lib/teams/api.js +4 -63
- package/dist/lib/teams/debug.d.ts +0 -6
- package/dist/lib/teams/debug.js +0 -6
- package/dist/lib/teams/delivery.d.ts +0 -41
- package/dist/lib/teams/delivery.js +0 -32
- package/dist/lib/teams/file_ops.d.ts +0 -11
- package/dist/lib/teams/file_ops.js +0 -11
- package/dist/lib/teams/forEach.d.ts +0 -76
- package/dist/lib/teams/forEach.js +1 -77
- package/dist/lib/teams/index.d.ts +1 -7
- package/dist/lib/teams/index.js +1 -7
- package/dist/lib/teams/parsers.d.ts +0 -4
- package/dist/lib/teams/parsers.js +0 -81
- package/dist/lib/teams/persistence.d.ts +0 -2
- package/dist/lib/teams/persistence.js +0 -12
- package/dist/lib/teams/placement-probe.d.ts +0 -12
- package/dist/lib/teams/placement-probe.js +1 -51
- package/dist/lib/teams/pr-watch.d.ts +0 -107
- package/dist/lib/teams/pr-watch.js +1 -107
- package/dist/lib/teams/registry.d.ts +0 -36
- package/dist/lib/teams/registry.js +0 -47
- package/dist/lib/teams/remoteWorktree.d.ts +0 -50
- package/dist/lib/teams/remoteWorktree.js +1 -96
- package/dist/lib/teams/scheduler.d.ts +0 -111
- package/dist/lib/teams/scheduler.js +2 -125
- package/dist/lib/teams/summarizer.d.ts +0 -22
- package/dist/lib/teams/summarizer.js +6 -50
- package/dist/lib/teams/supervisor.d.ts +0 -38
- package/dist/lib/teams/supervisor.js +0 -21
- package/dist/lib/teams/worktree.d.ts +0 -95
- package/dist/lib/teams/worktree.js +3 -110
- package/dist/lib/template.d.ts +0 -21
- package/dist/lib/template.js +0 -23
- package/dist/lib/term-client.d.ts +0 -26
- package/dist/lib/term-client.js +0 -48
- package/dist/lib/term-driver.d.ts +0 -5
- package/dist/lib/term-driver.js +0 -8
- package/dist/lib/terminal/backends/ghostty.d.ts +0 -2
- package/dist/lib/terminal/backends/ghostty.js +0 -12
- package/dist/lib/terminal/backends/index.d.ts +0 -17
- package/dist/lib/terminal/backends/index.js +0 -15
- package/dist/lib/terminal/backends/iterm.d.ts +0 -2
- package/dist/lib/terminal/backends/iterm.js +0 -10
- package/dist/lib/terminal/backends/terminal-app.d.ts +0 -10
- package/dist/lib/terminal/backends/terminal-app.js +0 -30
- package/dist/lib/terminal/backends/tmux.d.ts +0 -10
- package/dist/lib/terminal/backends/tmux.js +0 -2
- package/dist/lib/terminal/backends/vscodium-agent.d.ts +0 -25
- package/dist/lib/terminal/backends/vscodium-agent.js +0 -36
- package/dist/lib/terminal/engine.d.ts +0 -17
- package/dist/lib/terminal/engine.js +0 -10
- package/dist/lib/terminal/index.d.ts +0 -8
- package/dist/lib/terminal/inject.d.ts +1 -173
- package/dist/lib/terminal/inject.js +0 -146
- package/dist/lib/terminal/policy.d.ts +0 -8
- package/dist/lib/terminal/policy.js +0 -1
- package/dist/lib/terminal/preferred.d.ts +0 -66
- package/dist/lib/terminal/preferred.js +0 -30
- package/dist/lib/terminal/quote.d.ts +0 -8
- package/dist/lib/terminal/quote.js +0 -8
- package/dist/lib/terminal/resolve.d.ts +0 -46
- package/dist/lib/terminal/resolve.js +0 -30
- package/dist/lib/terminal/run-surface.d.ts +0 -56
- package/dist/lib/terminal/run-surface.js +0 -46
- package/dist/lib/terminal/shell.d.ts +0 -3
- package/dist/lib/terminal/shell.js +0 -13
- package/dist/lib/terminal/transport.d.ts +0 -14
- package/dist/lib/terminal/transport.js +1 -30
- package/dist/lib/terminal/types.d.ts +0 -40
- package/dist/lib/terminal/types.js +0 -10
- package/dist/lib/text/relative-time.d.ts +0 -36
- package/dist/lib/text/relative-time.js +0 -43
- package/dist/lib/text/short-id.d.ts +0 -16
- package/dist/lib/text/short-id.js +0 -16
- package/dist/lib/text/width.d.ts +0 -24
- package/dist/lib/text/width.js +10 -52
- package/dist/lib/tmux/binary.d.ts +0 -36
- package/dist/lib/tmux/binary.js +0 -28
- package/dist/lib/tmux/index.d.ts +0 -5
- package/dist/lib/tmux/index.js +0 -5
- package/dist/lib/tmux/orphan-reap.d.ts +0 -253
- package/dist/lib/tmux/orphan-reap.js +3 -299
- package/dist/lib/tmux/paths.d.ts +0 -14
- package/dist/lib/tmux/paths.js +0 -14
- package/dist/lib/tmux/session.d.ts +0 -263
- package/dist/lib/tmux/session.js +6 -344
- package/dist/lib/traces/backend.d.ts +0 -20
- package/dist/lib/traces/backend.js +0 -23
- package/dist/lib/traces/classify.d.ts +0 -20
- package/dist/lib/traces/classify.js +0 -7
- package/dist/lib/traces/insights.d.ts +1 -84
- package/dist/lib/traces/insights.js +0 -126
- package/dist/lib/traces/phenotype.d.ts +0 -69
- package/dist/lib/traces/phenotype.js +0 -150
- package/dist/lib/traces/provision.d.ts +0 -1
- package/dist/lib/traces/provision.js +0 -5
- package/dist/lib/traces/schema2-build.d.ts +3 -60
- package/dist/lib/traces/schema2-build.js +8 -149
- package/dist/lib/traces/schema2-danger.d.ts +0 -30
- package/dist/lib/traces/schema2-danger.js +1 -63
- package/dist/lib/traces/schema2.d.ts +0 -11
- package/dist/lib/traces/segments.d.ts +0 -44
- package/dist/lib/traces/segments.js +0 -65
- package/dist/lib/traces/sync.d.ts +2 -239
- package/dist/lib/traces/sync.js +15 -237
- package/dist/lib/traces/worker-template.d.ts +0 -3
- package/dist/lib/traces/worker-template.js +0 -29
- package/dist/lib/triggers/handlers.d.ts +0 -82
- package/dist/lib/triggers/handlers.js +0 -75
- package/dist/lib/triggers/webhook.d.ts +0 -158
- package/dist/lib/triggers/webhook.js +0 -143
- package/dist/lib/types.d.ts +0 -736
- package/dist/lib/types.js +0 -50
- package/dist/lib/uninstall.d.ts +0 -17
- package/dist/lib/uninstall.js +0 -75
- package/dist/lib/usage-backoff.d.ts +0 -20
- package/dist/lib/usage-backoff.js +3 -60
- package/dist/lib/usage-refresh.d.ts +0 -154
- package/dist/lib/usage-refresh.js +8 -212
- package/dist/lib/verbs.d.ts +0 -12
- package/dist/lib/verbs.js +0 -12
- package/dist/lib/version-duplicates.d.ts +0 -6
- package/dist/lib/version-duplicates.js +0 -6
- package/dist/lib/version.d.ts +0 -55
- package/dist/lib/version.js +1 -58
- package/dist/lib/view-types.d.ts +0 -48
- package/dist/lib/warn-unpushed.d.ts +0 -27
- package/dist/lib/warn-unpushed.js +1 -45
- package/dist/lib/watchdog/history.d.ts +0 -1
- package/dist/lib/watchdog/history.js +0 -3
- package/dist/lib/watchdog/index.js +0 -2
- package/dist/lib/watchdog/log.d.ts +0 -19
- package/dist/lib/watchdog/log.js +0 -34
- package/dist/lib/watchdog/read.d.ts +0 -27
- package/dist/lib/watchdog/read.js +3 -58
- package/dist/lib/watchdog/rotate.d.ts +0 -139
- package/dist/lib/watchdog/rotate.js +2 -151
- package/dist/lib/watchdog/runner.d.ts +0 -125
- package/dist/lib/watchdog/runner.js +3 -223
- package/dist/lib/watchdog/service.d.ts +0 -1
- package/dist/lib/watchdog/service.js +0 -2
- package/dist/lib/watchdog/watchdog-agent.d.ts +0 -31
- package/dist/lib/watchdog/watchdog-agent.js +0 -27
- package/dist/lib/watchdog/watchdog.d.ts +0 -7
- package/dist/lib/watchdog/watchdog.js +0 -10
- package/dist/lib/watchdog/watchdogTail.js +0 -7
- package/dist/lib/whats-new.d.ts +0 -10
- package/dist/lib/whats-new.js +0 -21
- package/dist/lib/workflows-registry.d.ts +0 -45
- package/dist/lib/workflows-registry.js +0 -60
- package/dist/lib/workflows.d.ts +0 -282
- package/dist/lib/workflows.js +3 -213
- package/dist/lib/worktree/held.d.ts +0 -89
- package/dist/lib/worktree/held.js +1 -103
- package/dist/lib/wrap.d.ts +0 -32
- package/dist/lib/wrap.js +0 -32
- package/dist/lib/yaml-io.d.ts +0 -45
- package/dist/lib/yaml-io.js +0 -47
- package/dist/session-tracker/dist/adapters/claude.js +0 -2
- package/dist/session-tracker/dist/hook.sh +4 -37
- package/dist/session-tracker/dist/index.d.ts +0 -7
- package/dist/session-tracker/dist/index.js +0 -5
- package/dist/session-tracker/dist/install-hook.d.ts +0 -5
- package/dist/session-tracker/dist/install-hook.js +1 -15
- package/dist/session-tracker/dist/prune-state.js +0 -4
- package/dist/session-tracker/dist/reader.js +0 -4
- package/dist/session-tracker/dist/state-file.d.ts +0 -3
- package/dist/session-tracker/dist/state-file.js +3 -8
- package/package.json +3 -4
- package/scripts/postinstall.js +8 -116
- package/dist/lib/session/artifacts.d.ts +0 -14
- package/dist/lib/session/artifacts.js +0 -101
- package/dist/lib/session/bash-command.d.ts +0 -63
- package/dist/lib/session/bash-command.js +0 -490
- package/dist/lib/session/digest.d.ts +0 -66
- package/dist/lib/session/digest.js +0 -328
- package/dist/lib/session/highlights.d.ts +0 -151
- package/dist/lib/session/highlights.js +0 -391
- package/dist/lib/session/insights.d.ts +0 -165
- package/dist/lib/session/insights.js +0 -563
- package/dist/lib/session/linear.d.ts +0 -19
- package/dist/lib/session/linear.js +0 -99
- package/dist/lib/session/parse.d.ts +0 -224
- package/dist/lib/session/parse.js +0 -2408
- package/dist/lib/session/prompt.d.ts +0 -213
- package/dist/lib/session/prompt.js +0 -601
- package/dist/lib/session/render.d.ts +0 -133
- package/dist/lib/session/render.js +0 -1047
- package/dist/lib/session/share-html.d.ts +0 -35
- package/dist/lib/session/share-html.js +0 -319
- package/dist/lib/session/shell-programs.d.ts +0 -33
- package/dist/lib/session/shell-programs.js +0 -380
- package/dist/lib/session/state.d.ts +0 -269
- package/dist/lib/session/state.js +0 -777
- package/dist/lib/session/stream-render.d.ts +0 -4
- package/dist/lib/session/stream-render.js +0 -131
- package/dist/lib/session/tail.d.ts +0 -88
- package/dist/lib/session/tail.js +0 -294
- package/dist/lib/session/team-filter.d.ts +0 -129
- package/dist/lib/session/team-filter.js +0 -269
- package/dist/lib/session/timeline.d.ts +0 -172
- package/dist/lib/session/timeline.js +0 -636
- package/dist/lib/session/tool-calls.d.ts +0 -132
- package/dist/lib/session/tool-calls.js +0 -674
- package/dist/lib/session/trajectory-compare.d.ts +0 -48
- package/dist/lib/session/trajectory-compare.js +0 -116
- package/dist/lib/session/trajectory-html.d.ts +0 -19
- package/dist/lib/session/trajectory-html.js +0 -771
- package/dist/lib/session/trajectory-lineage.d.ts +0 -93
- package/dist/lib/session/trajectory-lineage.js +0 -195
- package/dist/lib/session/trajectory-text.d.ts +0 -38
- package/dist/lib/session/trajectory-text.js +0 -284
- package/dist/lib/session/trajectory.d.ts +0 -145
- package/dist/lib/session/trajectory.js +0 -394
- package/dist/lib/session/types.d.ts +0 -627
- package/dist/lib/session/types.js +0 -43
|
@@ -1,22 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Shared fixture for the daemon.*.test.ts suite slices (RUSH-2819).
|
|
3
|
-
*
|
|
4
|
-
* daemon.test.ts was a single 2201-line file (88 tests, ~112s in CI) — the
|
|
5
|
-
* slowest file in the daemon test-ownership group, serializing an entire
|
|
6
|
-
* vitest fork while every other selected file finished. The suite is split
|
|
7
|
-
* into topical slices so per-file fork parallelism can spread the
|
|
8
|
-
* process-spawning / real-daemon integration tests across workers; the
|
|
9
|
-
* helpers shared by more than one slice live here.
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Isolates every slice against a fresh, empty standalone `secrets` store
|
|
13
|
-
* (PHNX-3989) — an in-process fake keychain can no longer serve reads, since
|
|
14
|
-
* the client always spawns the real standalone, and several slices here also
|
|
15
|
-
* spawn a REAL `__daemon-run` subprocess that must see the SAME isolated
|
|
16
|
-
* store (a fresh `SECRETS_HOME` covers both: `useFreshSecretsHome` sets it as
|
|
17
|
-
* a `process.env` var, which every spawned child inherits by default). Call
|
|
18
|
-
* once at the top level of each slice file.
|
|
19
|
-
*/
|
|
20
1
|
export declare function installKeychainHermeticity(): void;
|
|
21
2
|
export declare const REPO_ROOT: string;
|
|
22
3
|
export declare const DIST_ENTRY: string;
|
|
@@ -4,25 +4,6 @@ import * as os from 'os';
|
|
|
4
4
|
import * as path from 'path';
|
|
5
5
|
import { fileURLToPath } from 'url';
|
|
6
6
|
import { deleteBundleSync, _resetSecretsClientForTest } from '../secrets-client.js';
|
|
7
|
-
/**
|
|
8
|
-
* Shared fixture for the daemon.*.test.ts suite slices (RUSH-2819).
|
|
9
|
-
*
|
|
10
|
-
* daemon.test.ts was a single 2201-line file (88 tests, ~112s in CI) — the
|
|
11
|
-
* slowest file in the daemon test-ownership group, serializing an entire
|
|
12
|
-
* vitest fork while every other selected file finished. The suite is split
|
|
13
|
-
* into topical slices so per-file fork parallelism can spread the
|
|
14
|
-
* process-spawning / real-daemon integration tests across workers; the
|
|
15
|
-
* helpers shared by more than one slice live here.
|
|
16
|
-
*/
|
|
17
|
-
/**
|
|
18
|
-
* Isolates every slice against a fresh, empty standalone `secrets` store
|
|
19
|
-
* (PHNX-3989) — an in-process fake keychain can no longer serve reads, since
|
|
20
|
-
* the client always spawns the real standalone, and several slices here also
|
|
21
|
-
* spawn a REAL `__daemon-run` subprocess that must see the SAME isolated
|
|
22
|
-
* store (a fresh `SECRETS_HOME` covers both: `useFreshSecretsHome` sets it as
|
|
23
|
-
* a `process.env` var, which every spawned child inherits by default). Call
|
|
24
|
-
* once at the top level of each slice file.
|
|
25
|
-
*/
|
|
26
7
|
export function installKeychainHermeticity() {
|
|
27
8
|
let home = '';
|
|
28
9
|
let saved;
|
|
@@ -36,7 +17,7 @@ export function installKeychainHermeticity() {
|
|
|
36
17
|
try {
|
|
37
18
|
deleteBundleSync('claude');
|
|
38
19
|
}
|
|
39
|
-
catch {
|
|
20
|
+
catch { }
|
|
40
21
|
if (saved === undefined)
|
|
41
22
|
delete process.env.SECRETS_HOME;
|
|
42
23
|
else
|
|
@@ -45,9 +26,5 @@ export function installKeychainHermeticity() {
|
|
|
45
26
|
fs.rmSync(home, { recursive: true, force: true });
|
|
46
27
|
});
|
|
47
28
|
}
|
|
48
|
-
// The real compiled CLI entry, shared by every slice that drives an actual
|
|
49
|
-
// `__daemon-run` subprocess (lifecycle/registry/stop). Computed relative to
|
|
50
|
-
// this file's own location, which stays in src/lib/daemon/ alongside every
|
|
51
|
-
// slice, so the path math is unaffected by the split.
|
|
52
29
|
export const REPO_ROOT = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '..', '..', '..');
|
|
53
30
|
export const DIST_ENTRY = path.join(REPO_ROOT, 'dist', 'index.js');
|
|
@@ -1,19 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Device-probe tick as a `PeriodicService` (RUSH-3193 P3).
|
|
3
|
-
*
|
|
4
|
-
* Refreshes registered devices' reachability and detects newly appeared
|
|
5
|
-
* tailnet nodes, dropping a sentinel per pending device so the menu-bar helper
|
|
6
|
-
* can surface "NEW DEVICES -> Register / Ignore". Refresh mode never
|
|
7
|
-
* auto-registers a newcomer; a machine without tailscale is a clean no-op.
|
|
8
|
-
* `reconcilePendingSentinels` re-subtracts the ignore-list AND the registered
|
|
9
|
-
* roster, so a dismissed or already-known device is never re-surfaced. On
|
|
10
|
-
* soft-fail (no tailscale) sentinels are still pruned so a hermetic test leak
|
|
11
|
-
* cannot leave fleet boxes in NEW DEVICES forever.
|
|
12
|
-
*
|
|
13
|
-
* The supervisor fires an immediate tick on start (see `service.ts`), which
|
|
14
|
-
* replaces the previous inline `void runDeviceProbeTick()` kick-off that
|
|
15
|
-
* cleared any leftover pollution set without waiting for the first interval.
|
|
16
|
-
*/
|
|
17
1
|
import { BasePeriodicService, type DaemonContext } from './service.js';
|
|
18
2
|
import type { DaemonServiceId } from '../daemon-services.js';
|
|
19
3
|
export declare class DeviceProbeService extends BasePeriodicService {
|
|
@@ -1,33 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Device-probe tick as a `PeriodicService` (RUSH-3193 P3).
|
|
3
|
-
*
|
|
4
|
-
* Refreshes registered devices' reachability and detects newly appeared
|
|
5
|
-
* tailnet nodes, dropping a sentinel per pending device so the menu-bar helper
|
|
6
|
-
* can surface "NEW DEVICES -> Register / Ignore". Refresh mode never
|
|
7
|
-
* auto-registers a newcomer; a machine without tailscale is a clean no-op.
|
|
8
|
-
* `reconcilePendingSentinels` re-subtracts the ignore-list AND the registered
|
|
9
|
-
* roster, so a dismissed or already-known device is never re-surfaced. On
|
|
10
|
-
* soft-fail (no tailscale) sentinels are still pruned so a hermetic test leak
|
|
11
|
-
* cannot leave fleet boxes in NEW DEVICES forever.
|
|
12
|
-
*
|
|
13
|
-
* The supervisor fires an immediate tick on start (see `service.ts`), which
|
|
14
|
-
* replaces the previous inline `void runDeviceProbeTick()` kick-off that
|
|
15
|
-
* cleared any leftover pollution set without waiting for the first interval.
|
|
16
|
-
*/
|
|
17
1
|
import { BasePeriodicService } from './service.js';
|
|
18
|
-
/** Matches the historical inline interval (daemon.ts DEVICE_PROBE_TICK_MS). */
|
|
19
2
|
const DEVICE_PROBE_TICK_MS = 3 * 60_000;
|
|
20
|
-
/** Hard cap per tick — a tailnet + reachability sweep, short enough that a hang never freezes the service for long. */
|
|
21
3
|
const DEVICE_PROBE_DEADLINE_MS = 90_000;
|
|
22
4
|
export class DeviceProbeService extends BasePeriodicService {
|
|
23
5
|
id = 'device-probe';
|
|
24
6
|
intervalMs = DEVICE_PROBE_TICK_MS;
|
|
25
7
|
deadlineMs = DEVICE_PROBE_DEADLINE_MS;
|
|
26
8
|
async onStart(_ctx) {
|
|
27
|
-
// No connections/handles to open — each tick performs a fresh soft sync.
|
|
28
9
|
}
|
|
29
10
|
async onStop() {
|
|
30
|
-
// Nothing to release — the supervisor's timer teardown is the only cleanup needed.
|
|
31
11
|
}
|
|
32
12
|
async onTick(ctx) {
|
|
33
13
|
const { runDeviceSync } = await import('../devices/sync.js');
|
|
@@ -1,18 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The shared feed collector's lifecycle as a `DaemonService`.
|
|
3
|
-
*
|
|
4
|
-
* WHY THE DAEMON OWNS IT. Dialing every peer over ssh and holding those
|
|
5
|
-
* connections open is an ACTION on the fleet, so by the repo's one-scheduler /
|
|
6
|
-
* one-executor rule it belongs to the daemon and not to a UI surface. Before
|
|
7
|
-
* this service, every consumer of `agents feed watch --json` ran its own
|
|
8
|
-
* `watchFleetFeed`, which is N ssh children per peer for N readers. The daemon
|
|
9
|
-
* runs one, and the readers attach over a socket (`feed/hub-server.ts`).
|
|
10
|
-
*
|
|
11
|
-
* The server binds on start, but the fan-out itself is DEMAND-GATED by the hub:
|
|
12
|
-
* with no client connected there is no `watchFleetFeed`, so an idle box holds no
|
|
13
|
-
* peer connections — the same idle-cost rule `SessionStateService` follows for
|
|
14
|
-
* its gather.
|
|
15
|
-
*/
|
|
16
1
|
import { BaseDaemonService, type DaemonContext } from './service.js';
|
|
17
2
|
import type { DaemonServiceId } from '../daemon-services.js';
|
|
18
3
|
export declare class FeedStreamService extends BaseDaemonService {
|
|
@@ -1,18 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The shared feed collector's lifecycle as a `DaemonService`.
|
|
3
|
-
*
|
|
4
|
-
* WHY THE DAEMON OWNS IT. Dialing every peer over ssh and holding those
|
|
5
|
-
* connections open is an ACTION on the fleet, so by the repo's one-scheduler /
|
|
6
|
-
* one-executor rule it belongs to the daemon and not to a UI surface. Before
|
|
7
|
-
* this service, every consumer of `agents feed watch --json` ran its own
|
|
8
|
-
* `watchFleetFeed`, which is N ssh children per peer for N readers. The daemon
|
|
9
|
-
* runs one, and the readers attach over a socket (`feed/hub-server.ts`).
|
|
10
|
-
*
|
|
11
|
-
* The server binds on start, but the fan-out itself is DEMAND-GATED by the hub:
|
|
12
|
-
* with no client connected there is no `watchFleetFeed`, so an idle box holds no
|
|
13
|
-
* peer connections — the same idle-cost rule `SessionStateService` follows for
|
|
14
|
-
* its gather.
|
|
15
|
-
*/
|
|
16
1
|
import { BaseDaemonService } from './service.js';
|
|
17
2
|
import { FeedHub } from '../feed/hub.js';
|
|
18
3
|
import { FeedHubServer } from '../feed/hub-server.js';
|
|
@@ -21,11 +6,6 @@ export class FeedStreamService extends BaseDaemonService {
|
|
|
21
6
|
id = 'feed-stream';
|
|
22
7
|
server = null;
|
|
23
8
|
async onStart(ctx) {
|
|
24
|
-
// Two collectors, one socket. The fleet hub holds one ssh child per peer plus
|
|
25
|
-
// this box's rows; the local hub is this box ONLY and cannot fan out, so a
|
|
26
|
-
// reader that wants just this machine never causes a peer dial. They are
|
|
27
|
-
// separate hubs rather than one filtered stream because demand must be
|
|
28
|
-
// separate too: a local-only reader must not start the fleet fan-out.
|
|
29
9
|
const fleet = new FeedHub({ watch: watchFleetFeed });
|
|
30
10
|
this.server = new FeedHubServer(fleet, undefined, sharedLocalFeedHub());
|
|
31
11
|
await this.server.start();
|
|
@@ -1,36 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Daemon harness-update service (PHNX-3940).
|
|
3
|
-
*
|
|
4
|
-
* Runs the automatic-update pass (`installations/update-runtime.ts`) on a
|
|
5
|
-
* schedule so a managed, transactional npm harness (Claude, Codex, …) stays
|
|
6
|
-
* current with no operator action, subject to the `updates.auto` /
|
|
7
|
-
* `updates.<agent>.auto` switches and each installation's own update policy.
|
|
8
|
-
*
|
|
9
|
-
* The pass itself does real, synchronous filesystem work per installation —
|
|
10
|
-
* staging an npm install into a sibling directory, `fs.renameSync`/`fs.cpSync`
|
|
11
|
-
* swaps, `fs.rmSync` cleanup — potentially across several installations in one
|
|
12
|
-
* tick. Running that inline on the daemon's own event loop would stall every
|
|
13
|
-
* other service (browser IPC, the scheduler, monitors) for the
|
|
14
|
-
* duration, the same class of problem `self-update-service.ts` solves for the
|
|
15
|
-
* CLI's OWN upgrade by installing into a fresh process it then exits into.
|
|
16
|
-
* Here there is no "exit and let the supervisor restart" option (the daemon
|
|
17
|
-
* itself isn't what's being updated), so instead this tick SPAWNS a bounded
|
|
18
|
-
* child (`agents __harness-update-run`) over a Node IPC channel and only waits
|
|
19
|
-
* on that child — every sync fs call happens in the child's own event loop /
|
|
20
|
-
* thread pool, never this one.
|
|
21
|
-
*
|
|
22
|
-
* Cancellation is COOPERATIVE and cross-platform (PHNX-3940). On the tick's
|
|
23
|
-
* deadline or daemon shutdown — both delivered as the supervisor aborting the
|
|
24
|
-
* tick's `AbortSignal` — the daemon does NOT force-kill the child (execFile's
|
|
25
|
-
* `timeout`/`signal` would, unconditionally on Windows, mid-swap). It SENDS the
|
|
26
|
-
* child an IPC cancel message; the child stops at its next safe boundary (see
|
|
27
|
-
* `installations/update-cancellation.ts` + `update.ts`'s `shouldCancel`) and
|
|
28
|
-
* exits on its own, and the daemon waits for that TRUE exit. A wedged child that
|
|
29
|
-
* ignores the request past a generous grace — never the normal path, since the
|
|
30
|
-
* child's own npm/probe work is bounded — is force-reaped only as an
|
|
31
|
-
* orphan-prevention backstop, and that abnormal case is reported as a failure,
|
|
32
|
-
* never as a clean pass.
|
|
33
|
-
*/
|
|
34
1
|
import { BasePeriodicService, type DaemonContext } from './service.js';
|
|
35
2
|
import type { DaemonServiceId } from '../daemon-services.js';
|
|
36
3
|
interface HarnessUpdateOutcome {
|
|
@@ -38,48 +5,22 @@ interface HarnessUpdateOutcome {
|
|
|
38
5
|
reason?: string;
|
|
39
6
|
exitCode?: number | null;
|
|
40
7
|
stdout?: string;
|
|
41
|
-
/** True when the pass was asked to stop (deadline/shutdown) and did so cooperatively. */
|
|
42
8
|
cancelled?: boolean;
|
|
43
9
|
}
|
|
44
10
|
export interface CooperativeChildResult {
|
|
45
11
|
exitCode: number | null;
|
|
46
12
|
stdout: string;
|
|
47
|
-
/** True when a cancel was requested during this child's life (deadline/shutdown). */
|
|
48
13
|
cancelled: boolean;
|
|
49
14
|
}
|
|
50
|
-
/**
|
|
51
|
-
* Dependency seam so tests can assert the tick's decision/spawn logic without
|
|
52
|
-
* actually installing anything. Production always uses
|
|
53
|
-
* {@link defaultHarnessUpdateDeps}.
|
|
54
|
-
*/
|
|
55
15
|
export interface HarnessUpdateDeps {
|
|
56
16
|
runAutoUpdatePass(signal: AbortSignal): Promise<CooperativeChildResult>;
|
|
57
17
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Spawn `command args` as a child over a Node IPC channel and drive it to a TRUE
|
|
60
|
-
* completion, requesting a cooperative stop (never a kill) when `signal` aborts —
|
|
61
|
-
* the supervisor aborts it on the tick's deadline OR on daemon shutdown.
|
|
62
|
-
*
|
|
63
|
-
* Resolves with the child's real exit code and captured output. Rejects only on:
|
|
64
|
-
* - a spawn failure (missing binary) — a genuine service failure; and
|
|
65
|
-
* - the child having to be force-reaped past the grace window, or dying to an
|
|
66
|
-
* external signal — never a clean pass, so the tick logs it as ERROR instead
|
|
67
|
-
* of reading a killed process as a completed update.
|
|
68
|
-
*
|
|
69
|
-
* A non-zero exit with no kill is resolved (not rejected): the pass exits
|
|
70
|
-
* non-zero for a per-installation vendor error, which is a normal tick outcome.
|
|
71
|
-
*
|
|
72
|
-
* Exported for the real-subprocess cancellation tests.
|
|
73
|
-
*/
|
|
74
18
|
export declare function driveCooperativeChild(command: string, args: string[], signal: AbortSignal, graceMs: number, spawnOpts?: {
|
|
75
19
|
env?: NodeJS.ProcessEnv;
|
|
76
20
|
cwd?: string;
|
|
21
|
+
cancelMsg?: object;
|
|
22
|
+
label?: string;
|
|
77
23
|
}): Promise<CooperativeChildResult>;
|
|
78
|
-
/**
|
|
79
|
-
* Core decision + spawn, shared so a future on-demand trigger (mirroring
|
|
80
|
-
* `triggerSelfUpdateInBackground`) can reuse it. Returns rather than throws —
|
|
81
|
-
* the periodic tick logs the outcome and moves on either way.
|
|
82
|
-
*/
|
|
83
24
|
export declare function runHarnessUpdateTick(ctx: DaemonContext, signal: AbortSignal, deps?: HarnessUpdateDeps): Promise<HarnessUpdateOutcome>;
|
|
84
25
|
export declare class HarnessUpdateService extends BasePeriodicService {
|
|
85
26
|
readonly id: DaemonServiceId;
|
|
@@ -1,60 +1,10 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Daemon harness-update service (PHNX-3940).
|
|
3
|
-
*
|
|
4
|
-
* Runs the automatic-update pass (`installations/update-runtime.ts`) on a
|
|
5
|
-
* schedule so a managed, transactional npm harness (Claude, Codex, …) stays
|
|
6
|
-
* current with no operator action, subject to the `updates.auto` /
|
|
7
|
-
* `updates.<agent>.auto` switches and each installation's own update policy.
|
|
8
|
-
*
|
|
9
|
-
* The pass itself does real, synchronous filesystem work per installation —
|
|
10
|
-
* staging an npm install into a sibling directory, `fs.renameSync`/`fs.cpSync`
|
|
11
|
-
* swaps, `fs.rmSync` cleanup — potentially across several installations in one
|
|
12
|
-
* tick. Running that inline on the daemon's own event loop would stall every
|
|
13
|
-
* other service (browser IPC, the scheduler, monitors) for the
|
|
14
|
-
* duration, the same class of problem `self-update-service.ts` solves for the
|
|
15
|
-
* CLI's OWN upgrade by installing into a fresh process it then exits into.
|
|
16
|
-
* Here there is no "exit and let the supervisor restart" option (the daemon
|
|
17
|
-
* itself isn't what's being updated), so instead this tick SPAWNS a bounded
|
|
18
|
-
* child (`agents __harness-update-run`) over a Node IPC channel and only waits
|
|
19
|
-
* on that child — every sync fs call happens in the child's own event loop /
|
|
20
|
-
* thread pool, never this one.
|
|
21
|
-
*
|
|
22
|
-
* Cancellation is COOPERATIVE and cross-platform (PHNX-3940). On the tick's
|
|
23
|
-
* deadline or daemon shutdown — both delivered as the supervisor aborting the
|
|
24
|
-
* tick's `AbortSignal` — the daemon does NOT force-kill the child (execFile's
|
|
25
|
-
* `timeout`/`signal` would, unconditionally on Windows, mid-swap). It SENDS the
|
|
26
|
-
* child an IPC cancel message; the child stops at its next safe boundary (see
|
|
27
|
-
* `installations/update-cancellation.ts` + `update.ts`'s `shouldCancel`) and
|
|
28
|
-
* exits on its own, and the daemon waits for that TRUE exit. A wedged child that
|
|
29
|
-
* ignores the request past a generous grace — never the normal path, since the
|
|
30
|
-
* child's own npm/probe work is bounded — is force-reaped only as an
|
|
31
|
-
* orphan-prevention backstop, and that abnormal case is reported as a failure,
|
|
32
|
-
* never as a clean pass.
|
|
33
|
-
*/
|
|
34
1
|
import { spawn } from 'child_process';
|
|
35
2
|
import { BasePeriodicService } from './service.js';
|
|
36
3
|
import { getCliLaunch, getAgentsBinPath } from '../cli-entry.js';
|
|
37
4
|
import { HARNESS_UPDATE_CHILD_CMD, cancelMessage } from '../installations/update-cancellation.js';
|
|
38
|
-
/** Runs every 15 minutes — a design decision, not an externally-fixed cadence (PHNX-3940). */
|
|
39
5
|
const HARNESS_UPDATE_TICK_MS = 15 * 60_000;
|
|
40
|
-
/**
|
|
41
|
-
* Cancellation deadline per tick. A real pass can touch several installations, each an npm
|
|
42
|
-
* install (`INSTALL_TIMEOUT_MS` = 120s in strategies.ts) plus two launch
|
|
43
|
-
* probes; 10 minutes leaves headroom for a handful of harnesses in one pass
|
|
44
|
-
* while staying comfortably under the 15-minute cadence above.
|
|
45
|
-
*/
|
|
46
6
|
const HARNESS_UPDATE_DEADLINE_MS = 10 * 60_000;
|
|
47
|
-
/** First tick fires 60 seconds after daemon boot — long enough for shims/PATH to settle, short enough that a fresh box doesn't wait a full interval for its first check. */
|
|
48
7
|
const HARNESS_UPDATE_STARTUP_DELAY_MS = 60_000;
|
|
49
|
-
/**
|
|
50
|
-
* How long to wait for the child to exit AFTER a cooperative cancel before
|
|
51
|
-
* force-reaping it as an orphan backstop. The child's own work is bounded — one
|
|
52
|
-
* npm install (`INSTALL_TIMEOUT_MS` = 120s in strategies.ts) plus two launch
|
|
53
|
-
* probes, then a fast synchronous swap — so a healthy child stops well within
|
|
54
|
-
* this window. A slow staging/postinstall can also exhaust it, but a delivered
|
|
55
|
-
* cancel prevents that stage from committing. The backstop kills the process
|
|
56
|
-
* group on POSIX and the worker on Windows; the tick reports a failure.
|
|
57
|
-
*/
|
|
58
8
|
const HARNESS_UPDATE_CANCEL_GRACE_MS = 3 * 60_000;
|
|
59
9
|
function defaultHarnessUpdateDeps() {
|
|
60
10
|
return {
|
|
@@ -64,30 +14,13 @@ function defaultHarnessUpdateDeps() {
|
|
|
64
14
|
},
|
|
65
15
|
};
|
|
66
16
|
}
|
|
67
|
-
/**
|
|
68
|
-
* Spawn `command args` as a child over a Node IPC channel and drive it to a TRUE
|
|
69
|
-
* completion, requesting a cooperative stop (never a kill) when `signal` aborts —
|
|
70
|
-
* the supervisor aborts it on the tick's deadline OR on daemon shutdown.
|
|
71
|
-
*
|
|
72
|
-
* Resolves with the child's real exit code and captured output. Rejects only on:
|
|
73
|
-
* - a spawn failure (missing binary) — a genuine service failure; and
|
|
74
|
-
* - the child having to be force-reaped past the grace window, or dying to an
|
|
75
|
-
* external signal — never a clean pass, so the tick logs it as ERROR instead
|
|
76
|
-
* of reading a killed process as a completed update.
|
|
77
|
-
*
|
|
78
|
-
* A non-zero exit with no kill is resolved (not rejected): the pass exits
|
|
79
|
-
* non-zero for a per-installation vendor error, which is a normal tick outcome.
|
|
80
|
-
*
|
|
81
|
-
* Exported for the real-subprocess cancellation tests.
|
|
82
|
-
*/
|
|
83
17
|
export function driveCooperativeChild(command, args, signal, graceMs, spawnOpts = {}) {
|
|
18
|
+
const cancelMsg = spawnOpts.cancelMsg ?? cancelMessage();
|
|
19
|
+
const label = spawnOpts.label ?? 'harness-update';
|
|
84
20
|
return new Promise((resolve, reject) => {
|
|
85
21
|
let child;
|
|
86
22
|
try {
|
|
87
23
|
child = spawn(command, args, {
|
|
88
|
-
// stdio[3] = 'ipc' is the cancel channel. Detached on POSIX so the child
|
|
89
|
-
// leads its own process group and the backstop below can reap its whole
|
|
90
|
-
// npm subtree; the parent still waits on it (never unref'd).
|
|
91
24
|
stdio: ['ignore', 'pipe', 'pipe', 'ipc'],
|
|
92
25
|
detached: process.platform !== 'win32',
|
|
93
26
|
windowsHide: true,
|
|
@@ -115,14 +48,10 @@ export function driveCooperativeChild(command, args, signal, graceMs, spawnOpts
|
|
|
115
48
|
if (cancelRequested || settled)
|
|
116
49
|
return;
|
|
117
50
|
cancelRequested = true;
|
|
118
|
-
// Cooperative: a message the child reads at its next safe boundary. NEVER a
|
|
119
|
-
// signal — that would interrupt a swap (and is fatal on Windows, which has
|
|
120
|
-
// no cooperative SIGTERM). If the channel is already gone the child's own
|
|
121
|
-
// `disconnect` handler cancels it, so a failed send is not an error.
|
|
122
51
|
try {
|
|
123
|
-
child.send(
|
|
52
|
+
child.send(cancelMsg, () => { });
|
|
124
53
|
}
|
|
125
|
-
catch {
|
|
54
|
+
catch { }
|
|
126
55
|
graceTimer = setTimeout(() => {
|
|
127
56
|
if (settled)
|
|
128
57
|
return;
|
|
@@ -137,7 +66,7 @@ export function driveCooperativeChild(command, args, signal, graceMs, spawnOpts
|
|
|
137
66
|
try {
|
|
138
67
|
child.kill('SIGKILL');
|
|
139
68
|
}
|
|
140
|
-
catch {
|
|
69
|
+
catch { }
|
|
141
70
|
}
|
|
142
71
|
}, graceMs);
|
|
143
72
|
graceTimer.unref?.();
|
|
@@ -163,7 +92,7 @@ export function driveCooperativeChild(command, args, signal, graceMs, spawnOpts
|
|
|
163
92
|
settled = true;
|
|
164
93
|
cleanup();
|
|
165
94
|
if (forceReaped || sigName) {
|
|
166
|
-
reject(new Error(
|
|
95
|
+
reject(new Error(`${label} child did not exit cooperatively after cancel `
|
|
167
96
|
+ `(${forceReaped ? `force-reaped after ${graceMs}ms grace` : `died to ${sigName}`}). `
|
|
168
97
|
+ (stderr.slice(0, 500) || stdout.slice(0, 500) || 'no output')));
|
|
169
98
|
return;
|
|
@@ -172,11 +101,6 @@ export function driveCooperativeChild(command, args, signal, graceMs, spawnOpts
|
|
|
172
101
|
});
|
|
173
102
|
});
|
|
174
103
|
}
|
|
175
|
-
/**
|
|
176
|
-
* Core decision + spawn, shared so a future on-demand trigger (mirroring
|
|
177
|
-
* `triggerSelfUpdateInBackground`) can reuse it. Returns rather than throws —
|
|
178
|
-
* the periodic tick logs the outcome and moves on either way.
|
|
179
|
-
*/
|
|
180
104
|
export async function runHarnessUpdateTick(ctx, signal, deps = defaultHarnessUpdateDeps()) {
|
|
181
105
|
try {
|
|
182
106
|
const { exitCode, stdout, cancelled } = await deps.runAutoUpdatePass(signal);
|
|
@@ -203,12 +127,8 @@ export class HarnessUpdateService extends BasePeriodicService {
|
|
|
203
127
|
deadlineMs = HARNESS_UPDATE_DEADLINE_MS;
|
|
204
128
|
startupDelayMs = HARNESS_UPDATE_STARTUP_DELAY_MS;
|
|
205
129
|
async onStart(_ctx) {
|
|
206
|
-
// No connections/handles to open — each tick spawns its own bounded child.
|
|
207
130
|
}
|
|
208
131
|
async onStop() {
|
|
209
|
-
// The in-flight child (if any) is asked to stop COOPERATIVELY: the supervisor
|
|
210
|
-
// aborts `signal` on the current tick, which `driveCooperativeChild` turns
|
|
211
|
-
// into an IPC cancel message, never a kill. Nothing else to release here.
|
|
212
132
|
}
|
|
213
133
|
async onTick(ctx, signal) {
|
|
214
134
|
await runHarnessUpdateTick(ctx, signal);
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
/** Daemon heartbeat and routine-process reconciliation under supervision. */
|
|
2
1
|
import type { DaemonServiceId } from '../daemon-services.js';
|
|
3
2
|
import { BasePeriodicService, type DaemonContext } from './service.js';
|
|
4
3
|
export declare class HeartbeatService extends BasePeriodicService {
|
|
@@ -1,60 +1,14 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The daemon state dir for an ARBITRARY home — the same layout state.ts's
|
|
3
|
-
* DAEMON_DIR chain produces (`<home>/.agents/.cache/helpers/daemon`). A caller
|
|
4
|
-
* under a redirected HOME (a test/e2e harness) uses this to find the REAL
|
|
5
|
-
* install's daemon records. Kept here rather than exported from state.ts: any
|
|
6
|
-
* edit to state.ts selects its entire static-import closure into the required
|
|
7
|
-
* impact gate (186 files, 295s against the 240s budget, measured on this
|
|
8
|
-
* change's first CI run), so the helper cannot live there without a
|
|
9
|
-
* budget-policy change. If state.ts's layout ever moves, this must move with
|
|
10
|
-
* it — the two are the same address.
|
|
11
|
-
*/
|
|
12
1
|
export declare function getDaemonDirForHome(home: string): string;
|
|
13
|
-
/** One live `__daemon-run` process from the box-wide `ps` scan. */
|
|
14
2
|
export interface DaemonRunProcess {
|
|
15
3
|
pid: number;
|
|
16
|
-
/** Owning uid from `ps`, or null when unavailable. */
|
|
17
4
|
uid: number | null;
|
|
18
|
-
/** Whitespace-tokenized argv (`ps` renders it unquoted). */
|
|
19
5
|
tokens: string[];
|
|
20
6
|
}
|
|
21
|
-
/**
|
|
22
|
-
* Every live `__daemon-run` process on this box, regardless of which install
|
|
23
|
-
* launched it or which state dir it serves. POSIX-only (uses `ps`); a no-op on
|
|
24
|
-
* Windows.
|
|
25
|
-
*
|
|
26
|
-
* `getDaemonLaunch` always spawns `<node> <entry> __daemon-run` with nothing
|
|
27
|
-
* after it — the ONLY argv `__daemon-run` ever appears in for a real daemon.
|
|
28
|
-
* A substring/regex test anywhere in the full command line is not enough: an
|
|
29
|
-
* `agents run claude "<prompt>"` invocation whose prompt happens to quote the
|
|
30
|
-
* literal text `__daemon-run` (this ticket's own brief does) matches that test
|
|
31
|
-
* too, and was observed producing false "duplicate daemon" rows. Requiring it
|
|
32
|
-
* to be the LAST whitespace-delimited token is the actual invariant.
|
|
33
|
-
*
|
|
34
|
-
* This raw box-wide scan is deliberately NOT the duplicate-detection scope
|
|
35
|
-
* (RUSH-2368): a `__daemon-run` under a different HOME serves a different
|
|
36
|
-
* `getDaemonDir()` and is not a duplicate of THIS device's daemon, however
|
|
37
|
-
* `ps` sees it — a leaked vitest fixture under its own `/tmp` HOME matched
|
|
38
|
-
* this scan and was reported as a stray to `kill`. Callers attach their own
|
|
39
|
-
* scope: `agents daemon status` gates on the instance registry,
|
|
40
|
-
* {@link findLeakedDaemons} on the owner records above.
|
|
41
|
-
*/
|
|
42
7
|
export declare function listDaemonRunProcesses(): DaemonRunProcess[];
|
|
43
|
-
/** A `__daemon-run` process no owner record names. */
|
|
44
8
|
export interface LeakedDaemon {
|
|
45
9
|
pid: number;
|
|
46
|
-
/** The HOME the process runs under, or null when it cannot be read. */
|
|
47
10
|
home: string | null;
|
|
48
|
-
/** The process's start time as `ps lstart` renders it, or null when unavailable. */
|
|
49
11
|
startedAt: string | null;
|
|
50
|
-
/** The launch entry (the argv token before `__daemon-run`), best-effort. */
|
|
51
12
|
entry: string | null;
|
|
52
13
|
}
|
|
53
|
-
/**
|
|
54
|
-
* Every `__daemon-run` process running as THIS uid that no owner record names:
|
|
55
|
-
* neither the service manager's unit main PID nor the recorded
|
|
56
|
-
* `<daemonDir>/daemon.pid`. Each result carries the process's HOME and start
|
|
57
|
-
* time so the report can show them. An empty list means no leak — including
|
|
58
|
-
* the common stopped-daemon case, where there is simply nothing running.
|
|
59
|
-
*/
|
|
60
14
|
export declare function findLeakedDaemons(): LeakedDaemon[];
|
|
@@ -1,68 +1,13 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Leaked-daemon detection (W4, PHNX-3736).
|
|
3
|
-
*
|
|
4
|
-
* One daemon per device is the contract: the always-on process behind
|
|
5
|
-
* `agents __daemon-run` is either the service manager's unit main PID or the
|
|
6
|
-
* pid recorded in `<daemonDir>/daemon.pid`. Anything else running
|
|
7
|
-
* `__daemon-run` as this uid is a LEAK — a daemon nothing owns.
|
|
8
|
-
*
|
|
9
|
-
* The motivating incident ran 4+ days on yosemite-s1: a headless e2e session
|
|
10
|
-
* launched a daemon under `HOME=/tmp/pin-e2e-<pid>` and never stopped it. The
|
|
11
|
-
* pid-file takeover in `daemon.ts` could not see it because it keeps its own
|
|
12
|
-
* pid file under the temp home, and `agents daemon status`'s duplicate scope
|
|
13
|
-
* (`findSurvivingStateDirDaemons`, RUSH-2368) deliberately covers only this
|
|
14
|
-
* install's state dir — so the leak was invisible to every existing surface.
|
|
15
|
-
*
|
|
16
|
-
* Why flagging a different-HOME daemon here is not the RUSH-2368 harm: that
|
|
17
|
-
* incident taught that a `__daemon-run` under another HOME is not a DUPLICATE
|
|
18
|
-
* of this device's daemon and must never be told to `kill` from the duplicate
|
|
19
|
-
* path. This module does not accuse it of being a duplicate — it reports that
|
|
20
|
-
* NO owner record (unit main PID, recorded daemon.pid) names the pid at all,
|
|
21
|
-
* and shows the process's own HOME and start time so the operator can judge
|
|
22
|
-
* before acting. A different uid is never named: we cannot inspect its
|
|
23
|
-
* environment or signal it.
|
|
24
|
-
*/
|
|
25
1
|
import { execFileSync } from 'child_process';
|
|
26
2
|
import * as fs from 'fs';
|
|
27
3
|
import * as os from 'os';
|
|
28
4
|
import * as path from 'path';
|
|
29
5
|
import { productionDaemonServiceNames, readDaemonPid, readServiceManagerPid } from './daemon.js';
|
|
30
6
|
import { getDaemonDir } from '../state.js';
|
|
31
|
-
/**
|
|
32
|
-
* The daemon state dir for an ARBITRARY home — the same layout state.ts's
|
|
33
|
-
* DAEMON_DIR chain produces (`<home>/.agents/.cache/helpers/daemon`). A caller
|
|
34
|
-
* under a redirected HOME (a test/e2e harness) uses this to find the REAL
|
|
35
|
-
* install's daemon records. Kept here rather than exported from state.ts: any
|
|
36
|
-
* edit to state.ts selects its entire static-import closure into the required
|
|
37
|
-
* impact gate (186 files, 295s against the 240s budget, measured on this
|
|
38
|
-
* change's first CI run), so the helper cannot live there without a
|
|
39
|
-
* budget-policy change. If state.ts's layout ever moves, this must move with
|
|
40
|
-
* it — the two are the same address.
|
|
41
|
-
*/
|
|
42
7
|
export function getDaemonDirForHome(home) {
|
|
43
8
|
return path.join(home, '.agents', '.cache', 'helpers', 'daemon');
|
|
44
9
|
}
|
|
45
|
-
|
|
46
|
-
* Every live `__daemon-run` process on this box, regardless of which install
|
|
47
|
-
* launched it or which state dir it serves. POSIX-only (uses `ps`); a no-op on
|
|
48
|
-
* Windows.
|
|
49
|
-
*
|
|
50
|
-
* `getDaemonLaunch` always spawns `<node> <entry> __daemon-run` with nothing
|
|
51
|
-
* after it — the ONLY argv `__daemon-run` ever appears in for a real daemon.
|
|
52
|
-
* A substring/regex test anywhere in the full command line is not enough: an
|
|
53
|
-
* `agents run claude "<prompt>"` invocation whose prompt happens to quote the
|
|
54
|
-
* literal text `__daemon-run` (this ticket's own brief does) matches that test
|
|
55
|
-
* too, and was observed producing false "duplicate daemon" rows. Requiring it
|
|
56
|
-
* to be the LAST whitespace-delimited token is the actual invariant.
|
|
57
|
-
*
|
|
58
|
-
* This raw box-wide scan is deliberately NOT the duplicate-detection scope
|
|
59
|
-
* (RUSH-2368): a `__daemon-run` under a different HOME serves a different
|
|
60
|
-
* `getDaemonDir()` and is not a duplicate of THIS device's daemon, however
|
|
61
|
-
* `ps` sees it — a leaked vitest fixture under its own `/tmp` HOME matched
|
|
62
|
-
* this scan and was reported as a stray to `kill`. Callers attach their own
|
|
63
|
-
* scope: `agents daemon status` gates on the instance registry,
|
|
64
|
-
* {@link findLeakedDaemons} on the owner records above.
|
|
65
|
-
*/
|
|
10
|
+
// A real daemon has __daemon-run as the final argv token; prompt text containing it is not identity.
|
|
66
11
|
export function listDaemonRunProcesses() {
|
|
67
12
|
if (process.platform === 'win32')
|
|
68
13
|
return [];
|
|
@@ -89,13 +34,6 @@ export function listDaemonRunProcesses() {
|
|
|
89
34
|
}
|
|
90
35
|
return found;
|
|
91
36
|
}
|
|
92
|
-
/**
|
|
93
|
-
* The HOME of a live process, or null when unreadable. Linux reads
|
|
94
|
-
* `/proc/<pid>/environ`; macOS has no equivalent zero-dependency primitive, so
|
|
95
|
-
* it falls back to `ps -E`, which appends the environment to the command
|
|
96
|
-
* column. Both are best-effort: a null HOME must never turn into an accusation
|
|
97
|
-
* beyond "unknown".
|
|
98
|
-
*/
|
|
99
37
|
function processHome(pid) {
|
|
100
38
|
if (process.platform === 'linux') {
|
|
101
39
|
try {
|
|
@@ -119,7 +57,6 @@ function processHome(pid) {
|
|
|
119
57
|
return null;
|
|
120
58
|
}
|
|
121
59
|
}
|
|
122
|
-
/** The start time of a live process as `ps lstart` renders it, or null (best-effort, POSIX only). */
|
|
123
60
|
function processStartTime(pid) {
|
|
124
61
|
if (process.platform === 'win32')
|
|
125
62
|
return null;
|
|
@@ -131,13 +68,7 @@ function processStartTime(pid) {
|
|
|
131
68
|
return null;
|
|
132
69
|
}
|
|
133
70
|
}
|
|
134
|
-
|
|
135
|
-
* Every `__daemon-run` process running as THIS uid that no owner record names:
|
|
136
|
-
* neither the service manager's unit main PID nor the recorded
|
|
137
|
-
* `<daemonDir>/daemon.pid`. Each result carries the process's HOME and start
|
|
138
|
-
* time so the report can show them. An empty list means no leak — including
|
|
139
|
-
* the common stopped-daemon case, where there is simply nothing running.
|
|
140
|
-
*/
|
|
71
|
+
// Different-HOME processes are not duplicates; report only this uid's pid absent from manager and real-HOME owner records.
|
|
141
72
|
export function findLeakedDaemons() {
|
|
142
73
|
const owned = new Set();
|
|
143
74
|
const recorded = readDaemonPid();
|
|
@@ -146,11 +77,6 @@ export function findLeakedDaemons() {
|
|
|
146
77
|
const unitPid = readServiceManagerPid();
|
|
147
78
|
if (unitPid)
|
|
148
79
|
owned.add(unitPid);
|
|
149
|
-
// A caller under a redirected HOME (a test/e2e harness) must still recognize
|
|
150
|
-
// the REAL install's daemon as owned: its records live under the account
|
|
151
|
-
// home (`os.userInfo().homedir` reads the passwd record, ignoring $HOME),
|
|
152
|
-
// not under this process's HOME. Flagging the box's healthy production
|
|
153
|
-
// daemon as a leak would be the RUSH-2368 harm through a new door.
|
|
154
80
|
const realDaemonDir = getDaemonDirForHome(os.userInfo().homedir);
|
|
155
81
|
if (realDaemonDir !== getDaemonDir()) {
|
|
156
82
|
const realRecorded = readDaemonPid(realDaemonDir);
|
|
@@ -165,8 +91,6 @@ export function findLeakedDaemons() {
|
|
|
165
91
|
for (const p of listDaemonRunProcesses()) {
|
|
166
92
|
if (owned.has(p.pid))
|
|
167
93
|
continue;
|
|
168
|
-
// Another uid's daemon is never named: we cannot read its environment
|
|
169
|
-
// reliably and could not signal it if we tried.
|
|
170
94
|
if (myUid !== null && p.uid !== null && p.uid !== myUid)
|
|
171
95
|
continue;
|
|
172
96
|
leaked.push({
|
|
@@ -1,15 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* MonitorEngine lifecycle as a `DaemonService` (RUSH-3193 P2).
|
|
3
|
-
*
|
|
4
|
-
* Wraps the `MonitorEngine` (event-triggered watchers) under the
|
|
5
|
-
* `ServiceSupervisor` contract. The engine can own a timer when embedded by a
|
|
6
|
-
* foreground caller, but the daemon starts it in external-scheduler mode so
|
|
7
|
-
* every evaluation cycle receives the supervisor's deadline, health, and
|
|
8
|
-
* circuit-breaker semantics.
|
|
9
|
-
*
|
|
10
|
-
* `getEngine()` exposes the underlying `MonitorEngine` so `daemon.ts`'s
|
|
11
|
-
* SIGHUP handler can call `engine.reload()` when needed.
|
|
12
|
-
*/
|
|
13
1
|
import { BasePeriodicService, type DaemonContext } from './service.js';
|
|
14
2
|
import type { DaemonServiceId } from '../daemon-services.js';
|
|
15
3
|
import { MonitorEngine } from '../monitors/engine.js';
|
|
@@ -18,7 +6,6 @@ export declare class MonitorEngineService extends BasePeriodicService {
|
|
|
18
6
|
readonly intervalMs = 5000;
|
|
19
7
|
readonly deadlineMs: number;
|
|
20
8
|
private engine;
|
|
21
|
-
/** Returns the live engine after `start()`, or `null` before/after. */
|
|
22
9
|
getEngine(): MonitorEngine | null;
|
|
23
10
|
protected onStart(ctx: DaemonContext): Promise<void>;
|
|
24
11
|
protected onStop(): Promise<void>;
|