@indigoai-us/hq-cli 5.313.0 → 5.314.0
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 +1 -4300
- package/assets/scaffold/core/scripts/checkpoint-stop-gate.sh +43 -281
- package/assets/scaffold/core/scripts/hook-lib.sh +50 -345
- package/assets/scaffold/core/scripts/hq-session.sh +23 -184
- package/assets/scaffold/core/scripts/lib/session-id.sh +2 -3
- package/assets/scaffold/core/scripts/lib/session-scope-capability.sh +1 -1
- package/assets/scaffold/core/scripts/lib/work-mesh-enqueue.sh +1 -2
- package/assets/scaffold/core/scripts/qmd-reindex-after-sync.sh +87 -10
- package/assets/scaffold/core/scripts/rebuild-company-knowledge-index.sh +3 -36
- package/assets/scaffold/core/scripts/rebuild-projects-index.sh +12 -99
- package/assets/scaffold/core/scripts/token-usage-report.sh +20 -81
- package/dist/bin/hq-auth-refresh.d.ts +0 -2
- package/dist/bin/hq-auth-refresh.js +6 -12
- package/dist/commands/__fixtures__/access-vault.d.ts +0 -2
- package/dist/commands/__fixtures__/access-vault.js +1 -1
- package/dist/commands/_patterns.d.ts +0 -16
- package/dist/commands/_patterns.js +3 -20
- package/dist/commands/access.d.ts +1 -2
- package/dist/commands/access.js +49 -58
- package/dist/commands/agents.d.ts +4 -106
- package/dist/commands/agents.js +45 -924
- package/dist/commands/auth.d.ts +0 -1
- package/dist/commands/auth.js +19 -189
- package/dist/commands/billing.d.ts +0 -3
- package/dist/commands/billing.js +1 -6
- package/dist/commands/channels.js +1 -56
- package/dist/commands/cloud-demote.js +2 -3
- package/dist/commands/cloud-provision.d.ts +0 -14
- package/dist/commands/cloud-provision.js +58 -232
- package/dist/commands/cloud.d.ts +15 -49
- package/dist/commands/cloud.js +122 -357
- package/dist/commands/company-transfer.d.ts +28 -4
- package/dist/commands/company-transfer.js +49 -5
- package/dist/commands/company.js +3 -68
- package/dist/commands/core-checkpoint.d.ts +9 -19
- package/dist/commands/core-checkpoint.js +37 -301
- package/dist/commands/core.d.ts +0 -4
- package/dist/commands/core.js +80 -277
- package/dist/commands/crm.js +3 -52
- package/dist/commands/db-provision.js +4 -4
- package/dist/commands/db-sql.js +21 -7
- package/dist/commands/dm.d.ts +12 -119
- package/dist/commands/dm.js +38 -388
- package/dist/commands/doctor.d.ts +0 -12
- package/dist/commands/doctor.js +12 -158
- package/dist/commands/feedback.d.ts +0 -6
- package/dist/commands/feedback.js +37 -86
- package/dist/commands/files-browse.d.ts +12 -32
- package/dist/commands/files-browse.js +60 -176
- package/dist/commands/files.d.ts +0 -17
- package/dist/commands/files.js +47 -300
- package/dist/commands/group-grants.js +2 -3
- package/dist/commands/groups.js +5 -6
- package/dist/commands/index-cmd.d.ts +1 -19
- package/dist/commands/index-cmd.js +7 -74
- package/dist/commands/integrations-api.d.ts +10 -15
- package/dist/commands/integrations-api.js +22 -27
- package/dist/commands/integrations-connect.d.ts +13 -51
- package/dist/commands/integrations-connect.js +71 -86
- package/dist/commands/integrations-core.d.ts +6 -6
- package/dist/commands/integrations-core.js +11 -25
- package/dist/commands/integrations-import.d.ts +1 -1
- package/dist/commands/integrations-import.js +24 -43
- package/dist/commands/integrations-manage.js +13 -20
- package/dist/commands/integrations.d.ts +0 -8
- package/dist/commands/integrations.js +7 -94
- package/dist/commands/login.js +6 -49
- package/dist/commands/mcp-registration.d.ts +25 -32
- package/dist/commands/mcp-registration.js +23 -256
- package/dist/commands/mcp-status.js +0 -1
- package/dist/commands/meetings.js +34 -55
- package/dist/commands/members.js +1 -5
- package/dist/commands/mesh.d.ts +0 -11
- package/dist/commands/mesh.js +76 -1086
- package/dist/commands/onboard-identity-guard.d.ts +1 -1
- package/dist/commands/onboard.js +5 -24
- package/dist/commands/pack-install.js +1 -3
- package/dist/commands/packs.js +1 -11
- package/dist/commands/people.d.ts +0 -4
- package/dist/commands/people.js +3 -37
- package/dist/commands/publish.d.ts +1 -8
- package/dist/commands/publish.js +4 -17
- package/dist/commands/reindex.js +6 -56
- package/dist/commands/rescue.d.ts +0 -4
- package/dist/commands/rescue.js +17 -27
- package/dist/commands/run.js +4 -18
- package/dist/commands/safe-extract.d.ts +2 -11
- package/dist/commands/safe-extract.js +8 -36
- package/dist/commands/scaffold-fast.d.ts +41 -0
- package/dist/commands/scaffold-fast.js +57 -0
- package/dist/commands/secrets.d.ts +2 -20
- package/dist/commands/secrets.js +71 -175
- package/dist/commands/skill.d.ts +4 -35
- package/dist/commands/skill.js +18 -357
- package/dist/commands/sync-mode.d.ts +0 -11
- package/dist/commands/sync-mode.js +0 -30
- package/dist/commands/sync-narrow.js +5 -36
- package/dist/commands/team-sync.js +10 -71
- package/dist/commands/update.js +0 -6
- package/dist/commands/whoami.d.ts +0 -22
- package/dist/commands/whoami.js +4 -137
- package/dist/commands/workers.d.ts +14 -2
- package/dist/commands/workers.js +10 -7
- package/dist/fast-core.d.ts +7 -6
- package/dist/fast-core.js +24 -87
- package/dist/index.d.ts +4 -3
- package/dist/index.js +9 -59
- package/dist/lazy-commands.d.ts +44 -20
- package/dist/lazy-commands.js +58 -60
- package/dist/lib/company-skill-wrapper.d.ts +0 -1
- package/dist/lib/company-skill-wrapper.js +29 -121
- package/dist/lib/core-utils/codex-skill-bridge.d.ts +1 -2
- package/dist/lib/core-utils/qmd-reindex-after-sync.d.ts +1 -14
- package/dist/lib/core-utils/qmd-reindex-after-sync.js +17 -101
- package/dist/lib/core-utils/soft-timeout.js +1 -1
- package/dist/lib/core-utils/timeout-guard.d.ts +3 -3
- package/dist/lib/core-utils/timeout-guard.js +13 -28
- package/dist/lib/core-utils/token-usage-report.js +3 -17
- package/dist/lib/db/control-plane.js +0 -6
- package/dist/lib/db/local.d.ts +5 -0
- package/dist/lib/db/local.js +1 -1
- package/dist/lib/db/migrate.d.ts +12 -0
- package/dist/lib/db/migrate.js +5 -5
- package/dist/lib/db/remote-sql.d.ts +2 -2
- package/dist/lib/db/remote-sql.js +3 -3
- package/dist/lib/db/sql.d.ts +10 -0
- package/dist/lib/db/sql.js +8 -4
- package/dist/lib/doctor/__testing__/fake-hq-tree.d.ts +1 -1
- package/dist/lib/doctor/__testing__/fake-hq-tree.js +1 -1
- package/dist/lib/doctor/checks/claude-wiring.js +1 -70
- package/dist/lib/doctor/checks/codex-wiring.d.ts +4 -0
- package/dist/lib/doctor/checks/codex-wiring.js +35 -3
- package/dist/lib/doctor/checks/grok-wiring.js +34 -1
- package/dist/lib/doctor/checks/integrations.js +0 -11
- package/dist/lib/doctor/checks/runtime-health.d.ts +17 -4
- package/dist/lib/doctor/checks/runtime-health.js +7 -20
- package/dist/lib/doctor/checks/sync-health.d.ts +0 -21
- package/dist/lib/doctor/checks/sync-health.js +2 -72
- package/dist/lib/doctor/checks/work-context.js +6 -20
- package/dist/lib/doctor/compat.d.ts +16 -0
- package/dist/lib/doctor/compat.js +3 -4
- package/dist/lib/doctor/deep/effects.js +3 -1
- package/dist/lib/doctor/deep/executor.d.ts +10 -4
- package/dist/lib/doctor/deep/executor.js +1 -1
- package/dist/lib/doctor/deep/parity.d.ts +29 -2
- package/dist/lib/doctor/deep/parity.js +7 -7
- package/dist/lib/doctor/deep/sandbox.d.ts +25 -7
- package/dist/lib/doctor/deep/sandbox.js +7 -5
- package/dist/lib/doctor/fix/apply.d.ts +8 -79
- package/dist/lib/doctor/fix/apply.js +80 -292
- package/dist/lib/doctor/fix/remediation.d.ts +6 -14
- package/dist/lib/doctor/fix/remediation.js +9 -49
- package/dist/lib/doctor/fixtures/schema.js +3 -1
- package/dist/lib/doctor/json-output.d.ts +1 -17
- package/dist/lib/doctor/json-output.js +2 -7
- package/dist/lib/doctor/platform.d.ts +26 -0
- package/dist/lib/doctor/platform.js +5 -5
- package/dist/lib/doctor/registry.d.ts +0 -14
- package/dist/lib/doctor/registry.js +0 -71
- package/dist/lib/doctor/report.js +1 -1
- package/dist/lib/doctor/types.d.ts +0 -5
- package/dist/lib/doctor/types.js +0 -20
- package/dist/lib/flag-registry-worker.js +1 -12
- package/dist/lib/flag-registry.d.ts +6 -26
- package/dist/lib/flag-registry.js +16 -133
- package/dist/lib/index-render/companies.d.ts +1 -4
- package/dist/lib/index-render/companies.js +3 -66
- package/dist/lib/index-render/company-knowledge.js +17 -80
- package/dist/lib/index-render/index.d.ts +0 -1
- package/dist/lib/index-render/index.js +1 -2
- package/dist/lib/index-render/projects.js +5 -82
- package/dist/lib/index-render/shared.d.ts +1 -13
- package/dist/lib/index-render/shared.js +2 -41
- package/dist/lib/mesh/api.d.ts +10 -103
- package/dist/lib/mesh/api.js +64 -334
- package/dist/lib/mesh/client.d.ts +2 -3
- package/dist/lib/mesh/client.js +7 -26
- package/dist/lib/mesh/live/backfill-held.d.ts +16 -67
- package/dist/lib/mesh/live/backfill-held.js +61 -415
- package/dist/lib/mesh/live/backoff.d.ts +2 -2
- package/dist/lib/mesh/live/backoff.js +3 -16
- package/dist/lib/mesh/live/daemon/board-refresh.d.ts +1 -7
- package/dist/lib/mesh/live/daemon/board-refresh.js +30 -78
- package/dist/lib/mesh/live/daemon/credentials.d.ts +10 -64
- package/dist/lib/mesh/live/daemon/credentials.js +20 -270
- package/dist/lib/mesh/live/daemon/doctor.d.ts +0 -53
- package/dist/lib/mesh/live/daemon/doctor.js +6 -190
- package/dist/lib/mesh/live/daemon/index.d.ts +10 -13
- package/dist/lib/mesh/live/daemon/index.js +6 -7
- package/dist/lib/mesh/live/daemon/install.d.ts +1 -255
- package/dist/lib/mesh/live/daemon/install.js +13 -811
- package/dist/lib/mesh/live/daemon/paths.d.ts +0 -2
- package/dist/lib/mesh/live/daemon/paths.js +0 -2
- package/dist/lib/mesh/live/daemon/presence.d.ts +5 -24
- package/dist/lib/mesh/live/daemon/presence.js +10 -79
- package/dist/lib/mesh/live/daemon/run.d.ts +2 -48
- package/dist/lib/mesh/live/daemon/run.js +33 -485
- package/dist/lib/mesh/live/daemon/state.d.ts +2 -19
- package/dist/lib/mesh/live/daemon/state.js +2 -34
- package/dist/lib/mesh/live/daemon/transcript-watch.d.ts +9 -45
- package/dist/lib/mesh/live/daemon/transcript-watch.js +31 -227
- package/dist/lib/mesh/live/emit-client.d.ts +0 -8
- package/dist/lib/mesh/live/emit-client.js +8 -23
- package/dist/lib/mesh/live/emit-evidence.d.ts +0 -19
- package/dist/lib/mesh/live/emit-evidence.js +2 -20
- package/dist/lib/mesh/live/emit.d.ts +0 -9
- package/dist/lib/mesh/live/emit.js +2 -28
- package/dist/lib/mesh/live/enqueue.d.ts +0 -5
- package/dist/lib/mesh/live/enqueue.js +0 -19
- package/dist/lib/mesh/live/flush.d.ts +5 -17
- package/dist/lib/mesh/live/flush.js +38 -391
- package/dist/lib/mesh/live/format-spool-line.d.ts +2 -5
- package/dist/lib/mesh/live/format-spool-line.js +0 -10
- package/dist/lib/mesh/live/paths.d.ts +0 -2
- package/dist/lib/mesh/live/paths.js +0 -4
- package/dist/lib/mesh/live/session-event.schema.json +1 -24
- package/dist/lib/mesh/live/session-events-client.d.ts +0 -2
- package/dist/lib/mesh/live/session-events-client.js +0 -26
- package/dist/lib/mesh/live/spool.d.ts +0 -19
- package/dist/lib/mesh/live/spool.js +3 -269
- package/dist/lib/mesh/live/validate-session-event.d.ts +1 -1
- package/dist/lib/mesh/live/validate-session-event.js +1 -1
- package/dist/lib/plan-limit-nag.d.ts +6 -102
- package/dist/lib/plan-limit-nag.js +43 -348
- package/dist/lib/scan-packages/index.d.ts +0 -2
- package/dist/lib/scan-packages/index.js +6 -168
- package/dist/lib/search-index/background.d.ts +1 -8
- package/dist/lib/search-index/background.js +200 -55
- package/dist/lib/search-index/index.d.ts +0 -12
- package/dist/lib/search-index/index.js +7 -153
- package/dist/lib/work-context/company.d.ts +20 -22
- package/dist/lib/work-context/company.js +40 -124
- package/dist/lib/work-context/config.d.ts +11 -58
- package/dist/lib/work-context/config.js +83 -334
- package/dist/lib/work-context/contract.d.ts +0 -13
- package/dist/lib/work-context/contract.schema.json +1 -3
- package/dist/lib/work-context/index.d.ts +25 -0
- package/dist/lib/work-context/index.js +21 -0
- package/dist/lib/work-context/outbox.d.ts +5 -27
- package/dist/lib/work-context/outbox.js +6 -135
- package/dist/lib/work-context/reconcile.d.ts +0 -15
- package/dist/lib/work-context/reconcile.js +29 -405
- package/dist/lib/work-context/state.d.ts +10 -93
- package/dist/lib/work-context/state.js +29 -342
- package/dist/lib/workers-registry/index.js +8 -62
- package/dist/main.d.ts +0 -32
- package/dist/main.js +73 -273
- package/dist/node-network-compat.d.ts +30 -2
- package/dist/node-network-compat.js +51 -4
- package/dist/node-preflight.d.ts +1 -7
- package/dist/node-preflight.js +5 -5
- package/dist/register-all.d.ts +29 -4
- package/dist/register-all.js +233 -4
- package/dist/run/discover-schemas.d.ts +1 -2
- package/dist/run/env-graph-guard.d.ts +2 -2
- package/dist/run/env-graph-guard.js +2 -5
- package/dist/run/hq-plugin.d.ts +0 -4
- package/dist/run/hq-plugin.js +8 -36
- package/dist/sentry-before-send.js +0 -80
- package/dist/sentry.d.ts +2 -8
- package/dist/sentry.js +13 -117
- package/dist/startup-registration.d.ts +2 -26
- package/dist/startup-registration.js +15 -116
- package/dist/utils/cli-telemetry.d.ts +1 -74
- package/dist/utils/cli-telemetry.js +7 -434
- package/dist/utils/client-health.d.ts +4 -0
- package/dist/utils/client-health.js +2 -2
- package/dist/utils/cognito-session.d.ts +0 -71
- package/dist/utils/cognito-session.js +27 -481
- package/dist/utils/contribution-table.d.ts +1 -1
- package/dist/utils/environmental-error.d.ts +0 -18
- package/dist/utils/environmental-error.js +7 -240
- package/dist/utils/expected-cli-error.d.ts +0 -2
- package/dist/utils/expected-cli-error.js +0 -4
- package/dist/utils/feedback-diagnostics.d.ts +1 -2
- package/dist/utils/feedback-log-bundle.d.ts +26 -51
- package/dist/utils/feedback-log-bundle.js +31 -211
- package/dist/utils/feedback-logs.d.ts +47 -18
- package/dist/utils/feedback-logs.js +21 -50
- package/dist/utils/feedback-screenshots.d.ts +1 -0
- package/dist/utils/feedback-screenshots.js +1 -1
- package/dist/utils/hq-roots.d.ts +2 -25
- package/dist/utils/hq-roots.js +7 -67
- package/dist/utils/incomplete-install-error.d.ts +19 -87
- package/dist/utils/incomplete-install-error.js +68 -319
- package/dist/utils/install-tree-torn.d.ts +24 -260
- package/dist/utils/install-tree-torn.js +51 -998
- package/dist/utils/large-file-guard.d.ts +10 -0
- package/dist/utils/large-file-guard.js +1 -1
- package/dist/utils/local-files-overview.d.ts +8 -4
- package/dist/utils/local-files-overview.js +7 -48
- package/dist/utils/login-provider.d.ts +0 -7
- package/dist/utils/login-provider.js +0 -34
- package/dist/utils/pack-contributions.d.ts +14 -2
- package/dist/utils/pack-contributions.js +44 -7
- package/dist/utils/package-root-diagnostics.d.ts +1 -1
- package/dist/utils/people.d.ts +11 -7
- package/dist/utils/people.js +20 -5
- package/dist/utils/plan-gate-error.d.ts +10 -52
- package/dist/utils/plan-gate-error.js +41 -364
- package/dist/utils/qmd-model-download-error.d.ts +8 -0
- package/dist/utils/qmd-model-download-error.js +1 -1
- package/dist/utils/qmd-query-document-error.d.ts +6 -0
- package/dist/utils/qmd-query-document-error.js +1 -1
- package/dist/utils/redact-error-text.d.ts +2 -0
- package/dist/utils/redact-error-text.js +2 -3
- package/dist/utils/run-bundled-script.d.ts +0 -6
- package/dist/utils/run-bundled-script.js +4 -117
- package/dist/utils/sandbox-runner-client.d.ts +1 -2
- package/dist/utils/secrets-cache.d.ts +3 -7
- package/dist/utils/secrets-cache.js +14 -162
- package/dist/utils/self-update.d.ts +1 -34
- package/dist/utils/self-update.js +42 -660
- package/dist/utils/sentry-fingerprint.d.ts +1 -23
- package/dist/utils/sentry-fingerprint.js +31 -223
- package/dist/utils/team-upgrade.d.ts +1 -1
- package/dist/utils/team-upgrade.js +3 -4
- package/dist/utils/vault-api.d.ts +1 -21
- package/dist/utils/vault-api.js +84 -251
- package/dist/utils/version-check.d.ts +1 -11
- package/dist/utils/version-check.js +3 -32
- package/dist/utils/version-gate.d.ts +17 -101
- package/dist/utils/version-gate.js +70 -645
- package/dist/utils/windows-spawn.d.ts +0 -6
- package/dist/utils/windows-spawn.js +0 -37
- package/package.json +8 -20
- package/README.md +0 -113
- package/assets/bot-workers/setup/context/USER-GUIDE.md +0 -404
- package/assets/bot-workers/setup/context/quick-reference.md +0 -199
- package/assets/bot-workers/setup/skills/agents-and-team.md +0 -167
- package/assets/bot-workers/setup/skills/explain-hq.md +0 -35
- package/assets/bot-workers/setup/skills/first-company.md +0 -74
- package/assets/bot-workers/setup/skills/joining-a-team.md +0 -125
- package/assets/bot-workers/setup/skills/pricing.md +0 -92
- package/assets/bot-workers/setup/skills/standing-help.md +0 -81
- package/assets/bot-workers/setup/skills/your-business.md +0 -281
- package/assets/bot-workers/setup/worker.yaml +0 -791
- package/assets/lanes-hooks/hq-lanes-drain.json +0 -15
- package/assets/lanes-hooks/hq-lanes-drain.mjs +0 -275
- package/assets/lanes-hooks/hq-lanes-drain.sh +0 -21
- package/assets/lanes-reconcile/hq-lanes-reconcile.service +0 -11
- package/assets/lanes-reconcile/hq-lanes-reconcile.timer +0 -12
- package/assets/scaffold/.claude/hooks/validate-policy-frontmatter.sh +0 -485
- package/assets/scaffold/core/scripts/audit-log.sh +0 -384
- package/assets/scaffold/core/scripts/clean-worktree-reconcile-handoff.sh +0 -171
- package/assets/scaffold/core/scripts/eval-trigger.sh +0 -193
- package/assets/scaffold/core/scripts/git-pack-extension-check.sh +0 -164
- package/assets/scaffold/core/scripts/handoff-finalize.sh +0 -688
- package/assets/scaffold/core/scripts/handoff-open-steps.sh +0 -81
- package/assets/scaffold/core/scripts/handoff-post.sh +0 -252
- package/assets/scaffold/core/scripts/hq-delegate-bundle.sh +0 -307
- package/assets/scaffold/core/scripts/hq-delegate-grant.sh +0 -252
- package/assets/scaffold/core/scripts/hq-delegate-pickup.sh +0 -99
- package/assets/scaffold/core/scripts/hq-delegate-publish.sh +0 -91
- package/assets/scaffold/core/scripts/hq-delegate-repo.sh +0 -158
- package/assets/scaffold/core/scripts/hq-delegate-resolve.sh +0 -145
- package/assets/scaffold/core/scripts/hq-delegate-secrets.sh +0 -129
- package/assets/scaffold/core/scripts/hq-delegate-send.sh +0 -259
- package/assets/scaffold/core/scripts/hq-delegate-transfer.sh +0 -175
- package/assets/scaffold/core/scripts/hq-delegate-verify.sh +0 -238
- package/assets/scaffold/core/scripts/hq-dm-bind.sh +0 -585
- package/assets/scaffold/core/scripts/hq-job-notify.sh +0 -389
- package/assets/scaffold/core/scripts/hq-job-probe.sh +0 -835
- package/assets/scaffold/core/scripts/hq-job-remediate.sh +0 -359
- package/assets/scaffold/core/scripts/hq-job-run.sh +0 -1025
- package/assets/scaffold/core/scripts/hq-pin.sh +0 -118
- package/assets/scaffold/core/scripts/jobs-schedule-parse.sh +0 -310
- package/assets/scaffold/core/scripts/jobs-validate.sh +0 -451
- package/assets/scaffold/core/scripts/knowledge-prefs.sh +0 -55
- package/assets/scaffold/core/scripts/lib/portable.sh +0 -211
- package/assets/scaffold/core/scripts/lib/secret-patterns.sh +0 -58
- package/assets/scaffold/core/scripts/lib/work-mesh-live-hook.sh +0 -378
- package/assets/scaffold/core/scripts/lib/work-mesh-live-rebind.sh +0 -141
- package/assets/scaffold/core/scripts/migrate-policy-triggers.sh +0 -373
- package/assets/scaffold/core/scripts/ontology-audience-grant.sh +0 -81
- package/assets/scaffold/core/scripts/ontology-brief.mjs +0 -93
- package/assets/scaffold/core/scripts/ontology-candidate.sh +0 -100
- package/assets/scaffold/core/scripts/ontology-garden.mjs +0 -238
- package/assets/scaffold/core/scripts/ontology-source-worklist.sh +0 -79
- package/assets/scaffold/core/scripts/outpost-jobs-reconcile.sh +0 -834
- package/assets/scaffold/core/scripts/policy-age-report.sh +0 -156
- package/assets/scaffold/core/scripts/policy-retire.sh +0 -199
- package/assets/scaffold/core/scripts/qmd-reindex-bg.sh +0 -40
- package/assets/scaffold/core/scripts/read-policy-frontmatter.sh +0 -32
- package/assets/scaffold/core/scripts/refresh-vault-access.sh +0 -188
- package/assets/scaffold/core/scripts/register-project.sh +0 -262
- package/assets/scaffold/core/scripts/resolve-company.sh +0 -199
- package/assets/scaffold/core/scripts/resume-thread-lock.sh +0 -285
- package/assets/scaffold/core/scripts/source-yaml-validate.sh +0 -36
- package/assets/scaffold/core/scripts/verify-story-deliverables.sh +0 -148
- package/assets/scaffold/core/scripts/work-mesh-live-bind-trusted.sh +0 -152
- package/assets/scaffold/core/scripts/work-mesh-live-rebind.sh +0 -59
- package/assets/scaffold/core/scripts/worktree-gc.sh +0 -362
- package/contracts/preflight/v1/fixtures.json +0 -87
- package/contracts/preflight/v1/schema.json +0 -58
- package/dist/command-catalog.generated.d.ts +0 -10735
- package/dist/command-catalog.generated.js +0 -13836
- package/dist/command-registration-plan.d.ts +0 -474
- package/dist/command-registration-plan.js +0 -136
- package/dist/commands/agent-enroll.d.ts +0 -146
- package/dist/commands/agent-enroll.js +0 -401
- package/dist/commands/agent-inbox.d.ts +0 -9
- package/dist/commands/agent-inbox.js +0 -102
- package/dist/commands/agent-kit.d.ts +0 -87
- package/dist/commands/agent-kit.js +0 -480
- package/dist/commands/agent-mcp.d.ts +0 -24
- package/dist/commands/agent-mcp.js +0 -127
- package/dist/commands/agent-probe.d.ts +0 -77
- package/dist/commands/agent-probe.js +0 -335
- package/dist/commands/agent.d.ts +0 -13
- package/dist/commands/agent.js +0 -40
- package/dist/commands/billing-sponsor.d.ts +0 -83
- package/dist/commands/billing-sponsor.js +0 -344
- package/dist/commands/bot-companies.d.ts +0 -40
- package/dist/commands/bot-companies.js +0 -64
- package/dist/commands/bot-continuity.d.ts +0 -28
- package/dist/commands/bot-continuity.js +0 -68
- package/dist/commands/bot-jobs.d.ts +0 -127
- package/dist/commands/bot-jobs.js +0 -454
- package/dist/commands/bot.d.ts +0 -278
- package/dist/commands/bot.js +0 -1982
- package/dist/commands/cloud-retire.d.ts +0 -51
- package/dist/commands/cloud-retire.js +0 -154
- package/dist/commands/company-rename-flag.d.ts +0 -4
- package/dist/commands/company-rename-flag.js +0 -7
- package/dist/commands/company-rename.d.ts +0 -4
- package/dist/commands/company-rename.js +0 -90
- package/dist/commands/core-audit-log-native.d.ts +0 -9
- package/dist/commands/core-audit-log-native.js +0 -257
- package/dist/commands/core-checkpoint-gate-setting.d.ts +0 -59
- package/dist/commands/core-checkpoint-gate-setting.js +0 -163
- package/dist/commands/core-checkpoint-stop-gate-native.d.ts +0 -34
- package/dist/commands/core-checkpoint-stop-gate-native.js +0 -725
- package/dist/commands/core-command-catalog.d.ts +0 -34
- package/dist/commands/core-command-catalog.js +0 -62
- package/dist/commands/core-company-index-scope-flag.d.ts +0 -3
- package/dist/commands/core-company-index-scope-flag.js +0 -6
- package/dist/commands/core-delegate-w1b.d.ts +0 -10
- package/dist/commands/core-delegate-w1b.js +0 -1219
- package/dist/commands/core-delegate.d.ts +0 -46
- package/dist/commands/core-delegate.js +0 -1040
- package/dist/commands/core-dm-bind-native.d.ts +0 -32
- package/dist/commands/core-dm-bind-native.js +0 -668
- package/dist/commands/core-eval-trigger-native.d.ts +0 -4
- package/dist/commands/core-eval-trigger-native.js +0 -12
- package/dist/commands/core-git-pack-extension-check-native.d.ts +0 -22
- package/dist/commands/core-git-pack-extension-check-native.js +0 -190
- package/dist/commands/core-handoff-fast.d.ts +0 -18
- package/dist/commands/core-handoff-fast.js +0 -104
- package/dist/commands/core-handoff-open-steps.d.ts +0 -21
- package/dist/commands/core-handoff-open-steps.js +0 -264
- package/dist/commands/core-handoff.d.ts +0 -24
- package/dist/commands/core-handoff.js +0 -1144
- package/dist/commands/core-hq-session-native.d.ts +0 -39
- package/dist/commands/core-hq-session-native.js +0 -579
- package/dist/commands/core-job-native-utils.d.ts +0 -6
- package/dist/commands/core-job-native-utils.js +0 -80
- package/dist/commands/core-job-native.d.ts +0 -5
- package/dist/commands/core-job-native.js +0 -16
- package/dist/commands/core-job-notify-native.d.ts +0 -36
- package/dist/commands/core-job-notify-native.js +0 -359
- package/dist/commands/core-job-probe-native.d.ts +0 -45
- package/dist/commands/core-job-probe-native.js +0 -564
- package/dist/commands/core-job-remediate-native.d.ts +0 -26
- package/dist/commands/core-job-remediate-native.js +0 -374
- package/dist/commands/core-job-remote-launcher.d.ts +0 -7
- package/dist/commands/core-job-remote-launcher.js +0 -51
- package/dist/commands/core-job-run-native.d.ts +0 -47
- package/dist/commands/core-job-run-native.js +0 -1215
- package/dist/commands/core-jobs-native.d.ts +0 -25
- package/dist/commands/core-jobs-native.js +0 -1339
- package/dist/commands/core-knowledge-prefs.d.ts +0 -11
- package/dist/commands/core-knowledge-prefs.js +0 -137
- package/dist/commands/core-migrate-policy-triggers-native.d.ts +0 -21
- package/dist/commands/core-migrate-policy-triggers-native.js +0 -378
- package/dist/commands/core-native-handoff-flag.d.ts +0 -4
- package/dist/commands/core-native-handoff-flag.js +0 -7
- package/dist/commands/core-native-hook-helper-commands.d.ts +0 -4
- package/dist/commands/core-native-hook-helper-commands.js +0 -56
- package/dist/commands/core-native-hook-helpers-flag.d.ts +0 -4
- package/dist/commands/core-native-hook-helpers-flag.js +0 -7
- package/dist/commands/core-native-jobs-flag.d.ts +0 -4
- package/dist/commands/core-native-jobs-flag.js +0 -7
- package/dist/commands/core-native-policy-flag.d.ts +0 -9
- package/dist/commands/core-native-policy-flag.js +0 -12
- package/dist/commands/core-native-session-flag.d.ts +0 -4
- package/dist/commands/core-native-session-flag.js +0 -7
- package/dist/commands/core-native-utilities-flag.d.ts +0 -4
- package/dist/commands/core-native-utilities-flag.js +0 -7
- package/dist/commands/core-native-utilities.d.ts +0 -29
- package/dist/commands/core-native-utilities.js +0 -54
- package/dist/commands/core-native-worker-skills-flag.d.ts +0 -4
- package/dist/commands/core-native-worker-skills-flag.js +0 -7
- package/dist/commands/core-ontology-native.d.ts +0 -17
- package/dist/commands/core-ontology-native.js +0 -916
- package/dist/commands/core-ontology.d.ts +0 -66
- package/dist/commands/core-ontology.js +0 -430
- package/dist/commands/core-pin-native.d.ts +0 -14
- package/dist/commands/core-pin-native.js +0 -236
- package/dist/commands/core-policy-frontmatter.d.ts +0 -8
- package/dist/commands/core-policy-frontmatter.js +0 -52
- package/dist/commands/core-policy.d.ts +0 -14
- package/dist/commands/core-policy.js +0 -1018
- package/dist/commands/core-refresh-vault-access-native.d.ts +0 -20
- package/dist/commands/core-refresh-vault-access-native.js +0 -229
- package/dist/commands/core-register-project-native.d.ts +0 -30
- package/dist/commands/core-register-project-native.js +0 -347
- package/dist/commands/core-resolve-company-command.d.ts +0 -4
- package/dist/commands/core-resolve-company-command.js +0 -42
- package/dist/commands/core-resolve-company-native.d.ts +0 -28
- package/dist/commands/core-resolve-company-native.js +0 -408
- package/dist/commands/core-work-mesh-bind-trusted-native.d.ts +0 -32
- package/dist/commands/core-work-mesh-bind-trusted-native.js +0 -190
- package/dist/commands/core-work-mesh-live-rebind-native.d.ts +0 -18
- package/dist/commands/core-work-mesh-live-rebind-native.js +0 -262
- package/dist/commands/core-worker-lint-native.d.ts +0 -4
- package/dist/commands/core-worker-lint-native.js +0 -160
- package/dist/commands/core-worker-share-native.d.ts +0 -4
- package/dist/commands/core-worker-share-native.js +0 -260
- package/dist/commands/core-worker-skills-command.d.ts +0 -8
- package/dist/commands/core-worker-skills-command.js +0 -33
- package/dist/commands/core-worker-skills-runtime.d.ts +0 -33
- package/dist/commands/core-worker-skills-runtime.js +0 -86
- package/dist/commands/daemon.d.ts +0 -63
- package/dist/commands/daemon.js +0 -877
- package/dist/commands/deploy-comments.d.ts +0 -3
- package/dist/commands/deploy-comments.js +0 -162
- package/dist/commands/lanes-accounts.d.ts +0 -28
- package/dist/commands/lanes-accounts.js +0 -595
- package/dist/commands/lanes-autopilot.d.ts +0 -11
- package/dist/commands/lanes-autopilot.js +0 -336
- package/dist/commands/lanes-checks.d.ts +0 -51
- package/dist/commands/lanes-checks.js +0 -941
- package/dist/commands/lanes-hold.d.ts +0 -43
- package/dist/commands/lanes-hold.js +0 -655
- package/dist/commands/lanes-kpis.d.ts +0 -11
- package/dist/commands/lanes-kpis.js +0 -34
- package/dist/commands/lanes-message.d.ts +0 -9
- package/dist/commands/lanes-message.js +0 -937
- package/dist/commands/lanes-move.d.ts +0 -12
- package/dist/commands/lanes-move.js +0 -397
- package/dist/commands/lanes-questions.d.ts +0 -36
- package/dist/commands/lanes-questions.js +0 -1005
- package/dist/commands/lanes-report.d.ts +0 -11
- package/dist/commands/lanes-report.js +0 -333
- package/dist/commands/lanes-resume.d.ts +0 -6
- package/dist/commands/lanes-resume.js +0 -564
- package/dist/commands/lanes-review.d.ts +0 -10
- package/dist/commands/lanes-review.js +0 -56
- package/dist/commands/lanes-shared.d.ts +0 -448
- package/dist/commands/lanes-shared.js +0 -170
- package/dist/commands/lanes-stories.d.ts +0 -15
- package/dist/commands/lanes-stories.js +0 -347
- package/dist/commands/lanes-watch.d.ts +0 -7
- package/dist/commands/lanes-watch.js +0 -216
- package/dist/commands/lanes.d.ts +0 -149
- package/dist/commands/lanes.js +0 -8973
- package/dist/commands/monitor.d.ts +0 -58
- package/dist/commands/monitor.js +0 -980
- package/dist/commands/onboard-bot-membership.d.ts +0 -32
- package/dist/commands/onboard-bot-membership.js +0 -40
- package/dist/commands/onboard-create-identity.d.ts +0 -26
- package/dist/commands/onboard-create-identity.js +0 -23
- package/dist/commands/outpost-pruner.d.ts +0 -3
- package/dist/commands/outpost-pruner.js +0 -125
- package/dist/commands/personal-connector-settings-flag.d.ts +0 -4
- package/dist/commands/personal-connector-settings-flag.js +0 -7
- package/dist/commands/personal-targeted-push-flag.d.ts +0 -4
- package/dist/commands/personal-targeted-push-flag.js +0 -7
- package/dist/commands/personal-targeted-push-paths.d.ts +0 -3
- package/dist/commands/personal-targeted-push-paths.js +0 -67
- package/dist/commands/report.d.ts +0 -19
- package/dist/commands/report.js +0 -537
- package/dist/commands/run-feature-telemetry.d.ts +0 -3
- package/dist/commands/run-feature-telemetry.js +0 -6
- package/dist/commands/staff/reset-test-account.d.ts +0 -110
- package/dist/commands/staff/reset-test-account.js +0 -268
- package/dist/commands/staff/test-account.d.ts +0 -51
- package/dist/commands/staff/test-account.js +0 -196
- package/dist/commands/vault-retention-flag.d.ts +0 -3
- package/dist/commands/vault-retention-flag.js +0 -9
- package/dist/commands/vault-retention.d.ts +0 -11
- package/dist/commands/vault-retention.js +0 -69
- package/dist/commands/version.d.ts +0 -10
- package/dist/commands/version.js +0 -11
- package/dist/fast-scaffold.d.ts +0 -86
- package/dist/fast-scaffold.js +0 -364
- package/dist/lanes-drain-hook.d.ts +0 -14
- package/dist/lanes-drain-hook.js +0 -203
- package/dist/lib/agent-kit/adopt-identity.d.ts +0 -27
- package/dist/lib/agent-kit/adopt-identity.js +0 -60
- package/dist/lib/agent-kit/attachment-download.d.ts +0 -24
- package/dist/lib/agent-kit/attachment-download.js +0 -47
- package/dist/lib/agent-kit/creds.d.ts +0 -106
- package/dist/lib/agent-kit/creds.js +0 -163
- package/dist/lib/agent-kit/fallback.d.ts +0 -78
- package/dist/lib/agent-kit/fallback.js +0 -210
- package/dist/lib/agent-kit/inbox-state.d.ts +0 -83
- package/dist/lib/agent-kit/inbox-state.js +0 -159
- package/dist/lib/agent-kit/kit-config.d.ts +0 -56
- package/dist/lib/agent-kit/kit-config.js +0 -65
- package/dist/lib/agent-kit/log.d.ts +0 -16
- package/dist/lib/agent-kit/log.js +0 -46
- package/dist/lib/agent-kit/mcp/attachments.d.ts +0 -126
- package/dist/lib/agent-kit/mcp/attachments.js +0 -222
- package/dist/lib/agent-kit/mcp/jsonrpc.d.ts +0 -75
- package/dist/lib/agent-kit/mcp/jsonrpc.js +0 -164
- package/dist/lib/agent-kit/mcp/tools.d.ts +0 -64
- package/dist/lib/agent-kit/mcp/tools.js +0 -397
- package/dist/lib/agent-kit/paths.d.ts +0 -65
- package/dist/lib/agent-kit/paths.js +0 -118
- package/dist/lib/agent-kit/private-file.d.ts +0 -29
- package/dist/lib/agent-kit/private-file.js +0 -91
- package/dist/lib/agent-kit/run/heartbeat.d.ts +0 -72
- package/dist/lib/agent-kit/run/heartbeat.js +0 -128
- package/dist/lib/agent-kit/run/inbox.d.ts +0 -76
- package/dist/lib/agent-kit/run/inbox.js +0 -205
- package/dist/lib/agent-kit/run/supervisor.d.ts +0 -35
- package/dist/lib/agent-kit/run/supervisor.js +0 -85
- package/dist/lib/agent-kit/run/sync.d.ts +0 -33
- package/dist/lib/agent-kit/run/sync.js +0 -58
- package/dist/lib/agent-kit/services.d.ts +0 -31
- package/dist/lib/agent-kit/services.js +0 -55
- package/dist/lib/agent-kit/skills.d.ts +0 -18
- package/dist/lib/agent-kit/skills.js +0 -151
- package/dist/lib/agent-kit/wake.d.ts +0 -83
- package/dist/lib/agent-kit/wake.js +0 -243
- package/dist/lib/agents/model-catalog.d.ts +0 -62
- package/dist/lib/agents/model-catalog.js +0 -275
- package/dist/lib/auth-login-provider-state.d.ts +0 -8
- package/dist/lib/auth-login-provider-state.js +0 -63
- package/dist/lib/aws-sdk-node-warning-output.d.ts +0 -12
- package/dist/lib/aws-sdk-node-warning-output.js +0 -22
- package/dist/lib/billing/free-month.d.ts +0 -18
- package/dist/lib/billing/free-month.js +0 -31
- package/dist/lib/billing/plan-limit-refusals.d.ts +0 -69
- package/dist/lib/billing/plan-limit-refusals.js +0 -187
- package/dist/lib/billing/plan-limit-upgrade-url.d.ts +0 -11
- package/dist/lib/billing/plan-limit-upgrade-url.js +0 -66
- package/dist/lib/billing/plan-lock.d.ts +0 -143
- package/dist/lib/billing/plan-lock.js +0 -439
- package/dist/lib/bot/api.d.ts +0 -349
- package/dist/lib/bot/api.js +0 -316
- package/dist/lib/bot/attachments.d.ts +0 -45
- package/dist/lib/bot/attachments.js +0 -89
- package/dist/lib/bot/cli-update.d.ts +0 -138
- package/dist/lib/bot/cli-update.js +0 -278
- package/dist/lib/bot/company-bind.d.ts +0 -27
- package/dist/lib/bot/company-bind.js +0 -62
- package/dist/lib/bot/config.d.ts +0 -153
- package/dist/lib/bot/config.js +0 -233
- package/dist/lib/bot/continuity-download.d.ts +0 -28
- package/dist/lib/bot/continuity-download.js +0 -75
- package/dist/lib/bot/continuity-install.d.ts +0 -14
- package/dist/lib/bot/continuity-install.js +0 -101
- package/dist/lib/bot/continuity.d.ts +0 -67
- package/dist/lib/bot/continuity.js +0 -301
- package/dist/lib/bot/creds.d.ts +0 -24
- package/dist/lib/bot/creds.js +0 -51
- package/dist/lib/bot/daemon.d.ts +0 -173
- package/dist/lib/bot/daemon.js +0 -552
- package/dist/lib/bot/inbox-poll-backoff-flag.d.ts +0 -24
- package/dist/lib/bot/inbox-poll-backoff-flag.js +0 -135
- package/dist/lib/bot/inbox-state.d.ts +0 -18
- package/dist/lib/bot/inbox-state.js +0 -51
- package/dist/lib/bot/index.d.ts +0 -23
- package/dist/lib/bot/index.js +0 -23
- package/dist/lib/bot/inflight.d.ts +0 -119
- package/dist/lib/bot/inflight.js +0 -83
- package/dist/lib/bot/job-completions.d.ts +0 -89
- package/dist/lib/bot/job-completions.js +0 -132
- package/dist/lib/bot/job-run.d.ts +0 -109
- package/dist/lib/bot/job-run.js +0 -246
- package/dist/lib/bot/local-config.d.ts +0 -61
- package/dist/lib/bot/local-config.js +0 -145
- package/dist/lib/bot/local-jobs.d.ts +0 -89
- package/dist/lib/bot/local-jobs.js +0 -459
- package/dist/lib/bot/local-name.d.ts +0 -54
- package/dist/lib/bot/local-name.js +0 -114
- package/dist/lib/bot/log.d.ts +0 -13
- package/dist/lib/bot/log.js +0 -59
- package/dist/lib/bot/owner-context.d.ts +0 -79
- package/dist/lib/bot/owner-context.js +0 -175
- package/dist/lib/bot/paths.d.ts +0 -76
- package/dist/lib/bot/paths.js +0 -131
- package/dist/lib/bot/progress.d.ts +0 -132
- package/dist/lib/bot/progress.js +0 -289
- package/dist/lib/bot/promote.d.ts +0 -16
- package/dist/lib/bot/promote.js +0 -106
- package/dist/lib/bot/promotion-hold.d.ts +0 -24
- package/dist/lib/bot/promotion-hold.js +0 -103
- package/dist/lib/bot/promotion-receipt.d.ts +0 -9
- package/dist/lib/bot/promotion-receipt.js +0 -56
- package/dist/lib/bot/promotion-upload.d.ts +0 -16
- package/dist/lib/bot/promotion-upload.js +0 -80
- package/dist/lib/bot/prompt.d.ts +0 -136
- package/dist/lib/bot/prompt.js +0 -433
- package/dist/lib/bot/room-policy.d.ts +0 -63
- package/dist/lib/bot/room-policy.js +0 -91
- package/dist/lib/bot/run.d.ts +0 -217
- package/dist/lib/bot/run.js +0 -1869
- package/dist/lib/bot/runnable.d.ts +0 -51
- package/dist/lib/bot/runnable.js +0 -65
- package/dist/lib/bot/runtime/claude.d.ts +0 -50
- package/dist/lib/bot/runtime/claude.js +0 -170
- package/dist/lib/bot/runtime/codex.d.ts +0 -28
- package/dist/lib/bot/runtime/codex.js +0 -153
- package/dist/lib/bot/runtime/grok-acp.d.ts +0 -40
- package/dist/lib/bot/runtime/grok-acp.js +0 -265
- package/dist/lib/bot/runtime/grok.d.ts +0 -41
- package/dist/lib/bot/runtime/grok.js +0 -169
- package/dist/lib/bot/runtime/index.d.ts +0 -36
- package/dist/lib/bot/runtime/index.js +0 -417
- package/dist/lib/bot/runtime/messages-stream.d.ts +0 -56
- package/dist/lib/bot/runtime/messages-stream.js +0 -194
- package/dist/lib/bot/runtime/sanitize.d.ts +0 -18
- package/dist/lib/bot/runtime/sanitize.js +0 -28
- package/dist/lib/bot/runtime/types.d.ts +0 -159
- package/dist/lib/bot/runtime/types.js +0 -51
- package/dist/lib/bot/runtime/windows.d.ts +0 -10
- package/dist/lib/bot/runtime/windows.js +0 -53
- package/dist/lib/bot/runtime-sign-in.d.ts +0 -24
- package/dist/lib/bot/runtime-sign-in.js +0 -31
- package/dist/lib/bot/scaffold.d.ts +0 -38
- package/dist/lib/bot/scaffold.js +0 -94
- package/dist/lib/bot/self-heal.d.ts +0 -52
- package/dist/lib/bot/self-heal.js +0 -79
- package/dist/lib/bot/self-process.d.ts +0 -19
- package/dist/lib/bot/self-process.js +0 -35
- package/dist/lib/bot/session.d.ts +0 -19
- package/dist/lib/bot/session.js +0 -39
- package/dist/lib/bot/setup-explain.d.ts +0 -64
- package/dist/lib/bot/setup-explain.js +0 -141
- package/dist/lib/bot/split.d.ts +0 -32
- package/dist/lib/bot/split.js +0 -241
- package/dist/lib/bot/status.d.ts +0 -57
- package/dist/lib/bot/status.js +0 -66
- package/dist/lib/bot/worker-source.d.ts +0 -66
- package/dist/lib/bot/worker-source.js +0 -283
- package/dist/lib/checkpoint-ontology/aliases.d.ts +0 -17
- package/dist/lib/checkpoint-ontology/aliases.js +0 -44
- package/dist/lib/checkpoint-ontology/apply.d.ts +0 -110
- package/dist/lib/checkpoint-ontology/apply.js +0 -777
- package/dist/lib/checkpoint-ontology/company-brief.d.ts +0 -18
- package/dist/lib/checkpoint-ontology/company-brief.js +0 -337
- package/dist/lib/checkpoint-ontology/company.d.ts +0 -44
- package/dist/lib/checkpoint-ontology/company.js +0 -118
- package/dist/lib/checkpoint-ontology/drop-aliases.d.ts +0 -41
- package/dist/lib/checkpoint-ontology/drop-aliases.js +0 -76
- package/dist/lib/checkpoint-ontology/entity-file.d.ts +0 -109
- package/dist/lib/checkpoint-ontology/entity-file.js +0 -371
- package/dist/lib/checkpoint-ontology/identity.d.ts +0 -38
- package/dist/lib/checkpoint-ontology/identity.js +0 -95
- package/dist/lib/checkpoint-ontology/merge-copies.d.ts +0 -199
- package/dist/lib/checkpoint-ontology/merge-copies.js +0 -1086
- package/dist/lib/checkpoint-ontology/multi-writer.d.ts +0 -101
- package/dist/lib/checkpoint-ontology/multi-writer.js +0 -394
- package/dist/lib/checkpoint-ontology/plan.d.ts +0 -193
- package/dist/lib/checkpoint-ontology/plan.js +0 -504
- package/dist/lib/checkpoint-ontology/queued-touches.d.ts +0 -29
- package/dist/lib/checkpoint-ontology/queued-touches.js +0 -193
- package/dist/lib/checkpoint-ontology/sync-client.d.ts +0 -38
- package/dist/lib/checkpoint-ontology/sync-client.js +0 -84
- package/dist/lib/checkpoint-ontology/tree.d.ts +0 -55
- package/dist/lib/checkpoint-ontology/tree.js +0 -198
- package/dist/lib/company-errors-sdk-warning-flag.d.ts +0 -5
- package/dist/lib/company-errors-sdk-warning-flag.js +0 -8
- package/dist/lib/core-utils/hook-timeout-debug-context-flag.d.ts +0 -20
- package/dist/lib/core-utils/hook-timeout-debug-context-flag.js +0 -81
- package/dist/lib/core-utils/jq-json-serializer.d.ts +0 -5
- package/dist/lib/core-utils/jq-json-serializer.js +0 -10
- package/dist/lib/core-utils/secret-patterns.d.ts +0 -43
- package/dist/lib/core-utils/secret-patterns.js +0 -34
- package/dist/lib/core-utils/sentry-report.d.ts +0 -114
- package/dist/lib/core-utils/sentry-report.js +0 -1034
- package/dist/lib/core-utils/timeout-guard-native.d.ts +0 -7
- package/dist/lib/core-utils/timeout-guard-native.js +0 -40
- package/dist/lib/core-utils/worktree-resume.d.ts +0 -20
- package/dist/lib/core-utils/worktree-resume.js +0 -1198
- package/dist/lib/daemon/catalog.d.ts +0 -134
- package/dist/lib/daemon/catalog.js +0 -358
- package/dist/lib/daemon/config.d.ts +0 -35
- package/dist/lib/daemon/config.js +0 -108
- package/dist/lib/daemon/flag.d.ts +0 -25
- package/dist/lib/daemon/flag.js +0 -59
- package/dist/lib/daemon/handoff.d.ts +0 -56
- package/dist/lib/daemon/handoff.js +0 -161
- package/dist/lib/daemon/hq-cloud.d.ts +0 -79
- package/dist/lib/daemon/hq-cloud.js +0 -183
- package/dist/lib/daemon/install.d.ts +0 -85
- package/dist/lib/daemon/install.js +0 -320
- package/dist/lib/daemon/legacy-sync-env.d.ts +0 -10
- package/dist/lib/daemon/legacy-sync-env.js +0 -58
- package/dist/lib/daemon/legacy.d.ts +0 -45
- package/dist/lib/daemon/legacy.js +0 -133
- package/dist/lib/daemon/lock.d.ts +0 -47
- package/dist/lib/daemon/lock.js +0 -138
- package/dist/lib/daemon/machine-type.d.ts +0 -50
- package/dist/lib/daemon/machine-type.js +0 -159
- package/dist/lib/daemon/migrate.d.ts +0 -77
- package/dist/lib/daemon/migrate.js +0 -265
- package/dist/lib/daemon/paths.d.ts +0 -24
- package/dist/lib/daemon/paths.js +0 -43
- package/dist/lib/daemon/protocol-tail.d.ts +0 -33
- package/dist/lib/daemon/protocol-tail.js +0 -131
- package/dist/lib/daemon/remote-control.d.ts +0 -74
- package/dist/lib/daemon/remote-control.js +0 -153
- package/dist/lib/daemon/requests.d.ts +0 -28
- package/dist/lib/daemon/requests.js +0 -65
- package/dist/lib/daemon/run.d.ts +0 -79
- package/dist/lib/daemon/run.js +0 -755
- package/dist/lib/daemon/succession.d.ts +0 -118
- package/dist/lib/daemon/succession.js +0 -263
- package/dist/lib/daemon/supervisor.d.ts +0 -132
- package/dist/lib/daemon/supervisor.js +0 -836
- package/dist/lib/daemon/sync-runner.d.ts +0 -58
- package/dist/lib/daemon/sync-runner.js +0 -277
- package/dist/lib/daemon/tools.d.ts +0 -52
- package/dist/lib/daemon/tools.js +0 -95
- package/dist/lib/daemon/updater.d.ts +0 -57
- package/dist/lib/daemon/updater.js +0 -163
- package/dist/lib/deploy-api.d.ts +0 -5
- package/dist/lib/deploy-api.js +0 -21
- package/dist/lib/deploy-apps.d.ts +0 -13
- package/dist/lib/deploy-apps.js +0 -29
- package/dist/lib/doctor/__testing__/run-doctor.d.ts +0 -8
- package/dist/lib/doctor/__testing__/run-doctor.js +0 -52
- package/dist/lib/doctor/checks/bots.d.ts +0 -13
- package/dist/lib/doctor/checks/bots.js +0 -189
- package/dist/lib/doctor/checks/scaffold-cli-floor.d.ts +0 -6
- package/dist/lib/doctor/checks/scaffold-cli-floor.js +0 -73
- package/dist/lib/doctor/checks/sync-runtime.d.ts +0 -11
- package/dist/lib/doctor/checks/sync-runtime.js +0 -216
- package/dist/lib/doctor/client-health-flag-token.d.ts +0 -15
- package/dist/lib/doctor/client-health-flag-token.js +0 -66
- package/dist/lib/doctor/client-health-reason-codes-flag.d.ts +0 -27
- package/dist/lib/doctor/client-health-reason-codes-flag.js +0 -106
- package/dist/lib/doctor/fix/json-output.d.ts +0 -28
- package/dist/lib/doctor/fix/json-output.js +0 -33
- package/dist/lib/doctor/fix/refresh-sync-outcome.d.ts +0 -12
- package/dist/lib/doctor/fix/refresh-sync-outcome.js +0 -25
- package/dist/lib/doctor/shared.d.ts +0 -8
- package/dist/lib/doctor/shared.js +0 -38
- package/dist/lib/doctor/stray-gate-entries.d.ts +0 -35
- package/dist/lib/doctor/stray-gate-entries.js +0 -83
- package/dist/lib/first-sync-next-step.d.ts +0 -37
- package/dist/lib/first-sync-next-step.js +0 -189
- package/dist/lib/flag-registry-endpoint.d.ts +0 -5
- package/dist/lib/flag-registry-endpoint.js +0 -9
- package/dist/lib/flag-registry-worker-source.generated.d.ts +0 -2
- package/dist/lib/flag-registry-worker-source.generated.js +0 -3
- package/dist/lib/flag-snapshot-file.d.ts +0 -20
- package/dist/lib/flag-snapshot-file.js +0 -91
- package/dist/lib/heartbeat-identity.d.ts +0 -30
- package/dist/lib/heartbeat-identity.js +0 -76
- package/dist/lib/lanes/account-home.d.ts +0 -8
- package/dist/lib/lanes/account-home.js +0 -10
- package/dist/lib/lanes/accounts.d.ts +0 -117
- package/dist/lib/lanes/accounts.js +0 -366
- package/dist/lib/lanes/admission-host.d.ts +0 -22
- package/dist/lib/lanes/admission-host.js +0 -37
- package/dist/lib/lanes/admission.d.ts +0 -26
- package/dist/lib/lanes/admission.js +0 -210
- package/dist/lib/lanes/approval-gate.d.ts +0 -8
- package/dist/lib/lanes/approval-gate.js +0 -90
- package/dist/lib/lanes/autopilot-metrics.d.ts +0 -99
- package/dist/lib/lanes/autopilot-metrics.js +0 -301
- package/dist/lib/lanes/autopilot-registry.d.ts +0 -62
- package/dist/lib/lanes/autopilot-registry.js +0 -192
- package/dist/lib/lanes/autopilot.d.ts +0 -120
- package/dist/lib/lanes/autopilot.js +0 -1061
- package/dist/lib/lanes/blocker-freshness.d.ts +0 -31
- package/dist/lib/lanes/blocker-freshness.js +0 -168
- package/dist/lib/lanes/checked-company-path.d.ts +0 -3
- package/dist/lib/lanes/checked-company-path.js +0 -39
- package/dist/lib/lanes/claude-balance.d.ts +0 -97
- package/dist/lib/lanes/claude-balance.js +0 -319
- package/dist/lib/lanes/compaction.d.ts +0 -110
- package/dist/lib/lanes/compaction.js +0 -293
- package/dist/lib/lanes/config.d.ts +0 -94
- package/dist/lib/lanes/config.js +0 -606
- package/dist/lib/lanes/constants.d.ts +0 -3
- package/dist/lib/lanes/constants.js +0 -3
- package/dist/lib/lanes/delivery-core.d.ts +0 -15
- package/dist/lib/lanes/delivery-core.js +0 -21
- package/dist/lib/lanes/delivery.d.ts +0 -180
- package/dist/lib/lanes/delivery.js +0 -443
- package/dist/lib/lanes/disk-guard.d.ts +0 -66
- package/dist/lib/lanes/disk-guard.js +0 -172
- package/dist/lib/lanes/dropbox.d.ts +0 -129
- package/dist/lib/lanes/dropbox.js +0 -601
- package/dist/lib/lanes/effort.d.ts +0 -51
- package/dist/lib/lanes/effort.js +0 -113
- package/dist/lib/lanes/envelope-repair-dispatch.d.ts +0 -26
- package/dist/lib/lanes/envelope-repair-dispatch.js +0 -74
- package/dist/lib/lanes/errors.d.ts +0 -39
- package/dist/lib/lanes/errors.js +0 -72
- package/dist/lib/lanes/flag-keys.d.ts +0 -15
- package/dist/lib/lanes/flag-keys.js +0 -15
- package/dist/lib/lanes/grants.d.ts +0 -30
- package/dist/lib/lanes/grants.js +0 -171
- package/dist/lib/lanes/hire-grant-dispatch.d.ts +0 -29
- package/dist/lib/lanes/hire-grant-dispatch.js +0 -315
- package/dist/lib/lanes/hooks-install.d.ts +0 -82
- package/dist/lib/lanes/hooks-install.js +0 -479
- package/dist/lib/lanes/host-capacity.d.ts +0 -69
- package/dist/lib/lanes/host-capacity.js +0 -254
- package/dist/lib/lanes/hq-root.d.ts +0 -19
- package/dist/lib/lanes/hq-root.js +0 -28
- package/dist/lib/lanes/index.d.ts +0 -76
- package/dist/lib/lanes/index.js +0 -42
- package/dist/lib/lanes/keep-alive.d.ts +0 -68
- package/dist/lib/lanes/keep-alive.js +0 -343
- package/dist/lib/lanes/kr-freshness.d.ts +0 -76
- package/dist/lib/lanes/kr-freshness.js +0 -413
- package/dist/lib/lanes/lane-company.d.ts +0 -10
- package/dist/lib/lanes/lane-company.js +0 -41
- package/dist/lib/lanes/liveness.d.ts +0 -108
- package/dist/lib/lanes/liveness.js +0 -396
- package/dist/lib/lanes/machine-identity.d.ts +0 -34
- package/dist/lib/lanes/machine-identity.js +0 -92
- package/dist/lib/lanes/manager-status-gate.d.ts +0 -17
- package/dist/lib/lanes/manager-status-gate.js +0 -133
- package/dist/lib/lanes/merge-command.d.ts +0 -15
- package/dist/lib/lanes/merge-command.js +0 -629
- package/dist/lib/lanes/mesh-events.d.ts +0 -127
- package/dist/lib/lanes/mesh-events.js +0 -564
- package/dist/lib/lanes/message-replay.d.ts +0 -21
- package/dist/lib/lanes/message-replay.js +0 -122
- package/dist/lib/lanes/models.d.ts +0 -86
- package/dist/lib/lanes/models.js +0 -234
- package/dist/lib/lanes/monitor.d.ts +0 -48
- package/dist/lib/lanes/monitor.js +0 -428
- package/dist/lib/lanes/move-account.d.ts +0 -56
- package/dist/lib/lanes/move-account.js +0 -193
- package/dist/lib/lanes/orphans.d.ts +0 -25
- package/dist/lib/lanes/orphans.js +0 -102
- package/dist/lib/lanes/outpost-dispatch.d.ts +0 -147
- package/dist/lib/lanes/outpost-dispatch.js +0 -271
- package/dist/lib/lanes/outpost-hire-cache.d.ts +0 -22
- package/dist/lib/lanes/outpost-hire-cache.js +0 -153
- package/dist/lib/lanes/outpost-identity.d.ts +0 -33
- package/dist/lib/lanes/outpost-identity.js +0 -59
- package/dist/lib/lanes/outpost-profile-repin.d.ts +0 -17
- package/dist/lib/lanes/outpost-profile-repin.js +0 -84
- package/dist/lib/lanes/outpost-pruner-install.d.ts +0 -37
- package/dist/lib/lanes/outpost-pruner-install.js +0 -238
- package/dist/lib/lanes/outpost-registry-worker-approval.d.ts +0 -18
- package/dist/lib/lanes/outpost-registry-worker-approval.js +0 -109
- package/dist/lib/lanes/outpost-snapshot-memo.d.ts +0 -6
- package/dist/lib/lanes/outpost-snapshot-memo.js +0 -14
- package/dist/lib/lanes/outpost-worktree-pruner-flag.d.ts +0 -19
- package/dist/lib/lanes/outpost-worktree-pruner-flag.js +0 -86
- package/dist/lib/lanes/outpost-worktree-pruner.d.ts +0 -62
- package/dist/lib/lanes/outpost-worktree-pruner.js +0 -1201
- package/dist/lib/lanes/profile.d.ts +0 -69
- package/dist/lib/lanes/profile.js +0 -552
- package/dist/lib/lanes/provider-rejection.d.ts +0 -86
- package/dist/lib/lanes/provider-rejection.js +0 -286
- package/dist/lib/lanes/questions.d.ts +0 -90
- package/dist/lib/lanes/questions.js +0 -384
- package/dist/lib/lanes/quota.d.ts +0 -134
- package/dist/lib/lanes/quota.js +0 -471
- package/dist/lib/lanes/reconcile-install.d.ts +0 -90
- package/dist/lib/lanes/reconcile-install.js +0 -257
- package/dist/lib/lanes/reconcile.d.ts +0 -161
- package/dist/lib/lanes/reconcile.js +0 -3324
- package/dist/lib/lanes/registry-flag.d.ts +0 -35
- package/dist/lib/lanes/registry-flag.js +0 -164
- package/dist/lib/lanes/registry-persona.d.ts +0 -20
- package/dist/lib/lanes/registry-persona.js +0 -329
- package/dist/lib/lanes/registry.d.ts +0 -122
- package/dist/lib/lanes/registry.js +0 -570
- package/dist/lib/lanes/reviews.d.ts +0 -38
- package/dist/lib/lanes/reviews.js +0 -395
- package/dist/lib/lanes/runaway-tool-guard.d.ts +0 -38
- package/dist/lib/lanes/runaway-tool-guard.js +0 -284
- package/dist/lib/lanes/session-relink.d.ts +0 -25
- package/dist/lib/lanes/session-relink.js +0 -216
- package/dist/lib/lanes/spawn.d.ts +0 -355
- package/dist/lib/lanes/spawn.js +0 -2668
- package/dist/lib/lanes/ssm-command-context.d.ts +0 -12
- package/dist/lib/lanes/ssm-command-context.js +0 -52
- package/dist/lib/lanes/store.d.ts +0 -91
- package/dist/lib/lanes/store.js +0 -1822
- package/dist/lib/lanes/stories.d.ts +0 -23
- package/dist/lib/lanes/stories.js +0 -92
- package/dist/lib/lanes/story-ledger.d.ts +0 -80
- package/dist/lib/lanes/story-ledger.js +0 -815
- package/dist/lib/lanes/story-switch.d.ts +0 -21
- package/dist/lib/lanes/story-switch.js +0 -75
- package/dist/lib/lanes/text-scan.d.ts +0 -11
- package/dist/lib/lanes/text-scan.js +0 -103
- package/dist/lib/lanes/throttle.d.ts +0 -116
- package/dist/lib/lanes/throttle.js +0 -437
- package/dist/lib/lanes/timestamp.d.ts +0 -3
- package/dist/lib/lanes/timestamp.js +0 -26
- package/dist/lib/lanes/tracker-checks.d.ts +0 -77
- package/dist/lib/lanes/tracker-checks.js +0 -134
- package/dist/lib/lanes/tracker-report-state.d.ts +0 -10
- package/dist/lib/lanes/tracker-report-state.js +0 -124
- package/dist/lib/lanes/tracker-report.d.ts +0 -203
- package/dist/lib/lanes/tracker-report.js +0 -522
- package/dist/lib/lanes/tracker-store.d.ts +0 -18
- package/dist/lib/lanes/tracker-store.js +0 -106
- package/dist/lib/lanes/types.d.ts +0 -1030
- package/dist/lib/lanes/types.js +0 -418
- package/dist/lib/lanes/wait.d.ts +0 -39
- package/dist/lib/lanes/wait.js +0 -159
- package/dist/lib/lanes/watch.d.ts +0 -39
- package/dist/lib/lanes/watch.js +0 -249
- package/dist/lib/lanes/watcher-main.d.ts +0 -11
- package/dist/lib/lanes/watcher-main.js +0 -108
- package/dist/lib/lanes/watcher.d.ts +0 -287
- package/dist/lib/lanes/watcher.js +0 -1972
- package/dist/lib/mesh/denial-codes.d.ts +0 -5
- package/dist/lib/mesh/denial-codes.js +0 -14
- package/dist/lib/mesh/live/daemon/config.d.ts +0 -36
- package/dist/lib/mesh/live/daemon/config.js +0 -120
- package/dist/lib/mesh/live/daemon/legacy-listen.d.ts +0 -43
- package/dist/lib/mesh/live/daemon/legacy-listen.js +0 -89
- package/dist/lib/mesh/live/daemon/live-cache.d.ts +0 -26
- package/dist/lib/mesh/live/daemon/live-cache.js +0 -116
- package/dist/lib/mesh/live/daemon/mqtt-events.d.ts +0 -7
- package/dist/lib/mesh/live/daemon/mqtt-events.js +0 -2
- package/dist/lib/mesh/live/daemon/mqtt-events.test-d.d.ts +0 -2
- package/dist/lib/mesh/live/daemon/mqtt-events.test-d.js +0 -10
- package/dist/lib/mesh/live/daemon/version-drift.d.ts +0 -5
- package/dist/lib/mesh/live/daemon/version-drift.js +0 -47
- package/dist/lib/mesh/live/daemon/work-subscribe.d.ts +0 -32
- package/dist/lib/mesh/live/daemon/work-subscribe.js +0 -262
- package/dist/lib/mesh/live/report-summary.d.ts +0 -45
- package/dist/lib/mesh/live/report-summary.js +0 -234
- package/dist/lib/mesh/live/session-seq.d.ts +0 -4
- package/dist/lib/mesh/live/session-seq.js +0 -33
- package/dist/lib/mesh/project-board.d.ts +0 -65
- package/dist/lib/mesh/project-board.js +0 -181
- package/dist/lib/mesh/story-status.d.ts +0 -22
- package/dist/lib/mesh/story-status.js +0 -49
- package/dist/lib/monitor.d.ts +0 -149
- package/dist/lib/monitor.js +0 -519
- package/dist/lib/node-binary.d.ts +0 -50
- package/dist/lib/node-binary.js +0 -133
- package/dist/lib/notify-recipient.d.ts +0 -7
- package/dist/lib/notify-recipient.js +0 -11
- package/dist/lib/onboarding/checkpoint.d.ts +0 -13
- package/dist/lib/onboarding/checkpoint.js +0 -44
- package/dist/lib/onboarding/cli/onboard.d.ts +0 -53
- package/dist/lib/onboarding/cli/onboard.js +0 -135
- package/dist/lib/onboarding/cli/prompts.d.ts +0 -28
- package/dist/lib/onboarding/cli/prompts.js +0 -83
- package/dist/lib/onboarding/errors.d.ts +0 -34
- package/dist/lib/onboarding/errors.js +0 -59
- package/dist/lib/onboarding/index.d.ts +0 -13
- package/dist/lib/onboarding/index.js +0 -13
- package/dist/lib/onboarding/orchestrator.d.ts +0 -47
- package/dist/lib/onboarding/orchestrator.js +0 -569
- package/dist/lib/onboarding/types.d.ts +0 -79
- package/dist/lib/onboarding/types.js +0 -8
- package/dist/lib/policy-validator.d.ts +0 -7
- package/dist/lib/policy-validator.js +0 -187
- package/dist/lib/process-flag-company-context.d.ts +0 -8
- package/dist/lib/process-flag-company-context.js +0 -67
- package/dist/lib/report-publish.d.ts +0 -175
- package/dist/lib/report-publish.js +0 -421
- package/dist/lib/report-run.d.ts +0 -62
- package/dist/lib/report-run.js +0 -123
- package/dist/lib/report-snapshot.d.ts +0 -12
- package/dist/lib/report-snapshot.js +0 -135
- package/dist/lib/report-templates.d.ts +0 -9
- package/dist/lib/report-templates.js +0 -21
- package/dist/lib/scaffold-cli-floor.d.ts +0 -8
- package/dist/lib/scaffold-cli-floor.js +0 -50
- package/dist/lib/search-index/collection-path-repair-flag.d.ts +0 -4
- package/dist/lib/search-index/collection-path-repair-flag.js +0 -7
- package/dist/lib/search-index/embed-lock.d.ts +0 -34
- package/dist/lib/search-index/embed-lock.js +0 -295
- package/dist/lib/search-index/load-gate.d.ts +0 -57
- package/dist/lib/search-index/load-gate.js +0 -270
- package/dist/lib/search-index/max-doc-bytes.d.ts +0 -219
- package/dist/lib/search-index/max-doc-bytes.js +0 -463
- package/dist/lib/search-index/qmd-exit-diagnostics.d.ts +0 -5
- package/dist/lib/search-index/qmd-exit-diagnostics.js +0 -40
- package/dist/lib/search-index/reindex-single-flight-flag.d.ts +0 -5
- package/dist/lib/search-index/reindex-single-flight-flag.js +0 -8
- package/dist/lib/service-manager/index.d.ts +0 -42
- package/dist/lib/service-manager/index.js +0 -105
- package/dist/lib/service-manager/launchd.d.ts +0 -81
- package/dist/lib/service-manager/launchd.js +0 -212
- package/dist/lib/service-manager/systemd.d.ts +0 -19
- package/dist/lib/service-manager/systemd.js +0 -72
- package/dist/lib/service-manager/types.d.ts +0 -34
- package/dist/lib/service-manager/types.js +0 -26
- package/dist/lib/test-utils/isolated-flag-company-context.d.ts +0 -3
- package/dist/lib/test-utils/isolated-flag-company-context.js +0 -18
- package/dist/lib/work-context/bind-best.d.ts +0 -66
- package/dist/lib/work-context/bind-best.js +0 -344
- package/dist/lib/work-context/bind-calling-session.d.ts +0 -26
- package/dist/lib/work-context/bind-calling-session.js +0 -63
- package/dist/lib/work-context/company-rebind.d.ts +0 -23
- package/dist/lib/work-context/company-rebind.js +0 -59
- package/dist/lib/work-context/default-company.d.ts +0 -43
- package/dist/lib/work-context/default-company.js +0 -83
- package/dist/lib/work-context/outbox-quarantine-status-flag.d.ts +0 -4
- package/dist/lib/work-context/outbox-quarantine-status-flag.js +0 -7
- package/dist/lib/work-context/prd-sync.d.ts +0 -56
- package/dist/lib/work-context/prd-sync.js +0 -197
- package/dist/lib/work-context/preflight-contract.d.ts +0 -28
- package/dist/lib/work-context/preflight-contract.js +0 -85
- package/dist/lib/work-context/prompt-rebind.d.ts +0 -25
- package/dist/lib/work-context/prompt-rebind.js +0 -85
- package/dist/lib/work-context/windows-acl.d.ts +0 -123
- package/dist/lib/work-context/windows-acl.js +0 -425
- package/dist/lib/workers-registry/read.d.ts +0 -15
- package/dist/lib/workers-registry/read.js +0 -17
- package/dist/native-fast-route.d.ts +0 -7
- package/dist/native-fast-route.js +0 -45
- package/dist/node-network-compat-core.d.ts +0 -12
- package/dist/node-network-compat-core.js +0 -41
- package/dist/node-network-compat-fast.d.ts +0 -7
- package/dist/node-network-compat-fast.js +0 -23
- package/dist/secrets-env-fast-path.d.ts +0 -5
- package/dist/secrets-env-fast-path.js +0 -16
- package/dist/secrets-env-fast-route.d.ts +0 -18
- package/dist/secrets-env-fast-route.js +0 -54
- package/dist/utils/checkpoint-stamp-write-error.d.ts +0 -28
- package/dist/utils/checkpoint-stamp-write-error.js +0 -99
- package/dist/utils/cli-network-lifecycle.d.ts +0 -4
- package/dist/utils/cli-network-lifecycle.js +0 -11
- package/dist/utils/cognito-refresh-sentry.d.ts +0 -3
- package/dist/utils/cognito-refresh-sentry.js +0 -49
- package/dist/utils/console-origin.d.ts +0 -9
- package/dist/utils/console-origin.js +0 -28
- package/dist/utils/core-eval-trigger.d.ts +0 -4
- package/dist/utils/core-eval-trigger.js +0 -88
- package/dist/utils/exclusive-lock.d.ts +0 -32
- package/dist/utils/exclusive-lock.js +0 -75
- package/dist/utils/fast-stream-errors.d.ts +0 -12
- package/dist/utils/fast-stream-errors.js +0 -18
- package/dist/utils/files-browse-acl.d.ts +0 -5
- package/dist/utils/files-browse-acl.js +0 -11
- package/dist/utils/hq-core-yaml.d.ts +0 -10
- package/dist/utils/hq-core-yaml.js +0 -40
- package/dist/utils/hq-root-resolver.d.ts +0 -13
- package/dist/utils/hq-root-resolver.js +0 -103
- package/dist/utils/redact-url.d.ts +0 -14
- package/dist/utils/redact-url.js +0 -218
- package/dist/utils/scaffold-fast-import-guard.d.ts +0 -2
- package/dist/utils/scaffold-fast-import-guard.js +0 -40
- package/dist/utils/scaffold-packlist-guard.d.ts +0 -7
- package/dist/utils/scaffold-packlist-guard.js +0 -23
- package/dist/utils/scaffold-sibling-references.d.ts +0 -22
- package/dist/utils/scaffold-sibling-references.js +0 -156
- package/dist/utils/secret-load-availability.d.ts +0 -8
- package/dist/utils/secret-load-availability.js +0 -54
- package/dist/utils/staged-install.d.ts +0 -34
- package/dist/utils/staged-install.js +0 -346
- package/dist/utils/staged-npm-install.d.ts +0 -16
- package/dist/utils/staged-npm-install.js +0 -264
- package/dist/utils/sync-log-sources.d.ts +0 -15
- package/dist/utils/sync-log-sources.js +0 -36
- package/dist/utils/table-width.d.ts +0 -7
- package/dist/utils/table-width.js +0 -15
- package/dist/utils/update-command-supervisor.cjs +0 -247
- package/dist/utils/upload-author.d.ts +0 -15
- package/dist/utils/upload-author.js +0 -39
- package/dist/utils/version-report.d.ts +0 -27
- package/dist/utils/version-report.js +0 -105
- package/dist/version-request.d.ts +0 -14
- package/dist/version-request.js +0 -36
- package/scripts/mesh-daemon-if-stale.mjs +0 -20
- package/templates/reports/blank.md +0 -3
- package/templates/reports/daily-digest.md +0 -11
- package/templates/runbooks/update-report.md +0 -21
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `hq agent enroll <code>` — turn this host into an external HQ agent.
|
|
3
|
-
*
|
|
4
|
-
* Flow (api-contract v1, POST /v1/agents/enroll):
|
|
5
|
-
* 1. refuse if this host already carries an identity (human session file or
|
|
6
|
-
* a machine-creds file) unless --replace
|
|
7
|
-
* 2. generate an Ed25519 key pair at ~/.hq-agent/host-key{,.pub} (0600)
|
|
8
|
-
* 3. POST { code, hostPublicKey, hostInfo } — unauthenticated, one-shot
|
|
9
|
-
* 4. write ~/.hq-agent/machine-creds.json (0600) with runtime "external",
|
|
10
|
-
* hostKeyPath, companySlug and apiBaseUrl
|
|
11
|
-
*
|
|
12
|
-
* The code is single-use and expires 15 minutes after an admin creates it,
|
|
13
|
-
* so every failure names the fix. The human session file is only checked
|
|
14
|
-
* for EXISTENCE — its contents are never read (policy
|
|
15
|
-
* never-extract-stored-session-tokens-to-forge-privileged-calls).
|
|
16
|
-
*/
|
|
17
|
-
import { Command } from "commander";
|
|
18
|
-
import { generateHostKeyPair } from "../lib/agent-kit/creds.js";
|
|
19
|
-
import { type AgentKitPaths } from "../lib/agent-kit/paths.js";
|
|
20
|
-
export declare const ENROLL_PATH = "/v1/agents/enroll";
|
|
21
|
-
/** Canonical code: un-grouped, uppercase (server hashes exactly this). */
|
|
22
|
-
export declare function normalizeEnrollmentCode(raw: string): string;
|
|
23
|
-
/** 24 chars of Crockford base32 (no I, L, O, U). */
|
|
24
|
-
export declare function isWellFormedEnrollmentCode(code: string): boolean;
|
|
25
|
-
export interface HostInfo {
|
|
26
|
-
os: string;
|
|
27
|
-
arch: string;
|
|
28
|
-
hostname: string;
|
|
29
|
-
cliVersion: string;
|
|
30
|
-
}
|
|
31
|
-
export declare function collectHostInfo(): HostInfo;
|
|
32
|
-
export type ExistingIdentity = {
|
|
33
|
-
kind: "none";
|
|
34
|
-
} | {
|
|
35
|
-
kind: "human";
|
|
36
|
-
file: string;
|
|
37
|
-
} | {
|
|
38
|
-
kind: "machine";
|
|
39
|
-
file: string;
|
|
40
|
-
agentUid?: string;
|
|
41
|
-
};
|
|
42
|
-
/**
|
|
43
|
-
* What identity already lives on this host. Existence checks only: the
|
|
44
|
-
* human token file is never opened.
|
|
45
|
-
*/
|
|
46
|
-
export declare function detectExistingIdentity(paths: Pick<AgentKitPaths, "machineCredsPath" | "home">, env?: NodeJS.ProcessEnv): ExistingIdentity;
|
|
47
|
-
export declare function refusalMessage(existing: ExistingIdentity): string | null;
|
|
48
|
-
export declare class EnrollError extends Error {
|
|
49
|
-
readonly status?: number | undefined;
|
|
50
|
-
readonly code?: string | undefined;
|
|
51
|
-
readonly upgradeUrl?: string | undefined;
|
|
52
|
-
constructor(message: string, status?: number | undefined, code?: string | undefined, upgradeUrl?: string | undefined);
|
|
53
|
-
}
|
|
54
|
-
export declare function formatEnrollFailureMessage(error: EnrollError, options?: {
|
|
55
|
-
urlOnly?: boolean;
|
|
56
|
-
}): string;
|
|
57
|
-
/** Map a non-2xx enroll response to an actionable message (contract codes). */
|
|
58
|
-
export declare function mapEnrollFailure(status: number, body: {
|
|
59
|
-
code?: unknown;
|
|
60
|
-
error?: unknown;
|
|
61
|
-
message?: unknown;
|
|
62
|
-
attemptsRemaining?: unknown;
|
|
63
|
-
upgradeUrl?: unknown;
|
|
64
|
-
}, headers?: {
|
|
65
|
-
retryAfter?: string | null;
|
|
66
|
-
}): EnrollError;
|
|
67
|
-
export declare function mapEnrollTransportError(err: unknown, apiBaseUrl: string): EnrollError;
|
|
68
|
-
export interface EnrollResponse {
|
|
69
|
-
agentUid: string;
|
|
70
|
-
companyUid: string;
|
|
71
|
-
companySlug: string;
|
|
72
|
-
credentials: {
|
|
73
|
-
username: string;
|
|
74
|
-
secret: string;
|
|
75
|
-
userPoolId?: string;
|
|
76
|
-
clientId: string;
|
|
77
|
-
region: string;
|
|
78
|
-
entityType: "agent";
|
|
79
|
-
entityUid: string;
|
|
80
|
-
runtime: "external";
|
|
81
|
-
};
|
|
82
|
-
hostFingerprint: string;
|
|
83
|
-
}
|
|
84
|
-
export interface EnrollDeps {
|
|
85
|
-
fetch?: typeof fetch;
|
|
86
|
-
paths?: AgentKitPaths;
|
|
87
|
-
env?: NodeJS.ProcessEnv;
|
|
88
|
-
hostInfo?: HostInfo;
|
|
89
|
-
generateKeyPair?: typeof generateHostKeyPair;
|
|
90
|
-
/** Home directory the enroll target resolves under (defaults to os.homedir()). */
|
|
91
|
-
home?: string;
|
|
92
|
-
}
|
|
93
|
-
export interface EnrollOptions {
|
|
94
|
-
code: string;
|
|
95
|
-
company?: string;
|
|
96
|
-
replace?: boolean;
|
|
97
|
-
apiBaseUrl?: string;
|
|
98
|
-
/** Enroll into `~/.hq-agent/<name>/` — a bot sharing a host with a person. */
|
|
99
|
-
name?: string;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Where this enrollment should write, given what already lives on the host.
|
|
103
|
-
*
|
|
104
|
-
* A bot that runs on its owner's own computer is the common case, not an
|
|
105
|
-
* error: the machine has the owner's HQ session, and the two identities have
|
|
106
|
-
* to coexist. So an unpinned enrollment onto such a host does NOT refuse and
|
|
107
|
-
* does NOT overwrite anything — it moves into `~/.hq-agent/<name>/`, its own
|
|
108
|
-
* tree with its own credentials, key, state and logs. The person's session
|
|
109
|
-
* file is neither read nor touched, and `hq agent …` finds the bot's tree on
|
|
110
|
-
* its own afterwards (see agentDir).
|
|
111
|
-
*/
|
|
112
|
-
export declare function resolveEnrollTarget(opts: {
|
|
113
|
-
name?: string;
|
|
114
|
-
replace?: boolean;
|
|
115
|
-
}, env?: NodeJS.ProcessEnv, home?: string): {
|
|
116
|
-
paths: AgentKitPaths;
|
|
117
|
-
local: boolean;
|
|
118
|
-
};
|
|
119
|
-
/** Lowercase slug, so the directory name can never escape `~/.hq-agent`. */
|
|
120
|
-
export declare function validateLocalAgentName(name: string): string;
|
|
121
|
-
export interface EnrollResult {
|
|
122
|
-
agentUid: string;
|
|
123
|
-
companySlug: string;
|
|
124
|
-
companyUid: string;
|
|
125
|
-
hostFingerprint: string;
|
|
126
|
-
credsPath: string;
|
|
127
|
-
hostKeyPath: string;
|
|
128
|
-
/** Set when --company disagreed with the server's company. */
|
|
129
|
-
companyMismatch?: string;
|
|
130
|
-
/** True when this enrolled beside a person's session in its own directory. */
|
|
131
|
-
local: boolean;
|
|
132
|
-
/**
|
|
133
|
-
* False when the filesystem could not make the credential owner-only — a
|
|
134
|
-
* share mounted with a fixed file_mode. The identity works; anything else
|
|
135
|
-
* with access to that share can read it.
|
|
136
|
-
*/
|
|
137
|
-
permissionsEnforced: boolean;
|
|
138
|
-
/** errno of the refused chmod, when there was one (EPERM on Azure Files). */
|
|
139
|
-
permissionsError?: string;
|
|
140
|
-
/** The tree this identity lives in. */
|
|
141
|
-
agentDir: string;
|
|
142
|
-
}
|
|
143
|
-
/** Pure-ish orchestration so tests can drive it without a TTY or network. */
|
|
144
|
-
export declare function enrollHost(opts: EnrollOptions, deps?: EnrollDeps): Promise<EnrollResult>;
|
|
145
|
-
export declare function registerAgentEnrollCommand(agent: Command): void;
|
|
146
|
-
//# sourceMappingURL=agent-enroll.d.ts.map
|
|
@@ -1,401 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `hq agent enroll <code>` — turn this host into an external HQ agent.
|
|
3
|
-
*
|
|
4
|
-
* Flow (api-contract v1, POST /v1/agents/enroll):
|
|
5
|
-
* 1. refuse if this host already carries an identity (human session file or
|
|
6
|
-
* a machine-creds file) unless --replace
|
|
7
|
-
* 2. generate an Ed25519 key pair at ~/.hq-agent/host-key{,.pub} (0600)
|
|
8
|
-
* 3. POST { code, hostPublicKey, hostInfo } — unauthenticated, one-shot
|
|
9
|
-
* 4. write ~/.hq-agent/machine-creds.json (0600) with runtime "external",
|
|
10
|
-
* hostKeyPath, companySlug and apiBaseUrl
|
|
11
|
-
*
|
|
12
|
-
* The code is single-use and expires 15 minutes after an admin creates it,
|
|
13
|
-
* so every failure names the fix. The human session file is only checked
|
|
14
|
-
* for EXISTENCE — its contents are never read (policy
|
|
15
|
-
* never-extract-stored-session-tokens-to-forge-privileged-calls).
|
|
16
|
-
*/
|
|
17
|
-
import chalk from "chalk";
|
|
18
|
-
import * as fs from "node:fs";
|
|
19
|
-
import * as os from "node:os";
|
|
20
|
-
import { CLI_VERSION } from "../cli-version.js";
|
|
21
|
-
import { DEFAULT_VAULT_API_URL, personTokenCacheFile, } from "../utils/cognito-session.js";
|
|
22
|
-
import { HQ_CLIENT_NAME } from "../utils/vault-api.js";
|
|
23
|
-
import { queueCliLimitNoticeEngagement, queueCliLimitNoticeExposure, } from "../utils/cli-telemetry.js";
|
|
24
|
-
import { networkTransportErrorCode } from "../utils/network-transport-error.js";
|
|
25
|
-
import { canOfferTeamUpgrade, formatUpgradeRefusal, isPlanGateError, offerUpgradeLink, planGateErrorFromPayload, } from "../utils/plan-gate-error.js";
|
|
26
|
-
import { generateHostKeyPair, machineCredsFileExists, readExternalMachineCreds, writeHostKeyPair, writeMachineCreds, } from "../lib/agent-kit/creds.js";
|
|
27
|
-
import { DEFAULT_LOCAL_AGENT_NAME, agentKitPaths, localAgentDir, } from "../lib/agent-kit/paths.js";
|
|
28
|
-
export const ENROLL_PATH = "/v1/agents/enroll";
|
|
29
|
-
/** Canonical code: un-grouped, uppercase (server hashes exactly this). */
|
|
30
|
-
export function normalizeEnrollmentCode(raw) {
|
|
31
|
-
return raw.replace(/[\s-]+/g, "").toUpperCase();
|
|
32
|
-
}
|
|
33
|
-
/** 24 chars of Crockford base32 (no I, L, O, U). */
|
|
34
|
-
export function isWellFormedEnrollmentCode(code) {
|
|
35
|
-
return /^[0-9A-HJKMNP-TV-Z]{24}$/.test(code);
|
|
36
|
-
}
|
|
37
|
-
export function collectHostInfo() {
|
|
38
|
-
return {
|
|
39
|
-
os: `${os.platform()} ${os.release()}`,
|
|
40
|
-
arch: os.arch(),
|
|
41
|
-
hostname: os.hostname(),
|
|
42
|
-
cliVersion: CLI_VERSION,
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* What identity already lives on this host. Existence checks only: the
|
|
47
|
-
* human token file is never opened.
|
|
48
|
-
*/
|
|
49
|
-
export function detectExistingIdentity(paths, env = process.env) {
|
|
50
|
-
const humanFile = personTokenCacheFile(paths.home, env);
|
|
51
|
-
if (fs.existsSync(humanFile))
|
|
52
|
-
return { kind: "human", file: humanFile };
|
|
53
|
-
if (machineCredsFileExists(paths)) {
|
|
54
|
-
const existing = readExternalMachineCreds(paths);
|
|
55
|
-
return {
|
|
56
|
-
kind: "machine",
|
|
57
|
-
file: paths.machineCredsPath,
|
|
58
|
-
...(existing ? { agentUid: existing.entityUid } : {}),
|
|
59
|
-
};
|
|
60
|
-
}
|
|
61
|
-
return { kind: "none" };
|
|
62
|
-
}
|
|
63
|
-
/** Machine identity already enrolled in a local agent directory, if any. */
|
|
64
|
-
function existingLocalIdentity(paths) {
|
|
65
|
-
if (!machineCredsFileExists(paths))
|
|
66
|
-
return { kind: "none" };
|
|
67
|
-
const existing = readExternalMachineCreds(paths);
|
|
68
|
-
return {
|
|
69
|
-
kind: "machine",
|
|
70
|
-
file: paths.machineCredsPath,
|
|
71
|
-
...(existing ? { agentUid: existing.entityUid } : {}),
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
export function refusalMessage(existing) {
|
|
75
|
-
switch (existing.kind) {
|
|
76
|
-
case "none":
|
|
77
|
-
return null;
|
|
78
|
-
case "human":
|
|
79
|
-
// Reached only when a caller pins the tree (HQ_AGENT_DIR / --dir) at a
|
|
80
|
-
// home that would sit on top of a person's login. The unpinned path
|
|
81
|
-
// enrolls into a sibling directory instead of refusing — see
|
|
82
|
-
// resolveEnrollTarget.
|
|
83
|
-
return (`A human HQ session exists at ${existing.file}. An agent identity must not ` +
|
|
84
|
-
`share a host account with a person's login. Enroll into a directory of its ` +
|
|
85
|
-
`own (drop HQ_AGENT_DIR and this happens automatically, or pass ` +
|
|
86
|
-
`--name <bot>), or pass --replace to enroll here anyway — the human session ` +
|
|
87
|
-
`file is left untouched and never read.`);
|
|
88
|
-
case "machine":
|
|
89
|
-
return (`This host already has a machine identity at ${existing.file}` +
|
|
90
|
-
`${existing.agentUid ? ` (${existing.agentUid})` : ""}. Re-run with --replace ` +
|
|
91
|
-
`to enroll as a new agent; the old creds and host key will be overwritten.`);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
export class EnrollError extends Error {
|
|
95
|
-
status;
|
|
96
|
-
code;
|
|
97
|
-
upgradeUrl;
|
|
98
|
-
constructor(message, status, code, upgradeUrl) {
|
|
99
|
-
super(message);
|
|
100
|
-
this.status = status;
|
|
101
|
-
this.code = code;
|
|
102
|
-
this.upgradeUrl = upgradeUrl;
|
|
103
|
-
this.name = "EnrollError";
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
export function formatEnrollFailureMessage(error, options = {}) {
|
|
107
|
-
return formatUpgradeRefusal(error.message, error.upgradeUrl, options);
|
|
108
|
-
}
|
|
109
|
-
/** Map a non-2xx enroll response to an actionable message (contract codes). */
|
|
110
|
-
export function mapEnrollFailure(status, body, headers) {
|
|
111
|
-
const code = typeof body.code === "string" ? body.code : undefined;
|
|
112
|
-
const attemptsRemaining = typeof body.attemptsRemaining === "number" ? body.attemptsRemaining : undefined;
|
|
113
|
-
const attemptsNote = attemptsRemaining !== undefined
|
|
114
|
-
? ` ${attemptsRemaining} attempt${attemptsRemaining === 1 ? "" : "s"} left before the code is revoked.`
|
|
115
|
-
: "";
|
|
116
|
-
const serverText = typeof body.message === "string"
|
|
117
|
-
? body.message
|
|
118
|
-
: typeof body.error === "string"
|
|
119
|
-
? body.error
|
|
120
|
-
: "";
|
|
121
|
-
const suffix = serverText ? ` (${serverText})` : "";
|
|
122
|
-
if (status === 410 || code === "expired") {
|
|
123
|
-
return new EnrollError(`Enrollment code expired — codes last 15 minutes. Ask a company admin for a ` +
|
|
124
|
-
`fresh one: console → Agents → the bot → Regenerate, or \`hq agents rotate <agentUid>\`.${suffix}`, status, code);
|
|
125
|
-
}
|
|
126
|
-
if (status === 409 || code === "already_redeemed") {
|
|
127
|
-
return new EnrollError(`This enrollment code was already used. Each code enrolls exactly one host; ` +
|
|
128
|
-
`ask an admin to rotate the agent (\`hq agents rotate <agentUid>\`) for a new code.${suffix}`, status, code);
|
|
129
|
-
}
|
|
130
|
-
if (status === 404 || code === "invalid_code") {
|
|
131
|
-
return new EnrollError(`Enrollment code not recognised. Check for typos (codes are 24 characters, ` +
|
|
132
|
-
`groups of 4, no I/L/O/U) and that you copied the whole code.${suffix}`, status, code);
|
|
133
|
-
}
|
|
134
|
-
if (status === 423 || code === "revoked") {
|
|
135
|
-
return new EnrollError(`This agent was revoked; its enrollment code no longer works. An admin must ` +
|
|
136
|
-
`create a new external agent or rotate this one.${suffix}`, status, code);
|
|
137
|
-
}
|
|
138
|
-
if (status === 402 || code === "billing_required") {
|
|
139
|
-
return new EnrollError(`External agents are available on paid HQ plans only. A company admin must ` +
|
|
140
|
-
`upgrade the plan (\`hq billing\` or the console billing page) before enrolling.${suffix}`, status, code, typeof body.upgradeUrl === "string" ? body.upgradeUrl : undefined);
|
|
141
|
-
}
|
|
142
|
-
if (status === 429 || code === "rate_limited") {
|
|
143
|
-
const retryAfter = headers?.retryAfter?.trim();
|
|
144
|
-
const wait = retryAfter && /^\d+$/.test(retryAfter) ? `wait ${retryAfter}s and retry` : "wait a minute and retry";
|
|
145
|
-
return new EnrollError(`Too many enrollment attempts from this host — ${wait}. ` +
|
|
146
|
-
`After 5 failed attempts a code is revoked and must be regenerated.${suffix}`, status, code ?? "rate_limited");
|
|
147
|
-
}
|
|
148
|
-
if (code === "invalid_host_key") {
|
|
149
|
-
return new EnrollError(`The server rejected this host's public key (expected an Ed25519 SPKI PEM). ` +
|
|
150
|
-
`Re-run \`hq agent enroll\` to generate a fresh key; if it keeps failing, upgrade hq-cli.${attemptsNote}${suffix}`, status, code);
|
|
151
|
-
}
|
|
152
|
-
if (code === "invalid_host_info") {
|
|
153
|
-
return new EnrollError(`The server rejected this host's info block (os/arch/hostname/cliVersion). ` +
|
|
154
|
-
`Upgrade hq-cli and retry.${attemptsNote}${suffix}`, status, code);
|
|
155
|
-
}
|
|
156
|
-
return new EnrollError(`Enrollment failed (HTTP ${status}${code ? ` ${code}` : ""})${suffix}`, status, code);
|
|
157
|
-
}
|
|
158
|
-
export function mapEnrollTransportError(err, apiBaseUrl) {
|
|
159
|
-
const code = networkTransportErrorCode(err);
|
|
160
|
-
const detail = err instanceof Error ? err.message : String(err);
|
|
161
|
-
return new EnrollError(`Could not reach ${apiBaseUrl}${code ? ` (${code})` : ""}: ${detail}. Check network ` +
|
|
162
|
-
`access / proxy settings; the HQ_VAULT_API_URL env var overrides the control plane.`);
|
|
163
|
-
}
|
|
164
|
-
function parseEnrollResponse(raw) {
|
|
165
|
-
const r = (raw ?? {});
|
|
166
|
-
const c = (r.credentials ?? {});
|
|
167
|
-
const need = (obj, k) => {
|
|
168
|
-
const v = obj[k];
|
|
169
|
-
if (typeof v !== "string" || v.length === 0) {
|
|
170
|
-
throw new EnrollError(`Enrollment response is missing "${k}"`);
|
|
171
|
-
}
|
|
172
|
-
return v;
|
|
173
|
-
};
|
|
174
|
-
const entityUid = need(c, "entityUid");
|
|
175
|
-
if (!entityUid.startsWith("agt_")) {
|
|
176
|
-
throw new EnrollError(`Enrollment response entityUid is not an agent uid: ${entityUid}`);
|
|
177
|
-
}
|
|
178
|
-
return {
|
|
179
|
-
agentUid: need(r, "agentUid"),
|
|
180
|
-
companyUid: need(r, "companyUid"),
|
|
181
|
-
companySlug: need(r, "companySlug"),
|
|
182
|
-
hostFingerprint: need(r, "hostFingerprint"),
|
|
183
|
-
credentials: {
|
|
184
|
-
username: need(c, "username"),
|
|
185
|
-
secret: need(c, "secret"),
|
|
186
|
-
...(typeof c.userPoolId === "string" && c.userPoolId ? { userPoolId: c.userPoolId } : {}),
|
|
187
|
-
clientId: need(c, "clientId"),
|
|
188
|
-
region: need(c, "region"),
|
|
189
|
-
entityType: "agent",
|
|
190
|
-
entityUid,
|
|
191
|
-
runtime: "external",
|
|
192
|
-
},
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
/**
|
|
196
|
-
* Where this enrollment should write, given what already lives on the host.
|
|
197
|
-
*
|
|
198
|
-
* A bot that runs on its owner's own computer is the common case, not an
|
|
199
|
-
* error: the machine has the owner's HQ session, and the two identities have
|
|
200
|
-
* to coexist. So an unpinned enrollment onto such a host does NOT refuse and
|
|
201
|
-
* does NOT overwrite anything — it moves into `~/.hq-agent/<name>/`, its own
|
|
202
|
-
* tree with its own credentials, key, state and logs. The person's session
|
|
203
|
-
* file is neither read nor touched, and `hq agent …` finds the bot's tree on
|
|
204
|
-
* its own afterwards (see agentDir).
|
|
205
|
-
*/
|
|
206
|
-
export function resolveEnrollTarget(opts, env = process.env, home = os.homedir()) {
|
|
207
|
-
const pinned = Boolean(env.HQ_AGENT_DIR?.trim() || env.HQ_MACHINE_CREDS_FILE?.trim());
|
|
208
|
-
// A pinned tree is the environment's explicit choice and wins over --name:
|
|
209
|
-
// a bot that set HQ_AGENT_DIR to its persistent storage must never be
|
|
210
|
-
// redirected to a directory under $HOME, which may be erased on rebuild.
|
|
211
|
-
if (pinned)
|
|
212
|
-
return { paths: agentKitPaths(home, env), local: false };
|
|
213
|
-
if (opts.name) {
|
|
214
|
-
const dir = localAgentDir(validateLocalAgentName(opts.name), home);
|
|
215
|
-
return { paths: agentKitPaths(home, { ...env, HQ_AGENT_DIR: dir }), local: true };
|
|
216
|
-
}
|
|
217
|
-
const base = agentKitPaths(home, env);
|
|
218
|
-
// --replace is an explicit choice too; it is not silently redirected.
|
|
219
|
-
if (opts.replace)
|
|
220
|
-
return { paths: base, local: false };
|
|
221
|
-
if (detectExistingIdentity(base, env).kind !== "human") {
|
|
222
|
-
return { paths: base, local: false };
|
|
223
|
-
}
|
|
224
|
-
const dir = localAgentDir(DEFAULT_LOCAL_AGENT_NAME, home);
|
|
225
|
-
return { paths: agentKitPaths(home, { ...env, HQ_AGENT_DIR: dir }), local: true };
|
|
226
|
-
}
|
|
227
|
-
/** Lowercase slug, so the directory name can never escape `~/.hq-agent`. */
|
|
228
|
-
export function validateLocalAgentName(name) {
|
|
229
|
-
const trimmed = (name ?? "").trim();
|
|
230
|
-
if (!/^[a-z0-9](?:[a-z0-9-]{0,38}[a-z0-9])?$/.test(trimmed) || trimmed.includes("--")) {
|
|
231
|
-
throw new EnrollError(`Invalid --name "${name}": use 1–40 lowercase letters, digits and single hyphens (e.g. "grokbot").`);
|
|
232
|
-
}
|
|
233
|
-
return trimmed;
|
|
234
|
-
}
|
|
235
|
-
/** Pure-ish orchestration so tests can drive it without a TTY or network. */
|
|
236
|
-
export async function enrollHost(opts, deps = {}) {
|
|
237
|
-
const env = deps.env ?? process.env;
|
|
238
|
-
const target = deps.paths
|
|
239
|
-
? { paths: deps.paths, local: false }
|
|
240
|
-
: resolveEnrollTarget({ name: opts.name, replace: opts.replace }, env, deps.home);
|
|
241
|
-
const paths = target.paths;
|
|
242
|
-
const doFetch = deps.fetch ?? fetch;
|
|
243
|
-
const apiBaseUrl = (opts.apiBaseUrl ?? env.HQ_VAULT_API_URL ?? DEFAULT_VAULT_API_URL).replace(/\/+$/, "");
|
|
244
|
-
const code = normalizeEnrollmentCode(opts.code);
|
|
245
|
-
if (!isWellFormedEnrollmentCode(code)) {
|
|
246
|
-
throw new EnrollError(`Enrollment code must be 24 base32 characters (shown as XXXX-XXXX-XXXX-XXXX-XXXX-XXXX); got ${code.length}.`);
|
|
247
|
-
}
|
|
248
|
-
// A local target sits in its own ~/.hq-agent/<name>/ beside the person's
|
|
249
|
-
// login by design, so only an identity already in that directory blocks it.
|
|
250
|
-
const existing = target.local
|
|
251
|
-
? existingLocalIdentity(paths)
|
|
252
|
-
: detectExistingIdentity(paths, env);
|
|
253
|
-
const refusal = refusalMessage(existing);
|
|
254
|
-
if (refusal && !opts.replace)
|
|
255
|
-
throw new EnrollError(refusal);
|
|
256
|
-
// Key first, then the network call: the public half must exist before the
|
|
257
|
-
// server can bind the code to it, and a failed call leaves a harmless
|
|
258
|
-
// unenrolled key behind (regenerated on the next attempt).
|
|
259
|
-
const pair = (deps.generateKeyPair ?? generateHostKeyPair)();
|
|
260
|
-
const keyWrite = writeHostKeyPair(paths, pair);
|
|
261
|
-
let res;
|
|
262
|
-
try {
|
|
263
|
-
res = await doFetch(`${apiBaseUrl}${ENROLL_PATH}`, {
|
|
264
|
-
method: "POST",
|
|
265
|
-
headers: {
|
|
266
|
-
"Content-Type": "application/json",
|
|
267
|
-
"x-hq-client-name": HQ_CLIENT_NAME,
|
|
268
|
-
"x-hq-client-version": CLI_VERSION,
|
|
269
|
-
},
|
|
270
|
-
body: JSON.stringify({
|
|
271
|
-
code,
|
|
272
|
-
hostPublicKey: pair.publicPem,
|
|
273
|
-
hostInfo: deps.hostInfo ?? collectHostInfo(),
|
|
274
|
-
}),
|
|
275
|
-
});
|
|
276
|
-
}
|
|
277
|
-
catch (err) {
|
|
278
|
-
throw mapEnrollTransportError(err, apiBaseUrl);
|
|
279
|
-
}
|
|
280
|
-
const body = (await res.json().catch(() => ({})));
|
|
281
|
-
if (!res.ok) {
|
|
282
|
-
const planGate = planGateErrorFromPayload(res.status, body);
|
|
283
|
-
if (planGate)
|
|
284
|
-
throw planGate;
|
|
285
|
-
throw mapEnrollFailure(res.status, body, { retryAfter: res.headers.get("retry-after") });
|
|
286
|
-
}
|
|
287
|
-
const parsed = parseEnrollResponse(body);
|
|
288
|
-
if (parsed.hostFingerprint !== pair.fingerprint) {
|
|
289
|
-
throw new EnrollError(`Server bound the code to fingerprint ${parsed.hostFingerprint} but this host's key is ` +
|
|
290
|
-
`${pair.fingerprint}. Refusing to write credentials; ask an admin to rotate the agent.`);
|
|
291
|
-
}
|
|
292
|
-
const creds = {
|
|
293
|
-
...parsed.credentials,
|
|
294
|
-
hostKeyPath: paths.hostKeyPath,
|
|
295
|
-
companySlug: parsed.companySlug,
|
|
296
|
-
apiBaseUrl,
|
|
297
|
-
};
|
|
298
|
-
const credsWrite = writeMachineCreds(paths, creds);
|
|
299
|
-
const enforced = keyWrite.enforced && credsWrite.enforced;
|
|
300
|
-
const permissionsError = keyWrite.chmodError ?? credsWrite.chmodError;
|
|
301
|
-
return {
|
|
302
|
-
permissionsEnforced: enforced,
|
|
303
|
-
...(permissionsError ? { permissionsError } : {}),
|
|
304
|
-
local: target.local,
|
|
305
|
-
agentDir: paths.agentDir,
|
|
306
|
-
agentUid: parsed.agentUid,
|
|
307
|
-
companySlug: parsed.companySlug,
|
|
308
|
-
companyUid: parsed.companyUid,
|
|
309
|
-
hostFingerprint: parsed.hostFingerprint,
|
|
310
|
-
credsPath: paths.machineCredsPath,
|
|
311
|
-
hostKeyPath: paths.hostKeyPath,
|
|
312
|
-
...(opts.company && opts.company !== parsed.companySlug && opts.company !== parsed.companyUid
|
|
313
|
-
? { companyMismatch: opts.company }
|
|
314
|
-
: {}),
|
|
315
|
-
};
|
|
316
|
-
}
|
|
317
|
-
/** Directory label for the permissions note — never the credential itself. */
|
|
318
|
-
function paths_agentDirLabel() {
|
|
319
|
-
return agentKitPaths(os.homedir(), process.env).agentDir;
|
|
320
|
-
}
|
|
321
|
-
export function registerAgentEnrollCommand(agent) {
|
|
322
|
-
agent
|
|
323
|
-
.command("enroll <code>")
|
|
324
|
-
.description("Enroll this host as an external HQ agent using a one-time code")
|
|
325
|
-
.option("--company <slug>", "Expected company slug (warns when the code belongs elsewhere)")
|
|
326
|
-
.option("--replace", "Overwrite an existing machine identity on this host")
|
|
327
|
-
.option("--name <bot>", "Enroll into ~/.hq-agent/<bot>/ — for a bot sharing a computer with its owner")
|
|
328
|
-
.option("--api-base-url <url>", "hq-pro control plane (default: HQ_VAULT_API_URL or production)")
|
|
329
|
-
.action(async (code, opts) => {
|
|
330
|
-
try {
|
|
331
|
-
const result = await enrollHost({
|
|
332
|
-
code,
|
|
333
|
-
company: opts.company,
|
|
334
|
-
replace: opts.replace,
|
|
335
|
-
apiBaseUrl: opts.apiBaseUrl,
|
|
336
|
-
name: opts.name,
|
|
337
|
-
});
|
|
338
|
-
console.log(chalk.green(`Enrolled as ${result.agentUid} in ${result.companySlug}.`));
|
|
339
|
-
if (result.local) {
|
|
340
|
-
// Say it plainly: this host belongs to a person, and the bot is a
|
|
341
|
-
// guest on it. Nothing of theirs was read, moved or overwritten.
|
|
342
|
-
console.log(chalk.dim(` This computer already has a person signed in, so this agent lives in its own\n` +
|
|
343
|
-
` directory beside them: ${result.agentDir}. Their session was not read or changed.\n` +
|
|
344
|
-
` Every hq agent command finds this tree on its own — no environment to set.`));
|
|
345
|
-
}
|
|
346
|
-
if (!result.permissionsEnforced) {
|
|
347
|
-
// Not a warning to bury: the credential is on disk and working,
|
|
348
|
-
// but this filesystem cannot keep it to one owner.
|
|
349
|
-
console.log(chalk.yellow(` note: this filesystem could not make the credential owner-only` +
|
|
350
|
-
`${result.permissionsError ? ` (chmod: ${result.permissionsError})` : ""}.\n` +
|
|
351
|
-
` Anything with access to ${paths_agentDirLabel()} can read it. That is\n` +
|
|
352
|
-
` usually a network share mounted with a fixed file_mode. Keep the\n` +
|
|
353
|
-
` share itself restricted, or move the identity to local storage.`));
|
|
354
|
-
}
|
|
355
|
-
console.log(` host fingerprint: ${result.hostFingerprint}`);
|
|
356
|
-
console.log(` credentials: ${result.credsPath} (0600)`);
|
|
357
|
-
console.log(` host key: ${result.hostKeyPath} (0600)`);
|
|
358
|
-
if (result.companyMismatch) {
|
|
359
|
-
console.log(chalk.yellow(` note: --company ${result.companyMismatch} did not match the code's company ` +
|
|
360
|
-
`(${result.companySlug}); the code's company wins.`));
|
|
361
|
-
}
|
|
362
|
-
console.log("");
|
|
363
|
-
console.log("Next:");
|
|
364
|
-
console.log(result.local
|
|
365
|
-
? " hq agent probe # its first line reports this agent, not you"
|
|
366
|
-
: " hq whoami # should report the agent identity");
|
|
367
|
-
console.log(" hq agent kit install # inbox poller and heartbeat services");
|
|
368
|
-
console.log(" hq agent probe # end-to-end check, reported to the console");
|
|
369
|
-
}
|
|
370
|
-
catch (err) {
|
|
371
|
-
if (isPlanGateError(err)) {
|
|
372
|
-
throw err;
|
|
373
|
-
}
|
|
374
|
-
else if (err instanceof EnrollError && err.upgradeUrl) {
|
|
375
|
-
const interactive = canOfferTeamUpgrade();
|
|
376
|
-
console.error(chalk.red(formatEnrollFailureMessage(err, { urlOnly: !interactive })));
|
|
377
|
-
const exposure = err.code === "billing_required"
|
|
378
|
-
? queueCliLimitNoticeExposure("agents", "refusal")
|
|
379
|
-
: null;
|
|
380
|
-
if (interactive) {
|
|
381
|
-
try {
|
|
382
|
-
const opened = await offerUpgradeLink(err.upgradeUrl, { interactive: true });
|
|
383
|
-
if (opened)
|
|
384
|
-
queueCliLimitNoticeEngagement(exposure);
|
|
385
|
-
}
|
|
386
|
-
catch (openErr) {
|
|
387
|
-
const message = openErr instanceof Error ? openErr.message : String(openErr);
|
|
388
|
-
console.error(chalk.dim(`Could not open the upgrade link automatically: ${message}`));
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
}
|
|
392
|
-
else {
|
|
393
|
-
console.error(chalk.red(err instanceof Error ? err.message : String(err)));
|
|
394
|
-
}
|
|
395
|
-
// Let the CLI's bounded finalization flush the best-effort prompt
|
|
396
|
-
// telemetry before the process exits with the same failure status.
|
|
397
|
-
process.exitCode = 1;
|
|
398
|
-
}
|
|
399
|
-
});
|
|
400
|
-
}
|
|
401
|
-
//# sourceMappingURL=agent-enroll.js.map
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `hq agent inbox` — what a woken bot runs to see and clear its HQ mail.
|
|
3
|
-
*
|
|
4
|
-
* hq agent inbox [--all] [--json] pending items (oldest first), or all
|
|
5
|
-
* hq agent inbox done <id...> mark handled locally and ack on the server
|
|
6
|
-
*/
|
|
7
|
-
import { Command } from "commander";
|
|
8
|
-
export declare function registerAgentInboxCommand(agent: Command): void;
|
|
9
|
-
//# sourceMappingURL=agent-inbox.d.ts.map
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `hq agent inbox` — what a woken bot runs to see and clear its HQ mail.
|
|
3
|
-
*
|
|
4
|
-
* hq agent inbox [--all] [--json] pending items (oldest first), or all
|
|
5
|
-
* hq agent inbox done <id...> mark handled locally and ack on the server
|
|
6
|
-
*/
|
|
7
|
-
import chalk from "chalk";
|
|
8
|
-
import * as os from "node:os";
|
|
9
|
-
import { ensureCognitoToken } from "../utils/cognito-session.js";
|
|
10
|
-
import { vaultApiFetch } from "../utils/vault-api.js";
|
|
11
|
-
import { markInboxDone, mergeAgentInbox, readDoneIds, summarizeInboxEntry } from "../lib/agent-kit/inbox-state.js";
|
|
12
|
-
import { agentKitPaths } from "../lib/agent-kit/paths.js";
|
|
13
|
-
import { requireExternalCreds } from "./agent-kit.js";
|
|
14
|
-
const ID_RE = /^[A-Za-z0-9._:-]{1,200}$/;
|
|
15
|
-
export function registerAgentInboxCommand(agent) {
|
|
16
|
-
const inbox = agent
|
|
17
|
-
.command("inbox")
|
|
18
|
-
.description("List this agent's pending HQ messages (mirrored by the kit), or mark them handled")
|
|
19
|
-
.option("--all", "Include items already marked handled")
|
|
20
|
-
.option("--json", "Print machine-readable JSON")
|
|
21
|
-
.action(async (opts) => {
|
|
22
|
-
const paths = agentKitPaths(os.homedir(), process.env);
|
|
23
|
-
const creds = requireExternalCreds(paths);
|
|
24
|
-
const done = readDoneIds(paths);
|
|
25
|
-
// Merged with the server, never the local mirror alone: a dead kit
|
|
26
|
-
// poller would otherwise make this command answer confidently with
|
|
27
|
-
// yesterday's mail and no sign anything was wrong.
|
|
28
|
-
const { entries, note } = await mergeAgentInbox(paths, async () => {
|
|
29
|
-
const token = await ensureCognitoToken({ tokenSource: "machine", interactive: false });
|
|
30
|
-
const res = await vaultApiFetch({
|
|
31
|
-
token,
|
|
32
|
-
baseUrl: creds.apiBaseUrl,
|
|
33
|
-
path: `/v1/agents/${encodeURIComponent(creds.entityUid)}/inbox`,
|
|
34
|
-
});
|
|
35
|
-
return { status: res.status, body: await res.json().catch(() => ({})) };
|
|
36
|
-
});
|
|
37
|
-
const rows = entries
|
|
38
|
-
.filter((e) => opts.all || !done.has(e.id))
|
|
39
|
-
.map((e) => summarizeInboxEntry(e, done.has(e.id)));
|
|
40
|
-
if (opts.json) {
|
|
41
|
-
console.log(JSON.stringify({ count: rows.length, messages: rows, ...(note ? { note } : {}) }, null, 2));
|
|
42
|
-
return;
|
|
43
|
-
}
|
|
44
|
-
if (note)
|
|
45
|
-
console.error(chalk.yellow(note));
|
|
46
|
-
if (rows.length === 0) {
|
|
47
|
-
console.log(opts.all ? "Inbox is empty." : "No pending messages.");
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
for (const r of rows) {
|
|
51
|
-
const state = r.done ? chalk.dim(" (done)") : "";
|
|
52
|
-
console.log(`${chalk.bold(r.id)}${state} ${r.channel ?? "?"} from ${r.from}${r.fromUid ? ` <${r.fromUid}>` : ""} ${r.at ?? ""}`);
|
|
53
|
-
if (r.text)
|
|
54
|
-
console.log(` ${r.text.replace(/\n/g, "\n ")}`);
|
|
55
|
-
for (const f of r.attachments ?? []) {
|
|
56
|
-
const label = f.name ?? f.vaultPath.split("/").pop() ?? "file";
|
|
57
|
-
const type = f.contentType ? ` (${f.contentType})` : "";
|
|
58
|
-
console.log(` ${chalk.dim("[file]")} ${label}${type}`);
|
|
59
|
-
console.log(` ${chalk.dim(`vault: ${f.vaultPath}`)}`);
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
if (!opts.all)
|
|
63
|
-
console.log(chalk.dim(`\nReply with hq dm <uid> "…", then: hq agent inbox done <id>`));
|
|
64
|
-
});
|
|
65
|
-
inbox
|
|
66
|
-
.command("done <ids...>")
|
|
67
|
-
.description("Mark inbox items handled and ack them on the server")
|
|
68
|
-
.action(async (ids) => {
|
|
69
|
-
const bad = ids.filter((id) => !ID_RE.test(id));
|
|
70
|
-
if (bad.length) {
|
|
71
|
-
console.error(chalk.red(`Invalid id(s): ${bad.join(", ")}`));
|
|
72
|
-
process.exit(1);
|
|
73
|
-
}
|
|
74
|
-
const paths = agentKitPaths(os.homedir(), process.env);
|
|
75
|
-
const creds = requireExternalCreds(paths);
|
|
76
|
-
const added = markInboxDone(paths, ids);
|
|
77
|
-
process.env.HQ_MACHINE_CREDS_FILE = paths.machineCredsPath;
|
|
78
|
-
process.env.HQ_REQUIRE_MACHINE_IDENTITY = "1";
|
|
79
|
-
process.env.HQ_VAULT_API_URL = creds.apiBaseUrl;
|
|
80
|
-
let acked = 0;
|
|
81
|
-
try {
|
|
82
|
-
const token = await ensureCognitoToken({ tokenSource: "machine", interactive: false });
|
|
83
|
-
for (const id of ids) {
|
|
84
|
-
const res = await vaultApiFetch({
|
|
85
|
-
token,
|
|
86
|
-
baseUrl: creds.apiBaseUrl,
|
|
87
|
-
path: `/v1/agents/${encodeURIComponent(creds.entityUid)}/inbox/${encodeURIComponent(id)}/ack`,
|
|
88
|
-
method: "POST",
|
|
89
|
-
});
|
|
90
|
-
if (res.ok)
|
|
91
|
-
acked += 1;
|
|
92
|
-
else
|
|
93
|
-
console.error(chalk.yellow(`server ack ${id} → ${res.status}`));
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
catch (err) {
|
|
97
|
-
console.error(chalk.yellow(`server ack skipped: ${err instanceof Error ? err.message : String(err)}`));
|
|
98
|
-
}
|
|
99
|
-
console.log(`Marked ${added.length} handled (${ids.length - added.length} already done); server acked ${acked}.`);
|
|
100
|
-
});
|
|
101
|
-
}
|
|
102
|
-
//# sourceMappingURL=agent-inbox.js.map
|