@openrig/cli 0.6.5 → 0.6.6

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.
Files changed (821) hide show
  1. package/README.md +70 -49
  2. package/daemon/assets/onboarding/02-self-and-competent-action.md +39 -2
  3. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  4. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  5. package/daemon/assets/plugins/openrig-core/skills/applying-a-permission-policy/SKILL.md +41 -21
  6. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +13 -7
  7. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +1 -1
  8. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +3 -4
  9. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +9 -4
  10. package/daemon/context-packs/help/help.md +33 -8
  11. package/daemon/context-packs/help/manifest.yaml +1 -1
  12. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  13. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +6 -5
  14. package/daemon/context-packs/reference/getting-started.md +423 -113
  15. package/daemon/context-packs/reference/manifest.yaml +1 -1
  16. package/daemon/context-packs/reference/rig-spec.md +150 -26
  17. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  18. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  19. package/daemon/context-packs/skills/applying-a-permission-policy/SKILL.md +41 -21
  20. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  21. package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +13 -7
  22. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  23. package/daemon/context-packs/skills/core/agent-starters/SKILL.md +0 -6
  24. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -8
  26. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/openrig-architect/SKILL.md +5 -5
  31. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +3 -3
  32. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +3 -4
  35. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +12 -9
  37. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +29 -29
  39. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +0 -1
  41. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/session-source-fork/SKILL.md +0 -5
  44. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +1 -1
  50. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/openrig-user/SKILL.md +9 -4
  55. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/process/agent-browser/OPENRIG.md +1 -1
  69. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/process/systematic-debugging/SKILL.md +0 -2
  74. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  75. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  76. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  77. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  78. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  79. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  80. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  81. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  82. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  83. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  84. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  85. package/daemon/dist/adapters/claude-code-adapter.d.ts +1 -1
  86. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  87. package/daemon/dist/adapters/claude-code-adapter.js +25 -13
  88. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  89. package/daemon/dist/adapters/claude-resume.d.ts +1 -1
  90. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  91. package/daemon/dist/adapters/claude-resume.js +7 -4
  92. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  93. package/daemon/dist/adapters/codex-resume.d.ts +3 -1
  94. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  95. package/daemon/dist/adapters/codex-resume.js +10 -4
  96. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  97. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +3 -0
  98. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  99. package/daemon/dist/adapters/codex-runtime-adapter.js +59 -61
  100. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  101. package/daemon/dist/adapters/compose-services-adapter.js +1 -1
  102. package/daemon/dist/adapters/compose-services-adapter.js.map +1 -1
  103. package/daemon/dist/adapters/kernel-authority.d.ts +10 -0
  104. package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -0
  105. package/daemon/dist/adapters/kernel-authority.js +53 -0
  106. package/daemon/dist/adapters/kernel-authority.js.map +1 -0
  107. package/daemon/dist/adapters/non-interruptive.d.ts +14 -0
  108. package/daemon/dist/adapters/non-interruptive.d.ts.map +1 -0
  109. package/daemon/dist/adapters/non-interruptive.js +38 -0
  110. package/daemon/dist/adapters/non-interruptive.js.map +1 -0
  111. package/daemon/dist/adapters/pi-resume.d.ts +3 -1
  112. package/daemon/dist/adapters/pi-resume.d.ts.map +1 -1
  113. package/daemon/dist/adapters/pi-resume.js +8 -1
  114. package/daemon/dist/adapters/pi-resume.js.map +1 -1
  115. package/daemon/dist/adapters/pi-runner-protocol.d.ts +15 -0
  116. package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
  117. package/daemon/dist/adapters/pi-runner-protocol.js +27 -0
  118. package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
  119. package/daemon/dist/adapters/pi-runner.d.ts +3 -0
  120. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  121. package/daemon/dist/adapters/pi-runner.js +79 -13
  122. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  123. package/daemon/dist/adapters/pi-runtime-adapter.d.ts +8 -0
  124. package/daemon/dist/adapters/pi-runtime-adapter.d.ts.map +1 -1
  125. package/daemon/dist/adapters/pi-runtime-adapter.js +37 -9
  126. package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
  127. package/daemon/dist/adapters/stub-runner-protocol.d.ts +1 -1
  128. package/daemon/dist/adapters/stub-runner-protocol.d.ts.map +1 -1
  129. package/daemon/dist/adapters/stub-runner.d.ts +1 -1
  130. package/daemon/dist/adapters/stub-runner.d.ts.map +1 -1
  131. package/daemon/dist/adapters/stub-runtime-adapter.d.ts.map +1 -1
  132. package/daemon/dist/adapters/stub-runtime-adapter.js +10 -7
  133. package/daemon/dist/adapters/stub-runtime-adapter.js.map +1 -1
  134. package/daemon/dist/adapters/tmux.d.ts +7 -3
  135. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  136. package/daemon/dist/adapters/tmux.js +11 -6
  137. package/daemon/dist/adapters/tmux.js.map +1 -1
  138. package/daemon/dist/adapters/yolo-mode.d.ts +1 -1
  139. package/daemon/dist/adapters/yolo-mode.d.ts.map +1 -1
  140. package/daemon/dist/adapters/yolo-mode.js +3 -0
  141. package/daemon/dist/adapters/yolo-mode.js.map +1 -1
  142. package/daemon/dist/build-info.js +3 -3
  143. package/daemon/dist/bundle-behaviour-surface.d.ts +2 -0
  144. package/daemon/dist/bundle-behaviour-surface.d.ts.map +1 -0
  145. package/daemon/dist/bundle-behaviour-surface.js +2 -0
  146. package/daemon/dist/bundle-behaviour-surface.js.map +1 -0
  147. package/daemon/dist/bundle-identity-surface.d.ts +2 -0
  148. package/daemon/dist/bundle-identity-surface.d.ts.map +1 -0
  149. package/daemon/dist/bundle-identity-surface.js +4 -0
  150. package/daemon/dist/bundle-identity-surface.js.map +1 -0
  151. package/daemon/dist/daemon-shutdown.d.ts +1 -1
  152. package/daemon/dist/daemon-shutdown.d.ts.map +1 -1
  153. package/daemon/dist/daemon-shutdown.js +5 -1
  154. package/daemon/dist/daemon-shutdown.js.map +1 -1
  155. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  156. package/daemon/dist/db/all-migrations.js +2 -0
  157. package/daemon/dist/db/all-migrations.js.map +1 -1
  158. package/daemon/dist/db/migrations/095_rig_non_interruptive.d.ts +3 -0
  159. package/daemon/dist/db/migrations/095_rig_non_interruptive.d.ts.map +1 -0
  160. package/daemon/dist/db/migrations/095_rig_non_interruptive.js +5 -0
  161. package/daemon/dist/db/migrations/095_rig_non_interruptive.js.map +1 -0
  162. package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
  163. package/daemon/dist/domain/agent-manifest.js +4 -2
  164. package/daemon/dist/domain/agent-manifest.js.map +1 -1
  165. package/daemon/dist/domain/bootstrap-orchestrator.d.ts +10 -0
  166. package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
  167. package/daemon/dist/domain/bootstrap-orchestrator.js +133 -31
  168. package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
  169. package/daemon/dist/domain/builtin-policy-reference.d.ts +1 -1
  170. package/daemon/dist/domain/builtin-policy-reference.d.ts.map +1 -1
  171. package/daemon/dist/domain/builtin-policy-reference.js +2 -2
  172. package/daemon/dist/domain/builtin-policy-reference.js.map +1 -1
  173. package/daemon/dist/domain/bundle-archive.d.ts +24 -0
  174. package/daemon/dist/domain/bundle-archive.d.ts.map +1 -1
  175. package/daemon/dist/domain/bundle-archive.js +52 -27
  176. package/daemon/dist/domain/bundle-archive.js.map +1 -1
  177. package/daemon/dist/domain/bundle-audit.d.ts +5 -0
  178. package/daemon/dist/domain/bundle-audit.d.ts.map +1 -1
  179. package/daemon/dist/domain/bundle-audit.js.map +1 -1
  180. package/daemon/dist/domain/bundle-behaviour-inspect.d.ts +4 -0
  181. package/daemon/dist/domain/bundle-behaviour-inspect.d.ts.map +1 -0
  182. package/daemon/dist/domain/bundle-behaviour-inspect.js +56 -0
  183. package/daemon/dist/domain/bundle-behaviour-inspect.js.map +1 -0
  184. package/daemon/dist/domain/bundle-behaviour.d.ts +118 -0
  185. package/daemon/dist/domain/bundle-behaviour.d.ts.map +1 -0
  186. package/daemon/dist/domain/bundle-behaviour.js +364 -0
  187. package/daemon/dist/domain/bundle-behaviour.js.map +1 -0
  188. package/daemon/dist/domain/bundle-carried-context-pack.d.ts +16 -0
  189. package/daemon/dist/domain/bundle-carried-context-pack.d.ts.map +1 -0
  190. package/daemon/dist/domain/bundle-carried-context-pack.js +67 -0
  191. package/daemon/dist/domain/bundle-carried-context-pack.js.map +1 -0
  192. package/daemon/dist/domain/bundle-carried-project.d.ts +13 -0
  193. package/daemon/dist/domain/bundle-carried-project.d.ts.map +1 -0
  194. package/daemon/dist/domain/bundle-carried-project.js +71 -0
  195. package/daemon/dist/domain/bundle-carried-project.js.map +1 -0
  196. package/daemon/dist/domain/bundle-conflict-detector.js +3 -3
  197. package/daemon/dist/domain/bundle-conflict-detector.js.map +1 -1
  198. package/daemon/dist/domain/bundle-content-routing.d.ts +49 -0
  199. package/daemon/dist/domain/bundle-content-routing.d.ts.map +1 -0
  200. package/daemon/dist/domain/bundle-content-routing.js +246 -0
  201. package/daemon/dist/domain/bundle-content-routing.js.map +1 -0
  202. package/daemon/dist/domain/bundle-context-packs-router.d.ts +7 -2
  203. package/daemon/dist/domain/bundle-context-packs-router.d.ts.map +1 -1
  204. package/daemon/dist/domain/bundle-context-packs-router.js +19 -0
  205. package/daemon/dist/domain/bundle-context-packs-router.js.map +1 -1
  206. package/daemon/dist/domain/bundle-identity.d.ts +27 -0
  207. package/daemon/dist/domain/bundle-identity.d.ts.map +1 -0
  208. package/daemon/dist/domain/bundle-identity.js +34 -0
  209. package/daemon/dist/domain/bundle-identity.js.map +1 -0
  210. package/daemon/dist/domain/bundle-install-context.d.ts +22 -0
  211. package/daemon/dist/domain/bundle-install-context.d.ts.map +1 -0
  212. package/daemon/dist/domain/bundle-install-context.js +51 -0
  213. package/daemon/dist/domain/bundle-install-context.js.map +1 -0
  214. package/daemon/dist/domain/bundle-integrity.d.ts +1 -0
  215. package/daemon/dist/domain/bundle-integrity.d.ts.map +1 -1
  216. package/daemon/dist/domain/bundle-integrity.js +1 -1
  217. package/daemon/dist/domain/bundle-integrity.js.map +1 -1
  218. package/daemon/dist/domain/bundle-source-resolver.d.ts +4 -1
  219. package/daemon/dist/domain/bundle-source-resolver.d.ts.map +1 -1
  220. package/daemon/dist/domain/bundle-source-resolver.js +73 -19
  221. package/daemon/dist/domain/bundle-source-resolver.js.map +1 -1
  222. package/daemon/dist/domain/bundle-types.d.ts +37 -0
  223. package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
  224. package/daemon/dist/domain/bundle-types.js +78 -0
  225. package/daemon/dist/domain/bundle-types.js.map +1 -1
  226. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +4 -1
  227. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  228. package/daemon/dist/domain/claude-compaction-enforcer.js +45 -10
  229. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  230. package/daemon/dist/domain/codex-team-workspace.d.ts +8 -0
  231. package/daemon/dist/domain/codex-team-workspace.d.ts.map +1 -0
  232. package/daemon/dist/domain/codex-team-workspace.js +54 -0
  233. package/daemon/dist/domain/codex-team-workspace.js.map +1 -0
  234. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  235. package/daemon/dist/domain/context-monitor.js +7 -1
  236. package/daemon/dist/domain/context-monitor.js.map +1 -1
  237. package/daemon/dist/domain/daemon-version.d.ts +3 -1
  238. package/daemon/dist/domain/daemon-version.d.ts.map +1 -1
  239. package/daemon/dist/domain/daemon-version.js +6 -1
  240. package/daemon/dist/domain/daemon-version.js.map +1 -1
  241. package/daemon/dist/domain/event-loop-monitor.d.ts +6 -0
  242. package/daemon/dist/domain/event-loop-monitor.d.ts.map +1 -1
  243. package/daemon/dist/domain/event-loop-monitor.js +13 -0
  244. package/daemon/dist/domain/event-loop-monitor.js.map +1 -1
  245. package/daemon/dist/domain/finite-telemetry.d.ts +74 -0
  246. package/daemon/dist/domain/finite-telemetry.d.ts.map +1 -0
  247. package/daemon/dist/domain/finite-telemetry.js +236 -0
  248. package/daemon/dist/domain/finite-telemetry.js.map +1 -0
  249. package/daemon/dist/domain/gateway/connections-projection.d.ts +1 -1
  250. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +2 -0
  251. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
  252. package/daemon/dist/domain/gateway/gateway-subsystem.js +4 -0
  253. package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
  254. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts +45 -0
  255. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -0
  256. package/daemon/dist/domain/gateway/slack/channel-recovery.js +176 -0
  257. package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -0
  258. package/daemon/dist/domain/gateway/slack/inbound.d.ts +3 -1
  259. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  260. package/daemon/dist/domain/gateway/slack/inbound.js +19 -8
  261. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  262. package/daemon/dist/domain/gateway/slack/slack-api.d.ts +1 -0
  263. package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -1
  264. package/daemon/dist/domain/gateway/slack/slack-api.js +3 -1
  265. package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -1
  266. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  267. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +7 -1
  268. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  269. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +4 -0
  270. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
  271. package/daemon/dist/domain/gateway/slack/socket-inbound.js +11 -1
  272. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
  273. package/daemon/dist/domain/gateway/slack/state-store.d.ts +24 -0
  274. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
  275. package/daemon/dist/domain/gateway/slack/state-store.js +84 -1
  276. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
  277. package/daemon/dist/domain/generated-file-hygiene.d.ts +3 -0
  278. package/daemon/dist/domain/generated-file-hygiene.d.ts.map +1 -0
  279. package/daemon/dist/domain/generated-file-hygiene.js +142 -0
  280. package/daemon/dist/domain/generated-file-hygiene.js.map +1 -0
  281. package/daemon/dist/domain/install-planner.d.ts.map +1 -1
  282. package/daemon/dist/domain/install-planner.js +17 -0
  283. package/daemon/dist/domain/install-planner.js.map +1 -1
  284. package/daemon/dist/domain/managed-blocks.d.ts +1 -0
  285. package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
  286. package/daemon/dist/domain/managed-blocks.js +3 -0
  287. package/daemon/dist/domain/managed-blocks.js.map +1 -1
  288. package/daemon/dist/domain/native-permission-store.d.ts +14 -0
  289. package/daemon/dist/domain/native-permission-store.d.ts.map +1 -1
  290. package/daemon/dist/domain/native-permission-store.js +168 -4
  291. package/daemon/dist/domain/native-permission-store.js.map +1 -1
  292. package/daemon/dist/domain/native-process-executable.d.ts +4 -0
  293. package/daemon/dist/domain/native-process-executable.d.ts.map +1 -0
  294. package/daemon/dist/domain/native-process-executable.js +53 -0
  295. package/daemon/dist/domain/native-process-executable.js.map +1 -0
  296. package/daemon/dist/domain/native-process-lineage.d.ts +2 -0
  297. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  298. package/daemon/dist/domain/native-process-lineage.js +34 -7
  299. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  300. package/daemon/dist/domain/native-resume-probe.d.ts +3 -1
  301. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  302. package/daemon/dist/domain/native-resume-probe.js +38 -7
  303. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  304. package/daemon/dist/domain/permission-policy/policy-ref.d.ts +6 -1
  305. package/daemon/dist/domain/permission-policy/policy-ref.d.ts.map +1 -1
  306. package/daemon/dist/domain/permission-policy/policy-ref.js +16 -4
  307. package/daemon/dist/domain/permission-policy/policy-ref.js.map +1 -1
  308. package/daemon/dist/domain/permission-policy/policy-spec.d.ts +1 -1
  309. package/daemon/dist/domain/permission-policy/policy-spec.d.ts.map +1 -1
  310. package/daemon/dist/domain/permission-policy/policy-spec.js +2 -2
  311. package/daemon/dist/domain/permission-policy/policy-spec.js.map +1 -1
  312. package/daemon/dist/domain/profile-resolver.d.ts +3 -2
  313. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  314. package/daemon/dist/domain/profile-resolver.js +71 -9
  315. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  316. package/daemon/dist/domain/projection-planner.d.ts +11 -0
  317. package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
  318. package/daemon/dist/domain/projection-planner.js +1 -1
  319. package/daemon/dist/domain/projection-planner.js.map +1 -1
  320. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  321. package/daemon/dist/domain/queue-repository.js +36 -10
  322. package/daemon/dist/domain/queue-repository.js.map +1 -1
  323. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
  324. package/daemon/dist/domain/queue-transition-log.js +12 -10
  325. package/daemon/dist/domain/queue-transition-log.js.map +1 -1
  326. package/daemon/dist/domain/readiness-timeout.d.ts +7 -0
  327. package/daemon/dist/domain/readiness-timeout.d.ts.map +1 -0
  328. package/daemon/dist/domain/readiness-timeout.js +19 -0
  329. package/daemon/dist/domain/readiness-timeout.js.map +1 -0
  330. package/daemon/dist/domain/request-phase-observer.d.ts +69 -0
  331. package/daemon/dist/domain/request-phase-observer.d.ts.map +1 -0
  332. package/daemon/dist/domain/request-phase-observer.js +206 -0
  333. package/daemon/dist/domain/request-phase-observer.js.map +1 -0
  334. package/daemon/dist/domain/restore-orchestrator.d.ts +2 -0
  335. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  336. package/daemon/dist/domain/restore-orchestrator.js +58 -12
  337. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  338. package/daemon/dist/domain/rig-mode/operating-posture.d.ts +17 -1
  339. package/daemon/dist/domain/rig-mode/operating-posture.d.ts.map +1 -1
  340. package/daemon/dist/domain/rig-mode/operating-posture.js +53 -15
  341. package/daemon/dist/domain/rig-mode/operating-posture.js.map +1 -1
  342. package/daemon/dist/domain/rig-repository.d.ts +12 -5
  343. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  344. package/daemon/dist/domain/rig-repository.js +49 -6
  345. package/daemon/dist/domain/rig-repository.js.map +1 -1
  346. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  347. package/daemon/dist/domain/rig-teardown.js +12 -3
  348. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  349. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  350. package/daemon/dist/domain/rigspec-codec.js +2 -0
  351. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  352. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  353. package/daemon/dist/domain/rigspec-exporter.js +1 -0
  354. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  355. package/daemon/dist/domain/rigspec-instantiator.d.ts +8 -3
  356. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  357. package/daemon/dist/domain/rigspec-instantiator.js +45 -12
  358. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  359. package/daemon/dist/domain/rigspec-preflight.d.ts +3 -2
  360. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  361. package/daemon/dist/domain/rigspec-preflight.js +18 -10
  362. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  363. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  364. package/daemon/dist/domain/rigspec-schema.js +5 -1
  365. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  366. package/daemon/dist/domain/route-timing-recorder.d.ts.map +1 -1
  367. package/daemon/dist/domain/route-timing-recorder.js +2 -0
  368. package/daemon/dist/domain/route-timing-recorder.js.map +1 -1
  369. package/daemon/dist/domain/runtime-adapter.d.ts +12 -3
  370. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  371. package/daemon/dist/domain/runtime-adapter.js +1 -0
  372. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  373. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  374. package/daemon/dist/domain/seat-attention-reconciler.js +10 -4
  375. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  376. package/daemon/dist/domain/seat-handover-service.d.ts +2 -0
  377. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  378. package/daemon/dist/domain/seat-handover-service.js +5 -7
  379. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  380. package/daemon/dist/domain/seat-launch-environment.d.ts.map +1 -1
  381. package/daemon/dist/domain/seat-launch-environment.js +4 -0
  382. package/daemon/dist/domain/seat-launch-environment.js.map +1 -1
  383. package/daemon/dist/domain/seat-lifecycle-service.d.ts +4 -0
  384. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  385. package/daemon/dist/domain/seat-lifecycle-service.js +4 -0
  386. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
  387. package/daemon/dist/domain/seat-status-service.d.ts +2 -1
  388. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -1
  389. package/daemon/dist/domain/seat-status-service.js +6 -4
  390. package/daemon/dist/domain/seat-status-service.js.map +1 -1
  391. package/daemon/dist/domain/service-orchestrator.d.ts +1 -0
  392. package/daemon/dist/domain/service-orchestrator.d.ts.map +1 -1
  393. package/daemon/dist/domain/service-orchestrator.js +4 -0
  394. package/daemon/dist/domain/service-orchestrator.js.map +1 -1
  395. package/daemon/dist/domain/session-transport.d.ts +5 -0
  396. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  397. package/daemon/dist/domain/session-transport.js +161 -14
  398. package/daemon/dist/domain/session-transport.js.map +1 -1
  399. package/daemon/dist/domain/skill-catalog.d.ts +19 -0
  400. package/daemon/dist/domain/skill-catalog.d.ts.map +1 -1
  401. package/daemon/dist/domain/skill-catalog.js +166 -17
  402. package/daemon/dist/domain/skill-catalog.js.map +1 -1
  403. package/daemon/dist/domain/skill-discovery.d.ts +1 -1
  404. package/daemon/dist/domain/skill-discovery.d.ts.map +1 -1
  405. package/daemon/dist/domain/skill-discovery.js +6 -0
  406. package/daemon/dist/domain/skill-discovery.js.map +1 -1
  407. package/daemon/dist/domain/slow-op-recorder.d.ts +5 -0
  408. package/daemon/dist/domain/slow-op-recorder.d.ts.map +1 -1
  409. package/daemon/dist/domain/slow-op-recorder.js +34 -1
  410. package/daemon/dist/domain/slow-op-recorder.js.map +1 -1
  411. package/daemon/dist/domain/startup-orchestrator.d.ts +30 -5
  412. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  413. package/daemon/dist/domain/startup-orchestrator.js +143 -43
  414. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  415. package/daemon/dist/domain/startup-proof.d.ts +7 -0
  416. package/daemon/dist/domain/startup-proof.d.ts.map +1 -1
  417. package/daemon/dist/domain/startup-proof.js +7 -0
  418. package/daemon/dist/domain/startup-proof.js.map +1 -1
  419. package/daemon/dist/domain/startup-submission-evidence.d.ts +5 -1
  420. package/daemon/dist/domain/startup-submission-evidence.d.ts.map +1 -1
  421. package/daemon/dist/domain/startup-submission-evidence.js +19 -2
  422. package/daemon/dist/domain/startup-submission-evidence.js.map +1 -1
  423. package/daemon/dist/domain/successor-session-launcher.d.ts +9 -3
  424. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  425. package/daemon/dist/domain/successor-session-launcher.js +12 -4
  426. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  427. package/daemon/dist/domain/system-world.d.ts +3 -0
  428. package/daemon/dist/domain/system-world.d.ts.map +1 -1
  429. package/daemon/dist/domain/system-world.js +24 -21
  430. package/daemon/dist/domain/system-world.js.map +1 -1
  431. package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts.map +1 -1
  432. package/daemon/dist/domain/terminal/cmux-provider-adapter.js +2 -3
  433. package/daemon/dist/domain/terminal/cmux-provider-adapter.js.map +1 -1
  434. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +19 -4
  435. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  436. package/daemon/dist/domain/terminal/herdr-adapter.js +102 -8
  437. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  438. package/daemon/dist/domain/terminal/terminal-provider.d.ts +2 -0
  439. package/daemon/dist/domain/terminal/terminal-provider.d.ts.map +1 -1
  440. package/daemon/dist/domain/terminal/terminal-service.d.ts +10 -0
  441. package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
  442. package/daemon/dist/domain/terminal/terminal-service.js +75 -6
  443. package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
  444. package/daemon/dist/domain/terminal/view-composer.d.ts +6 -0
  445. package/daemon/dist/domain/terminal/view-composer.d.ts.map +1 -1
  446. package/daemon/dist/domain/terminal/view-composer.js +4 -2
  447. package/daemon/dist/domain/terminal/view-composer.js.map +1 -1
  448. package/daemon/dist/domain/topology/remote-up-leaf.d.ts +1 -0
  449. package/daemon/dist/domain/topology/remote-up-leaf.d.ts.map +1 -1
  450. package/daemon/dist/domain/topology/remote-up-leaf.js.map +1 -1
  451. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  452. package/daemon/dist/domain/transcript-store.js +3 -2
  453. package/daemon/dist/domain/transcript-store.js.map +1 -1
  454. package/daemon/dist/domain/types.d.ts +6 -0
  455. package/daemon/dist/domain/types.d.ts.map +1 -1
  456. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  457. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  458. package/daemon/dist/domain/user-settings/settings-store.js +13 -0
  459. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  460. package/daemon/dist/domain/workflow-runtime.d.ts +1 -1
  461. package/daemon/dist/domain/workspace/project-catalog.d.ts +20 -0
  462. package/daemon/dist/domain/workspace/project-catalog.d.ts.map +1 -1
  463. package/daemon/dist/domain/workspace/project-catalog.js +92 -0
  464. package/daemon/dist/domain/workspace/project-catalog.js.map +1 -1
  465. package/daemon/dist/domain/workspace/project-registration.d.ts +49 -0
  466. package/daemon/dist/domain/workspace/project-registration.d.ts.map +1 -0
  467. package/daemon/dist/domain/workspace/project-registration.js +251 -0
  468. package/daemon/dist/domain/workspace/project-registration.js.map +1 -0
  469. package/daemon/dist/index.d.ts.map +1 -1
  470. package/daemon/dist/index.js +2 -1
  471. package/daemon/dist/index.js.map +1 -1
  472. package/daemon/dist/project-catalog-surface.d.ts +2 -1
  473. package/daemon/dist/project-catalog-surface.d.ts.map +1 -1
  474. package/daemon/dist/project-catalog-surface.js +1 -1
  475. package/daemon/dist/project-catalog-surface.js.map +1 -1
  476. package/daemon/dist/routes/bundles.d.ts.map +1 -1
  477. package/daemon/dist/routes/bundles.js +174 -413
  478. package/daemon/dist/routes/bundles.js.map +1 -1
  479. package/daemon/dist/routes/compaction.d.ts.map +1 -1
  480. package/daemon/dist/routes/compaction.js +14 -2
  481. package/daemon/dist/routes/compaction.js.map +1 -1
  482. package/daemon/dist/routes/env.d.ts.map +1 -1
  483. package/daemon/dist/routes/env.js +14 -4
  484. package/daemon/dist/routes/env.js.map +1 -1
  485. package/daemon/dist/routes/gateway.d.ts.map +1 -1
  486. package/daemon/dist/routes/gateway.js +5 -0
  487. package/daemon/dist/routes/gateway.js.map +1 -1
  488. package/daemon/dist/routes/projects.d.ts.map +1 -1
  489. package/daemon/dist/routes/projects.js +4 -2
  490. package/daemon/dist/routes/projects.js.map +1 -1
  491. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  492. package/daemon/dist/routes/rigs.js +3 -2
  493. package/daemon/dist/routes/rigs.js.map +1 -1
  494. package/daemon/dist/routes/rigspec.js +4 -2
  495. package/daemon/dist/routes/rigspec.js.map +1 -1
  496. package/daemon/dist/routes/seat.js +11 -4
  497. package/daemon/dist/routes/seat.js.map +1 -1
  498. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  499. package/daemon/dist/routes/sessions.js +2 -1
  500. package/daemon/dist/routes/sessions.js.map +1 -1
  501. package/daemon/dist/routes/telemetry.d.ts +2 -0
  502. package/daemon/dist/routes/telemetry.d.ts.map +1 -1
  503. package/daemon/dist/routes/telemetry.js +16 -0
  504. package/daemon/dist/routes/telemetry.js.map +1 -1
  505. package/daemon/dist/routes/up.js +9 -5
  506. package/daemon/dist/routes/up.js.map +1 -1
  507. package/daemon/dist/server.d.ts +1 -0
  508. package/daemon/dist/server.d.ts.map +1 -1
  509. package/daemon/dist/server.js +4 -1
  510. package/daemon/dist/server.js.map +1 -1
  511. package/daemon/dist/spec-validation-surface.d.ts +2 -0
  512. package/daemon/dist/spec-validation-surface.d.ts.map +1 -1
  513. package/daemon/dist/spec-validation-surface.js +2 -0
  514. package/daemon/dist/spec-validation-surface.js.map +1 -1
  515. package/daemon/dist/startup.d.ts.map +1 -1
  516. package/daemon/dist/startup.js +33 -11
  517. package/daemon/dist/startup.js.map +1 -1
  518. package/daemon/dist/system-world-surface.d.ts +1 -1
  519. package/daemon/dist/system-world-surface.d.ts.map +1 -1
  520. package/daemon/dist/system-world-surface.js +1 -1
  521. package/daemon/dist/system-world-surface.js.map +1 -1
  522. package/daemon/docs/reference/agent-spec.md +113 -67
  523. package/daemon/docs/reference/agent-startup-guide.md +106 -33
  524. package/daemon/docs/reference/agent-state-taxonomy.md +44 -13
  525. package/daemon/docs/reference/browser-access.md +8 -7
  526. package/daemon/docs/reference/bundle-formats.md +207 -0
  527. package/daemon/docs/reference/chain-file-convention.md +16 -7
  528. package/daemon/docs/reference/developing.md +7 -0
  529. package/daemon/docs/reference/edge-types.md +18 -10
  530. package/daemon/docs/reference/getting-started.md +423 -113
  531. package/daemon/docs/reference/health-diagnosis.md +14 -6
  532. package/daemon/docs/reference/help.md +33 -8
  533. package/daemon/docs/reference/host-resources.md +3 -2
  534. package/daemon/docs/reference/inventory-request-diagnostics.md +75 -0
  535. package/daemon/docs/reference/knowledge-maturity.md +3 -1
  536. package/daemon/docs/reference/legacy-topology-migration.md +4 -2
  537. package/daemon/docs/reference/lore-routing.md +3 -1
  538. package/daemon/docs/reference/mission-install.md +3 -1
  539. package/daemon/docs/reference/non-interruptive-mode.md +60 -0
  540. package/daemon/docs/reference/planning-dial.md +2 -1
  541. package/daemon/docs/reference/product-journey-sdlc.md +11 -6
  542. package/daemon/docs/reference/product-management-pass.md +3 -1
  543. package/daemon/docs/reference/project-workspace.md +80 -3
  544. package/daemon/docs/reference/publishing-a-rig-bundle.md +144 -0
  545. package/daemon/docs/reference/refocus-channel.md +14 -5
  546. package/daemon/docs/reference/release-boundary.md +7 -3
  547. package/daemon/docs/reference/rig-bundle.md +271 -42
  548. package/daemon/docs/reference/rig-spec.md +150 -26
  549. package/daemon/docs/reference/rosters.md +60 -0
  550. package/daemon/docs/reference/schemas/bundle-behaviour.v1.schema.json +546 -0
  551. package/daemon/docs/reference/schemas/bundle-common.v1.schema.json +110 -0
  552. package/daemon/docs/reference/schemas/bundle-configurations.v1.schema.json +67 -0
  553. package/daemon/docs/reference/schemas/bundle-status.v1.schema.json +323 -0
  554. package/daemon/docs/reference/schemas/fixtures/identity-vectors.json +80 -0
  555. package/daemon/docs/reference/schemas/fixtures/invalid/behaviour/not-generated-with-sections.json +60 -0
  556. package/daemon/docs/reference/schemas/fixtures/invalid/configurations/spaced-member.configurations.yaml +6 -0
  557. package/daemon/docs/reference/schemas/fixtures/invalid/registry/listed-with-withdrawn-on.yaml +21 -0
  558. package/daemon/docs/reference/schemas/fixtures/invalid/registry/missing-source.yaml +16 -0
  559. package/daemon/docs/reference/schemas/fixtures/invalid/registry/parent-folder.yaml +20 -0
  560. package/daemon/docs/reference/schemas/fixtures/invalid/registry/short-commit.yaml +20 -0
  561. package/daemon/docs/reference/schemas/fixtures/invalid/registry/withdrawn-without-date.yaml +20 -0
  562. package/daemon/docs/reference/schemas/fixtures/invalid/run-record/harness-check-with-configuration.json +75 -0
  563. package/daemon/docs/reference/schemas/fixtures/invalid/run-record/unlabelable-platform.json +97 -0
  564. package/daemon/docs/reference/schemas/fixtures/invalid/status/hand-edited-notice.json +61 -0
  565. package/daemon/docs/reference/schemas/fixtures/invalid/status/tested-with-assistance.json +62 -0
  566. package/daemon/docs/reference/schemas/fixtures/invalid/status/tested-without-records.json +59 -0
  567. package/daemon/docs/reference/schemas/fixtures/invalid/status/unavailable-harness-with-result.json +61 -0
  568. package/daemon/docs/reference/schemas/fixtures/invalid/status/unavailable-listing-with-label.json +61 -0
  569. package/daemon/docs/reference/schemas/fixtures/valid/behaviour/custom-not-generated.json +22 -0
  570. package/daemon/docs/reference/schemas/fixtures/valid/behaviour/legacy-archive-unknown-identity.json +53 -0
  571. package/daemon/docs/reference/schemas/fixtures/valid/behaviour/mixed-runtimes-default.json +101 -0
  572. package/daemon/docs/reference/schemas/fixtures/valid/behaviour/mixed-runtimes-yolo.json +102 -0
  573. package/daemon/docs/reference/schemas/fixtures/valid/behaviour/openrig-dev.recommended.json +258 -0
  574. package/daemon/docs/reference/schemas/fixtures/valid/configurations/openrig-dev.configurations.yaml +12 -0
  575. package/daemon/docs/reference/schemas/fixtures/valid/registry/openrig-dev.yaml +20 -0
  576. package/daemon/docs/reference/schemas/fixtures/valid/registry/withdrawn.yaml +21 -0
  577. package/daemon/docs/reference/schemas/fixtures/valid/run-record/pi-harness-check-blocked.json +74 -0
  578. package/daemon/docs/reference/schemas/fixtures/valid/run-record/team-assisted-pass.json +97 -0
  579. package/daemon/docs/reference/schemas/fixtures/valid/run-record/team-pass.json +97 -0
  580. package/daemon/docs/reference/schemas/fixtures/valid/run-record/withdraws-earlier.json +99 -0
  581. package/daemon/docs/reference/schemas/fixtures/valid/status/status.json +61 -0
  582. package/daemon/docs/reference/schemas/registry-entry.v1.schema.json +139 -0
  583. package/daemon/docs/reference/schemas/run-record.v1.schema.json +315 -0
  584. package/daemon/docs/reference/scoped-operating-posture.md +17 -9
  585. package/daemon/docs/reference/sdlc-conventions.md +42 -26
  586. package/daemon/docs/reference/slack-app-setup.md +52 -7
  587. package/daemon/docs/reference/stream-classifier-worker.md +21 -8
  588. package/daemon/docs/reference/telemetry.md +114 -0
  589. package/daemon/docs/reference/worktree-builds.md +12 -6
  590. package/daemon/policies/builtin/auto.policy.md +24 -0
  591. package/daemon/specs/agents/development/implementer/agent.yaml +2 -2
  592. package/daemon/specs/agents/development/qa/agent.yaml +1 -1
  593. package/daemon/specs/agents/product-management/pm/agent.yaml +10 -0
  594. package/daemon/specs/agents/shared/skills/core/agent-starters/SKILL.md +0 -6
  595. package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -8
  596. package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +5 -5
  597. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +3 -4
  598. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +12 -9
  599. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +29 -29
  600. package/daemon/specs/agents/shared/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +0 -1
  601. package/daemon/specs/agents/shared/skills/core/session-source-fork/SKILL.md +0 -5
  602. package/daemon/specs/agents/shared/skills/process/agent-browser/OPENRIG.md +1 -1
  603. package/daemon/specs/agents/shared/skills/process/systematic-debugging/SKILL.md +0 -2
  604. package/daemon/specs/rigs/focused/{adversarial-review → code-review}/rig.yaml +1 -1
  605. package/daemon/specs/rigs/focused/pm/CULTURE.md +21 -0
  606. package/daemon/specs/rigs/focused/{pm-team → pm}/rig.yaml +5 -5
  607. package/daemon/specs/rigs/focused/{research-team → research}/rig.yaml +1 -1
  608. package/daemon/specs/rigs/launch/factory/CULTURE.md +96 -0
  609. package/daemon/specs/rigs/launch/factory/guidance/advisor-role.md +10 -0
  610. package/daemon/specs/rigs/launch/factory/guidance/lead-first-move.md +23 -0
  611. package/daemon/specs/rigs/launch/{demo → factory}/rig.yaml +46 -35
  612. package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/instance/CRAFT.md +1 -1
  613. package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/rig/CRAFT.md +2 -2
  614. package/daemon/specs/rigs/{preview/product-team → launch/factory}/topology/rig/ORCHESTRATION-CRAFT.md +2 -2
  615. package/daemon/specs/rigs/{preview/product-team/topology/seats/dev1-qa → launch/factory/topology/seats/dev-qa}/CRAFT.md +1 -1
  616. package/daemon/specs/rigs/{preview/product-team/topology/seats/orch1-lead → launch/factory/topology/seats/orch-lead}/CRAFT.md +1 -1
  617. package/daemon/specs/rigs/{preview/product-team/topology/seats/rev1-r1 → launch/factory/topology/seats/review-r1}/CRAFT.md +1 -1
  618. package/daemon/specs/rigs/{preview/product-team/topology/seats/rev1-r2 → launch/factory/topology/seats/review-r2}/CRAFT.md +1 -1
  619. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +37 -0
  620. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/startup/context.md +12 -13
  621. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +167 -4
  622. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/startup/context.md +30 -7
  623. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/guidance/role.md +37 -0
  624. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +41 -0
  625. package/daemon/specs/rigs/launch/starter/CULTURE.md +39 -0
  626. package/daemon/specs/rigs/launch/starter/guidance/lead-first-move.md +23 -0
  627. package/daemon/specs/rigs/launch/{first-project-mixed → starter}/rig.yaml +11 -8
  628. package/dist/build-info.js +3 -3
  629. package/dist/bundle-behaviour.d.ts +10 -0
  630. package/dist/bundle-behaviour.d.ts.map +1 -0
  631. package/dist/bundle-behaviour.js +72 -0
  632. package/dist/bundle-behaviour.js.map +1 -0
  633. package/dist/commands/bootstrap.d.ts.map +1 -1
  634. package/dist/commands/bootstrap.js +30 -5
  635. package/dist/commands/bootstrap.js.map +1 -1
  636. package/dist/commands/bundle.d.ts +12 -0
  637. package/dist/commands/bundle.d.ts.map +1 -1
  638. package/dist/commands/bundle.js +286 -21
  639. package/dist/commands/bundle.js.map +1 -1
  640. package/dist/commands/capture.js +4 -4
  641. package/dist/commands/capture.js.map +1 -1
  642. package/dist/commands/compact-plan.js +2 -2
  643. package/dist/commands/compact-plan.js.map +1 -1
  644. package/dist/commands/config.d.ts.map +1 -1
  645. package/dist/commands/config.js +3 -0
  646. package/dist/commands/config.js.map +1 -1
  647. package/dist/commands/context.d.ts +3 -1
  648. package/dist/commands/context.d.ts.map +1 -1
  649. package/dist/commands/context.js +66 -18
  650. package/dist/commands/context.js.map +1 -1
  651. package/dist/commands/daemon.js +1 -1
  652. package/dist/commands/daemon.js.map +1 -1
  653. package/dist/commands/doctor.d.ts.map +1 -1
  654. package/dist/commands/doctor.js +7 -2
  655. package/dist/commands/doctor.js.map +1 -1
  656. package/dist/commands/down.d.ts.map +1 -1
  657. package/dist/commands/down.js +7 -1
  658. package/dist/commands/down.js.map +1 -1
  659. package/dist/commands/env.js +1 -1
  660. package/dist/commands/env.js.map +1 -1
  661. package/dist/commands/health.d.ts.map +1 -1
  662. package/dist/commands/health.js +4 -1
  663. package/dist/commands/health.js.map +1 -1
  664. package/dist/commands/host.d.ts +11 -0
  665. package/dist/commands/host.d.ts.map +1 -1
  666. package/dist/commands/host.js +25 -1
  667. package/dist/commands/host.js.map +1 -1
  668. package/dist/commands/import.d.ts.map +1 -1
  669. package/dist/commands/import.js +2 -0
  670. package/dist/commands/import.js.map +1 -1
  671. package/dist/commands/mcp.d.ts.map +1 -1
  672. package/dist/commands/mcp.js +25 -12
  673. package/dist/commands/mcp.js.map +1 -1
  674. package/dist/commands/policy.d.ts.map +1 -1
  675. package/dist/commands/policy.js +3 -2
  676. package/dist/commands/policy.js.map +1 -1
  677. package/dist/commands/project-jev.js +1 -1
  678. package/dist/commands/project-jev.js.map +1 -1
  679. package/dist/commands/project.d.ts.map +1 -1
  680. package/dist/commands/project.js +5 -3
  681. package/dist/commands/project.js.map +1 -1
  682. package/dist/commands/ps.d.ts +1 -0
  683. package/dist/commands/ps.d.ts.map +1 -1
  684. package/dist/commands/ps.js +12 -2
  685. package/dist/commands/ps.js.map +1 -1
  686. package/dist/commands/queue.d.ts.map +1 -1
  687. package/dist/commands/queue.js +4 -2
  688. package/dist/commands/queue.js.map +1 -1
  689. package/dist/commands/restore.d.ts.map +1 -1
  690. package/dist/commands/restore.js +5 -0
  691. package/dist/commands/restore.js.map +1 -1
  692. package/dist/commands/roster.d.ts +63 -0
  693. package/dist/commands/roster.d.ts.map +1 -0
  694. package/dist/commands/roster.js +169 -0
  695. package/dist/commands/roster.js.map +1 -0
  696. package/dist/commands/seat.d.ts.map +1 -1
  697. package/dist/commands/seat.js +57 -8
  698. package/dist/commands/seat.js.map +1 -1
  699. package/dist/commands/send.d.ts.map +1 -1
  700. package/dist/commands/send.js +20 -6
  701. package/dist/commands/send.js.map +1 -1
  702. package/dist/commands/setup.d.ts +1 -1
  703. package/dist/commands/setup.d.ts.map +1 -1
  704. package/dist/commands/setup.js +72 -25
  705. package/dist/commands/setup.js.map +1 -1
  706. package/dist/commands/slack.d.ts +1 -1
  707. package/dist/commands/slack.d.ts.map +1 -1
  708. package/dist/commands/slack.js +49 -4
  709. package/dist/commands/slack.js.map +1 -1
  710. package/dist/commands/specs.d.ts.map +1 -1
  711. package/dist/commands/specs.js +19 -2
  712. package/dist/commands/specs.js.map +1 -1
  713. package/dist/commands/start.js +1 -1
  714. package/dist/commands/start.js.map +1 -1
  715. package/dist/commands/telemetry.d.ts +5 -0
  716. package/dist/commands/telemetry.d.ts.map +1 -0
  717. package/dist/commands/telemetry.js +58 -0
  718. package/dist/commands/telemetry.js.map +1 -0
  719. package/dist/commands/terminal.js +1 -1
  720. package/dist/commands/terminal.js.map +1 -1
  721. package/dist/commands/tui.js +4 -4
  722. package/dist/commands/tui.js.map +1 -1
  723. package/dist/commands/up.d.ts.map +1 -1
  724. package/dist/commands/up.js +115 -68
  725. package/dist/commands/up.js.map +1 -1
  726. package/dist/commands/whoami.d.ts +3 -0
  727. package/dist/commands/whoami.d.ts.map +1 -1
  728. package/dist/commands/whoami.js +29 -2
  729. package/dist/commands/whoami.js.map +1 -1
  730. package/dist/config-store.d.ts +5 -1
  731. package/dist/config-store.d.ts.map +1 -1
  732. package/dist/config-store.js +16 -1
  733. package/dist/config-store.js.map +1 -1
  734. package/dist/daemon-auto-start.d.ts +8 -0
  735. package/dist/daemon-auto-start.d.ts.map +1 -0
  736. package/dist/daemon-auto-start.js +39 -0
  737. package/dist/daemon-auto-start.js.map +1 -0
  738. package/dist/front-door.d.ts.map +1 -1
  739. package/dist/front-door.js +3 -2
  740. package/dist/front-door.js.map +1 -1
  741. package/dist/index.d.ts +1 -0
  742. package/dist/index.d.ts.map +1 -1
  743. package/dist/index.js +4 -0
  744. package/dist/index.js.map +1 -1
  745. package/dist/lib/bundle-check.d.ts +13 -0
  746. package/dist/lib/bundle-check.d.ts.map +1 -0
  747. package/dist/lib/bundle-check.js +191 -0
  748. package/dist/lib/bundle-check.js.map +1 -0
  749. package/dist/lib/bundle-configuration.d.ts +60 -0
  750. package/dist/lib/bundle-configuration.d.ts.map +1 -0
  751. package/dist/lib/bundle-configuration.js +198 -0
  752. package/dist/lib/bundle-configuration.js.map +1 -0
  753. package/dist/lib/bundle-source.d.ts +57 -0
  754. package/dist/lib/bundle-source.d.ts.map +1 -0
  755. package/dist/lib/bundle-source.js +355 -0
  756. package/dist/lib/bundle-source.js.map +1 -0
  757. package/dist/lib/context-install.d.ts.map +1 -1
  758. package/dist/lib/context-install.js +2 -3
  759. package/dist/lib/context-install.js.map +1 -1
  760. package/dist/lib/permission-policy/policy-ref.d.ts +6 -1
  761. package/dist/lib/permission-policy/policy-ref.d.ts.map +1 -1
  762. package/dist/lib/permission-policy/policy-ref.js +16 -4
  763. package/dist/lib/permission-policy/policy-ref.js.map +1 -1
  764. package/dist/lib/permission-policy/policy-spec.d.ts +1 -1
  765. package/dist/lib/permission-policy/policy-spec.d.ts.map +1 -1
  766. package/dist/lib/permission-policy/policy-spec.js +2 -2
  767. package/dist/lib/permission-policy/policy-spec.js.map +1 -1
  768. package/dist/lib/scope/templates.d.ts.map +1 -1
  769. package/dist/lib/scope/templates.js +1 -0
  770. package/dist/lib/scope/templates.js.map +1 -1
  771. package/dist/lib/scope-templates/notes.md +1 -1
  772. package/dist/lib/work-install.d.ts +12 -0
  773. package/dist/lib/work-install.d.ts.map +1 -1
  774. package/dist/lib/work-install.js +55 -4
  775. package/dist/lib/work-install.js.map +1 -1
  776. package/package.json +1 -1
  777. package/tui/dist/commands/registry.d.ts.map +1 -1
  778. package/tui/dist/commands/registry.js +8 -3
  779. package/tui/dist/commands/registry.js.map +1 -1
  780. package/tui/dist/daemon-client.d.ts +1 -0
  781. package/tui/dist/daemon-client.d.ts.map +1 -1
  782. package/tui/dist/daemon-client.js +5 -2
  783. package/tui/dist/daemon-client.js.map +1 -1
  784. package/tui/dist/main.js +30 -3
  785. package/tui/dist/main.js.map +1 -1
  786. package/tui/dist/render.d.ts.map +1 -1
  787. package/tui/dist/render.js +66 -19
  788. package/tui/dist/render.js.map +1 -1
  789. package/tui/dist/specs/graph.d.ts +5 -0
  790. package/tui/dist/specs/graph.d.ts.map +1 -0
  791. package/tui/dist/specs/graph.js +16 -0
  792. package/tui/dist/specs/graph.js.map +1 -0
  793. package/tui/dist/specs/launch.d.ts +29 -0
  794. package/tui/dist/specs/launch.d.ts.map +1 -0
  795. package/tui/dist/specs/launch.js +64 -0
  796. package/tui/dist/specs/launch.js.map +1 -0
  797. package/tui/dist/startup.d.ts.map +1 -1
  798. package/tui/dist/startup.js +15 -6
  799. package/tui/dist/startup.js.map +1 -1
  800. package/tui/dist/state.d.ts +2 -2
  801. package/tui/dist/state.d.ts.map +1 -1
  802. package/tui/dist/state.js +41 -18
  803. package/tui/dist/state.js.map +1 -1
  804. package/tui/dist/terminals/terminal-model.d.ts +1 -0
  805. package/tui/dist/terminals/terminal-model.d.ts.map +1 -1
  806. package/tui/dist/terminals/terminal-model.js +19 -2
  807. package/tui/dist/terminals/terminal-model.js.map +1 -1
  808. package/tui/dist/types.d.ts +17 -0
  809. package/tui/dist/types.d.ts.map +1 -1
  810. package/daemon/specs/rigs/launch/conveyor/README.md +0 -33
  811. package/daemon/specs/rigs/launch/conveyor/rig.yaml +0 -72
  812. package/daemon/specs/rigs/launch/demo/project-example/README.md +0 -25
  813. package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/SPEC.md +0 -19
  814. package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/PROGRESS.md +0 -6
  815. package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/PROOF.md +0 -7
  816. package/daemon/specs/rigs/launch/demo/project-example/missions/improve-onboarding/slices/01-shorten-first-run/SPEC.md +0 -31
  817. package/daemon/specs/rigs/launch/first-project/rig.yaml +0 -31
  818. package/daemon/specs/rigs/launch/first-project-claude/rig.yaml +0 -30
  819. package/daemon/specs/rigs/launch/implementation-pair/rig.yaml +0 -27
  820. package/daemon/specs/rigs/preview/product-team/rig.yaml +0 -90
  821. /package/daemon/specs/rigs/launch/factory-rsi/{rig.yaml → world-bundle.yaml} +0 -0
@@ -1,32 +1,43 @@
1
1
  version: "0.2"
2
- name: demo
3
- summary: >
4
- Launch-grade starter: a stable full product squad with two
5
- orchestrators, implementation, QA, design, and two independent
6
- reviewers. This is the release-gated showcase rig.
7
-
2
+ name: factory
8
3
  culture_file: CULTURE.md
4
+ summary: >
5
+ A product factory with a lead, a PM advisor, build, QA, design, and two
6
+ independent reviewers. Bring ideas to the advisor; the lead runs the team.
9
7
 
10
8
  pods:
11
- - id: orch1
9
+ - id: orch
12
10
  label: Orchestration
13
11
  members:
14
12
  - id: lead
15
- agent_ref: "local:../../../agents/orchestration/orchestrator"
16
- runtime: claude-code
17
- profile: default
18
- cwd: "."
19
- - id: peer
20
13
  agent_ref: "local:../../../agents/orchestration/orchestrator"
21
14
  runtime: codex
22
15
  profile: default
23
16
  cwd: "."
24
- edges: []
17
+ startup:
18
+ files:
19
+ - path: guidance/lead-first-move.md
20
+ delivery_hint: send_text
21
+ required: true
22
+ - id: advisor
23
+ agent_ref: "local:../../../agents/product-management/pm"
24
+ runtime: claude-code
25
+ profile: advisor
26
+ cwd: "."
27
+ startup:
28
+ files:
29
+ - path: guidance/advisor-role.md
30
+ delivery_hint: send_text
31
+ required: true
32
+ edges:
33
+ - kind: collaborates_with
34
+ from: advisor
35
+ to: lead
25
36
 
26
- - id: dev1
37
+ - id: dev
27
38
  label: Development
28
39
  members:
29
- - id: impl
40
+ - id: build
30
41
  agent_ref: "local:../../../agents/development/implementer"
31
42
  runtime: claude-code
32
43
  profile: default
@@ -43,10 +54,10 @@ pods:
43
54
  cwd: "."
44
55
  edges:
45
56
  - kind: delegates_to
46
- from: impl
57
+ from: build
47
58
  to: qa
48
59
 
49
- - id: rev1
60
+ - id: review
50
61
  label: Review
51
62
  members:
52
63
  - id: r1
@@ -63,29 +74,29 @@ pods:
63
74
 
64
75
  edges:
65
76
  - kind: delegates_to
66
- from: orch1.lead
67
- to: dev1.impl
77
+ from: orch.lead
78
+ to: dev.build
68
79
  - kind: delegates_to
69
- from: orch1.lead
70
- to: dev1.design
80
+ from: orch.lead
81
+ to: dev.design
71
82
  - kind: delegates_to
72
- from: orch1.lead
73
- to: rev1.r1
83
+ from: orch.lead
84
+ to: review.r1
74
85
  - kind: delegates_to
75
- from: orch1.peer
76
- to: dev1.qa
86
+ from: orch.lead
87
+ to: dev.qa
77
88
  - kind: delegates_to
78
- from: orch1.peer
79
- to: rev1.r2
89
+ from: orch.lead
90
+ to: review.r2
80
91
  - kind: can_observe
81
- from: rev1.r1
82
- to: dev1.impl
92
+ from: review.r1
93
+ to: dev.build
83
94
  - kind: can_observe
84
- from: rev1.r1
85
- to: dev1.design
95
+ from: review.r1
96
+ to: dev.design
86
97
  - kind: can_observe
87
- from: rev1.r2
88
- to: dev1.impl
98
+ from: review.r2
99
+ to: dev.build
89
100
  - kind: can_observe
90
- from: rev1.r2
91
- to: dev1.qa
101
+ from: review.r2
102
+ to: dev.qa
@@ -1,6 +1,6 @@
1
1
  # Instance Craft — shipped defaults
2
2
 
3
- <!-- Shipped by the product-team rig spec (copy-if-absent; this file is yours
3
+ <!-- Shipped by the factory rig spec (copy-if-absent; this file is yours
4
4
  to append to — a later rig-up never overwrites it). Curated, generally
5
5
  applicable practice for EVERY seat on this instance. Machine-wide facts
6
6
  belong here; rig norms belong one level down; seat specifics at the seat. -->
@@ -1,6 +1,6 @@
1
- # Rig Craft — shipped defaults (product-team)
1
+ # Rig Craft — shipped defaults (factory)
2
2
 
3
- <!-- Shipped by the product-team rig spec (copy-if-absent; append freely — a
3
+ <!-- Shipped by the factory rig spec (copy-if-absent; append freely — a
4
4
  later rig-up never overwrites). Rig-wide norms every member holds. -->
5
5
 
6
6
  - **If another seat must ACT, it needs a queue row.** A send informs; only a
@@ -1,6 +1,6 @@
1
- # Orchestration Craft — shipped defaults (product-team)
1
+ # Orchestration Craft — shipped defaults (factory)
2
2
 
3
- <!-- Shipped by the product-team rig spec (copy-if-absent; append freely).
3
+ <!-- Shipped by the factory rig spec (copy-if-absent; append freely).
4
4
  Cross-pod tactical reminders stay at the RIG altitude; a pod directory is
5
5
  for context that one bounded sub-team owns. These are the reminders you
6
6
  need AT THE MOMENT OF ACTING on another seat. -->
@@ -1,4 +1,4 @@
1
- # Seat Craft — dev1-qa (shipped default)
1
+ # Seat Craft — dev-qa (shipped default)
2
2
 
3
3
  <!-- Copy-if-absent; this seat's occupants append what the position learns. -->
4
4
 
@@ -1,4 +1,4 @@
1
- # Seat Craft — orch1-lead (shipped default)
1
+ # Seat Craft — orch-lead (shipped default)
2
2
 
3
3
  <!-- Copy-if-absent; this seat's occupants append what the position learns. -->
4
4
 
@@ -1,4 +1,4 @@
1
- # Seat Craft — rev1-r1 (shipped default)
1
+ # Seat Craft — review-r1 (shipped default)
2
2
 
3
3
  <!-- Copy-if-absent; this seat's occupants append what the position learns. -->
4
4
 
@@ -1,4 +1,4 @@
1
- # Seat Craft — rev1-r2 (shipped default)
1
+ # Seat Craft — review-r2 (shipped default)
2
2
 
3
3
  <!-- Copy-if-absent; this seat's occupants append what the position learns. -->
4
4
 
@@ -48,3 +48,40 @@ for more detail.
48
48
  Say so plainly. Don't invent topology that isn't there; don't promise
49
49
  operator the agent will do something without confirming. Honest gaps
50
50
  are easier to fix than confident wrong answers.
51
+
52
+ ## Operational authority and consequences
53
+
54
+ Exercise this power with judgment, guided by your instructions and the autonomy
55
+ the person expresses as trust grows; the kernel culture describes that responsibility.
56
+
57
+ Kernel launch defaults permit routine operations without adding approval steps.
58
+ Claude launches in `acceptEdits` with launch-only allowances for `rig`, `tmux`,
59
+ operational command families, Skill and file tools. The file-tool grants are not
60
+ limited to the workspace: Claude can write anywhere the OS user can, and read
61
+ under the user's home, without prompts; a read elsewhere may still ask.
62
+ This is not bypass mode; explicit user ask/deny rules still apply. Codex launches with
63
+ `--sandbox danger-full-access --ask-for-approval never`: **unsandboxed host
64
+ access**, not a command allowlist, within the OS user's existing rights. Its
65
+ full-access and migration notices are acknowledged for that launch. Explicit
66
+ seat permission choices, authored policies and named Codex profiles keep their
67
+ existing meaning. Other rigs keep their existing defaults. These grants do not
68
+ change role responsibilities or authorize work the user has not selected.
69
+
70
+ Keep these consequences in your working context through compaction, handover
71
+ and restore; inspect an uncertain outcome before repeating the operation:
72
+
73
+ - `rig down` terminates the rig's live managed tmux sessions. A daemon-only
74
+ restart is a different operation; down is not a routine upgrade step.
75
+ - An interrupted or timed-out `rig restore` request can continue server-side.
76
+ Read its attempt/events: it can finish or fail after the client goes away.
77
+ - A timed-out import is not proof of failure. A retry may create a second rig
78
+ with the same name; reconcile the existing result first.
79
+ - Do not compact a peer to unblock it. Compaction changes its working context;
80
+ use it only for an intentional context transition.
81
+ - Tight agent polling loops can exhaust shared provider limits. Prefer the
82
+ existing completion event or wake to repeated turns over unchanged output.
83
+ - Answer an interactive prompt only intentionally, for the named operation.
84
+ An operations grant is not consent to answer a peer's prompt.
85
+ - After a host event, inspect the daemon/listener and actual tmux processes,
86
+ native identity and retained history. A database row marked running alone
87
+ does not establish that its process survived.
@@ -5,23 +5,22 @@ this through their terminal or through the Mission Control UI.
5
5
 
6
6
  ## First action
7
7
 
8
- Introduce yourself in one short paragraph. Tell the user:
8
+ Run `rig whoami --json`, then wait for the person. Don't greet: the
9
+ operator (`operator.agent`) is the first agent the person talks to. It
10
+ greets them and helps them pick a first team.
9
11
 
10
- 1. Who you are (`advisor.lead`) and what you can do for them
11
- today (pilot intent → route to operator or queue worker, propose
12
- topology, capture requirements).
13
- 2. That the operator agent is available at `operator.agent`
14
- for "bring my rigs back online" / install / topology mutation
15
- work.
16
- 3. That the queue worker is available at `queue.worker` for
17
- classification of stream items.
18
-
19
- Don't list every skill; the user can ask if they're curious.
12
+ When the person writes to you, answer in one short paragraph: who you are
13
+ (`advisor.lead`) and what you can do for them (pilot intent, route work to
14
+ the operator or queue worker, propose topology, capture requirements). If
15
+ they want a team started, the operator does that. Don't list every skill;
16
+ they can ask.
20
17
 
21
18
  ## What you can assume about the user
22
19
 
23
- - The user is on macOS and has Claude Code and/or Codex
24
- authenticated (otherwise this rig wouldn't have booted).
20
+ - The user has Claude Code and/or Codex authenticated (otherwise
21
+ this rig wouldn't have booted).
22
+ - OpenRig runs on macOS and Linux. Don't assume which one this host
23
+ is; check (for example `uname -s`) when it matters.
25
24
  - The user knows OpenRig exists but may not remember every rig name
26
25
  or command. Pointing them at `rig` CLI verbs as they come up is
27
26
  fine; don't dump a manual on them.
@@ -6,7 +6,7 @@ diagnoses; the queue worker retains intake classification. Never report an
6
6
  unknown activity signal as idle or a persisted running record as process proof.
7
7
 
8
8
  The shared dashboard is the kernel's `operator.human` terminal. The human can enter with
9
- `rig tui --shared`, or through `rig terminal open kernel --provider herdr`
9
+ `rig tui --shared`, or through `rig terminal open saved:kernel --provider herdr`
10
10
  (cmux is also supported). It is an ordinary TUI in a terminal, not an agent
11
11
  or human-message inbox. Capture it before driving it, preserve the user's view
12
12
  unless the task calls for navigation, and use the registered human channel for
@@ -18,15 +18,18 @@ human channel; a terminal attachment is not a person's address.
18
18
 
19
19
  ## What you do
20
20
 
21
- - Bring rigs up and down (`rig up <spec>`, `rig down <rigId>`).
21
+ - Bring rigs up and down (`rig up <spec>`, `rig down <rigId>`). `rig down` and `rig seat stop`
22
+ end agents' sessions and any work in progress: check `rig ps --nodes --rig <name>` first, and
23
+ stop a team or seat only when the person asked for it.
22
24
  - Restart selected work after a reboot. Bare `rig` starts only the daemon;
23
25
  the TUI recommends kernel first and lets the user select individual seats.
24
26
  When the user says "bring my rigs back online":
25
27
  1. List rigs that were running pre-reboot using daemon persisted
26
28
  state (`rig ps --json`), then inspect actual selected seat state.
27
29
  2. Confirm with the user which subset to restart.
28
- 3. Restart each via `rig up <spec>` (or `rig restore <snapshot>`
29
- if a snapshot exists).
30
+ 3. Restart each via `rig up <rig-name> --existing`, which restores it from its
31
+ automatically selected snapshot (`rig up <spec>` would start a new team in place
32
+ of the stopped one).
30
33
  4. Confirm healthy via `rig ps --nodes --rig <name>`.
31
34
  - Inspect topology, transcript, attention queue state, mission
32
35
  control views.
@@ -34,6 +37,128 @@ human channel; a terminal attachment is not a person's address.
34
37
  skill for the supported upgrade path and verify the resulting daemon
35
38
  and rig health before declaring the operation complete.
36
39
 
40
+ ## Helping someone start a team
41
+
42
+ After install, the person usually talks to you first. When they are talking to
43
+ you in this pane, their answers here are their decisions; don't send a launch
44
+ question through the human channel instead.
45
+
46
+ 1. **Goal first.** Use a goal and folder already supplied, including a handoff
47
+ from the installing agent; do not ask for them again. If the goal is missing,
48
+ ask once: "What would you like to build or change?" If they already named a
49
+ team, use it and skip the questions it answers.
50
+ 2. **Where it works.** If the folder is missing, ask which folder the team should
51
+ work in (usually a clone of their repository) and use its absolute path. Your
52
+ own working directory is OpenRig's workspace, not their project, so never launch with
53
+ `--cwd .` from here.
54
+ 3. **Three teams, one recommendation.** Present starter, workshop and factory,
55
+ recommend one with a short reason tied to their goal, and draw each:
56
+ - `starter`: a builder and a reviewer (`dev-build`, `dev-review`) for one
57
+ bounded change. Built in; `first-project` is its old name.
58
+ - `workshop`: a lead, a builder, a QA seat and a reviewer for ongoing work
59
+ in one repository. Not built in: it installs from its listing on
60
+ openrig.dev/rigs, a GitHub folder link pinned to a reviewed commit. Read
61
+ the commit and its configurations from
62
+ https://raw.githubusercontent.com/mvschwarz/openrig-world/main/registry/workshop.yaml,
63
+ fetched fresh, for example with `curl -fsSL <that link>`. A web tool's cached
64
+ copy can be older than the current pin and would launch an older workshop;
65
+ the raw link itself can trail a new pin by a few minutes (it is cached for
66
+ 300 seconds).
67
+ - `factory`: seven agents (a lead, an advisor, build, QA, design and two
68
+ independent reviewers) for sustained product work. Built in; it uses the
69
+ most concurrent capacity.
70
+ Offer the shelf only when the goal asks for it: `code-review` (two
71
+ independent reviews), `research` (an analyst and a synthesizer) and `pm` (a
72
+ product lead, a researcher and a builder for prototypes).
73
+ 4. **Draw from the real spec, before anything starts.** For a built-in team,
74
+ run `rig specs preview <team> --kind rig --json` and draw members and
75
+ runtimes from `graph.nodes` and edges from `graph.edges`, for example
76
+ `[dev.build, Claude] --delegates_to--> [dev.review, Codex]`, with one line
77
+ on what each role does. For workshop, draw from its `rig.yaml` at the pinned
78
+ commit.
79
+ 5. **Fit it to their providers.** Infer which tools they have from the
80
+ kernel's own runtimes (`rig ps --nodes --rig kernel --json`), or ask. Check
81
+ only the providers the team needs (`claude auth status` or
82
+ `codex login status`). If you run in Claude Code, the kernel launch allows
83
+ both checks; say in one line that it can still ask them to approve it if
84
+ their own permission rules cover that command. If a login is missing, ask
85
+ once for `claude auth login` or `codex login` and recheck afterwards. The
86
+ team keeps its name whatever runs it; never offer per-provider variants.
87
+ - **A built-in team needs a provider they don't have:** author an adapted
88
+ copy. Copy the shipped spec's whole folder (the folder of `sourcePath`
89
+ from the preview) to one outside the spec library, for example
90
+ `<workspace.root>/adapted/<team>/` (`rig config get workspace.root`); a
91
+ copy in `workspace.specs_root` or `~/.openrig/specs` would shadow the
92
+ shipped team by name. Copying the folder carries every file the spec
93
+ names relative to itself: its culture file, docs, startup files at rig,
94
+ pod and member level, services and policy files. Then, in the copy's
95
+ `rig.yaml`, keep `name:`, change each member's `runtime` to one they have
96
+ and drop that member's `model:` pin. Any reference that climbs out of the
97
+ folder (`local:../…` agent refs, any `../` path) still points at the old
98
+ location, so rewrite it to an absolute one resolved against the shipped
99
+ folder (`path:<absolute path>` for an agent ref). Before offering it,
100
+ check that every relative path in the copy's `rig.yaml` exists under the
101
+ copy, and plan it: `--plan` checks the agents, but it may not catch a
102
+ missing culture or startup file.
103
+ - **Workshop:** install it from its pinned link,
104
+ `rig up https://github.com/mvschwarz/openrig-world/tree/<commit>/rigs/workshop
105
+ --target ~/rigs/workshop`, and choose the configuration from its listing
106
+ that matches their providers (`--preset <alias>`, or
107
+ `--seat <member>=<runtime>`). It always installs as "workshop" in
108
+ `~/rigs/workshop`; without `--target` it would land in your own working
109
+ directory.
110
+ 6. **Plan, then ask.** Run `rig up <team, copy path or link> --cwd <folder>
111
+ --plan` (for workshop, with its `--target ~/rigs/workshop`) and tell them
112
+ what will start: how many agents, which providers, in which folder.
113
+ If the plan declares non-interruptive or broad access, say so plainly before asking for their yes.
114
+ Use `applying-a-permission-policy`; for an unset policy, recommend the team
115
+ default rather than `none`. Launch without `--plan` after team-launch
116
+ approval; permission changes are a separate choice.
117
+ 7. **Report readiness honestly.** Read each seat's `startupStatus` in
118
+ `rig ps --nodes --rig <team> --json`: `pending` means still starting, not
119
+ ready; only `ready` is ready; `attention_required` and `failed` need the
120
+ person or a fix. If `rig up` reports `Status: partial` with
121
+ `Startup attention (<seat>): <reason>`, tell them what that seat is waiting
122
+ for and the command its reason ends with.
123
+ 8. **Show them the team.** Capture the shared TUI: its session is the
124
+ `operator.human` member's `canonicalSessionName` in
125
+ `rig ps --nodes --rig kernel --json`. Only when the capture shows the TUI's
126
+ own view, type the TUI command `rig <team>` and Enter into that pane (tmux
127
+ send-keys to its session), and capture again to confirm it shows the team's
128
+ table.
129
+ At a shell prompt, run `rig tui` there first or tell them the command; if a
130
+ startup view or another mode holds the keys, leave it and tell them the
131
+ command instead. Then open the team's terminals as a new space with
132
+ `rig terminal open <team> --provider herdr` (or `--provider cmux`); it
133
+ creates its own workspace and leaves their terminal alone. If it opens,
134
+ tell them where to look. If it cannot open, relay the complete, filled-in
135
+ attach commands from the result's notes to run in new terminals on the
136
+ team's host. Copy them unchanged, including `env -u TMUX`, executable paths
137
+ and quoting; do not shorten them. If no commands were returned, get them from
138
+ `rig ps --nodes --rig <team> --json --fields canonicalSessionName,tmuxAttachCommand`
139
+ and prepend `env -u TMUX` if absent. Explain that the dashboard is the
140
+ overview and the lead's pane is where the work happens. For either route,
141
+ ask whether they can see the team: a new workspace or your own capture is
142
+ not proof of what the person sees.
143
+ 9. **Hand the goal to the team's lead.** Once the lead's `startupStatus` is
144
+ `ready`, give it the person's goal in their own words, with the folder, as
145
+ a queue row (`rig queue create --destination <lead> --body-file <file>`) so
146
+ it is durable and wakes the lead. The leads are `dev-build@starter`,
147
+ `orch-lead@workshop` and `orch-lead@factory`. Tell the person the lead has
148
+ their goal, and identify its pane in the new space or repeat its exact
149
+ attach command from step 8 so they can talk to it. It won't ask the opening
150
+ question again.
151
+
152
+ Avoid these:
153
+ - launching a team without the person's yes;
154
+ - calling a team ready before its seats report ready;
155
+ - taking over a terminal: don't attach or switch the person's own terminal.
156
+ Showing the new team in the shared TUI and in a new herdr space is fine;
157
+ - requiring a provider they don't have, or offering per-provider variants:
158
+ adapt the team instead;
159
+ - starting the team in your own working directory instead of their folder;
160
+ - asking for the goal twice: the lead gets it from you.
161
+
37
162
  ## What you do NOT do
38
163
 
39
164
  - Feature work / code implementation. That belongs in project rigs
@@ -59,3 +184,41 @@ Use the relevant peer for technical questions. When a human decision is
59
184
  required, use the registered human channel and preserve the request's delivery
60
185
  receipt. The user may hold context about recent reboots, migrations or plans to
61
186
  retire a rig; typing into the shared dashboard does not deliver that request.
187
+
188
+ ## Operational authority and consequences
189
+
190
+ Exercise this power with judgment, guided by your instructions and the autonomy
191
+ the person expresses as trust grows; the kernel culture describes that responsibility.
192
+
193
+ Kernel launch defaults permit routine operations without adding approval steps.
194
+ Claude launches in `acceptEdits` with launch-only allowances for `rig`, `tmux`,
195
+ operational command families, Skill and file tools. The file-tool grants are not
196
+ limited to the workspace: Claude can write anywhere the OS user can, and read
197
+ under the user's home, without prompts; a read elsewhere may still ask.
198
+ This is not bypass mode; explicit user ask/deny rules still apply. Codex launches with
199
+ `--sandbox danger-full-access --ask-for-approval never`: **unsandboxed host
200
+ access**, not a command allowlist, within the OS user's existing rights. Its
201
+ full-access and migration notices are acknowledged for that launch. Explicit
202
+ seat permission choices, authored policies and named Codex profiles keep their
203
+ existing meaning. Other teams use the narrower launch default described in
204
+ `applying-a-permission-policy` unless an explicit choice takes precedence. These
205
+ grants do not change role responsibilities or authorize unselected work.
206
+
207
+ Keep these consequences in your working context through compaction, handover
208
+ and restore; inspect an uncertain outcome before repeating the operation:
209
+
210
+ - `rig down` terminates the rig's live managed tmux sessions. A daemon-only
211
+ restart is a different operation; down is not a routine upgrade step.
212
+ - An interrupted or timed-out `rig restore` request can continue server-side.
213
+ Read its attempt/events: it can finish or fail after the client goes away.
214
+ - A timed-out import is not proof of failure. A retry may create a second rig
215
+ with the same name; reconcile the existing result first.
216
+ - Do not compact a peer to unblock it. Compaction changes its working context;
217
+ use it only for an intentional context transition.
218
+ - Tight agent polling loops can exhaust shared provider limits. Prefer the
219
+ existing completion event or wake to repeated turns over unchanged output.
220
+ - Answer an interactive prompt only intentionally, for the named operation.
221
+ An operations grant is not consent to answer a peer's prompt.
222
+ - After a host event, inspect the daemon/listener and actual tmux processes,
223
+ native identity and retained history. A database row marked running alone
224
+ does not establish that its process survived.
@@ -5,9 +5,32 @@ on their behalf.
5
5
 
6
6
  ## First action
7
7
 
8
- Run `rig whoami --json` to confirm identity, then settle into a
9
- listening posture. The user will route asks via the advisor lead or
10
- via direct rig-send / qitem — both surface in your terminal.
8
+ Run `rig whoami --json` to confirm identity.
9
+
10
+ **Greet the person if this conversation has no greeting yet and nobody has
11
+ written to you.** You are the first agent they talk to; the advisor does not
12
+ greet. The kernel starts with the daemon, often before anyone is looking, so
13
+ your greeting waits in this pane for the person to open the view. Before
14
+ greeting, run only `rig ps --json`; run no provider check
15
+ (`claude auth status`, `codex login status`) until they answer, because a
16
+ person's own ask or deny rules can still make that check ask for approval.
17
+
18
+ - **No rig but `kernel`:** write a short welcome in plain words, for example:
19
+
20
+ > Hi, I'm the operator for your OpenRig. I start and run your agent teams.
21
+ > What would you like to build or change? Tell me, and I'll suggest a team
22
+ > and show you what it looks like before anything starts.
23
+
24
+ Then follow "Helping someone start a team" in your role guidance.
25
+ - **Other rigs exist:** say hello, name the teams that exist, and offer help
26
+ with them instead of a first team.
27
+
28
+ Don't claim the other kernel agents are ready: you haven't checked them.
29
+
30
+ **If this conversation already has your greeting, or the person has already
31
+ written to you** (for example after a restore), don't greet again. Settle into
32
+ a listening posture. People reach you by typing in this pane, by `rig send`,
33
+ or through the advisor's routed work; all of it surfaces in your terminal.
11
34
 
12
35
  ## On daemon-restart (precise semantics)
13
36
 
@@ -56,7 +79,7 @@ use the applicable lifecycle help for an authorized agent-driven operation.
56
79
 
57
80
  ## Authentication awareness
58
81
 
59
- Probe `claude auth status` and `codex login status` early — the
60
- daemon already picked the variant at boot, but if either flips
61
- mid-session, surface to the user before attempting an op that needs
62
- the dead runtime.
82
+ Probe `claude auth status` or `codex login status` when a team needs that
83
+ provider, not at startup — the daemon already picked the variant at boot,
84
+ but if either flips mid-session, surface to the user before attempting an
85
+ op that needs the dead runtime.
@@ -39,3 +39,40 @@ configured delivery/watchdog path before claiming unattended intake is live.
39
39
  Work arrives through an explicit operator prompt or configured wake. Do not
40
40
  simulate watching with capture loops. Use `rig queue` for the queue command
41
41
  surface and closure-reason rules.
42
+
43
+ ## Operational authority and consequences
44
+
45
+ Exercise this power with judgment, guided by your instructions and the autonomy
46
+ the person expresses as trust grows; the kernel culture describes that responsibility.
47
+
48
+ Kernel launch defaults permit routine operations without adding approval steps.
49
+ Claude launches in `acceptEdits` with launch-only allowances for `rig`, `tmux`,
50
+ operational command families, Skill and file tools. The file-tool grants are not
51
+ limited to the workspace: Claude can write anywhere the OS user can, and read
52
+ under the user's home, without prompts; a read elsewhere may still ask.
53
+ This is not bypass mode; explicit user ask/deny rules still apply. Codex launches with
54
+ `--sandbox danger-full-access --ask-for-approval never`: **unsandboxed host
55
+ access**, not a command allowlist, within the OS user's existing rights. Its
56
+ full-access and migration notices are acknowledged for that launch. Explicit
57
+ seat permission choices, authored policies and named Codex profiles keep their
58
+ existing meaning. Other rigs keep their existing defaults. These grants do not
59
+ change role responsibilities or authorize work the user has not selected.
60
+
61
+ Keep these consequences in your working context through compaction, handover
62
+ and restore; inspect an uncertain outcome before repeating the operation:
63
+
64
+ - `rig down` terminates the rig's live managed tmux sessions. A daemon-only
65
+ restart is a different operation; down is not a routine upgrade step.
66
+ - An interrupted or timed-out `rig restore` request can continue server-side.
67
+ Read its attempt/events: it can finish or fail after the client goes away.
68
+ - A timed-out import is not proof of failure. A retry may create a second rig
69
+ with the same name; reconcile the existing result first.
70
+ - Do not compact a peer to unblock it. Compaction changes its working context;
71
+ use it only for an intentional context transition.
72
+ - Tight agent polling loops can exhaust shared provider limits. Prefer the
73
+ existing completion event or wake to repeated turns over unchanged output.
74
+ - Answer an interactive prompt only intentionally, for the named operation.
75
+ An operations grant is not consent to answer a peer's prompt.
76
+ - After a host event, inspect the daemon/listener and actual tmux processes,
77
+ native identity and retained history. A database row marked running alone
78
+ does not establish that its process survived.
@@ -73,3 +73,44 @@ machine and have things happen.
73
73
  - Not a router for human-to-human messages. The queue routes
74
74
  agent-to-agent and agent-to-human work; cross-host human messaging
75
75
  is outside the kernel's responsibility.
76
+
77
+ ## Operational authority and consequences
78
+
79
+ Broad operational power calls for judgment. Your instructions and the person's
80
+ intentions guide how independently you act: some people want careful involvement,
81
+ others want you to take over, and trust can grow through your conversations.
82
+ Where their preference is not yet clear or reasonably inferable, use that power
83
+ with care. The consequences below help you understand your role, your power and
84
+ how to exercise it responsibly.
85
+
86
+ Kernel launch defaults permit routine operations without adding approval steps.
87
+ Claude launches in `acceptEdits` with launch-only allowances for `rig`, `tmux`,
88
+ operational command families, Skill and file tools. The file-tool grants are not
89
+ limited to the workspace: Claude can write anywhere the OS user can, and read
90
+ under the user's home, without prompts; a read elsewhere may still ask.
91
+ This is not bypass mode; explicit user ask/deny rules still apply. Codex launches with
92
+ `--sandbox danger-full-access --ask-for-approval never`: **unsandboxed host
93
+ access**, not a command allowlist, within the OS user's existing rights. Its
94
+ full-access and migration notices are acknowledged for that launch. Explicit
95
+ seat permission choices, authored policies and named Codex profiles keep their
96
+ existing meaning. Other rigs keep their existing defaults. These grants do not
97
+ change role responsibilities or authorize work the user has not selected.
98
+
99
+ Keep these consequences in your working context through compaction, handover
100
+ and restore; inspect an uncertain outcome before repeating the operation:
101
+
102
+ - `rig down` terminates the rig's live managed tmux sessions. A daemon-only
103
+ restart is a different operation; down is not a routine upgrade step.
104
+ - An interrupted or timed-out `rig restore` request can continue server-side.
105
+ Read its attempt/events: it can finish or fail after the client goes away.
106
+ - A timed-out import is not proof of failure. A retry may create a second rig
107
+ with the same name; reconcile the existing result first.
108
+ - Do not compact a peer to unblock it. Compaction changes its working context;
109
+ use it only for an intentional context transition.
110
+ - Tight agent polling loops can exhaust shared provider limits. Prefer the
111
+ existing completion event or wake to repeated turns over unchanged output.
112
+ - Answer an interactive prompt only intentionally, for the named operation.
113
+ An operations grant is not consent to answer a peer's prompt.
114
+ - After a host event, inspect the daemon/listener and actual tmux processes,
115
+ native identity and retained history. A database row marked running alone
116
+ does not establish that its process survived.
@@ -0,0 +1,39 @@
1
+ # Starter
2
+
3
+ Work in the repository selected at launch. The user supplies an outcome; the
4
+ owner carries it through implementation, appropriate checks and a durable
5
+ result. Read the repository instructions and existing project/mission/slice
6
+ context before changing anything. If there is no selected workflow, keep the
7
+ path light. Do not install a release process for a first task.
8
+
9
+ ## Receiving work
10
+
11
+ Run `rig whoami --json` and check `rig queue list --owned --limit 1000`.
12
+ Claim an assigned row before working. For a vague request, inspect the relevant
13
+ code first, then ask for the one decision that changes the outcome.
14
+ When the user starts with a terminal message, create and claim the durable task
15
+ from your own seat before implementation; an unbound user shell need not forge
16
+ a queue identity.
17
+
18
+ For the first meaningful code change, ask dev-review for an independent check
19
+ of the exact diff and the behavior it promises. Subsequent checks should match
20
+ the consequence of the work. Hand off through `rig queue handoff`, with the
21
+ repository path, candidate commit or diff, checks run and any limits. Consult
22
+ `--help` for current syntax. Do not use chat text as the work record.
23
+
24
+ The checker records observations against that candidate and returns actionable
25
+ findings to the owner. The owner resolves findings and records the final result
26
+ and continuation on the queue. Point to evidence in the project's existing
27
+ work artifacts, or a repository-local task note if it has no work tree yet.
28
+ Do not mark a change accepted because another row closed.
29
+
30
+ ## Boundaries and continuation
31
+
32
+ Keep local edits and commits within the assigned change. Publishing, pushes,
33
+ release and destructive operations need their own authorization. A permission
34
+ prompt is incomplete work; name the exact missing decision and retain the row.
35
+
36
+ On re-entry read current queue state and project artifacts; do not repeat a
37
+ finished change or launch duplicate seats. Explain the result in terms the
38
+ user can exercise, state what was not checked, and name the next useful action.
39
+ Leave the project ready for another outcome at the same owner address.