@openrig/cli 0.6.5 → 0.6.7
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/README.md +151 -63
- package/daemon/assets/claude-team-permissions.cjs +262 -0
- package/daemon/assets/onboarding/02-self-and-competent-action.md +46 -2
- package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
- package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
- package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus-health.cjs +41 -0
- package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +69 -12
- package/daemon/assets/plugins/openrig-core/skills/applying-a-permission-policy/SKILL.md +41 -21
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +24 -7
- package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
- package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +1 -1
- package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +4 -5
- package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +9 -4
- package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -4
- package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +24 -13
- package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
- package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +42 -0
- package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +6 -0
- package/daemon/assets/skills/rigs/SKILL.md +133 -0
- package/daemon/context-packs/help/help.md +66 -12
- package/daemon/context-packs/help/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
- package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +218 -38
- package/daemon/context-packs/reference/getting-started.md +593 -139
- package/daemon/context-packs/reference/manifest.yaml +4 -1
- package/daemon/context-packs/reference/rig-spec.md +175 -26
- package/daemon/context-packs/reference/whats-new.md +134 -0
- package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
- package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
- package/daemon/context-packs/skills/applying-a-permission-policy/SKILL.md +41 -21
- package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
- package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +24 -7
- package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
- package/daemon/context-packs/skills/core/agent-starters/SKILL.md +0 -6
- package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -8
- package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-architect/SKILL.md +5 -5
- package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +3 -3
- package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +4 -5
- package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +31 -21
- package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +31 -31
- package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +2 -0
- package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +0 -1
- package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/session-source-fork/SKILL.md +0 -5
- package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
- package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
- package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
- package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +1 -1
- package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
- package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
- package/daemon/context-packs/skills/openrig-user/SKILL.md +9 -4
- package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
- package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/agent-browser/OPENRIG.md +1 -1
- package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/systematic-debugging/SKILL.md +0 -2
- package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
- package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
- package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
- package/daemon/context-packs/skills/refocusing/SKILL.md +31 -4
- package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
- package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +24 -13
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
- package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
- package/daemon/context-packs/skills/seat-continuity-and-handover/SKILL.md +42 -0
- package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
- package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +6 -0
- package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
- package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
- package/daemon/context-packs/world-example/manifest.yaml +1 -1
- package/daemon/context-packs/world-public/manifest.yaml +1 -1
- package/daemon/dist/adapters/claude-code-adapter.d.ts +2 -2
- package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/claude-code-adapter.js +48 -26
- package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
- package/daemon/dist/adapters/claude-resume.d.ts +1 -1
- package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
- package/daemon/dist/adapters/claude-resume.js +7 -4
- package/daemon/dist/adapters/claude-resume.js.map +1 -1
- package/daemon/dist/adapters/codex-resume.d.ts +3 -1
- package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-resume.js +27 -4
- package/daemon/dist/adapters/codex-resume.js.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts +3 -0
- package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/codex-runtime-adapter.js +61 -63
- package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/compose-services-adapter.js +1 -1
- package/daemon/dist/adapters/compose-services-adapter.js.map +1 -1
- package/daemon/dist/adapters/kernel-authority.d.ts +10 -0
- package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -0
- package/daemon/dist/adapters/kernel-authority.js +71 -0
- package/daemon/dist/adapters/kernel-authority.js.map +1 -0
- package/daemon/dist/adapters/non-interruptive.d.ts +14 -0
- package/daemon/dist/adapters/non-interruptive.d.ts.map +1 -0
- package/daemon/dist/adapters/non-interruptive.js +38 -0
- package/daemon/dist/adapters/non-interruptive.js.map +1 -0
- package/daemon/dist/adapters/pi-readiness.d.ts +15 -0
- package/daemon/dist/adapters/pi-readiness.d.ts.map +1 -0
- package/daemon/dist/adapters/pi-readiness.js +90 -0
- package/daemon/dist/adapters/pi-readiness.js.map +1 -0
- package/daemon/dist/adapters/pi-resume.d.ts +3 -1
- package/daemon/dist/adapters/pi-resume.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-resume.js +8 -1
- package/daemon/dist/adapters/pi-resume.js.map +1 -1
- package/daemon/dist/adapters/pi-runner-protocol.d.ts +15 -0
- package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runner-protocol.js +28 -0
- package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
- package/daemon/dist/adapters/pi-runner.d.ts +3 -0
- package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runner.js +92 -15
- package/daemon/dist/adapters/pi-runner.js.map +1 -1
- package/daemon/dist/adapters/pi-runtime-adapter.d.ts +8 -0
- package/daemon/dist/adapters/pi-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/pi-runtime-adapter.js +37 -9
- package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/stub-runner-protocol.d.ts +1 -1
- package/daemon/dist/adapters/stub-runner-protocol.d.ts.map +1 -1
- package/daemon/dist/adapters/stub-runner.d.ts +1 -1
- package/daemon/dist/adapters/stub-runner.d.ts.map +1 -1
- package/daemon/dist/adapters/stub-runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/adapters/stub-runtime-adapter.js +10 -7
- package/daemon/dist/adapters/stub-runtime-adapter.js.map +1 -1
- package/daemon/dist/adapters/tmux.d.ts +7 -3
- package/daemon/dist/adapters/tmux.d.ts.map +1 -1
- package/daemon/dist/adapters/tmux.js +20 -12
- package/daemon/dist/adapters/tmux.js.map +1 -1
- package/daemon/dist/adapters/yolo-mode.d.ts +1 -1
- package/daemon/dist/adapters/yolo-mode.d.ts.map +1 -1
- package/daemon/dist/adapters/yolo-mode.js +3 -0
- package/daemon/dist/adapters/yolo-mode.js.map +1 -1
- package/daemon/dist/build-info.js +3 -3
- package/daemon/dist/bundle-behaviour-surface.d.ts +2 -0
- package/daemon/dist/bundle-behaviour-surface.d.ts.map +1 -0
- package/daemon/dist/bundle-behaviour-surface.js +2 -0
- package/daemon/dist/bundle-behaviour-surface.js.map +1 -0
- package/daemon/dist/bundle-identity-surface.d.ts +2 -0
- package/daemon/dist/bundle-identity-surface.d.ts.map +1 -0
- package/daemon/dist/bundle-identity-surface.js +4 -0
- package/daemon/dist/bundle-identity-surface.js.map +1 -0
- package/daemon/dist/daemon-shutdown.d.ts +1 -1
- package/daemon/dist/daemon-shutdown.d.ts.map +1 -1
- package/daemon/dist/daemon-shutdown.js +5 -1
- package/daemon/dist/daemon-shutdown.js.map +1 -1
- package/daemon/dist/db/all-migrations.d.ts.map +1 -1
- package/daemon/dist/db/all-migrations.js +6 -0
- package/daemon/dist/db/all-migrations.js.map +1 -1
- package/daemon/dist/db/migrations/095_rig_non_interruptive.d.ts +3 -0
- package/daemon/dist/db/migrations/095_rig_non_interruptive.d.ts.map +1 -0
- package/daemon/dist/db/migrations/095_rig_non_interruptive.js +5 -0
- package/daemon/dist/db/migrations/095_rig_non_interruptive.js.map +1 -0
- package/daemon/dist/db/migrations/096_rig_install_root.d.ts +3 -0
- package/daemon/dist/db/migrations/096_rig_install_root.d.ts.map +1 -0
- package/daemon/dist/db/migrations/096_rig_install_root.js +5 -0
- package/daemon/dist/db/migrations/096_rig_install_root.js.map +1 -0
- package/daemon/dist/db/migrations/097_thread_part_map.d.ts +3 -0
- package/daemon/dist/db/migrations/097_thread_part_map.d.ts.map +1 -0
- package/daemon/dist/db/migrations/097_thread_part_map.js +20 -0
- package/daemon/dist/db/migrations/097_thread_part_map.js.map +1 -0
- package/daemon/dist/domain/activity-taxonomy.d.ts +7 -0
- package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -1
- package/daemon/dist/domain/activity-taxonomy.js.map +1 -1
- package/daemon/dist/domain/agent-activity-store.d.ts +12 -0
- package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -1
- package/daemon/dist/domain/agent-activity-store.js +55 -30
- package/daemon/dist/domain/agent-activity-store.js.map +1 -1
- package/daemon/dist/domain/agent-images/agent-image-types.d.ts +1 -1
- package/daemon/dist/domain/agent-images/agent-image-types.d.ts.map +1 -1
- package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
- package/daemon/dist/domain/agent-manifest.js +4 -2
- package/daemon/dist/domain/agent-manifest.js.map +1 -1
- package/daemon/dist/domain/bootstrap-orchestrator.d.ts +10 -0
- package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/bootstrap-orchestrator.js +136 -32
- package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
- package/daemon/dist/domain/builtin-policy-reference.d.ts +1 -1
- package/daemon/dist/domain/builtin-policy-reference.d.ts.map +1 -1
- package/daemon/dist/domain/builtin-policy-reference.js +2 -2
- package/daemon/dist/domain/builtin-policy-reference.js.map +1 -1
- package/daemon/dist/domain/bundle-archive.d.ts +24 -0
- package/daemon/dist/domain/bundle-archive.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-archive.js +52 -27
- package/daemon/dist/domain/bundle-archive.js.map +1 -1
- package/daemon/dist/domain/bundle-audit.d.ts +5 -0
- package/daemon/dist/domain/bundle-audit.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-audit.js.map +1 -1
- package/daemon/dist/domain/bundle-behaviour-inspect.d.ts +4 -0
- package/daemon/dist/domain/bundle-behaviour-inspect.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-behaviour-inspect.js +56 -0
- package/daemon/dist/domain/bundle-behaviour-inspect.js.map +1 -0
- package/daemon/dist/domain/bundle-behaviour.d.ts +118 -0
- package/daemon/dist/domain/bundle-behaviour.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-behaviour.js +364 -0
- package/daemon/dist/domain/bundle-behaviour.js.map +1 -0
- package/daemon/dist/domain/bundle-carried-context-pack.d.ts +16 -0
- package/daemon/dist/domain/bundle-carried-context-pack.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-carried-context-pack.js +67 -0
- package/daemon/dist/domain/bundle-carried-context-pack.js.map +1 -0
- package/daemon/dist/domain/bundle-carried-project.d.ts +13 -0
- package/daemon/dist/domain/bundle-carried-project.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-carried-project.js +71 -0
- package/daemon/dist/domain/bundle-carried-project.js.map +1 -0
- package/daemon/dist/domain/bundle-conflict-detector.js +3 -3
- package/daemon/dist/domain/bundle-conflict-detector.js.map +1 -1
- package/daemon/dist/domain/bundle-content-routing.d.ts +49 -0
- package/daemon/dist/domain/bundle-content-routing.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-content-routing.js +246 -0
- package/daemon/dist/domain/bundle-content-routing.js.map +1 -0
- package/daemon/dist/domain/bundle-context-packs-router.d.ts +7 -2
- package/daemon/dist/domain/bundle-context-packs-router.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-context-packs-router.js +19 -0
- package/daemon/dist/domain/bundle-context-packs-router.js.map +1 -1
- package/daemon/dist/domain/bundle-identity.d.ts +27 -0
- package/daemon/dist/domain/bundle-identity.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-identity.js +34 -0
- package/daemon/dist/domain/bundle-identity.js.map +1 -0
- package/daemon/dist/domain/bundle-install-context.d.ts +22 -0
- package/daemon/dist/domain/bundle-install-context.d.ts.map +1 -0
- package/daemon/dist/domain/bundle-install-context.js +64 -0
- package/daemon/dist/domain/bundle-install-context.js.map +1 -0
- package/daemon/dist/domain/bundle-integrity.d.ts +1 -0
- package/daemon/dist/domain/bundle-integrity.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-integrity.js +1 -1
- package/daemon/dist/domain/bundle-integrity.js.map +1 -1
- package/daemon/dist/domain/bundle-source-resolver.d.ts +4 -1
- package/daemon/dist/domain/bundle-source-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-source-resolver.js +73 -19
- package/daemon/dist/domain/bundle-source-resolver.js.map +1 -1
- package/daemon/dist/domain/bundle-types.d.ts +38 -1
- package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
- package/daemon/dist/domain/bundle-types.js +78 -0
- package/daemon/dist/domain/bundle-types.js.map +1 -1
- package/daemon/dist/domain/chat-repository.d.ts +5 -0
- package/daemon/dist/domain/chat-repository.d.ts.map +1 -1
- package/daemon/dist/domain/chat-repository.js +8 -0
- package/daemon/dist/domain/chat-repository.js.map +1 -1
- package/daemon/dist/domain/claim-service.d.ts.map +1 -1
- package/daemon/dist/domain/claim-service.js +5 -4
- package/daemon/dist/domain/claim-service.js.map +1 -1
- package/daemon/dist/domain/claude-activity-hooks.d.ts +3 -0
- package/daemon/dist/domain/claude-activity-hooks.d.ts.map +1 -1
- package/daemon/dist/domain/claude-activity-hooks.js +8 -1
- package/daemon/dist/domain/claude-activity-hooks.js.map +1 -1
- package/daemon/dist/domain/claude-compaction-enforcer.d.ts +15 -1
- package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
- package/daemon/dist/domain/claude-compaction-enforcer.js +87 -23
- package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
- package/daemon/dist/domain/codex-team-workspace.d.ts +8 -0
- package/daemon/dist/domain/codex-team-workspace.d.ts.map +1 -0
- package/daemon/dist/domain/codex-team-workspace.js +54 -0
- package/daemon/dist/domain/codex-team-workspace.js.map +1 -0
- package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
- package/daemon/dist/domain/codex-thread-id.js +4 -2
- package/daemon/dist/domain/codex-thread-id.js.map +1 -1
- package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/context-monitor.js +9 -1
- package/daemon/dist/domain/context-monitor.js.map +1 -1
- package/daemon/dist/domain/daemon-version.d.ts +3 -1
- package/daemon/dist/domain/daemon-version.d.ts.map +1 -1
- package/daemon/dist/domain/daemon-version.js +6 -1
- package/daemon/dist/domain/daemon-version.js.map +1 -1
- package/daemon/dist/domain/event-loop-monitor.d.ts +6 -0
- package/daemon/dist/domain/event-loop-monitor.d.ts.map +1 -1
- package/daemon/dist/domain/event-loop-monitor.js +13 -0
- package/daemon/dist/domain/event-loop-monitor.js.map +1 -1
- package/daemon/dist/domain/execution-view.d.ts.map +1 -1
- package/daemon/dist/domain/execution-view.js +57 -11
- package/daemon/dist/domain/execution-view.js.map +1 -1
- package/daemon/dist/domain/finite-telemetry.d.ts +74 -0
- package/daemon/dist/domain/finite-telemetry.d.ts.map +1 -0
- package/daemon/dist/domain/finite-telemetry.js +236 -0
- package/daemon/dist/domain/finite-telemetry.js.map +1 -0
- package/daemon/dist/domain/gateway/connections-projection.d.ts +5 -1
- package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/connections-projection.js +2 -0
- package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
- package/daemon/dist/domain/gateway/destination-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/destination-resolver.js +7 -4
- package/daemon/dist/domain/gateway/destination-resolver.js.map +1 -1
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +2 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/gateway-subsystem.js +4 -0
- package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
- package/daemon/dist/domain/gateway/human-readiness.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/human-readiness.js +23 -6
- package/daemon/dist/domain/gateway/human-readiness.js.map +1 -1
- package/daemon/dist/domain/gateway/human-registry.d.ts +2 -2
- package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/human-registry.js +2 -2
- package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/capabilities.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/capabilities.js +3 -1
- package/daemon/dist/domain/gateway/slack/capabilities.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/channel-map.d.ts +39 -0
- package/daemon/dist/domain/gateway/slack/channel-map.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/channel-map.js +114 -0
- package/daemon/dist/domain/gateway/slack/channel-map.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts +45 -0
- package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -0
- package/daemon/dist/domain/gateway/slack/channel-recovery.js +176 -0
- package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -0
- package/daemon/dist/domain/gateway/slack/config.d.ts +7 -0
- package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/config.js +19 -2
- package/daemon/dist/domain/gateway/slack/config.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/inbound.d.ts +27 -2
- package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/inbound.js +123 -11
- package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/message.d.ts +7 -0
- package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/message.js +36 -0
- package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-api.d.ts +1 -0
- package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-api.js +3 -1
- package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +30 -7
- package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-delivery.js +253 -51
- package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js +97 -11
- package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +6 -0
- package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.js +51 -1
- package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/state-store.d.ts +24 -0
- package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/state-store.js +84 -1
- package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-routing.js +22 -2
- package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +14 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js +27 -0
- package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
- package/daemon/dist/domain/generated-file-hygiene.d.ts +3 -0
- package/daemon/dist/domain/generated-file-hygiene.d.ts.map +1 -0
- package/daemon/dist/domain/generated-file-hygiene.js +145 -0
- package/daemon/dist/domain/generated-file-hygiene.js.map +1 -0
- package/daemon/dist/domain/install-planner.d.ts.map +1 -1
- package/daemon/dist/domain/install-planner.js +17 -0
- package/daemon/dist/domain/install-planner.js.map +1 -1
- package/daemon/dist/domain/managed-blocks.d.ts +1 -0
- package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
- package/daemon/dist/domain/managed-blocks.js +8 -2
- package/daemon/dist/domain/managed-blocks.js.map +1 -1
- package/daemon/dist/domain/markdown-address.d.ts.map +1 -1
- package/daemon/dist/domain/markdown-address.js +23 -6
- package/daemon/dist/domain/markdown-address.js.map +1 -1
- package/daemon/dist/domain/native-permission-store.d.ts +14 -0
- package/daemon/dist/domain/native-permission-store.d.ts.map +1 -1
- package/daemon/dist/domain/native-permission-store.js +168 -4
- package/daemon/dist/domain/native-permission-store.js.map +1 -1
- package/daemon/dist/domain/native-process-executable.d.ts +4 -0
- package/daemon/dist/domain/native-process-executable.d.ts.map +1 -0
- package/daemon/dist/domain/native-process-executable.js +53 -0
- package/daemon/dist/domain/native-process-executable.js.map +1 -0
- package/daemon/dist/domain/native-process-lineage.d.ts +2 -0
- package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
- package/daemon/dist/domain/native-process-lineage.js +70 -8
- package/daemon/dist/domain/native-process-lineage.js.map +1 -1
- package/daemon/dist/domain/native-resume-probe.d.ts +3 -1
- package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
- package/daemon/dist/domain/native-resume-probe.js +38 -7
- package/daemon/dist/domain/native-resume-probe.js.map +1 -1
- package/daemon/dist/domain/node-inventory.d.ts +2 -2
- package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
- package/daemon/dist/domain/node-inventory.js +30 -4
- package/daemon/dist/domain/node-inventory.js.map +1 -1
- package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/node-launcher.js +1 -0
- package/daemon/dist/domain/node-launcher.js.map +1 -1
- package/daemon/dist/domain/pane-binding-observation.d.ts +1 -0
- package/daemon/dist/domain/pane-binding-observation.d.ts.map +1 -1
- package/daemon/dist/domain/pane-binding-observation.js +3 -1
- package/daemon/dist/domain/pane-binding-observation.js.map +1 -1
- package/daemon/dist/domain/permission-policy/policy-ref.d.ts +6 -1
- package/daemon/dist/domain/permission-policy/policy-ref.d.ts.map +1 -1
- package/daemon/dist/domain/permission-policy/policy-ref.js +16 -4
- package/daemon/dist/domain/permission-policy/policy-ref.js.map +1 -1
- package/daemon/dist/domain/permission-policy/policy-spec.d.ts +1 -1
- package/daemon/dist/domain/permission-policy/policy-spec.d.ts.map +1 -1
- package/daemon/dist/domain/permission-policy/policy-spec.js +2 -2
- package/daemon/dist/domain/permission-policy/policy-spec.js.map +1 -1
- package/daemon/dist/domain/plugin-vendor-service.d.ts +6 -0
- package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
- package/daemon/dist/domain/plugin-vendor-service.js +12 -0
- package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
- package/daemon/dist/domain/profile-resolver.d.ts +3 -2
- package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
- package/daemon/dist/domain/profile-resolver.js +71 -9
- package/daemon/dist/domain/profile-resolver.js.map +1 -1
- package/daemon/dist/domain/projection-planner.d.ts +11 -0
- package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
- package/daemon/dist/domain/projection-planner.js +1 -1
- package/daemon/dist/domain/projection-planner.js.map +1 -1
- package/daemon/dist/domain/ps-projection.d.ts +11 -9
- package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
- package/daemon/dist/domain/ps-projection.js +15 -12
- package/daemon/dist/domain/ps-projection.js.map +1 -1
- package/daemon/dist/domain/queue-repository.d.ts +2 -0
- package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
- package/daemon/dist/domain/queue-repository.js +75 -24
- package/daemon/dist/domain/queue-repository.js.map +1 -1
- package/daemon/dist/domain/queue-retention.d.ts +2 -2
- package/daemon/dist/domain/queue-retention.js +4 -4
- package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
- package/daemon/dist/domain/queue-transition-log.js +12 -10
- package/daemon/dist/domain/queue-transition-log.js.map +1 -1
- package/daemon/dist/domain/queue-wait-backoff.d.ts.map +1 -1
- package/daemon/dist/domain/queue-wait-backoff.js +6 -2
- package/daemon/dist/domain/queue-wait-backoff.js.map +1 -1
- package/daemon/dist/domain/queue-waiting.d.ts.map +1 -1
- package/daemon/dist/domain/queue-waiting.js +7 -2
- package/daemon/dist/domain/queue-waiting.js.map +1 -1
- package/daemon/dist/domain/queue-wake-ladder.d.ts +15 -2
- package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
- package/daemon/dist/domain/queue-wake-ladder.js +29 -6
- package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
- package/daemon/dist/domain/readiness-timeout.d.ts +7 -0
- package/daemon/dist/domain/readiness-timeout.d.ts.map +1 -0
- package/daemon/dist/domain/readiness-timeout.js +19 -0
- package/daemon/dist/domain/readiness-timeout.js.map +1 -0
- package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
- package/daemon/dist/domain/rehydrate-eligibility.js +5 -2
- package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
- package/daemon/dist/domain/reply-to-choice.d.ts +6 -2
- package/daemon/dist/domain/reply-to-choice.d.ts.map +1 -1
- package/daemon/dist/domain/reply-to-choice.js +9 -6
- package/daemon/dist/domain/reply-to-choice.js.map +1 -1
- package/daemon/dist/domain/request-phase-observer.d.ts +69 -0
- package/daemon/dist/domain/request-phase-observer.d.ts.map +1 -0
- package/daemon/dist/domain/request-phase-observer.js +206 -0
- package/daemon/dist/domain/request-phase-observer.js.map +1 -0
- package/daemon/dist/domain/restore-check-service.d.ts +5 -1
- package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
- package/daemon/dist/domain/restore-check-service.js +17 -3
- package/daemon/dist/domain/restore-check-service.js.map +1 -1
- package/daemon/dist/domain/restore-orchestrator.d.ts +2 -0
- package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/restore-orchestrator.js +58 -12
- package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
- package/daemon/dist/domain/rig-mode/operating-posture.d.ts +17 -1
- package/daemon/dist/domain/rig-mode/operating-posture.d.ts.map +1 -1
- package/daemon/dist/domain/rig-mode/operating-posture.js +53 -15
- package/daemon/dist/domain/rig-mode/operating-posture.js.map +1 -1
- package/daemon/dist/domain/rig-repository.d.ts +15 -6
- package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
- package/daemon/dist/domain/rig-repository.js +62 -10
- package/daemon/dist/domain/rig-repository.js.map +1 -1
- package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
- package/daemon/dist/domain/rig-teardown.js +12 -3
- package/daemon/dist/domain/rig-teardown.js.map +1 -1
- package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-codec.js +2 -0
- package/daemon/dist/domain/rigspec-codec.js.map +1 -1
- package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-exporter.js +1 -0
- package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.d.ts +9 -3
- package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-instantiator.js +46 -13
- package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.d.ts +3 -2
- package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-preflight.js +24 -12
- package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
- package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
- package/daemon/dist/domain/rigspec-schema.js +24 -5
- package/daemon/dist/domain/rigspec-schema.js.map +1 -1
- package/daemon/dist/domain/route-timing-recorder.d.ts.map +1 -1
- package/daemon/dist/domain/route-timing-recorder.js +2 -0
- package/daemon/dist/domain/route-timing-recorder.js.map +1 -1
- package/daemon/dist/domain/runtime-adapter.d.ts +12 -3
- package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
- package/daemon/dist/domain/runtime-adapter.js +1 -0
- package/daemon/dist/domain/runtime-adapter.js.map +1 -1
- package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-activity-service.js +16 -6
- package/daemon/dist/domain/seat-activity-service.js.map +1 -1
- package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
- package/daemon/dist/domain/seat-attention-reconciler.js +10 -4
- package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
- package/daemon/dist/domain/seat-handover-service.d.ts +2 -0
- package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-handover-service.js +14 -8
- package/daemon/dist/domain/seat-handover-service.js.map +1 -1
- package/daemon/dist/domain/seat-launch-environment.d.ts.map +1 -1
- package/daemon/dist/domain/seat-launch-environment.js +4 -0
- package/daemon/dist/domain/seat-launch-environment.js.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.d.ts +4 -0
- package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-lifecycle-service.js +4 -0
- package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
- package/daemon/dist/domain/seat-status-service.d.ts +2 -1
- package/daemon/dist/domain/seat-status-service.d.ts.map +1 -1
- package/daemon/dist/domain/seat-status-service.js +6 -4
- package/daemon/dist/domain/seat-status-service.js.map +1 -1
- package/daemon/dist/domain/service-orchestrator.d.ts +1 -0
- package/daemon/dist/domain/service-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/service-orchestrator.js +4 -0
- package/daemon/dist/domain/service-orchestrator.js.map +1 -1
- package/daemon/dist/domain/session-jsonl.d.ts.map +1 -1
- package/daemon/dist/domain/session-jsonl.js +10 -4
- package/daemon/dist/domain/session-jsonl.js.map +1 -1
- package/daemon/dist/domain/session-transport.d.ts +9 -20
- package/daemon/dist/domain/session-transport.d.ts.map +1 -1
- package/daemon/dist/domain/session-transport.js +198 -44
- package/daemon/dist/domain/session-transport.js.map +1 -1
- package/daemon/dist/domain/skill-audit.d.ts +19 -0
- package/daemon/dist/domain/skill-audit.d.ts.map +1 -1
- package/daemon/dist/domain/skill-audit.js +97 -5
- package/daemon/dist/domain/skill-audit.js.map +1 -1
- package/daemon/dist/domain/skill-catalog.d.ts +19 -0
- package/daemon/dist/domain/skill-catalog.d.ts.map +1 -1
- package/daemon/dist/domain/skill-catalog.js +175 -17
- package/daemon/dist/domain/skill-catalog.js.map +1 -1
- package/daemon/dist/domain/skill-discovery.d.ts +1 -1
- package/daemon/dist/domain/skill-discovery.d.ts.map +1 -1
- package/daemon/dist/domain/skill-discovery.js +6 -0
- package/daemon/dist/domain/skill-discovery.js.map +1 -1
- package/daemon/dist/domain/skill-mirror-drift.d.ts +6 -1
- package/daemon/dist/domain/skill-mirror-drift.d.ts.map +1 -1
- package/daemon/dist/domain/skill-mirror-drift.js +23 -12
- package/daemon/dist/domain/skill-mirror-drift.js.map +1 -1
- package/daemon/dist/domain/slow-op-recorder.d.ts +5 -0
- package/daemon/dist/domain/slow-op-recorder.d.ts.map +1 -1
- package/daemon/dist/domain/slow-op-recorder.js +34 -1
- package/daemon/dist/domain/slow-op-recorder.js.map +1 -1
- package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
- package/daemon/dist/domain/snapshot-repository.js +12 -32
- package/daemon/dist/domain/snapshot-repository.js.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.d.ts +30 -5
- package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
- package/daemon/dist/domain/startup-orchestrator.js +143 -43
- package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
- package/daemon/dist/domain/startup-proof.d.ts +7 -0
- package/daemon/dist/domain/startup-proof.d.ts.map +1 -1
- package/daemon/dist/domain/startup-proof.js +7 -0
- package/daemon/dist/domain/startup-proof.js.map +1 -1
- package/daemon/dist/domain/startup-submission-evidence.d.ts +5 -1
- package/daemon/dist/domain/startup-submission-evidence.d.ts.map +1 -1
- package/daemon/dist/domain/startup-submission-evidence.js +19 -2
- package/daemon/dist/domain/startup-submission-evidence.js.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.d.ts +9 -3
- package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
- package/daemon/dist/domain/successor-session-launcher.js +12 -4
- package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
- package/daemon/dist/domain/system-world.d.ts +3 -0
- package/daemon/dist/domain/system-world.d.ts.map +1 -1
- package/daemon/dist/domain/system-world.js +24 -21
- package/daemon/dist/domain/system-world.js.map +1 -1
- package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/cmux-provider-adapter.js +2 -3
- package/daemon/dist/domain/terminal/cmux-provider-adapter.js.map +1 -1
- package/daemon/dist/domain/terminal/herdr-adapter.d.ts +23 -5
- package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/herdr-adapter.js +116 -15
- package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
- package/daemon/dist/domain/terminal/terminal-provider.d.ts +11 -0
- package/daemon/dist/domain/terminal/terminal-provider.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.d.ts +14 -0
- package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/terminal-service.js +91 -10
- package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
- package/daemon/dist/domain/terminal/view-composer.d.ts +6 -0
- package/daemon/dist/domain/terminal/view-composer.d.ts.map +1 -1
- package/daemon/dist/domain/terminal/view-composer.js +4 -2
- package/daemon/dist/domain/terminal/view-composer.js.map +1 -1
- package/daemon/dist/domain/topology/remote-up-leaf.d.ts +1 -0
- package/daemon/dist/domain/topology/remote-up-leaf.d.ts.map +1 -1
- package/daemon/dist/domain/topology/remote-up-leaf.js.map +1 -1
- package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
- package/daemon/dist/domain/transcript-store.js +24 -11
- package/daemon/dist/domain/transcript-store.js.map +1 -1
- package/daemon/dist/domain/types.d.ts +8 -0
- package/daemon/dist/domain/types.d.ts.map +1 -1
- package/daemon/dist/domain/types.js.map +1 -1
- package/daemon/dist/domain/usage-samples-store.js +2 -2
- package/daemon/dist/domain/usage-samples-store.js.map +1 -1
- package/daemon/dist/domain/usage-series.d.ts.map +1 -1
- package/daemon/dist/domain/usage-series.js +42 -10
- package/daemon/dist/domain/usage-series.js.map +1 -1
- package/daemon/dist/domain/user-settings/settings-browser.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-browser.js +2 -0
- package/daemon/dist/domain/user-settings/settings-browser.js.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
- package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
- package/daemon/dist/domain/user-settings/settings-store.js +14 -1
- package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
- package/daemon/dist/domain/watchdog-due.d.ts +17 -0
- package/daemon/dist/domain/watchdog-due.d.ts.map +1 -0
- package/daemon/dist/domain/watchdog-due.js +45 -0
- package/daemon/dist/domain/watchdog-due.js.map +1 -0
- package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -1
- package/daemon/dist/domain/watchdog-scheduler.js +3 -7
- package/daemon/dist/domain/watchdog-scheduler.js.map +1 -1
- package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-projector.js +15 -5
- package/daemon/dist/domain/workflow-projector.js.map +1 -1
- package/daemon/dist/domain/workflow-runtime.d.ts +1 -1
- package/daemon/dist/domain/workflow-runtime.js +1 -1
- package/daemon/dist/domain/workflow-runtime.js.map +1 -1
- package/daemon/dist/domain/workflow-step-trail-log.d.ts +6 -0
- package/daemon/dist/domain/workflow-step-trail-log.d.ts.map +1 -1
- package/daemon/dist/domain/workflow-step-trail-log.js +11 -0
- package/daemon/dist/domain/workflow-step-trail-log.js.map +1 -1
- package/daemon/dist/domain/workspace/project-catalog.d.ts +20 -0
- package/daemon/dist/domain/workspace/project-catalog.d.ts.map +1 -1
- package/daemon/dist/domain/workspace/project-catalog.js +92 -0
- package/daemon/dist/domain/workspace/project-catalog.js.map +1 -1
- package/daemon/dist/domain/workspace/project-registration.d.ts +49 -0
- package/daemon/dist/domain/workspace/project-registration.d.ts.map +1 -0
- package/daemon/dist/domain/workspace/project-registration.js +251 -0
- package/daemon/dist/domain/workspace/project-registration.js.map +1 -0
- package/daemon/dist/gateway-slack-surface.d.ts +1 -0
- package/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
- package/daemon/dist/gateway-slack-surface.js +2 -1
- package/daemon/dist/gateway-slack-surface.js.map +1 -1
- package/daemon/dist/index.d.ts +1 -0
- package/daemon/dist/index.d.ts.map +1 -1
- package/daemon/dist/index.js +9 -8
- package/daemon/dist/index.js.map +1 -1
- package/daemon/dist/project-catalog-surface.d.ts +2 -1
- package/daemon/dist/project-catalog-surface.d.ts.map +1 -1
- package/daemon/dist/project-catalog-surface.js +1 -1
- package/daemon/dist/project-catalog-surface.js.map +1 -1
- package/daemon/dist/routes/agent-images.js +5 -5
- package/daemon/dist/routes/agent-images.js.map +1 -1
- package/daemon/dist/routes/bootstrap-failure-response.d.ts +13 -0
- package/daemon/dist/routes/bootstrap-failure-response.d.ts.map +1 -0
- package/daemon/dist/routes/bootstrap-failure-response.js +52 -0
- package/daemon/dist/routes/bootstrap-failure-response.js.map +1 -0
- package/daemon/dist/routes/bundles.d.ts.map +1 -1
- package/daemon/dist/routes/bundles.js +197 -449
- package/daemon/dist/routes/bundles.js.map +1 -1
- package/daemon/dist/routes/chat.d.ts.map +1 -1
- package/daemon/dist/routes/chat.js +16 -1
- package/daemon/dist/routes/chat.js.map +1 -1
- package/daemon/dist/routes/compaction.d.ts.map +1 -1
- package/daemon/dist/routes/compaction.js +14 -2
- package/daemon/dist/routes/compaction.js.map +1 -1
- package/daemon/dist/routes/env.d.ts.map +1 -1
- package/daemon/dist/routes/env.js +14 -4
- package/daemon/dist/routes/env.js.map +1 -1
- package/daemon/dist/routes/gateway.d.ts.map +1 -1
- package/daemon/dist/routes/gateway.js +5 -0
- package/daemon/dist/routes/gateway.js.map +1 -1
- package/daemon/dist/routes/projects.d.ts.map +1 -1
- package/daemon/dist/routes/projects.js +4 -2
- package/daemon/dist/routes/projects.js.map +1 -1
- package/daemon/dist/routes/restore-check.d.ts.map +1 -1
- package/daemon/dist/routes/restore-check.js +2 -0
- package/daemon/dist/routes/restore-check.js.map +1 -1
- package/daemon/dist/routes/rigs.d.ts.map +1 -1
- package/daemon/dist/routes/rigs.js +5 -4
- package/daemon/dist/routes/rigs.js.map +1 -1
- package/daemon/dist/routes/rigspec.js +4 -2
- package/daemon/dist/routes/rigspec.js.map +1 -1
- package/daemon/dist/routes/seat.js +23 -16
- package/daemon/dist/routes/seat.js.map +1 -1
- package/daemon/dist/routes/sessions.d.ts.map +1 -1
- package/daemon/dist/routes/sessions.js +12 -11
- package/daemon/dist/routes/sessions.js.map +1 -1
- package/daemon/dist/routes/skills.d.ts.map +1 -1
- package/daemon/dist/routes/skills.js +15 -7
- package/daemon/dist/routes/skills.js.map +1 -1
- package/daemon/dist/routes/telemetry.d.ts +2 -0
- package/daemon/dist/routes/telemetry.d.ts.map +1 -1
- package/daemon/dist/routes/telemetry.js +16 -0
- package/daemon/dist/routes/telemetry.js.map +1 -1
- package/daemon/dist/routes/terminal-ws.js +15 -2
- package/daemon/dist/routes/terminal-ws.js.map +1 -1
- package/daemon/dist/routes/terminal.d.ts.map +1 -1
- package/daemon/dist/routes/terminal.js +6 -4
- package/daemon/dist/routes/terminal.js.map +1 -1
- package/daemon/dist/routes/up.d.ts.map +1 -1
- package/daemon/dist/routes/up.js +12 -59
- package/daemon/dist/routes/up.js.map +1 -1
- package/daemon/dist/server.d.ts +1 -0
- package/daemon/dist/server.d.ts.map +1 -1
- package/daemon/dist/server.js +4 -1
- package/daemon/dist/server.js.map +1 -1
- package/daemon/dist/spec-validation-surface.d.ts +2 -0
- package/daemon/dist/spec-validation-surface.d.ts.map +1 -1
- package/daemon/dist/spec-validation-surface.js +2 -0
- package/daemon/dist/spec-validation-surface.js.map +1 -1
- package/daemon/dist/startup.d.ts.map +1 -1
- package/daemon/dist/startup.js +65 -18
- package/daemon/dist/startup.js.map +1 -1
- package/daemon/dist/system-world-surface.d.ts +1 -1
- package/daemon/dist/system-world-surface.d.ts.map +1 -1
- package/daemon/dist/system-world-surface.js +1 -1
- package/daemon/dist/system-world-surface.js.map +1 -1
- package/daemon/dist/terminal/TerminalSessionBroker.d.ts.map +1 -1
- package/daemon/dist/terminal/TerminalSessionBroker.js +9 -1
- package/daemon/dist/terminal/TerminalSessionBroker.js.map +1 -1
- package/daemon/docs/reference/agent-spec.md +114 -68
- package/daemon/docs/reference/agent-startup-guide.md +111 -33
- package/daemon/docs/reference/agent-state-taxonomy.md +44 -13
- package/daemon/docs/reference/browser-access.md +8 -7
- package/daemon/docs/reference/bundle-formats.md +209 -0
- package/daemon/docs/reference/chain-file-convention.md +18 -9
- package/daemon/docs/reference/developing.md +8 -1
- package/daemon/docs/reference/edge-types.md +18 -10
- package/daemon/docs/reference/getting-started.md +593 -139
- package/daemon/docs/reference/health-diagnosis.md +14 -6
- package/daemon/docs/reference/help.md +66 -12
- package/daemon/docs/reference/host-resources.md +3 -2
- package/daemon/docs/reference/inventory-request-diagnostics.md +75 -0
- package/daemon/docs/reference/knowledge-maturity.md +3 -1
- package/daemon/docs/reference/legacy-topology-migration.md +4 -2
- package/daemon/docs/reference/lore-routing.md +3 -1
- package/daemon/docs/reference/mission-install.md +3 -1
- package/daemon/docs/reference/non-interruptive-mode.md +63 -0
- package/daemon/docs/reference/planning-dial.md +2 -1
- package/daemon/docs/reference/product-journey-sdlc.md +11 -6
- package/daemon/docs/reference/product-management-pass.md +3 -1
- package/daemon/docs/reference/project-workspace.md +81 -4
- package/daemon/docs/reference/publishing-a-rig-bundle.md +147 -0
- package/daemon/docs/reference/refocus-channel.md +28 -7
- package/daemon/docs/reference/release-boundary.md +7 -3
- package/daemon/docs/reference/rig-bundle.md +292 -43
- package/daemon/docs/reference/rig-spec.md +175 -26
- package/daemon/docs/reference/rosters.md +61 -0
- package/daemon/docs/reference/schemas/bundle-behaviour.v1.schema.json +546 -0
- package/daemon/docs/reference/schemas/bundle-common.v1.schema.json +110 -0
- package/daemon/docs/reference/schemas/bundle-configurations.v1.schema.json +67 -0
- package/daemon/docs/reference/schemas/bundle-status.v1.schema.json +323 -0
- package/daemon/docs/reference/schemas/fixtures/identity-vectors.json +80 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/behaviour/not-generated-with-sections.json +60 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/configurations/spaced-member.configurations.yaml +6 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/registry/listed-with-withdrawn-on.yaml +21 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/registry/missing-source.yaml +16 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/registry/parent-folder.yaml +20 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/registry/short-commit.yaml +20 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/registry/withdrawn-without-date.yaml +20 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/run-record/harness-check-with-configuration.json +75 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/run-record/unlabelable-platform.json +97 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/status/hand-edited-notice.json +61 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/status/tested-with-assistance.json +62 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/status/tested-without-records.json +59 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/status/unavailable-harness-with-result.json +61 -0
- package/daemon/docs/reference/schemas/fixtures/invalid/status/unavailable-listing-with-label.json +61 -0
- package/daemon/docs/reference/schemas/fixtures/valid/behaviour/custom-not-generated.json +22 -0
- package/daemon/docs/reference/schemas/fixtures/valid/behaviour/legacy-archive-unknown-identity.json +53 -0
- package/daemon/docs/reference/schemas/fixtures/valid/behaviour/mixed-runtimes-default.json +101 -0
- package/daemon/docs/reference/schemas/fixtures/valid/behaviour/mixed-runtimes-yolo.json +102 -0
- package/daemon/docs/reference/schemas/fixtures/valid/behaviour/openrig-dev.recommended.json +258 -0
- package/daemon/docs/reference/schemas/fixtures/valid/configurations/openrig-dev.configurations.yaml +12 -0
- package/daemon/docs/reference/schemas/fixtures/valid/registry/openrig-dev.yaml +20 -0
- package/daemon/docs/reference/schemas/fixtures/valid/registry/withdrawn.yaml +21 -0
- package/daemon/docs/reference/schemas/fixtures/valid/run-record/pi-harness-check-blocked.json +74 -0
- package/daemon/docs/reference/schemas/fixtures/valid/run-record/team-assisted-pass.json +97 -0
- package/daemon/docs/reference/schemas/fixtures/valid/run-record/team-pass.json +97 -0
- package/daemon/docs/reference/schemas/fixtures/valid/run-record/withdraws-earlier.json +99 -0
- package/daemon/docs/reference/schemas/fixtures/valid/status/status.json +61 -0
- package/daemon/docs/reference/schemas/registry-entry.v1.schema.json +139 -0
- package/daemon/docs/reference/schemas/run-record.v1.schema.json +315 -0
- package/daemon/docs/reference/scoped-operating-posture.md +17 -9
- package/daemon/docs/reference/sdlc-conventions.md +46 -28
- package/daemon/docs/reference/slack-app-setup.md +112 -11
- package/daemon/docs/reference/stream-classifier-worker.md +21 -8
- package/daemon/docs/reference/telemetry.md +114 -0
- package/daemon/docs/reference/whats-new.md +134 -0
- package/daemon/docs/reference/worktree-builds.md +12 -6
- package/daemon/policies/builtin/auto.policy.md +24 -0
- package/daemon/specs/agents/development/implementer/agent.yaml +2 -2
- package/daemon/specs/agents/development/qa/agent.yaml +1 -1
- package/daemon/specs/agents/product-management/pm/agent.yaml +10 -0
- package/daemon/specs/agents/shared/skills/core/agent-starters/SKILL.md +0 -6
- package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -8
- package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +5 -5
- package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +4 -5
- package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +31 -21
- package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +31 -31
- package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +2 -0
- package/daemon/specs/agents/shared/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +0 -1
- package/daemon/specs/agents/shared/skills/core/session-source-fork/SKILL.md +0 -5
- package/daemon/specs/agents/shared/skills/process/agent-browser/OPENRIG.md +1 -1
- package/daemon/specs/agents/shared/skills/process/systematic-debugging/SKILL.md +0 -2
- package/daemon/specs/rigs/focused/{adversarial-review → code-review}/rig.yaml +1 -1
- package/daemon/specs/rigs/focused/pm/CULTURE.md +21 -0
- package/daemon/specs/rigs/focused/{pm-team → pm}/rig.yaml +5 -5
- package/daemon/specs/rigs/focused/{research-team → research}/rig.yaml +1 -1
- package/daemon/specs/rigs/launch/factory/CULTURE.md +96 -0
- package/daemon/specs/rigs/launch/factory/guidance/advisor-role.md +10 -0
- package/daemon/specs/rigs/launch/factory/guidance/lead-first-move.md +83 -0
- package/daemon/specs/rigs/launch/{demo → factory}/rig.yaml +46 -35
- package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/instance/CRAFT.md +1 -1
- package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/rig/CRAFT.md +2 -2
- package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/rig/ORCHESTRATION-CRAFT.md +2 -2
- package/daemon/specs/rigs/{preview/product-team/topology/seats/dev1-qa → launch/factory/topology/seats/dev-qa}/CRAFT.md +1 -1
- package/daemon/specs/rigs/{preview/product-team/topology/seats/orch1-lead → launch/factory/topology/seats/orch-lead}/CRAFT.md +1 -1
- package/daemon/specs/rigs/{preview/product-team/topology/seats/rev1-r1 → launch/factory/topology/seats/review-r1}/CRAFT.md +1 -1
- package/daemon/specs/rigs/{preview/product-team/topology/seats/rev1-r2 → launch/factory/topology/seats/review-r2}/CRAFT.md +1 -1
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +37 -0
- package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/startup/context.md +12 -13
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +258 -9
- package/daemon/specs/rigs/launch/kernel/agents/operator/agent/startup/context.md +30 -7
- package/daemon/specs/rigs/launch/kernel/agents/queue/worker/guidance/role.md +37 -0
- package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +46 -2
- package/daemon/specs/rigs/launch/starter/CULTURE.md +39 -0
- package/daemon/specs/rigs/launch/starter/guidance/lead-first-move.md +67 -0
- package/daemon/specs/rigs/launch/{first-project-mixed → starter}/rig.yaml +11 -8
- package/dist/build-info.js +3 -3
- package/dist/bundle-behaviour.d.ts +10 -0
- package/dist/bundle-behaviour.d.ts.map +1 -0
- package/dist/bundle-behaviour.js +72 -0
- package/dist/bundle-behaviour.js.map +1 -0
- package/dist/cli-error.d.ts.map +1 -1
- package/dist/cli-error.js +11 -3
- package/dist/cli-error.js.map +1 -1
- package/dist/client.d.ts +2 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +2 -0
- package/dist/client.js.map +1 -1
- package/dist/commands/agent-image.js +2 -2
- package/dist/commands/agent-image.js.map +1 -1
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +30 -5
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/bundle.d.ts +12 -0
- package/dist/commands/bundle.d.ts.map +1 -1
- package/dist/commands/bundle.js +288 -22
- package/dist/commands/bundle.js.map +1 -1
- package/dist/commands/capture.js +4 -4
- package/dist/commands/capture.js.map +1 -1
- package/dist/commands/chatroom.d.ts.map +1 -1
- package/dist/commands/chatroom.js +21 -1
- package/dist/commands/chatroom.js.map +1 -1
- package/dist/commands/compact-plan.js +2 -2
- package/dist/commands/compact-plan.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +3 -0
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/context.d.ts +3 -1
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +70 -20
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/daemon.js +1 -1
- package/dist/commands/daemon.js.map +1 -1
- package/dist/commands/doctor.d.ts +3 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +17 -5
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/down.d.ts.map +1 -1
- package/dist/commands/down.js +49 -1
- package/dist/commands/down.js.map +1 -1
- package/dist/commands/env.js +1 -1
- package/dist/commands/env.js.map +1 -1
- package/dist/commands/gateway.d.ts.map +1 -1
- package/dist/commands/gateway.js +4 -3
- package/dist/commands/gateway.js.map +1 -1
- package/dist/commands/health.d.ts.map +1 -1
- package/dist/commands/health.js +4 -1
- package/dist/commands/health.js.map +1 -1
- package/dist/commands/host.d.ts +11 -0
- package/dist/commands/host.d.ts.map +1 -1
- package/dist/commands/host.js +25 -1
- package/dist/commands/host.js.map +1 -1
- package/dist/commands/import.d.ts.map +1 -1
- package/dist/commands/import.js +2 -0
- package/dist/commands/import.js.map +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +25 -12
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/package.d.ts.map +1 -1
- package/dist/commands/package.js +6 -3
- package/dist/commands/package.js.map +1 -1
- package/dist/commands/policy.d.ts.map +1 -1
- package/dist/commands/policy.js +9 -7
- package/dist/commands/policy.js.map +1 -1
- package/dist/commands/project-jev.js +1 -1
- package/dist/commands/project-jev.js.map +1 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +5 -3
- package/dist/commands/project.js.map +1 -1
- package/dist/commands/ps.d.ts +1 -0
- package/dist/commands/ps.d.ts.map +1 -1
- package/dist/commands/ps.js +12 -2
- package/dist/commands/ps.js.map +1 -1
- package/dist/commands/queue.d.ts.map +1 -1
- package/dist/commands/queue.js +10 -5
- package/dist/commands/queue.js.map +1 -1
- package/dist/commands/restore-packet.d.ts.map +1 -1
- package/dist/commands/restore-packet.js +6 -4
- package/dist/commands/restore-packet.js.map +1 -1
- package/dist/commands/restore.d.ts.map +1 -1
- package/dist/commands/restore.js +5 -0
- package/dist/commands/restore.js.map +1 -1
- package/dist/commands/roster.d.ts +63 -0
- package/dist/commands/roster.d.ts.map +1 -0
- package/dist/commands/roster.js +169 -0
- package/dist/commands/roster.js.map +1 -0
- package/dist/commands/scope.js +5 -5
- package/dist/commands/scope.js.map +1 -1
- package/dist/commands/seat.d.ts.map +1 -1
- package/dist/commands/seat.js +57 -8
- package/dist/commands/seat.js.map +1 -1
- package/dist/commands/send.d.ts.map +1 -1
- package/dist/commands/send.js +20 -6
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/setup.d.ts +7 -16
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +174 -338
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/skill.d.ts.map +1 -1
- package/dist/commands/skill.js +6 -1
- package/dist/commands/skill.js.map +1 -1
- package/dist/commands/slack.d.ts +6 -2
- package/dist/commands/slack.d.ts.map +1 -1
- package/dist/commands/slack.js +192 -10
- package/dist/commands/slack.js.map +1 -1
- package/dist/commands/specs.d.ts.map +1 -1
- package/dist/commands/specs.js +19 -2
- package/dist/commands/specs.js.map +1 -1
- package/dist/commands/start.js +1 -1
- package/dist/commands/start.js.map +1 -1
- package/dist/commands/stream.js +1 -1
- package/dist/commands/stream.js.map +1 -1
- package/dist/commands/telemetry.d.ts +5 -0
- package/dist/commands/telemetry.d.ts.map +1 -0
- package/dist/commands/telemetry.js +58 -0
- package/dist/commands/telemetry.js.map +1 -0
- package/dist/commands/terminal.d.ts +33 -0
- package/dist/commands/terminal.d.ts.map +1 -1
- package/dist/commands/terminal.js +30 -12
- package/dist/commands/terminal.js.map +1 -1
- package/dist/commands/tui.js +4 -4
- package/dist/commands/tui.js.map +1 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +115 -68
- package/dist/commands/up.js.map +1 -1
- package/dist/commands/whoami.d.ts +3 -0
- package/dist/commands/whoami.d.ts.map +1 -1
- package/dist/commands/whoami.js +29 -2
- package/dist/commands/whoami.js.map +1 -1
- package/dist/commands/workflow-follow.d.ts +1 -1
- package/dist/commands/workflow-follow.d.ts.map +1 -1
- package/dist/commands/workflow-follow.js +4 -3
- package/dist/commands/workflow-follow.js.map +1 -1
- package/dist/commands/workflow.d.ts.map +1 -1
- package/dist/commands/workflow.js +30 -18
- package/dist/commands/workflow.js.map +1 -1
- package/dist/config-store.d.ts +5 -1
- package/dist/config-store.d.ts.map +1 -1
- package/dist/config-store.js +17 -2
- package/dist/config-store.js.map +1 -1
- package/dist/daemon-auto-start.d.ts +8 -0
- package/dist/daemon-auto-start.d.ts.map +1 -0
- package/dist/daemon-auto-start.js +39 -0
- package/dist/daemon-auto-start.js.map +1 -0
- package/dist/front-door.d.ts.map +1 -1
- package/dist/front-door.js +5 -2
- package/dist/front-door.js.map +1 -1
- package/dist/herdr-launch-config.d.ts +3 -0
- package/dist/herdr-launch-config.d.ts.map +1 -0
- package/dist/herdr-launch-config.js +37 -0
- package/dist/herdr-launch-config.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/bundle-check.d.ts +13 -0
- package/dist/lib/bundle-check.d.ts.map +1 -0
- package/dist/lib/bundle-check.js +191 -0
- package/dist/lib/bundle-check.js.map +1 -0
- package/dist/lib/bundle-configuration.d.ts +60 -0
- package/dist/lib/bundle-configuration.d.ts.map +1 -0
- package/dist/lib/bundle-configuration.js +198 -0
- package/dist/lib/bundle-configuration.js.map +1 -0
- package/dist/lib/bundle-source.d.ts +59 -0
- package/dist/lib/bundle-source.d.ts.map +1 -0
- package/dist/lib/bundle-source.js +366 -0
- package/dist/lib/bundle-source.js.map +1 -0
- package/dist/lib/context-git.d.ts +2 -0
- package/dist/lib/context-git.d.ts.map +1 -1
- package/dist/lib/context-git.js +55 -5
- package/dist/lib/context-git.js.map +1 -1
- package/dist/lib/context-install.d.ts.map +1 -1
- package/dist/lib/context-install.js +2 -3
- package/dist/lib/context-install.js.map +1 -1
- package/dist/lib/permission-policy/policy-ref.d.ts +6 -1
- package/dist/lib/permission-policy/policy-ref.d.ts.map +1 -1
- package/dist/lib/permission-policy/policy-ref.js +16 -4
- package/dist/lib/permission-policy/policy-ref.js.map +1 -1
- package/dist/lib/permission-policy/policy-spec.d.ts +1 -1
- package/dist/lib/permission-policy/policy-spec.d.ts.map +1 -1
- package/dist/lib/permission-policy/policy-spec.js +2 -2
- package/dist/lib/permission-policy/policy-spec.js.map +1 -1
- package/dist/lib/scope/scope-fs.d.ts +3 -2
- package/dist/lib/scope/scope-fs.d.ts.map +1 -1
- package/dist/lib/scope/scope-fs.js +97 -9
- package/dist/lib/scope/scope-fs.js.map +1 -1
- package/dist/lib/scope/templates.d.ts.map +1 -1
- package/dist/lib/scope/templates.js +28 -23
- package/dist/lib/scope/templates.js.map +1 -1
- package/dist/lib/scope-templates/notes.md +1 -1
- package/dist/lib/work-install.d.ts +12 -0
- package/dist/lib/work-install.d.ts.map +1 -1
- package/dist/lib/work-install.js +55 -4
- package/dist/lib/work-install.js.map +1 -1
- package/dist/provider-auth.d.ts +32 -0
- package/dist/provider-auth.d.ts.map +1 -0
- package/dist/provider-auth.js +128 -0
- package/dist/provider-auth.js.map +1 -0
- package/dist/terminal-window.d.ts +19 -0
- package/dist/terminal-window.d.ts.map +1 -0
- package/dist/terminal-window.js +513 -0
- package/dist/terminal-window.js.map +1 -0
- package/package.json +1 -1
- package/tui/dist/commands/registry.d.ts.map +1 -1
- package/tui/dist/commands/registry.js +9 -4
- package/tui/dist/commands/registry.js.map +1 -1
- package/tui/dist/config/config-model.d.ts.map +1 -1
- package/tui/dist/config/config-model.js +1 -0
- package/tui/dist/config/config-model.js.map +1 -1
- package/tui/dist/connections/connections-model.d.ts +5 -0
- package/tui/dist/connections/connections-model.d.ts.map +1 -1
- package/tui/dist/connections/connections-model.js +1 -1
- package/tui/dist/connections/connections-model.js.map +1 -1
- package/tui/dist/daemon-client.d.ts +6 -0
- package/tui/dist/daemon-client.d.ts.map +1 -1
- package/tui/dist/daemon-client.js +5 -2
- package/tui/dist/daemon-client.js.map +1 -1
- package/tui/dist/execution/workflow-model.d.ts.map +1 -1
- package/tui/dist/execution/workflow-model.js +3 -1
- package/tui/dist/execution/workflow-model.js.map +1 -1
- package/tui/dist/hydrate.d.ts +1 -1
- package/tui/dist/hydrate.d.ts.map +1 -1
- package/tui/dist/hydrate.js +3 -1
- package/tui/dist/hydrate.js.map +1 -1
- package/tui/dist/main.js +53 -14
- package/tui/dist/main.js.map +1 -1
- package/tui/dist/page-read.js +1 -1
- package/tui/dist/page-read.js.map +1 -1
- package/tui/dist/pending-address.d.ts +7 -0
- package/tui/dist/pending-address.d.ts.map +1 -0
- package/tui/dist/pending-address.js +11 -0
- package/tui/dist/pending-address.js.map +1 -0
- package/tui/dist/render.d.ts.map +1 -1
- package/tui/dist/render.js +74 -23
- package/tui/dist/render.js.map +1 -1
- package/tui/dist/socket-server.d.ts +3 -1
- package/tui/dist/socket-server.d.ts.map +1 -1
- package/tui/dist/socket-server.js +6 -0
- package/tui/dist/socket-server.js.map +1 -1
- package/tui/dist/specs/graph.d.ts +5 -0
- package/tui/dist/specs/graph.d.ts.map +1 -0
- package/tui/dist/specs/graph.js +16 -0
- package/tui/dist/specs/graph.js.map +1 -0
- package/tui/dist/specs/launch.d.ts +29 -0
- package/tui/dist/specs/launch.d.ts.map +1 -0
- package/tui/dist/specs/launch.js +64 -0
- package/tui/dist/specs/launch.js.map +1 -0
- package/tui/dist/startup.d.ts.map +1 -1
- package/tui/dist/startup.js +15 -6
- package/tui/dist/startup.js.map +1 -1
- package/tui/dist/state.d.ts +2 -2
- package/tui/dist/state.d.ts.map +1 -1
- package/tui/dist/state.js +77 -27
- package/tui/dist/state.js.map +1 -1
- package/tui/dist/stylize.js +1 -1
- package/tui/dist/stylize.js.map +1 -1
- package/tui/dist/terminals/open-window.d.ts +5 -0
- package/tui/dist/terminals/open-window.d.ts.map +1 -0
- package/tui/dist/terminals/open-window.js +55 -0
- package/tui/dist/terminals/open-window.js.map +1 -0
- package/tui/dist/terminals/terminal-model.d.ts +1 -0
- package/tui/dist/terminals/terminal-model.d.ts.map +1 -1
- package/tui/dist/terminals/terminal-model.js +21 -5
- package/tui/dist/terminals/terminal-model.js.map +1 -1
- package/tui/dist/types.d.ts +32 -0
- package/tui/dist/types.d.ts.map +1 -1
- package/ui/dist/assets/{index-HHSvwF97.js → index-D5n8EwkG.js} +1 -1
- package/ui/dist/index.html +1 -1
- package/daemon/specs/rigs/launch/conveyor/README.md +0 -33
- package/daemon/specs/rigs/launch/conveyor/rig.yaml +0 -72
- package/daemon/specs/rigs/launch/demo/project-example/README.md +0 -25
- package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/SPEC.md +0 -19
- package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/PROGRESS.md +0 -6
- package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/PROOF.md +0 -7
- package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/SPEC.md +0 -31
- package/daemon/specs/rigs/launch/first-project/rig.yaml +0 -31
- package/daemon/specs/rigs/launch/first-project-claude/rig.yaml +0 -30
- package/daemon/specs/rigs/launch/implementation-pair/rig.yaml +0 -27
- package/daemon/specs/rigs/preview/product-team/rig.yaml +0 -90
- /package/daemon/specs/rigs/launch/factory-rsi/{rig.yaml → world-bundle.yaml} +0 -0
|
@@ -1,13 +1,43 @@
|
|
|
1
1
|
# Agent Startup Guide
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Applies to: OpenRig 0.1.x
|
|
3
|
+
Last validated: 2026-10-05, against main `9b88b118`
|
|
4
|
+
Applies to: OpenRig 0.6.7
|
|
6
5
|
|
|
7
6
|
This guide teaches you how to think about what goes into an agent's startup experience — what files to write, where to put them, and how the layering model delivers them. It is an authoring guide, not a schema reference. For field-level details, see `rig-spec.md` and `agent-spec.md`.
|
|
8
7
|
|
|
9
8
|
---
|
|
10
9
|
|
|
10
|
+
## Continue after a native consent prompt
|
|
11
|
+
|
|
12
|
+
If a fresh Claude seat is waiting at its bypass-permissions warning, review and
|
|
13
|
+
answer that warning in the seat's native pane. Unless the rig was launched with
|
|
14
|
+
`--non-interruptive` (see [non-interruptive mode](non-interruptive-mode.md)),
|
|
15
|
+
OpenRig does not accept it for you, and it never sends configured startup context
|
|
16
|
+
into the active dialog. The seat reports `attention_required` and retains that
|
|
17
|
+
context for the same occupant.
|
|
18
|
+
|
|
19
|
+
After accepting, run `rig seat continue <seat>` (or press `c` on the seat in the
|
|
20
|
+
TUI, shown while its context is pending). This delivers the pending context
|
|
21
|
+
without relaunching Claude, and its first prompt reminds the seat that this is a
|
|
22
|
+
fresh conversation and how to find its work. It does not replay a delivery that
|
|
23
|
+
already started. A timeout, or a refusal because nothing is pending, reports an
|
|
24
|
+
unknown outcome; inspect `rig seat status <seat>` before taking another action.
|
|
25
|
+
It is also refused while the prompt is still showing (`attention_required`), or
|
|
26
|
+
when the seat's binding or runtime has changed since launch.
|
|
27
|
+
Runtime readiness, startup delivery, and orientation proof remain separate;
|
|
28
|
+
a missing proof does not block this continuation.
|
|
29
|
+
|
|
30
|
+
Other fresh-launch prerequisites, such as login or workspace trust, use the same
|
|
31
|
+
continuation: resolve the prerequisite in the native pane, then run the displayed
|
|
32
|
+
command. `rig ps --nodes` shows it under "Startup details (<seat>)", and
|
|
33
|
+
`rig up` and `rig bundle install` print it as "Startup attention (<seat>)":
|
|
34
|
+
"After resolving it in <session>, run: rig seat continue <session>".
|
|
35
|
+
|
|
36
|
+
The attention codes that stop startup this way are `trust_gate`,
|
|
37
|
+
`hook_trust_gate`, `update_gate`, `login_required`, `mcp_gate`,
|
|
38
|
+
`bypass_consent_gate`, `codex_auth_refusal` and `codex_client_incompatible`.
|
|
39
|
+
They are recognized from each harness's English prompt text.
|
|
40
|
+
|
|
11
41
|
## Two Categories of Startup
|
|
12
42
|
|
|
13
43
|
Everything an agent receives at boot time falls into one of two categories:
|
|
@@ -26,14 +56,14 @@ Context loading shapes what the agent knows, believes, and is capable of:
|
|
|
26
56
|
### Category 2: Deterministic Configuration
|
|
27
57
|
|
|
28
58
|
The rig spec declaratively installs things into the agent's runtime environment:
|
|
29
|
-
- Hooks (
|
|
59
|
+
- Hooks (shipped inside plugins)
|
|
30
60
|
- Permissions (`.claude/settings.json` allowlists, approval modes)
|
|
31
61
|
- MCPs (Model Context Protocol servers)
|
|
32
62
|
- System dependencies (tools, packages)
|
|
33
63
|
|
|
34
64
|
See the **Current Support Matrix** section at the end of this guide for what is reliable today vs experimental.
|
|
35
65
|
|
|
36
|
-
**The
|
|
66
|
+
**The recommendation:** Put as much of your setup logic as possible into Category 1 (context loading via markdown files). Describe the desired end state in startup files and let the agent handle the configuration. The deterministic path exists in the spec and will become more reliable over time, but for now the context-loading path is the one that works consistently across runtimes.
|
|
37
67
|
|
|
38
68
|
---
|
|
39
69
|
|
|
@@ -118,30 +148,35 @@ Startup content is merged additively through layers. Each layer adds to what the
|
|
|
118
148
|
```
|
|
119
149
|
1. Agent layer — from the AgentSpec's top-level startup block
|
|
120
150
|
2. Profile layer — from the active profile's startup block
|
|
121
|
-
3.
|
|
122
|
-
4.
|
|
151
|
+
3. Culture layer — OpenRig's default culture, then the RigSpec's culture_file
|
|
152
|
+
4. Rig layer — from the RigSpec's top-level startup block
|
|
123
153
|
5. Pod layer — from the pod's startup block
|
|
124
154
|
6. Member layer — from the member's startup block in the RigSpec
|
|
125
|
-
7. Operator layer —
|
|
155
|
+
7. Operator layer — added by OpenRig: openrig-start.md and, on a fresh start, the onboarding pack
|
|
126
156
|
```
|
|
127
157
|
|
|
158
|
+
A member with a `starter_ref` gets that agent starter's files in front of the agent layer. Terminal seats
|
|
159
|
+
(`builtin:terminal`) skip the agent and profile layers.
|
|
160
|
+
|
|
128
161
|
### What Each Layer Is For
|
|
129
162
|
|
|
130
163
|
| Layer | Authored by | Purpose | Example content |
|
|
131
164
|
|-------|-------------|---------|-----------------|
|
|
132
165
|
| Agent | Agent spec author | Core identity and capabilities that travel with this agent type | Role guidance, default skills |
|
|
133
166
|
| Profile | Agent spec author | Profile-specific variations | Different skill sets for "default" vs "minimal" profiles |
|
|
134
|
-
|
|
|
135
|
-
|
|
|
167
|
+
| Culture | OpenRig, then the rig spec author | Team norms | OpenRig's `CULTURE-default.md` for every seat, then the rig's own `CULTURE.md` |
|
|
168
|
+
| Rig | Rig spec author | Rig-wide context for all agents | Project documentation |
|
|
136
169
|
| Pod | Rig spec author | Pod-specific coordination context | Pod SOP, intra-pod workflow |
|
|
137
170
|
| Member | Rig spec author | Individual member overrides | Member-specific instructions, cwd-specific context |
|
|
138
|
-
| Operator | OpenRig system | System-injected runtime content | `openrig-start.md
|
|
171
|
+
| Operator | OpenRig system | System-injected runtime content | `openrig-start.md` (optional delivery); on a fresh start, `openrig-onboarding-01.md` and `-02.md` unless `onboarding.default_pack.enabled` is false |
|
|
172
|
+
|
|
173
|
+
After the files, OpenRig sends a session-identity message (rig, pod, member, logical ID) once the seat is ready.
|
|
139
174
|
|
|
140
175
|
### Practical Guidance
|
|
141
176
|
|
|
142
|
-
**Most rigs only need three layers:** agent (role.md),
|
|
177
|
+
**Most rigs only need three layers:** agent (role.md), culture, and the built-in operator layer. Start simple. Add pod and member layers only when agents in the same pod need different startup content.
|
|
143
178
|
|
|
144
|
-
**The culture
|
|
179
|
+
**The rig's own culture file is high-value and often skipped.** Every seat gets OpenRig's default culture, but that says nothing about how this team communicates and coordinates. Write a `CULTURE.md`. Even a short one dramatically improves team coherence.
|
|
145
180
|
|
|
146
181
|
**Member-level startup is for exceptions, not the rule.** If every member has its own startup block, the layering model is being used as a configuration dump. Refactor shared content up to the pod or rig level.
|
|
147
182
|
|
|
@@ -153,8 +188,8 @@ Startup content is merged additively through layers. Each layer adds to what the
|
|
|
153
188
|
|
|
154
189
|
| Delivery Hint | When | How | Use For |
|
|
155
190
|
|---------------|------|-----|---------|
|
|
156
|
-
| `auto` |
|
|
157
|
-
| `guidance_merge` | Before harness boot | Merged into `CLAUDE.md`
|
|
191
|
+
| `auto` | Depends on the file | Resolved per file: a `SKILL.md` (or content starting `# SKILL`) is `skill_install`, any other `.md` is `guidance_merge`, and any other file is `send_text` | Default — let OpenRig decide |
|
|
192
|
+
| `guidance_merge` | Before harness boot | Merged as a managed block into `AGENTS.md` (Codex, Pi) or `CLAUDE.md` (Claude; `CLAUDE.local.md` with the rig's `managed_blocks: { claude-code: CLAUDE.local.md }`) | Role guidance, culture, project context |
|
|
158
193
|
| `skill_install` | Before harness boot | Copied to runtime's skill directory | Skills |
|
|
159
194
|
| `send_text` | After harness is ready | Sent as text to agent's terminal via tmux | Boot-time grounding, identity hints, instructions to read skills |
|
|
160
195
|
|
|
@@ -167,11 +202,46 @@ Files delivered via `send_text` happen AFTER the harness is ready. The agent rec
|
|
|
167
202
|
- Instructions to load skills (the files are already projected, the message tells the agent to read them)
|
|
168
203
|
- Context that should feel like an operator briefing, not pre-loaded content
|
|
169
204
|
|
|
205
|
+
On a fresh launch the first message is one turn: the session identity, the first `send_text` file and, when a startup
|
|
206
|
+
proof is selected, its challenge (below).
|
|
207
|
+
|
|
208
|
+
A file's `required` field defaults to `true`: a required file that can't be delivered fails startup, and an optional
|
|
209
|
+
one is dropped without a message.
|
|
210
|
+
|
|
211
|
+
### Readiness, startup proof and failure
|
|
212
|
+
|
|
213
|
+
**Readiness.** After launch OpenRig polls the pane until the harness is interactive (backing off 1, 2, 4, 8 and 16
|
|
214
|
+
seconds), for up to 30 seconds by default. Change the window with
|
|
215
|
+
`rig config set runtime.readiness_timeout_seconds <1-600>` (or `OPENRIG_RUNTIME_READINESS_TIMEOUT_SECONDS`); it
|
|
216
|
+
applies to the next launch. A recognized prompt (the attention codes above) ends the wait at once as
|
|
217
|
+
`attention_required`. A timeout ends startup as `failed` ("Readiness timeout after Ns — harness did not become
|
|
218
|
+
interactive"), and the post-launch files aren't sent.
|
|
219
|
+
|
|
220
|
+
**Claude submission check.** For each startup message to a Claude seat, OpenRig makes a bounded check that the prompt
|
|
221
|
+
was submitted. When the capture can't tell, it records the submission as unverified and carries on. When it sees the
|
|
222
|
+
same prompt still sitting in the input, it presses Enter once more; if it's still there, it warns "Startup prompt still
|
|
223
|
+
staged in <session>; press Enter in that pane." The seat can still end `ready` with its submission `unverified` or
|
|
224
|
+
`staged`, so `ready` doesn't prove the prompt was submitted. After all files and actions are delivered, readiness is
|
|
225
|
+
checked once more, so a prompt that appears by then gives `attention_required`.
|
|
226
|
+
|
|
227
|
+
**Startup proof.** A `startup_proof` action selects `authenticated` or `none` (the default is none; the last applicable
|
|
228
|
+
one wins, and it needs `idempotent: true`). With `authenticated`, a fresh launch of an agent seat includes a challenge,
|
|
229
|
+
and the seat answers it with `rig startup-proof submit --challenge-id <id> --answer <answer>`. `rig ps --nodes --full`
|
|
230
|
+
shows the result in the ORIENTED column: `verified`, `missing`, `rejected` or `n-a`. A missing proof doesn't block startup.
|
|
231
|
+
|
|
232
|
+
**After a failure.** Delivery, launch and action failures, and readiness timeouts, give `failed`. Every 30 seconds the
|
|
233
|
+
context monitor marks a `failed` or `attention_required` seat `ready` once its pane reads ready, unless fresh context
|
|
234
|
+
is still pending for `rig seat continue`. A seat that timed out can therefore read `ready` without having received its
|
|
235
|
+
post-launch files. If it needs them, first look at what that occupant has done; then
|
|
236
|
+
`rig seat launch <seat> --fresh --reason <text>` starts a blank conversation for the seat. If the occupant is still
|
|
237
|
+
live, the command refuses with `session_live` unless you also pass `--stop`, which replaces that occupant deliberately.
|
|
238
|
+
|
|
170
239
|
### The `applies_on` Field
|
|
171
240
|
|
|
172
241
|
Each startup file and action specifies when it applies:
|
|
173
|
-
- `fresh_start` — delivered
|
|
174
|
-
|
|
242
|
+
- `fresh_start` — delivered when a new conversation starts: the first launch, `rig seat launch --fresh`,
|
|
243
|
+
`rig seat continue`, and seats restored with `--fresh`
|
|
244
|
+
- `restore` — delivered when a seat is restored, including a restore whose resume falls back to a fresh conversation
|
|
175
245
|
- Default: `[fresh_start, restore]` (both)
|
|
176
246
|
|
|
177
247
|
Use this to avoid re-sending context that the agent already has from its resumed conversation. For example, a one-time project briefing might only apply on `fresh_start`, while identity grounding should apply on both.
|
|
@@ -184,15 +254,8 @@ The AgentSpec and RigSpec allow declaring deterministic environment configuratio
|
|
|
184
254
|
|
|
185
255
|
### What the Spec Supports
|
|
186
256
|
|
|
187
|
-
**Hooks**
|
|
188
|
-
|
|
189
|
-
resources:
|
|
190
|
-
hooks:
|
|
191
|
-
- id: pre-commit
|
|
192
|
-
path: hooks/pre-commit.sh
|
|
193
|
-
runtimes: [claude-code]
|
|
194
|
-
```
|
|
195
|
-
Hooks are scripts copied to the agent's workspace. They can be git hooks, automation scripts, or environment setup.
|
|
257
|
+
**Hooks** ship inside plugins: declare the plugin under `resources.plugins[]`. AgentSpec validation refuses
|
|
258
|
+
`resources.hooks`.
|
|
196
259
|
|
|
197
260
|
**Runtime resources** (in `resources.runtime_resources`):
|
|
198
261
|
```yaml
|
|
@@ -214,23 +277,26 @@ startup:
|
|
|
214
277
|
phase: after_ready
|
|
215
278
|
idempotent: true
|
|
216
279
|
```
|
|
217
|
-
|
|
280
|
+
Each value is typed into the harness's input and submitted, so it is a prompt or a slash command, not a shell command.
|
|
281
|
+
Types are `send_text`, `slash_command` and `startup_proof` (see "Startup proof" above); `shell` is refused.
|
|
282
|
+
`idempotent` is required, and an action that isn't idempotent must not list `restore` in `applies_on`. Both phases
|
|
283
|
+
run after the harness is ready: `after_files` (the default) after the post-launch files, then `after_ready`.
|
|
218
284
|
|
|
219
|
-
### Current Support Matrix
|
|
285
|
+
### Current Support Matrix
|
|
220
286
|
|
|
221
287
|
| Capability | Status | Notes |
|
|
222
288
|
|------------|--------|-------|
|
|
223
289
|
| Guidance file projection (`guidance_merge`) | **Supported** | Reliable. Primary delivery mechanism. |
|
|
224
290
|
| Skill projection (`skill_install`) | **Supported** | Reliable. Skills are copied to workspace. |
|
|
225
291
|
| `send_text` delivery after ready | **Supported** | Reliable. Requires harness to be ready. |
|
|
226
|
-
|
|
|
292
|
+
| Hooks | **Through plugins** | Declare a plugin under `resources.plugins[]`; `resources.hooks` is refused. |
|
|
227
293
|
| Runtime resource projection | **Supported for recognized fragments** | `claude_settings_fragment`, `claude_mcp_fragment`, and `codex_config_fragment` are applied to provider config. Unknown types are copied to runtime extension directories. |
|
|
228
|
-
| Permission configuration | **Native settings plus managed launch flags** | OpenRig launches Claude with `acceptEdits` and Codex with `workspace-write` unless an explicit supported selection changes them.
|
|
229
|
-
| MCP installation | **
|
|
294
|
+
| Permission configuration | **Native settings plus managed launch flags** | OpenRig launches Claude with `acceptEdits` and Codex with `workspace-write` unless an explicit supported selection changes them; a seat with no policy, selection or named Codex profile also gets the per-launch [team default](rig-spec.md#team-launch-defaults), and the `kernel` rig's seats get a wider operational default ([rig spec, "At launch"](rig-spec.md)). Neither is written to a settings file. Use [the first-user permission guide](getting-started.md#opt-in-permissive-operation) for opt-in and custom choices. |
|
|
295
|
+
| MCP installation | **Supported for Claude fragments** | A selected `claude_mcp_fragment` is merged into the project's `.mcp.json`. Claude asks to approve new servers found there; that prompt stops startup as `mcp_gate` until someone answers it and runs `rig seat continue`. Otherwise use `/mcp` or `claude mcp add`, or describe the servers in startup files for the agent to configure. |
|
|
230
296
|
| System dependency installation | **Not deterministic** | Describe in startup files; agent handles via shell commands. |
|
|
231
297
|
| Recurring tasks / wake timers | **Runtime-dependent** | Claude Code supports recurring tasks via the `/loop` command. Codex does not have a confirmed equivalent. Orchestrators should include `/loop` instructions in startup for Claude Code agents. |
|
|
232
298
|
|
|
233
|
-
### The
|
|
299
|
+
### The Approach: Describe, Then Let the Agent Handle It
|
|
234
300
|
|
|
235
301
|
For anything beyond `guidance_merge`, `skill_install`, and `send_text`, the recommended approach is:
|
|
236
302
|
|
|
@@ -259,6 +325,9 @@ OpenRig performs best-effort deterministic runtime configuration for managed ses
|
|
|
259
325
|
Purpose: apply selected `claude_mcp_fragment` resources for Claude in that project.
|
|
260
326
|
- Codex global config: `$CODEX_HOME/config.toml`, or `~/.codex/config.toml` when unset
|
|
261
327
|
Purpose: pre-trust managed workspaces and apply selected `codex_config_fragment` resources. Codex currently has no equivalent project-local MCP config path for global profile settings.
|
|
328
|
+
- Global skill folders: `~/.claude/skills` and `~/.agents/skills`
|
|
329
|
+
Purpose: daemon startup seeds the `openrig-skills` and `refocusing` skills and the person-facing `rigs` skill. Each
|
|
330
|
+
upgrade refreshes the `rigs` skill; a copy installed another way is left as it is.
|
|
262
331
|
|
|
263
332
|
Two important caveats:
|
|
264
333
|
- these writes are best-effort and should still be paired with startup guidance so the local agent can verify and repair them if needed
|
|
@@ -327,8 +396,17 @@ remain shared.
|
|
|
327
396
|
timeout, error or unrecognized answer adds nothing. Named profiles and full
|
|
328
397
|
bypass are not read. The read may write Codex's own state files in
|
|
329
398
|
`CODEX_HOME`, read its login and fetch managed policy, as a Codex start does.
|
|
399
|
+
- Managed launches pass `-c check_for_update_on_startup=false`, so Codex skips its startup update check; your Codex
|
|
400
|
+
config is not changed.
|
|
330
401
|
- Can self-install dependencies from instructions but timer/recurring behavior is not reliably available
|
|
331
402
|
|
|
403
|
+
**Pi and OMP:**
|
|
404
|
+
- Read `AGENTS.md` in the working directory; guidance is merged there, added to Pi's own system prompt
|
|
405
|
+
- Selected skills are projected into the seat's own agent directory under OpenRig's state, not into a shared
|
|
406
|
+
workspace folder
|
|
407
|
+
|
|
408
|
+
**Terminal seats** (`builtin:terminal`) get no agent or profile layers and no startup proof.
|
|
409
|
+
|
|
332
410
|
When authoring startup content, note which instructions are runtime-specific. For example, an orchestrator that needs a monitoring loop should include instructions like: "If running Claude Code, use `/loop 3m` to periodically check rig health. If running Codex, check rig health at the start of each task cycle instead."
|
|
333
411
|
|
|
334
412
|
---
|
|
@@ -399,7 +477,7 @@ This prompts the agent to actually invoke the skills, not just have them as pass
|
|
|
399
477
|
|
|
400
478
|
After identity recovery, verify:
|
|
401
479
|
1. `rig ps --nodes` shows your rig running (scoped to your session's rig by default; outside a managed session name it explicitly: `rig ps --nodes --rig <name>`)
|
|
402
|
-
2. `rig env status
|
|
480
|
+
2. `rig env status <rig>` shows services healthy (if applicable)
|
|
403
481
|
3. Your working directory is correct
|
|
404
482
|
4. Required tools are available (node, npm, git, etc.)
|
|
405
483
|
|
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
# Agent state taxonomy
|
|
2
2
|
|
|
3
|
-
The formal
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
The formal activity language OpenRig's surfaces render from — the TUI and the `rig ps`
|
|
4
|
+
ACTIVITY column. One oracle computes it; surfaces render it. Two exceptions remain: the web
|
|
5
|
+
UI's graph node still derives its own running/needs-input/idle/unknown from the legacy
|
|
6
|
+
`agentActivity`, and `rig ps --active` / `--filter agentActivity.state` filter on that legacy
|
|
7
|
+
field. Startup, orientation, restore and attention states are separate vocabularies, listed
|
|
8
|
+
under "Other state on the same surfaces" below.
|
|
6
9
|
|
|
7
10
|
**This document is the canonical text for the shipped taxonomy** and adds the
|
|
8
11
|
engineering reconciliation; it never forks a second vocabulary. Its typed source of
|
|
@@ -16,6 +19,12 @@ truth is `packages/daemon/src/domain/activity-taxonomy.ts`.
|
|
|
16
19
|
| activity | `working` · `idle-at-prompt` · `unknown` (+ needs-input as count+reason, below) | what a present agent is doing |
|
|
17
20
|
| resumability | `live` · `resumable` · `context-walled` | what a non-present agent can come back as |
|
|
18
21
|
|
|
22
|
+
Only the activity axis is served today. The session and resumability values are declared in
|
|
23
|
+
`activity-taxonomy.ts` but no surface reads them: `rig ps --nodes --full` shows the raw session
|
|
24
|
+
STATUS, both node views show a LIFECYCLE of `running`, `detached`, `recoverable` or `attention_required` (`run`, `det`, `rec`,
|
|
25
|
+
`att`), and node inventory serves `occupantLifecycle` (`active`, `retiring`, `retired`,
|
|
26
|
+
`context_walled`, `compacted`, `crashed`, `unknown`).
|
|
27
|
+
|
|
19
28
|
The axes never blend. Reachability is strict; revival optimism is a different field
|
|
20
29
|
(omnigent's strict-liveness split). `unknown` is a first-class honest value — the oracle
|
|
21
30
|
saying it cannot tell. Unknown beats a confident wrong answer.
|
|
@@ -35,15 +44,18 @@ collision in both codebases.
|
|
|
35
44
|
## Derived diagnoses — computed at read time, never stored
|
|
36
45
|
|
|
37
46
|
- **PARKED** — the disease: `(activity = idle-at-prompt OR needs-input pending) ×
|
|
38
|
-
(open obligations
|
|
39
|
-
|
|
40
|
-
|
|
47
|
+
(open obligations OR unhealthy HELD rows)`. A dropped baton or an unanswered block. When
|
|
48
|
+
activity is `unknown` the verdict is `indeterminate`, never parked or not-parked. Queryable
|
|
49
|
+
at rig and seat level with `rig parked [seat] [--rig <name>] [--json]`; the join lives in the
|
|
50
|
+
parked query, never inside the oracle (the oracle's non-inference contract: it never reads
|
|
51
|
+
queue state).
|
|
41
52
|
- **HELD** — the deliberate counterpart: a queue-level hold with a named owner and an
|
|
42
53
|
armed wake (`rig view show held`). Stopping on purpose is HELD; stopping by accident is
|
|
43
|
-
PARKED. A HELD row is
|
|
54
|
+
PARKED. A HELD row is healthy only while its wake is live, and not fired-but-unconsumed
|
|
55
|
+
unless the stuck sweep owns its recovery; an unhealthy HELD row on a stopped seat makes
|
|
56
|
+
the seat parked.
|
|
44
57
|
- **DONE-UNSEEN** — finished work whose completion nobody consumed (herdr derives it as
|
|
45
|
-
idle ∧ unseen). Declared
|
|
46
|
-
outside the activity oracle, preserving its non-inference boundary.
|
|
58
|
+
idle ∧ unseen). Declared as a concept only; no surface computes it yet.
|
|
47
59
|
|
|
48
60
|
## Reconciliation with prior art
|
|
49
61
|
|
|
@@ -65,8 +77,10 @@ time-bounded evidence. Rungs, top down, with each rung's retirement condition:
|
|
|
65
77
|
- **r3 — Claude `sessions/<pid>.json` self-report** (busy/shell/idle/waiting, since
|
|
66
78
|
v2.1.139): standing, above hooks for working/idle. Undocumented internal — unreadable
|
|
67
79
|
means fall down the ladder, never error.
|
|
68
|
-
- **r2 — lifecycle hooks** (Claude
|
|
69
|
-
PermissionRequest): standing
|
|
80
|
+
- **r2 — lifecycle hooks** (Claude SessionStart/UserPromptSubmit/Stop/Notification;
|
|
81
|
+
Codex SessionStart/UserPromptSubmit/Stop/PermissionRequest): standing for Claude; Codex's
|
|
82
|
+
hook rung starts at trial and is promoted after 50 agreeing observations over at least an
|
|
83
|
+
hour. Exactly-once turn boundaries; SubagentStop filtered (it
|
|
70
84
|
can fire post-turn and must never revive an idle seat). Hook-rung authority is
|
|
71
85
|
TIME-BOUNDED: the hook rung is the only rung that does not self-date its evidence, so
|
|
72
86
|
persistent cross-rung contradiction degrades it to identity-only, visibly, with a
|
|
@@ -76,8 +90,9 @@ time-bounded evidence. Rungs, top down, with each rung's retirement condition:
|
|
|
76
90
|
- **r1 — window-activity sampling** (today's oracle): the fallback tier. Retires
|
|
77
91
|
PER-HARNESS when that harness's hook rung earns trust through a measured agreement
|
|
78
92
|
window in production — never by fixture pass alone (symmetric admission: a fixture
|
|
79
|
-
pass admits a rung to TRIAL
|
|
80
|
-
|
|
93
|
+
pass admits a rung to TRIAL, where it is measured but not consulted; production agreement
|
|
94
|
+
promotes it). Undeclared and partial-coverage rungs are identity-only, which is also where
|
|
95
|
+
a degraded rung goes.
|
|
81
96
|
|
|
82
97
|
Partial-coverage honesty: a source with partial lifecycle coverage gets identity-only
|
|
83
98
|
trust. The ladder is also the migration path — new oracles slot in above existing
|
|
@@ -88,6 +103,22 @@ generation swap is its own visible event — never an activity transition — an
|
|
|
88
103
|
rung-inventory re-declaration: a successor never inherits its predecessor's rung
|
|
89
104
|
authority (hooks live in occupant config while the pane is seat-persistent).
|
|
90
105
|
|
|
106
|
+
## Other state on the same surfaces
|
|
107
|
+
|
|
108
|
+
These are separate vocabularies, not activity values. `rig ps --nodes --full` shows them in
|
|
109
|
+
its STARTUP, ORIENTED, LIFECYCLE and RESTORE columns (the default compact view shows only
|
|
110
|
+
LIFECYCLE); see the
|
|
111
|
+
[startup guide](agent-startup-guide.md) for how each arises.
|
|
112
|
+
|
|
113
|
+
- **Startup status:** `pending`, `ready`, `attention_required`, `failed`. `ready` means
|
|
114
|
+
startup finished, never that the seat is oriented, and a seat isn't marked `ready` while
|
|
115
|
+
its startup context is still pending for `rig seat continue`.
|
|
116
|
+
- **Oriented:** `verified`, `missing`, `rejected`, `n-a`, from the startup proof.
|
|
117
|
+
- **Attention codes:** `trust_gate`, `hook_trust_gate`, `update_gate`, `login_required`,
|
|
118
|
+
`mcp_gate`, `bypass_consent_gate`, `codex_auth_refusal`, `codex_client_incompatible`.
|
|
119
|
+
- **Restore outcome:** `resumed`, `fresh-primed`, `awaiting-decision`, `attention_required`,
|
|
120
|
+
`failed` (plus `rebuilt`, `operator_recovered` and the legacy `fresh`).
|
|
121
|
+
|
|
91
122
|
## Rejected oracles — dated receipts (2026-08-26), so nobody re-derives them expensively
|
|
92
123
|
|
|
93
124
|
- **transcript-quiescence as an activity oracle: REJECTED.** omnigent's 1-second version
|
|
@@ -12,10 +12,9 @@ comes from a web page, only when that page is the OpenRig UI or a page you allow
|
|
|
12
12
|
its own Tailscale name (for example `my-machine.your-tailnet.ts.net`, or the short `my-machine`).
|
|
13
13
|
The daemon learns its own Tailscale name automatically from Tailscale on this machine.
|
|
14
14
|
- The web UI, when it is turned on (`rig config set ui.enabled true`, then restart the daemon) and
|
|
15
|
-
opened
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
UI's terminal is refused there, and at a non-loopback IPv6 address its API requests are too.
|
|
15
|
+
opened over `http` on the daemon's own port at any address the daemon accepts, including its
|
|
16
|
+
Tailscale name. A UI page served any other way, such as over `https` through your own domain,
|
|
17
|
+
also needs its exact origin in `OPENRIG_ALLOWED_ORIGINS`, then a daemon restart.
|
|
19
18
|
|
|
20
19
|
### When you see a refusal
|
|
21
20
|
|
|
@@ -35,14 +34,16 @@ The daemon answers `403` with a sentence that says what to do. There are two kin
|
|
|
35
34
|
|
|
36
35
|
`OPENRIG_ALLOWED_HOSTS` lists names you use to reach the daemon. `OPENRIG_ALLOWED_ORIGINS` lists
|
|
37
36
|
web pages allowed to call it. They are separate: a UI served through your own domain usually needs
|
|
38
|
-
both. Pages on other origins cannot read the refusal; the
|
|
37
|
+
both. Separate several entries with commas. Pages on other origins cannot read the refusal; the
|
|
38
|
+
message is for you, the CLI and agents.
|
|
39
39
|
|
|
40
40
|
### Limits
|
|
41
41
|
|
|
42
42
|
- If you rename the machine in Tailscale, the daemon keeps accepting its previous name until it
|
|
43
43
|
restarts or until it next looks its name up after seeing an unrecognized one.
|
|
44
|
-
- If the daemon
|
|
45
|
-
lookup succeeds.
|
|
44
|
+
- If the daemon has not reached Tailscale's resolver since it started, its Tailscale name is
|
|
45
|
+
refused until a lookup succeeds. A later failed lookup keeps the name it already learned.
|
|
46
|
+
`localhost` and IP addresses keep working.
|
|
46
47
|
- This protects against unknown web pages and unknown names. It is not complete browser isolation:
|
|
47
48
|
a page on another site can still cause a simple read request to an address the daemon accepts,
|
|
48
49
|
although it cannot read the answer. Keep the daemon on loopback or your tailnet.
|
|
@@ -0,0 +1,209 @@
|
|
|
1
|
+
# Bundle formats (v1)
|
|
2
|
+
|
|
3
|
+
The shared data formats for sharing rig bundles: the configurations a bundle offers, the before-install view of what it
|
|
4
|
+
will do, run records and the public status file, and registry entries. The schemas are in [`schemas/`](schemas/), with
|
|
5
|
+
fixtures that pass and fail them in [`schemas/fixtures/`](schemas/fixtures/). Tools outside this repository read them
|
|
6
|
+
at a pinned commit.
|
|
7
|
+
|
|
8
|
+
**A v1 format only grows:** new optional properties may appear, and consumers ignore properties they don't know. Any
|
|
9
|
+
other change is a v2. The schemas are open to new properties, with three closed on purpose: the package digest (an exact
|
|
10
|
+
value), a run record's subject (a harness check can never carry a team's identity), and the public status file, where
|
|
11
|
+
nothing outside the schema may appear, so a private field can't leak in. A new property in a closed part is a v2. The
|
|
12
|
+
status schema also rejects labels that contradict their evidence: a tested label needs records and a package, tested
|
|
13
|
+
with help needs its count, tested can't carry a count above zero, and an unreadable listing carries only Status
|
|
14
|
+
unavailable.
|
|
15
|
+
|
|
16
|
+
## Three identities, kept apart
|
|
17
|
+
|
|
18
|
+
| What | Name | Defined by |
|
|
19
|
+
|---|---|---|
|
|
20
|
+
| What someone chose | configuration ID | the mapping of every seat to a runtime |
|
|
21
|
+
| What was packaged | package digest | the built archive's files |
|
|
22
|
+
| What actually ran | execution binding | a run record (resolved resources, settings, environment, unknowns) |
|
|
23
|
+
|
|
24
|
+
None stands in for another. A package digest doesn't describe what ran, and a configuration ID doesn't describe what was
|
|
25
|
+
packaged.
|
|
26
|
+
|
|
27
|
+
### Source identity
|
|
28
|
+
|
|
29
|
+
A bundle on GitHub is named by `repository` (`https://github.com/<owner>/<repo>`, no credentials), `folder` (the
|
|
30
|
+
repo-relative path of the folder holding `rig.yaml`, or `.` for the repository root) and `resolvedCommit` (40 lowercase
|
|
31
|
+
hex).
|
|
32
|
+
- `requestedRef` (the branch, tag or commit someone gave, or `HEAD` for a link without `/tree/…`) and `canonicalUrl`
|
|
33
|
+
(`…/tree/<resolvedCommit>/<folder>`, with each folder segment percent-encoded and no folder part for the root)
|
|
34
|
+
explain it, and aren't part of it.
|
|
35
|
+
- A built bundle records its source in its manifest's provenance, which is outside the package digest.
|
|
36
|
+
|
|
37
|
+
### Configuration ID
|
|
38
|
+
|
|
39
|
+
Every member's `pod.member=runtime`, sorted by `pod.member` in UTF-16 code-unit order, joined with `,`. There's no
|
|
40
|
+
whitespace, and runtimes are spelled as in `rig.yaml`. For example:
|
|
41
|
+
|
|
42
|
+
```text
|
|
43
|
+
build.impl=claude-code,build.lead=claude-code,check.qa=codex,check.review=codex
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Preset names such as `recommended` or `all-claude` are aliases shown beside the ID, never part of it.
|
|
47
|
+
|
|
48
|
+
### Package digest
|
|
49
|
+
|
|
50
|
+
`{ algorithm: "sha256", value, coverage: "openrig.package-digest/v1" }`:
|
|
51
|
+
- `value` is SHA-256 over UTF-8 lines `<quoted path>\t<sha256>\n`, one for each entry of the built archive's
|
|
52
|
+
`integrity.files`, sorted by path in UTF-16 code-unit order;
|
|
53
|
+
- `<quoted path>` is the path as a JSON string, exactly as JavaScript's `JSON.stringify(path)` writes it, so a tab or
|
|
54
|
+
newline in a file name can't make two different file lists hash the same. In words: wrapped in `"`; `"` and `\`
|
|
55
|
+
escaped with a backslash; U+0008, U+0009, U+000A, U+000C and U+000D written `\b`, `\t`, `\n`, `\f` and `\r`; any
|
|
56
|
+
other character below U+0020, and any lone surrogate, written `\uXXXX` in lowercase hex; everything else as itself;
|
|
57
|
+
- it's the same when the same folder is rebuilt by the same OpenRig, while the archive's own hash changes with every
|
|
58
|
+
build (`createdAt`).
|
|
59
|
+
|
|
60
|
+
**Coverage, shown wherever the digest is:** the bytes of every packaged file. It doesn't cover:
|
|
61
|
+
- `bundle.yaml`, so no manifest field, provenance or `createdAt`;
|
|
62
|
+
- the names the integrity walk skips (`.DS_Store`, `Thumbs.db`, `.gitkeep`);
|
|
63
|
+
- file modes;
|
|
64
|
+
- anything resolved on the installing machine at launch, for example an `openrig-home:` plugin, catalog skills, or a
|
|
65
|
+
model or effort nothing declares.
|
|
66
|
+
|
|
67
|
+
**A build result** carries `source` (`null` unless the bundle was built from a GitHub link), `configurationId`,
|
|
68
|
+
`packageDigest`, `archiveHash` and `assembler`. `rig bundle inspect` reports the same fields for an archive, and any the
|
|
69
|
+
archive doesn't state are `null`. `assembler` is `{ openrigVersion }`: the format also allows a `commit`, which this
|
|
70
|
+
OpenRig doesn't write. `configurationId()` and `packageDigest()` are exported from `@openrig/daemon/bundle-identity`.
|
|
71
|
+
Shared test vectors are in `schemas/fixtures/identity-vectors.json`.
|
|
72
|
+
|
|
73
|
+
## The formats
|
|
74
|
+
|
|
75
|
+
| Format | Schema | Lives | Written by |
|
|
76
|
+
|---|---|---|---|
|
|
77
|
+
| Declared configurations | `bundle-configurations.v1` | `configurations.yaml` beside `rig.yaml` | the bundle's author |
|
|
78
|
+
| Before-install view | `bundle-behaviour.v1` (`openrig.bundle-behaviour/v1`) | the registry, one file per configuration and assembler version; never inside the archive | the daemon's inspect: `rig bundle inspect`, under `behaviour` with `--json` |
|
|
79
|
+
| Run record | `run-record.v1` | beside its receipt, private | Fleet, Dev QA, and maintainers for community reports |
|
|
80
|
+
| Public status | `bundle-status.v1` | `openrig-registry` status, generated | the status generator only |
|
|
81
|
+
| Registry entry | `registry-entry.v1` | `openrig-registry/registry/<slug>.yaml` | maintainers, through review |
|
|
82
|
+
|
|
83
|
+
### Declared configurations
|
|
84
|
+
|
|
85
|
+
`seats` gives a `pod.member` the runtimes it may use, and the profile each runtime uses. A member it doesn't list keeps
|
|
86
|
+
the runtime `rig.yaml` gives it. `presets` names full mappings, and `recommended` names one of them, which must be
|
|
87
|
+
`rig.yaml` as written. `rig bundle create`, `rig bundle configurations` and `rig bundle check` refuse a file that breaks
|
|
88
|
+
these rules.
|
|
89
|
+
|
|
90
|
+
`--preset` and `--seat` choose a configuration (see the [rig bundle reference](rig-bundle.md)). Any mix of each seat's
|
|
91
|
+
declared runtimes can be built, not only the presets; a runtime a seat doesn't declare is refused, and nothing is built.
|
|
92
|
+
Without either flag, create builds `rig.yaml` as written. The built archive's manifest records
|
|
93
|
+
`configuration: { id, preset }` outside the package digest; `preset` is there only when `--preset` or `--seat` chose a
|
|
94
|
+
mapping that matches a declared preset.
|
|
95
|
+
|
|
96
|
+
### Before-install view
|
|
97
|
+
|
|
98
|
+
It's derived from the archive's files alone. Nothing is launched, probed or fetched. It's a view, never a gate, and
|
|
99
|
+
carries no tested status.
|
|
100
|
+
- **`identity`:** source, configuration ID, package digest, the archive's assembler, the generator that made the view,
|
|
101
|
+
stated compatibility, stated provenance (not verified), and integrity (self-consistency, not authorship). A source,
|
|
102
|
+
configuration ID, package digest or assembler the archive doesn't state is `null`; unstated compatibility and
|
|
103
|
+
provenance are empty objects. None of it is filled from the inspecting OpenRig.
|
|
104
|
+
- **`team`, `posture`, `toldFiles`, `alsoRuns`, `writes`, `outsideAddresses`, `needs` and `unknownBeforeLaunch`**, in
|
|
105
|
+
that order. Facts cite the archive file they come from (`sourceRefs`), except `team` entries and the bundle-wide
|
|
106
|
+
unknowns. `toldFiles` and `alsoRuns` also say how each resolves: `archive`, `host_at_launch` or `unresolved`.
|
|
107
|
+
- Posture separates what the archive declares from the product's default. Its effect on the host is `unknown`,
|
|
108
|
+
because host settings decide it.
|
|
109
|
+
Optional `posture[].permissionPrompts` is `off` for declared `full_bypass` (including rig- or member-level
|
|
110
|
+
`builtin:yolo`) on any runtime; for Claude/Codex, `on` for a declared flag-surface floor policy or `default` when
|
|
111
|
+
no policy is declared (prompts on unless the installing machine's settings turn them off); for Codex, `on` for
|
|
112
|
+
declared `auto`. Omit it for Claude under auto (naming auto mode in `selection`), config-surface policies
|
|
113
|
+
(`builtin:locked`, `builtin:standard`, `builtin:open` or an archived `surface: config` policy), host-resolved
|
|
114
|
+
Codex profiles, `permission_policy: none`, a policy the archive can't resolve, and every runtime other than Claude
|
|
115
|
+
and Codex (Pi, terminal) except declared full bypass. `selection` names the declared policy.
|
|
116
|
+
An absent field means not stated, never `on`. For `off`, Claude
|
|
117
|
+
bypasses permissions, Codex runs with full access and never asks, and Pi gets full resource trust (`--approve`,
|
|
118
|
+
not a permission mode). These are archive facts; `nativeEffect` remains `unknown`.
|
|
119
|
+
Optional `posture[].firstRunWarnings.claudeBypass: "harness_asks_once"` names the first-run bypass warning for a
|
|
120
|
+
declared full-bypass Claude seat, conditional on whether the harness has remembered acceptance.
|
|
121
|
+
`posture[].nonInterruptive: "available"` says a full-bypass Claude/Codex seat can use
|
|
122
|
+
[non-interruptive launch flags](non-interruptive-mode.md). It does not select the option, read host acceptance
|
|
123
|
+
state or prove a prompt-free launch. Both fields are omitted where inapplicable or unresolved; older v1 views
|
|
124
|
+
remain valid without them. Optional `posture[].nonInterruptiveDefault` (boolean) carries the rig's authored
|
|
125
|
+
`non_interruptive` for those seats; an explicit launch choice overrides it. When it is `true`, `firstRunWarnings`
|
|
126
|
+
is omitted. Pi has no additional warning-suppression flag. `nativeEffect` stays `unknown`.
|
|
127
|
+
- An empty list means none are known. Something unknown goes in `unknownBeforeLaunch`.
|
|
128
|
+
- Per-seat facts carry `seat` (`pod.member`) and human output labels them with that identity. It's required on
|
|
129
|
+
`team` and `posture`. Elsewhere it's optional: bundle-wide facts (services, library and project writes, setup and
|
|
130
|
+
version needs) omit it, and older generators may not have stated it.
|
|
131
|
+
- **`not_generated`:** a combination without a generated view, or an archive the generator can't describe: schema 1, no
|
|
132
|
+
readable pod-aware rig spec, a member missing its pod, id or agent reference, a runtime that depends on an AgentSpec
|
|
133
|
+
the archive can't read, or an error while reading. It carries a reason and the local command that shows it, and no
|
|
134
|
+
sections.
|
|
135
|
+
|
|
136
|
+
### Declared setup preconditions
|
|
137
|
+
|
|
138
|
+
The author's `bundle.yaml`, beside `rig.yaml`, may declare setup that the user must do before installing:
|
|
139
|
+
|
|
140
|
+
```yaml
|
|
141
|
+
preconditions:
|
|
142
|
+
- name: Run inside an OpenRig source clone with dependencies installed and packages built.
|
|
143
|
+
commands:
|
|
144
|
+
- git clone https://github.com/mvschwarz/openrig.git
|
|
145
|
+
- cd openrig
|
|
146
|
+
- npm ci
|
|
147
|
+
- npm run build
|
|
148
|
+
- name: Sign in to the selected coding runtimes before starting the team.
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Local-folder creation and GitHub-link imports carry these declarations into the archive manifest. A generated
|
|
152
|
+
before-install view lists each as `needs[]` with `kind: precondition`, the author's `name`, optional ordered `commands`,
|
|
153
|
+
`status: not_checked`, and a `sourceRefs` entry naming `bundle.yaml` and `preconditions[index]`. Inspect, plan and apply
|
|
154
|
+
previews show the same declaration. A legacy schema-1 archive retains it in the manifest, but its view remains
|
|
155
|
+
`not_generated`. Missing preconditions mean none were declared, not that no setup is needed.
|
|
156
|
+
|
|
157
|
+
Each command is one plain command line, without shell operators (`;`, `&&`, pipes, command substitution, backticks or
|
|
158
|
+
redirection). Run them in order in **one shell**, then run the install command in that same shell: it inherits the
|
|
159
|
+
working directory left by the setup commands. There is no separate `workdir` field. Commands are untrusted author data;
|
|
160
|
+
a site building a copyable block must validate every line and bound the number of entries, omitting all setup lines
|
|
161
|
+
if any fails its plain-command rule. OpenRig displays these declarations; it does not execute them, verify that setup
|
|
162
|
+
was done, or add a prerequisite gate. The archive hash covers the manifest; `packageDigest` excludes `bundle.yaml`
|
|
163
|
+
and therefore does not cover these declarations.
|
|
164
|
+
|
|
165
|
+
At creation, malformed preconditions produce a warning and the whole block is omitted; other author-field validation
|
|
166
|
+
is unchanged. Shell operators in otherwise valid command lines produce a warning, but the declarations are retained
|
|
167
|
+
as data. An already-built archive with malformed preconditions reports them as unknown before launch.
|
|
168
|
+
|
|
169
|
+
### Run records and status
|
|
170
|
+
|
|
171
|
+
**A run record's subject** is either a team (source, configuration ID, package digest, assembler) or a harness check (a
|
|
172
|
+
runtime). A harness check never upgrades a team label.
|
|
173
|
+
|
|
174
|
+
**A run record's `environment.platform` and `arch`** are Node's `process.platform` (`linux`, `darwin` or `win32`) and
|
|
175
|
+
`process.arch` (`x64` or `arm64`): the values a status platform key can carry, so every valid record can be labelled.
|
|
176
|
+
|
|
177
|
+
**Records are private.** Only `outcome.publicNote` (a short public cause) reaches the status file.
|
|
178
|
+
|
|
179
|
+
**Relations:** `supersedes`, `withdraws` and `resolves`. Reusing earlier evidence for a changed package is a reviewer's
|
|
180
|
+
decision, recorded in the registry entry's `evidenceReuse`.
|
|
181
|
+
|
|
182
|
+
**The status file** is generated from records by rule `openrig.status-rule/v1`:
|
|
183
|
+
- **Labels:** `known_problem`, `tested`, `tested_with_help`, `partly_tested`, `not_tested` and `status_unavailable`.
|
|
184
|
+
They're shown as Known problem, Tested by OpenRig, Tested with help (N), Partly tested, Not tested by OpenRig
|
|
185
|
+
and Status unavailable.
|
|
186
|
+
- **A label belongs to one configuration ID.** No configuration is ever shown another configuration's label.
|
|
187
|
+
- **Empty `platforms`** means Not tested by OpenRig. So does a custom configuration, one the listing doesn't offer.
|
|
188
|
+
- **Status unavailable is only for a listed configuration** whose records can't be read, or that's missing from the
|
|
189
|
+
status file; never Not tested by OpenRig. A listing whose records can't be read is `status_unavailable` as a whole.
|
|
190
|
+
- **Platform keys** are `<os>-<arch>` (`linux`, `darwin` or `win32`; `x64` or `arm64`).
|
|
191
|
+
- **`tested` means no help was needed:** it can't carry an assistance count above zero.
|
|
192
|
+
- **An assist** is one action a person or the test runner took to get past a problem during the run, such as restarting a seat or re-running a command; following the bundle's own documented steps doesn't count.
|
|
193
|
+
- **The file holds no private paths, host names, row IDs, account names or receipt text,** and regenerating it gives
|
|
194
|
+
identical bytes.
|
|
195
|
+
- **`bodyDigest`** is SHA-256, lowercase hex, over the RFC 8785 (JCS) canonical JSON, as UTF-8, of an object holding
|
|
196
|
+
every other top-level field. The site import recomputes it and rejects a hand-edited file. `harnessChecks` has its own
|
|
197
|
+
`state`, so an unreadable harness-check record reads Status unavailable too.
|
|
198
|
+
|
|
199
|
+
### Registry entries
|
|
200
|
+
|
|
201
|
+
Each entry records:
|
|
202
|
+
- the source at its reviewed commit;
|
|
203
|
+
- each offered configuration with its package digest, assembler and behaviour-view file;
|
|
204
|
+
- optional `evidenceReuse`;
|
|
205
|
+
- the review date, and `listed` or `withdrawn` (with `withdrawnOn`).
|
|
206
|
+
|
|
207
|
+
v1 has no author field: a listing shows the owner of `source.repository`.
|
|
208
|
+
|
|
209
|
+
A listing shows "Reviewed for listing on `<date>` at commit `<short>`. Review is not a security audit."
|