@openrig/cli 0.6.6 → 0.6.8

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 (637) hide show
  1. package/README.md +97 -28
  2. package/daemon/assets/claude-team-permissions.cjs +262 -0
  3. package/daemon/assets/onboarding/02-self-and-competent-action.md +20 -13
  4. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  5. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  6. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus-health.cjs +41 -0
  7. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +69 -12
  8. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +13 -2
  9. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
  10. package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +6 -0
  11. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +1 -1
  12. package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -4
  13. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +24 -13
  14. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
  15. package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +42 -0
  16. package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +6 -0
  17. package/daemon/assets/skills/rigs/SKILL.md +133 -0
  18. package/daemon/context-packs/help/help.md +48 -19
  19. package/daemon/context-packs/help/manifest.yaml +1 -1
  20. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  21. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +239 -43
  22. package/daemon/context-packs/reference/getting-started.md +356 -212
  23. package/daemon/context-packs/reference/instance-layout.md +5 -0
  24. package/daemon/context-packs/reference/manifest.yaml +4 -1
  25. package/daemon/context-packs/reference/rig-spec.md +48 -20
  26. package/daemon/context-packs/reference/whats-new.md +96 -0
  27. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +13 -2
  31. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
  33. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/messaging-the-human/SKILL.md +6 -0
  38. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/openrig-architect/SKILL.md +3 -0
  40. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +1 -1
  44. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +19 -12
  46. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +17 -16
  48. package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +2 -0
  49. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  69. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  74. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  75. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  76. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  77. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  78. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  79. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  80. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  81. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  82. package/daemon/context-packs/skills/refocusing/SKILL.md +31 -4
  83. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  84. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +24 -13
  85. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
  86. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  87. package/daemon/context-packs/skills/seat-continuity-and-handover/SKILL.md +42 -0
  88. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  89. package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +6 -0
  90. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  91. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  92. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  93. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  94. package/daemon/dist/adapters/claude-code-adapter.d.ts +1 -1
  95. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  96. package/daemon/dist/adapters/claude-code-adapter.js +23 -13
  97. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  98. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  99. package/daemon/dist/adapters/codex-resume.js +17 -0
  100. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  101. package/daemon/dist/adapters/codex-runtime-adapter.js +2 -2
  102. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  103. package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -1
  104. package/daemon/dist/adapters/kernel-authority.js +29 -11
  105. package/daemon/dist/adapters/kernel-authority.js.map +1 -1
  106. package/daemon/dist/adapters/pi-readiness.d.ts +15 -0
  107. package/daemon/dist/adapters/pi-readiness.d.ts.map +1 -0
  108. package/daemon/dist/adapters/pi-readiness.js +90 -0
  109. package/daemon/dist/adapters/pi-readiness.js.map +1 -0
  110. package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
  111. package/daemon/dist/adapters/pi-runner-protocol.js +1 -0
  112. package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
  113. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  114. package/daemon/dist/adapters/pi-runner.js +13 -2
  115. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  116. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  117. package/daemon/dist/adapters/tmux.js +9 -6
  118. package/daemon/dist/adapters/tmux.js.map +1 -1
  119. package/daemon/dist/build-info.js +3 -3
  120. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  121. package/daemon/dist/db/all-migrations.js +4 -0
  122. package/daemon/dist/db/all-migrations.js.map +1 -1
  123. package/daemon/dist/db/migrations/096_rig_install_root.d.ts +3 -0
  124. package/daemon/dist/db/migrations/096_rig_install_root.d.ts.map +1 -0
  125. package/daemon/dist/db/migrations/096_rig_install_root.js +5 -0
  126. package/daemon/dist/db/migrations/096_rig_install_root.js.map +1 -0
  127. package/daemon/dist/db/migrations/097_thread_part_map.d.ts +3 -0
  128. package/daemon/dist/db/migrations/097_thread_part_map.d.ts.map +1 -0
  129. package/daemon/dist/db/migrations/097_thread_part_map.js +20 -0
  130. package/daemon/dist/db/migrations/097_thread_part_map.js.map +1 -0
  131. package/daemon/dist/domain/activity-taxonomy.d.ts +7 -0
  132. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -1
  133. package/daemon/dist/domain/activity-taxonomy.js.map +1 -1
  134. package/daemon/dist/domain/agent-activity-store.d.ts +12 -0
  135. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -1
  136. package/daemon/dist/domain/agent-activity-store.js +55 -30
  137. package/daemon/dist/domain/agent-activity-store.js.map +1 -1
  138. package/daemon/dist/domain/agent-images/agent-image-types.d.ts +1 -1
  139. package/daemon/dist/domain/agent-images/agent-image-types.d.ts.map +1 -1
  140. package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
  141. package/daemon/dist/domain/bootstrap-orchestrator.js +6 -4
  142. package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
  143. package/daemon/dist/domain/bundle-install-context.d.ts +2 -2
  144. package/daemon/dist/domain/bundle-install-context.d.ts.map +1 -1
  145. package/daemon/dist/domain/bundle-install-context.js +16 -3
  146. package/daemon/dist/domain/bundle-install-context.js.map +1 -1
  147. package/daemon/dist/domain/bundle-types.d.ts +1 -1
  148. package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
  149. package/daemon/dist/domain/chat-repository.d.ts +5 -0
  150. package/daemon/dist/domain/chat-repository.d.ts.map +1 -1
  151. package/daemon/dist/domain/chat-repository.js +8 -0
  152. package/daemon/dist/domain/chat-repository.js.map +1 -1
  153. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  154. package/daemon/dist/domain/claim-service.js +5 -4
  155. package/daemon/dist/domain/claim-service.js.map +1 -1
  156. package/daemon/dist/domain/claude-activity-hooks.d.ts +3 -0
  157. package/daemon/dist/domain/claude-activity-hooks.d.ts.map +1 -1
  158. package/daemon/dist/domain/claude-activity-hooks.js +8 -1
  159. package/daemon/dist/domain/claude-activity-hooks.js.map +1 -1
  160. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +34 -2
  161. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  162. package/daemon/dist/domain/claude-compaction-enforcer.js +195 -107
  163. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  164. package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
  165. package/daemon/dist/domain/codex-thread-id.js +4 -2
  166. package/daemon/dist/domain/codex-thread-id.js.map +1 -1
  167. package/daemon/dist/domain/context-monitor.d.ts +5 -0
  168. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  169. package/daemon/dist/domain/context-monitor.js +23 -6
  170. package/daemon/dist/domain/context-monitor.js.map +1 -1
  171. package/daemon/dist/domain/execution-view.d.ts.map +1 -1
  172. package/daemon/dist/domain/execution-view.js +57 -11
  173. package/daemon/dist/domain/execution-view.js.map +1 -1
  174. package/daemon/dist/domain/gateway/connections-projection.d.ts +4 -0
  175. package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
  176. package/daemon/dist/domain/gateway/connections-projection.js +2 -0
  177. package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
  178. package/daemon/dist/domain/gateway/destination-resolver.d.ts.map +1 -1
  179. package/daemon/dist/domain/gateway/destination-resolver.js +7 -4
  180. package/daemon/dist/domain/gateway/destination-resolver.js.map +1 -1
  181. package/daemon/dist/domain/gateway/human-readiness.d.ts.map +1 -1
  182. package/daemon/dist/domain/gateway/human-readiness.js +23 -6
  183. package/daemon/dist/domain/gateway/human-readiness.js.map +1 -1
  184. package/daemon/dist/domain/gateway/human-registry.d.ts +2 -2
  185. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  186. package/daemon/dist/domain/gateway/human-registry.js +2 -2
  187. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  188. package/daemon/dist/domain/gateway/slack/capabilities.d.ts.map +1 -1
  189. package/daemon/dist/domain/gateway/slack/capabilities.js +3 -1
  190. package/daemon/dist/domain/gateway/slack/capabilities.js.map +1 -1
  191. package/daemon/dist/domain/gateway/slack/channel-map.d.ts +39 -0
  192. package/daemon/dist/domain/gateway/slack/channel-map.d.ts.map +1 -0
  193. package/daemon/dist/domain/gateway/slack/channel-map.js +114 -0
  194. package/daemon/dist/domain/gateway/slack/channel-map.js.map +1 -0
  195. package/daemon/dist/domain/gateway/slack/config.d.ts +7 -0
  196. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -1
  197. package/daemon/dist/domain/gateway/slack/config.js +19 -2
  198. package/daemon/dist/domain/gateway/slack/config.js.map +1 -1
  199. package/daemon/dist/domain/gateway/slack/inbound.d.ts +24 -1
  200. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  201. package/daemon/dist/domain/gateway/slack/inbound.js +105 -3
  202. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  203. package/daemon/dist/domain/gateway/slack/message.d.ts +7 -0
  204. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
  205. package/daemon/dist/domain/gateway/slack/message.js +36 -0
  206. package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
  207. package/daemon/dist/domain/gateway/slack/queue-access.d.ts +2 -0
  208. package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
  209. package/daemon/dist/domain/gateway/slack/queue-access.js +1 -0
  210. package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
  211. package/daemon/dist/domain/gateway/slack/slack-api.d.ts +7 -2
  212. package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -1
  213. package/daemon/dist/domain/gateway/slack/slack-api.js +35 -3
  214. package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -1
  215. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +34 -7
  216. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
  217. package/daemon/dist/domain/gateway/slack/slack-delivery.js +268 -51
  218. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
  219. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +17 -0
  220. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  221. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +107 -24
  222. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  223. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +2 -0
  224. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
  225. package/daemon/dist/domain/gateway/slack/socket-inbound.js +40 -0
  226. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
  227. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
  228. package/daemon/dist/domain/gateway/slack/thread-routing.js +22 -2
  229. package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
  230. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +14 -0
  231. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
  232. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +27 -0
  233. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
  234. package/daemon/dist/domain/generated-file-hygiene.d.ts.map +1 -1
  235. package/daemon/dist/domain/generated-file-hygiene.js +7 -4
  236. package/daemon/dist/domain/generated-file-hygiene.js.map +1 -1
  237. package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
  238. package/daemon/dist/domain/managed-blocks.js +5 -2
  239. package/daemon/dist/domain/managed-blocks.js.map +1 -1
  240. package/daemon/dist/domain/markdown-address.d.ts.map +1 -1
  241. package/daemon/dist/domain/markdown-address.js +23 -6
  242. package/daemon/dist/domain/markdown-address.js.map +1 -1
  243. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  244. package/daemon/dist/domain/native-process-lineage.js +50 -3
  245. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  246. package/daemon/dist/domain/node-inventory.d.ts +2 -2
  247. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  248. package/daemon/dist/domain/node-inventory.js +30 -4
  249. package/daemon/dist/domain/node-inventory.js.map +1 -1
  250. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  251. package/daemon/dist/domain/node-launcher.js +1 -0
  252. package/daemon/dist/domain/node-launcher.js.map +1 -1
  253. package/daemon/dist/domain/pane-binding-observation.d.ts +1 -0
  254. package/daemon/dist/domain/pane-binding-observation.d.ts.map +1 -1
  255. package/daemon/dist/domain/pane-binding-observation.js +3 -1
  256. package/daemon/dist/domain/pane-binding-observation.js.map +1 -1
  257. package/daemon/dist/domain/plugin-vendor-service.d.ts +6 -0
  258. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  259. package/daemon/dist/domain/plugin-vendor-service.js +12 -0
  260. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  261. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  262. package/daemon/dist/domain/profile-resolver.js +54 -15
  263. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  264. package/daemon/dist/domain/ps-projection.d.ts +11 -9
  265. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  266. package/daemon/dist/domain/ps-projection.js +15 -12
  267. package/daemon/dist/domain/ps-projection.js.map +1 -1
  268. package/daemon/dist/domain/queue-nudge-text.d.ts +4 -0
  269. package/daemon/dist/domain/queue-nudge-text.d.ts.map +1 -0
  270. package/daemon/dist/domain/queue-nudge-text.js +35 -0
  271. package/daemon/dist/domain/queue-nudge-text.js.map +1 -0
  272. package/daemon/dist/domain/queue-repository.d.ts +7 -0
  273. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  274. package/daemon/dist/domain/queue-repository.js +50 -20
  275. package/daemon/dist/domain/queue-repository.js.map +1 -1
  276. package/daemon/dist/domain/queue-retention.d.ts +2 -2
  277. package/daemon/dist/domain/queue-retention.js +4 -4
  278. package/daemon/dist/domain/queue-wait-backoff.d.ts.map +1 -1
  279. package/daemon/dist/domain/queue-wait-backoff.js +6 -2
  280. package/daemon/dist/domain/queue-wait-backoff.js.map +1 -1
  281. package/daemon/dist/domain/queue-waiting.d.ts.map +1 -1
  282. package/daemon/dist/domain/queue-waiting.js +7 -2
  283. package/daemon/dist/domain/queue-waiting.js.map +1 -1
  284. package/daemon/dist/domain/queue-wake-ladder.d.ts +15 -2
  285. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
  286. package/daemon/dist/domain/queue-wake-ladder.js +29 -6
  287. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
  288. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
  289. package/daemon/dist/domain/rehydrate-eligibility.js +5 -2
  290. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
  291. package/daemon/dist/domain/reply-to-choice.d.ts +6 -2
  292. package/daemon/dist/domain/reply-to-choice.d.ts.map +1 -1
  293. package/daemon/dist/domain/reply-to-choice.js +9 -6
  294. package/daemon/dist/domain/reply-to-choice.js.map +1 -1
  295. package/daemon/dist/domain/restore-check-service.d.ts +5 -1
  296. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  297. package/daemon/dist/domain/restore-check-service.js +17 -3
  298. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  299. package/daemon/dist/domain/restore-orchestrator.d.ts +1 -0
  300. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  301. package/daemon/dist/domain/restore-orchestrator.js +17 -11
  302. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  303. package/daemon/dist/domain/rig-repository.d.ts +3 -1
  304. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  305. package/daemon/dist/domain/rig-repository.js +13 -4
  306. package/daemon/dist/domain/rig-repository.js.map +1 -1
  307. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  308. package/daemon/dist/domain/rig-teardown.js +6 -0
  309. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  310. package/daemon/dist/domain/rigspec-instantiator.d.ts +1 -0
  311. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  312. package/daemon/dist/domain/rigspec-instantiator.js +1 -1
  313. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  314. package/daemon/dist/domain/rigspec-preflight.d.ts +1 -1
  315. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  316. package/daemon/dist/domain/rigspec-preflight.js +8 -4
  317. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  318. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  319. package/daemon/dist/domain/rigspec-schema.js +19 -4
  320. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  321. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  322. package/daemon/dist/domain/seat-activity-service.js +16 -6
  323. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  324. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  325. package/daemon/dist/domain/seat-handover-service.js +9 -1
  326. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  327. package/daemon/dist/domain/session-jsonl.d.ts.map +1 -1
  328. package/daemon/dist/domain/session-jsonl.js +10 -4
  329. package/daemon/dist/domain/session-jsonl.js.map +1 -1
  330. package/daemon/dist/domain/session-transport.d.ts +16 -21
  331. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  332. package/daemon/dist/domain/session-transport.js +70 -37
  333. package/daemon/dist/domain/session-transport.js.map +1 -1
  334. package/daemon/dist/domain/skill-audit.d.ts +19 -0
  335. package/daemon/dist/domain/skill-audit.d.ts.map +1 -1
  336. package/daemon/dist/domain/skill-audit.js +97 -5
  337. package/daemon/dist/domain/skill-audit.js.map +1 -1
  338. package/daemon/dist/domain/skill-catalog.d.ts +11 -0
  339. package/daemon/dist/domain/skill-catalog.d.ts.map +1 -1
  340. package/daemon/dist/domain/skill-catalog.js +145 -12
  341. package/daemon/dist/domain/skill-catalog.js.map +1 -1
  342. package/daemon/dist/domain/skill-mirror-drift.d.ts +6 -1
  343. package/daemon/dist/domain/skill-mirror-drift.d.ts.map +1 -1
  344. package/daemon/dist/domain/skill-mirror-drift.js +23 -12
  345. package/daemon/dist/domain/skill-mirror-drift.js.map +1 -1
  346. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  347. package/daemon/dist/domain/snapshot-repository.js +12 -32
  348. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  349. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +4 -1
  350. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  351. package/daemon/dist/domain/terminal/herdr-adapter.js +14 -7
  352. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  353. package/daemon/dist/domain/terminal/terminal-provider.d.ts +9 -0
  354. package/daemon/dist/domain/terminal/terminal-provider.d.ts.map +1 -1
  355. package/daemon/dist/domain/terminal/terminal-service.d.ts +4 -0
  356. package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
  357. package/daemon/dist/domain/terminal/terminal-service.js +23 -11
  358. package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
  359. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  360. package/daemon/dist/domain/transcript-store.js +21 -9
  361. package/daemon/dist/domain/transcript-store.js.map +1 -1
  362. package/daemon/dist/domain/types.d.ts +2 -0
  363. package/daemon/dist/domain/types.d.ts.map +1 -1
  364. package/daemon/dist/domain/types.js.map +1 -1
  365. package/daemon/dist/domain/usage-samples-store.js +2 -2
  366. package/daemon/dist/domain/usage-samples-store.js.map +1 -1
  367. package/daemon/dist/domain/usage-series.d.ts.map +1 -1
  368. package/daemon/dist/domain/usage-series.js +42 -10
  369. package/daemon/dist/domain/usage-series.js.map +1 -1
  370. package/daemon/dist/domain/user-settings/settings-browser.d.ts.map +1 -1
  371. package/daemon/dist/domain/user-settings/settings-browser.js +2 -0
  372. package/daemon/dist/domain/user-settings/settings-browser.js.map +1 -1
  373. package/daemon/dist/domain/user-settings/settings-store.js +1 -1
  374. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  375. package/daemon/dist/domain/watchdog-due.d.ts +17 -0
  376. package/daemon/dist/domain/watchdog-due.d.ts.map +1 -0
  377. package/daemon/dist/domain/watchdog-due.js +45 -0
  378. package/daemon/dist/domain/watchdog-due.js.map +1 -0
  379. package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -1
  380. package/daemon/dist/domain/watchdog-scheduler.js +3 -7
  381. package/daemon/dist/domain/watchdog-scheduler.js.map +1 -1
  382. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
  383. package/daemon/dist/domain/workflow-projector.js +15 -5
  384. package/daemon/dist/domain/workflow-projector.js.map +1 -1
  385. package/daemon/dist/domain/workflow-runtime.js +1 -1
  386. package/daemon/dist/domain/workflow-runtime.js.map +1 -1
  387. package/daemon/dist/domain/workflow-step-trail-log.d.ts +6 -0
  388. package/daemon/dist/domain/workflow-step-trail-log.d.ts.map +1 -1
  389. package/daemon/dist/domain/workflow-step-trail-log.js +11 -0
  390. package/daemon/dist/domain/workflow-step-trail-log.js.map +1 -1
  391. package/daemon/dist/domain/workflow-validator.d.ts.map +1 -1
  392. package/daemon/dist/domain/workflow-validator.js +22 -1
  393. package/daemon/dist/domain/workflow-validator.js.map +1 -1
  394. package/daemon/dist/domain/workspace/project-catalog.js +1 -1
  395. package/daemon/dist/domain/workspace/project-catalog.js.map +1 -1
  396. package/daemon/dist/gateway-slack-surface.d.ts +1 -0
  397. package/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
  398. package/daemon/dist/gateway-slack-surface.js +2 -1
  399. package/daemon/dist/gateway-slack-surface.js.map +1 -1
  400. package/daemon/dist/index.d.ts +1 -0
  401. package/daemon/dist/index.d.ts.map +1 -1
  402. package/daemon/dist/index.js +7 -7
  403. package/daemon/dist/index.js.map +1 -1
  404. package/daemon/dist/routes/agent-images.js +5 -5
  405. package/daemon/dist/routes/agent-images.js.map +1 -1
  406. package/daemon/dist/routes/bootstrap-failure-response.d.ts +13 -0
  407. package/daemon/dist/routes/bootstrap-failure-response.d.ts.map +1 -0
  408. package/daemon/dist/routes/bootstrap-failure-response.js +52 -0
  409. package/daemon/dist/routes/bootstrap-failure-response.js.map +1 -0
  410. package/daemon/dist/routes/bundles.d.ts.map +1 -1
  411. package/daemon/dist/routes/bundles.js +23 -36
  412. package/daemon/dist/routes/bundles.js.map +1 -1
  413. package/daemon/dist/routes/chat.d.ts.map +1 -1
  414. package/daemon/dist/routes/chat.js +16 -1
  415. package/daemon/dist/routes/chat.js.map +1 -1
  416. package/daemon/dist/routes/restore-check.d.ts.map +1 -1
  417. package/daemon/dist/routes/restore-check.js +2 -0
  418. package/daemon/dist/routes/restore-check.js.map +1 -1
  419. package/daemon/dist/routes/rigs.js +2 -2
  420. package/daemon/dist/routes/rigs.js.map +1 -1
  421. package/daemon/dist/routes/seat.js +13 -13
  422. package/daemon/dist/routes/seat.js.map +1 -1
  423. package/daemon/dist/routes/sessions.js +11 -11
  424. package/daemon/dist/routes/sessions.js.map +1 -1
  425. package/daemon/dist/routes/skills.d.ts.map +1 -1
  426. package/daemon/dist/routes/skills.js +15 -7
  427. package/daemon/dist/routes/skills.js.map +1 -1
  428. package/daemon/dist/routes/terminal-ws.js +15 -2
  429. package/daemon/dist/routes/terminal-ws.js.map +1 -1
  430. package/daemon/dist/routes/terminal.d.ts.map +1 -1
  431. package/daemon/dist/routes/terminal.js +6 -4
  432. package/daemon/dist/routes/terminal.js.map +1 -1
  433. package/daemon/dist/routes/up.d.ts.map +1 -1
  434. package/daemon/dist/routes/up.js +5 -56
  435. package/daemon/dist/routes/up.js.map +1 -1
  436. package/daemon/dist/startup.d.ts.map +1 -1
  437. package/daemon/dist/startup.js +32 -7
  438. package/daemon/dist/startup.js.map +1 -1
  439. package/daemon/dist/terminal/TerminalSessionBroker.d.ts.map +1 -1
  440. package/daemon/dist/terminal/TerminalSessionBroker.js +9 -1
  441. package/daemon/dist/terminal/TerminalSessionBroker.js.map +1 -1
  442. package/daemon/docs/reference/agent-spec.md +10 -10
  443. package/daemon/docs/reference/agent-startup-guide.md +7 -2
  444. package/daemon/docs/reference/bundle-formats.md +6 -4
  445. package/daemon/docs/reference/chain-file-convention.md +2 -2
  446. package/daemon/docs/reference/developing.md +1 -1
  447. package/daemon/docs/reference/edge-types.md +1 -1
  448. package/daemon/docs/reference/getting-started.md +356 -212
  449. package/daemon/docs/reference/help.md +48 -19
  450. package/daemon/docs/reference/instance-layout.md +5 -0
  451. package/daemon/docs/reference/non-interruptive-mode.md +7 -4
  452. package/daemon/docs/reference/project-workspace.md +2 -2
  453. package/daemon/docs/reference/publishing-a-rig-bundle.md +15 -10
  454. package/daemon/docs/reference/refocus-channel.md +14 -2
  455. package/daemon/docs/reference/rig-bundle.md +39 -19
  456. package/daemon/docs/reference/rig-spec.md +48 -20
  457. package/daemon/docs/reference/rosters.md +2 -1
  458. package/daemon/docs/reference/schemas/registry-entry.v1.schema.json +1 -1
  459. package/daemon/docs/reference/sdlc-conventions.md +4 -2
  460. package/daemon/docs/reference/slack-app-setup.md +69 -9
  461. package/daemon/docs/reference/topology-naming.md +74 -0
  462. package/daemon/docs/reference/whats-new.md +96 -0
  463. package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +6 -0
  464. package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +3 -0
  465. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -1
  466. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +19 -12
  467. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +17 -16
  468. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +2 -0
  469. package/daemon/specs/rigs/launch/factory/guidance/lead-first-move.md +60 -0
  470. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +105 -19
  471. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +5 -2
  472. package/daemon/specs/rigs/launch/starter/guidance/lead-first-move.md +44 -0
  473. package/dist/build-info.js +3 -3
  474. package/dist/cli-error.d.ts.map +1 -1
  475. package/dist/cli-error.js +11 -3
  476. package/dist/cli-error.js.map +1 -1
  477. package/dist/client.d.ts +2 -0
  478. package/dist/client.d.ts.map +1 -1
  479. package/dist/client.js +2 -0
  480. package/dist/client.js.map +1 -1
  481. package/dist/commands/agent-image.js +2 -2
  482. package/dist/commands/agent-image.js.map +1 -1
  483. package/dist/commands/bundle.d.ts.map +1 -1
  484. package/dist/commands/bundle.js +5 -4
  485. package/dist/commands/bundle.js.map +1 -1
  486. package/dist/commands/chatroom.d.ts.map +1 -1
  487. package/dist/commands/chatroom.js +21 -1
  488. package/dist/commands/chatroom.js.map +1 -1
  489. package/dist/commands/context.d.ts.map +1 -1
  490. package/dist/commands/context.js +12 -2
  491. package/dist/commands/context.js.map +1 -1
  492. package/dist/commands/doctor.d.ts +3 -1
  493. package/dist/commands/doctor.d.ts.map +1 -1
  494. package/dist/commands/doctor.js +14 -7
  495. package/dist/commands/doctor.js.map +1 -1
  496. package/dist/commands/down.d.ts.map +1 -1
  497. package/dist/commands/down.js +42 -0
  498. package/dist/commands/down.js.map +1 -1
  499. package/dist/commands/gateway.d.ts.map +1 -1
  500. package/dist/commands/gateway.js +4 -3
  501. package/dist/commands/gateway.js.map +1 -1
  502. package/dist/commands/launch.d.ts.map +1 -1
  503. package/dist/commands/launch.js +114 -8
  504. package/dist/commands/launch.js.map +1 -1
  505. package/dist/commands/package.d.ts.map +1 -1
  506. package/dist/commands/package.js +6 -3
  507. package/dist/commands/package.js.map +1 -1
  508. package/dist/commands/policy.d.ts.map +1 -1
  509. package/dist/commands/policy.js +6 -5
  510. package/dist/commands/policy.js.map +1 -1
  511. package/dist/commands/proof.js +1 -1
  512. package/dist/commands/proof.js.map +1 -1
  513. package/dist/commands/queue.d.ts.map +1 -1
  514. package/dist/commands/queue.js +6 -3
  515. package/dist/commands/queue.js.map +1 -1
  516. package/dist/commands/restore-packet.d.ts.map +1 -1
  517. package/dist/commands/restore-packet.js +6 -4
  518. package/dist/commands/restore-packet.js.map +1 -1
  519. package/dist/commands/scope.js +6 -6
  520. package/dist/commands/scope.js.map +1 -1
  521. package/dist/commands/setup.d.ts +6 -15
  522. package/dist/commands/setup.d.ts.map +1 -1
  523. package/dist/commands/setup.js +121 -332
  524. package/dist/commands/setup.js.map +1 -1
  525. package/dist/commands/skill.d.ts.map +1 -1
  526. package/dist/commands/skill.js +12 -1
  527. package/dist/commands/skill.js.map +1 -1
  528. package/dist/commands/slack.d.ts +5 -1
  529. package/dist/commands/slack.d.ts.map +1 -1
  530. package/dist/commands/slack.js +143 -6
  531. package/dist/commands/slack.js.map +1 -1
  532. package/dist/commands/stream.js +1 -1
  533. package/dist/commands/stream.js.map +1 -1
  534. package/dist/commands/terminal.d.ts +33 -0
  535. package/dist/commands/terminal.d.ts.map +1 -1
  536. package/dist/commands/terminal.js +30 -12
  537. package/dist/commands/terminal.js.map +1 -1
  538. package/dist/commands/tui.js +4 -4
  539. package/dist/commands/tui.js.map +1 -1
  540. package/dist/commands/workflow-follow.d.ts +1 -1
  541. package/dist/commands/workflow-follow.d.ts.map +1 -1
  542. package/dist/commands/workflow-follow.js +4 -3
  543. package/dist/commands/workflow-follow.js.map +1 -1
  544. package/dist/commands/workflow.d.ts.map +1 -1
  545. package/dist/commands/workflow.js +30 -18
  546. package/dist/commands/workflow.js.map +1 -1
  547. package/dist/config-store.js +1 -1
  548. package/dist/config-store.js.map +1 -1
  549. package/dist/front-door.d.ts.map +1 -1
  550. package/dist/front-door.js +4 -2
  551. package/dist/front-door.js.map +1 -1
  552. package/dist/herdr-launch-config.d.ts +3 -0
  553. package/dist/herdr-launch-config.d.ts.map +1 -0
  554. package/dist/herdr-launch-config.js +37 -0
  555. package/dist/herdr-launch-config.js.map +1 -0
  556. package/dist/index.d.ts.map +1 -1
  557. package/dist/index.js +2 -1
  558. package/dist/index.js.map +1 -1
  559. package/dist/launch-plan-guard.d.ts +27 -0
  560. package/dist/launch-plan-guard.d.ts.map +1 -0
  561. package/dist/launch-plan-guard.js +73 -0
  562. package/dist/launch-plan-guard.js.map +1 -0
  563. package/dist/lib/bundle-source.d.ts +2 -0
  564. package/dist/lib/bundle-source.d.ts.map +1 -1
  565. package/dist/lib/bundle-source.js +12 -1
  566. package/dist/lib/bundle-source.js.map +1 -1
  567. package/dist/lib/context-git.d.ts +2 -0
  568. package/dist/lib/context-git.d.ts.map +1 -1
  569. package/dist/lib/context-git.js +55 -5
  570. package/dist/lib/context-git.js.map +1 -1
  571. package/dist/lib/scope/scope-fs.d.ts +3 -2
  572. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  573. package/dist/lib/scope/scope-fs.js +97 -9
  574. package/dist/lib/scope/scope-fs.js.map +1 -1
  575. package/dist/lib/scope/templates.d.ts.map +1 -1
  576. package/dist/lib/scope/templates.js +28 -24
  577. package/dist/lib/scope/templates.js.map +1 -1
  578. package/dist/provider-auth.d.ts +32 -0
  579. package/dist/provider-auth.d.ts.map +1 -0
  580. package/dist/provider-auth.js +128 -0
  581. package/dist/provider-auth.js.map +1 -0
  582. package/dist/terminal-window.d.ts +19 -0
  583. package/dist/terminal-window.d.ts.map +1 -0
  584. package/dist/terminal-window.js +513 -0
  585. package/dist/terminal-window.js.map +1 -0
  586. package/package.json +2 -2
  587. package/tui/dist/commands/registry.js +2 -2
  588. package/tui/dist/commands/registry.js.map +1 -1
  589. package/tui/dist/config/config-model.d.ts.map +1 -1
  590. package/tui/dist/config/config-model.js +1 -0
  591. package/tui/dist/config/config-model.js.map +1 -1
  592. package/tui/dist/connections/connections-model.d.ts +5 -0
  593. package/tui/dist/connections/connections-model.d.ts.map +1 -1
  594. package/tui/dist/connections/connections-model.js +1 -1
  595. package/tui/dist/connections/connections-model.js.map +1 -1
  596. package/tui/dist/daemon-client.d.ts +5 -0
  597. package/tui/dist/daemon-client.d.ts.map +1 -1
  598. package/tui/dist/daemon-client.js.map +1 -1
  599. package/tui/dist/execution/workflow-model.d.ts.map +1 -1
  600. package/tui/dist/execution/workflow-model.js +3 -1
  601. package/tui/dist/execution/workflow-model.js.map +1 -1
  602. package/tui/dist/hydrate.d.ts +1 -1
  603. package/tui/dist/hydrate.d.ts.map +1 -1
  604. package/tui/dist/hydrate.js +3 -1
  605. package/tui/dist/hydrate.js.map +1 -1
  606. package/tui/dist/main.js +39 -15
  607. package/tui/dist/main.js.map +1 -1
  608. package/tui/dist/page-read.js +1 -1
  609. package/tui/dist/page-read.js.map +1 -1
  610. package/tui/dist/pending-address.d.ts +7 -0
  611. package/tui/dist/pending-address.d.ts.map +1 -0
  612. package/tui/dist/pending-address.js +11 -0
  613. package/tui/dist/pending-address.js.map +1 -0
  614. package/tui/dist/render.d.ts.map +1 -1
  615. package/tui/dist/render.js +10 -6
  616. package/tui/dist/render.js.map +1 -1
  617. package/tui/dist/scopes/scopes-model.js +4 -4
  618. package/tui/dist/socket-server.d.ts +3 -1
  619. package/tui/dist/socket-server.d.ts.map +1 -1
  620. package/tui/dist/socket-server.js +6 -0
  621. package/tui/dist/socket-server.js.map +1 -1
  622. package/tui/dist/state.d.ts.map +1 -1
  623. package/tui/dist/state.js +40 -13
  624. package/tui/dist/state.js.map +1 -1
  625. package/tui/dist/stylize.js +1 -1
  626. package/tui/dist/stylize.js.map +1 -1
  627. package/tui/dist/terminals/open-window.d.ts +5 -0
  628. package/tui/dist/terminals/open-window.d.ts.map +1 -0
  629. package/tui/dist/terminals/open-window.js +55 -0
  630. package/tui/dist/terminals/open-window.js.map +1 -0
  631. package/tui/dist/terminals/terminal-model.d.ts.map +1 -1
  632. package/tui/dist/terminals/terminal-model.js +16 -17
  633. package/tui/dist/terminals/terminal-model.js.map +1 -1
  634. package/tui/dist/types.d.ts +16 -1
  635. package/tui/dist/types.d.ts.map +1 -1
  636. package/ui/dist/assets/{index-HHSvwF97.js → index-D5n8EwkG.js} +1 -1
  637. package/ui/dist/index.html +1 -1
@@ -24,7 +24,9 @@ rig doctor --json
24
24
  ```
25
25
 
26
26
  Use the installed command's `--help` if an option is unavailable. Read the diagnostic findings; don't treat them as
27
- instructions to reset the machine. If the daemon is involved, `rig daemon status` and `rig daemon logs` show its state
27
+ instructions to reset the machine. `rig doctor` checks Claude and Codex authentication using the same local checks
28
+ as setup, including a configured Codex provider credential variable. A set variable does not prove that the provider accepts it or that managed
29
+ seats receive it. Doctor does not run an agent task: also inspect `rig ps --nodes --rig <rig>`. If the daemon is involved, `rig daemon status` and `rig daemon logs` show its state
28
30
  and recent output.
29
31
 
30
32
  **If OpenRig won't install or `rig` won't run, start here anyway.** Record the attempted package version, install
@@ -34,34 +36,58 @@ help.
34
36
  ## Match the guidance to the installed version
35
37
 
36
38
  The reference documents beside this file describe the version they were installed with. GitHub's default branch can
37
- contain changes that haven't reached your user's version. For release notes and known limitations, open
39
+ contain changes that haven't reached your user's version. After an upgrade, start with the short note on what changed
40
+ in the installed version: `rig context get reference/whats-new.md`. For full release notes and known limitations, open
38
41
  `https://github.com/mvschwarz/openrig/blob/v<version>/docs/releases/v<version>.md`, using the version number from
39
- `rig --version` (without the commit it may show in parentheses). If the matching document isn't available, say so
42
+ `rig --version` (without the commit it may show in parentheses). When that file doesn't exist, use the version's
43
+ section of `https://github.com/mvschwarz/openrig/blob/v<version>/CHANGELOG.md`. If neither is available, say so
40
44
  rather than treating a newer command as installed.
41
45
 
42
46
  ## Find your next step
43
47
 
44
48
  ### Installation or platform problems
45
49
 
46
- Supported platforms are macOS and Linux. Native Windows is not supported yet, and WSL2 has not been tested. OpenRig needs
47
- Node.js 22 or 24 and tmux. A WSL error needs its actual versions, commands and error text; don't assume a
48
- Windows-related pull request fixes it.
50
+ Supported platforms are macOS and Linux, and WSL2 on Windows; native Windows isn't supported. OpenRig's automated tests
51
+ don't run on WSL2 yet; one user's [reported working setup](getting-started.md#wsl2-a-reported-working-setup) lists what
52
+ mattered. OpenRig needs
53
+ Node.js 22 or 24 and tmux. A Linux distribution's own Node.js can be older; check `node --version`. With npm 11 or
54
+ later, an `npm warn install-scripts` line for `@openrig/cli` means only the postinstall Node.js and SQLite check was
55
+ skipped; `node "$(npm root -g)/@openrig/cli/scripts/check-abi.mjs"` runs it. A WSL error needs its actual versions,
56
+ commands and error text; don't assume a Windows-related pull request fixes it.
57
+
58
+ The one-command install ([getting-started](getting-started.md#install-and-sign-in)) prints its plan with
59
+ `--dry-run` and changes nothing. When a step fails it prints `FAILED [n/4] <command or check> (exit <code>)` and
60
+ stops. Read its diagnostic: if it names a runnable command, run that command by hand for the full error and record it
61
+ in a report; otherwise follow the accompanying diagnostic. If the only remaining failures are provider sign-ins under
62
+ "Some steps need attention", the install steps finished: sign in to each selected provider and continue.
49
63
 
50
64
  ### Installation finished, but there is nobody to talk to
51
65
 
52
- Follow [Open the kernel conversations](getting-started.md#open-the-kernel-conversations)
53
- (`rig context get reference/getting-started.md#open-the-kernel-conversations`). The default
54
- `rig terminal open saved:kernel --provider herdr` needs no saved-view YAML or starter team. After the selected login
55
- works, start the daemon if stopped, then read `rig status` and `rig ps --nodes --rig kernel`. Started is not ready;
56
- the view can open while the agents finish starting, with that state reported honestly.
57
- Ask **“Open the OpenRig view now?”** Yes opens a new space using installed herdr, else cmux, else the guide's exact
58
- new-terminal command. No gives the command to open it later. Over SSH or without a display, give the exact
59
- connection/attach command. Keep your own terminal and existing user spaces intact; no new view provider is needed.
60
- No, SSH and headless use are valid background outcomes. For herdr, open or attach the actual session and check the
61
- visible view; a created workspace or a CLI running in a new OS window is not visual proof.
62
- Show TUI | advisor | operator for Claude-only, Codex-only and mixed kernels; the queue worker stays accessible through
63
- the TUI. Talk to the operator about your goal before choosing and launching a first project team.
64
- Use the existing recovery routes for unavailable seats; opening a view does not create another kernel or new accounts.
66
+ Load the `rigs` skill and follow its step 2: it opens the OpenRig view (`rig terminal open saved:kernel --window`),
67
+ gives the attach commands when the window can't open or over SSH, and hands the person's goal to the operator.
68
+ [Install and sign in](getting-started.md#install-and-sign-in) says how to load it. The reference for the view, manual
69
+ attachment and the table of what can interrupt it is
70
+ [Open the kernel conversations](getting-started.md#open-the-kernel-conversations)
71
+ (`rig context get reference/getting-started.md#open-the-kernel-conversations`). Started is not ready: the view can
72
+ open while the kernel's agents finish starting, and opening it creates no other kernel or account.
73
+
74
+ ### A step interrupted setup or the OpenRig view
75
+
76
+ Name the exact command and result, the reason it stopped and the next useful step. A harness's permission rules,
77
+ sandbox or automatic permission decision can refuse an installing agent's tool call before OpenRig runs.
78
+ Claude Code's [auto mode can deny calls](https://code.claude.com/docs/en/auto-mode-config); explain the reported
79
+ refusal and let the person review that step in their harness controls or run it themselves, within their chosen
80
+ permissions. Do not silently claim installation failed or completed from a refused call.
81
+
82
+ For missing tools, downloads or selected logins, use the specific setup hint. A Herdr install warning leaves plain
83
+ tmux available. A requested Ghostty install can fail setup; resolve it or decline with `--no-ghostty` and keep the
84
+ earlier choices. Terminal.app remains available; required tools and logins still matter. macOS may ask for
85
+ Automation permission; a missing display or remote daemon needs the documented headless/manual route.
86
+ Herdr may show an intro (Return to continue) and an agent-integration panel (Esc to close); the view does not
87
+ require installing those integrations. Enlarge a cramped 80×24 window. Use authorized desktop tools to inspect the
88
+ window contents, or state that visibility is unconfirmed and ask the person to check. A successful command or
89
+ window listing alone is not visual proof. The [OpenRig view guide and friction table](getting-started.md#open-the-kernel-conversations)
90
+ connects each observation to its next step. Preserve existing conversations while resolving it.
65
91
 
66
92
  ### The team did not start, or a terminal is missing
67
93
 
@@ -114,6 +140,9 @@ issue's current status; a similar symptom alone is not a diagnosis.
114
140
  - A Codex seat on the default `workspace-write` sandbox starts without network access, so it can't reach the local
115
141
  daemon, when its Codex configuration sets network access off, a managed requirement could restrict it, or Codex
116
142
  doesn't answer OpenRig's configuration read in time: [#275](https://github.com/mvschwarz/openrig/issues/275).
143
+ - Kernel seats fail within a second of the first start on a distribution tmux whose server exits on `capture-pane`
144
+ (`tmux -V` prints `next-3.4`): [#980](https://github.com/mvschwarz/openrig/issues/980). The check and recovery
145
+ are in [Incomplete setup and restart](getting-started.md#incomplete-setup-and-restart).
117
146
 
118
147
  For everything else, search [open issues](https://github.com/mvschwarz/openrig/issues).
119
148
 
@@ -1,6 +1,6 @@
1
1
  # Agent help: the single troubleshooting and escalation guide (docs/reference/help.md).
2
2
  name: help
3
- version: "0.6.6"
3
+ version: "0.6.8"
4
4
  taxonomy: world
5
5
  purpose: "What an agent does when its user says OpenRig isn't working: diagnose, fix within permissions, verify, and escalate to OpenRig support."
6
6
  files:
@@ -1,6 +1,6 @@
1
1
  # Public capability and source-map width for the default onboarding walk.
2
2
  name: onboarding-width
3
- version: "0.6.6"
3
+ version: "0.6.8"
4
4
  taxonomy: world
5
5
  purpose: "The public capability map and source map referenced by the default onboarding walk."
6
6
  files:
@@ -10,8 +10,8 @@ already does it, or two verbs crossed already answer it. **You cannot look up a
10
10
  not know exists.** So the point of what follows is not skill. It is recognition: that when a task
11
11
  lands, something rhymes, and you go check instead of building.
12
12
 
13
- Eighty-one-plus top-level verbs ship (capability canon refreshed through
14
- `capability-delta-v0.5.14-r6`). This marker describes the pack's teaching, not publication or live
13
+ Eighty-seven top-level verbs ship (capability canon refreshed through
14
+ `capability-delta-v0.6.8`). This marker describes the pack's teaching, not publication or live
15
15
  adoption. Read this once for shape, and let it make you suspicious that a thing already exists.
16
16
  Model-divergence proclamations are live product (trust them; pins use canonical
17
17
  model IDs).
@@ -28,7 +28,8 @@ one command away. Your memory of the fleet is a claim about the past.
28
28
  - **`rig ps`** — what rigs exist. **`rig ps --nodes -A`** — the state of every seat everywhere,
29
29
  *including the broken ones*. **The bare form is the question you usually want:** `--active`
30
30
  filters to running and **hides detached, exited and attention states** — which are exactly the
31
- cells you were scanning for.
31
+ cells you were scanning for. **`rig ps --resources`** shows this host's load and transcript
32
+ capture cost.
32
33
  - **`rig ps --all-hosts --nodes -A`** — the same across every registered machine. Rollup-only
33
34
  unless you ask for nodes.
34
35
  - **`rig discover`** — what is running on this box that OpenRig is *not* managing.
@@ -44,8 +45,10 @@ one command away. Your memory of the fleet is a claim about the past.
44
45
  only the default workspace). Mission and wave inspection shows admission and exit guidance; wave/slice details
45
46
  include review decisions. Accepted-core guidance stays separate from full-contract proof,
46
47
  live custody and executable dependencies. An `INDETERMINATE` cell stays unknown rather than
47
- being filled from memory. **`rig view register`** turns a query you keep re-running into a
48
- first-class view.
48
+ being filled from memory. A project that integrates somewhere other than `main` declares
49
+ `arrangement.source.integration_ref` in `mission.yaml`, and the folded rung checks landed work
50
+ against it; a ref that is invalid or can't be resolved reads INDETERMINATE.
51
+ **`rig view register`** turns a query you keep re-running into a first-class view.
49
52
  - **`rig config`** — bare, with no arguments: every key, every current value, and where each came
50
53
  from. Most agents assume compaction thresholds, snapshot cadence and scan intervals are hardcoded
51
54
  daemon behaviour. They are configuration. **Watch one thing:** `source: default` does not mean
@@ -63,6 +66,15 @@ one command away. Your memory of the fleet is a claim about the past.
63
66
  the authored selection and correction record. Authority, current applicability, an assessment,
64
67
  an action taken and a later observed effect are separate facts. Recording a correction or
65
68
  replaying a case does not establish improved behavior or authorize unrelated work.
69
+ - **`rig roster list` / `show` / `find`** — who across your rigs and hosts is recommended for a
70
+ kind of work, from JSON rosters in `<workspace.root>/rosters`. Read-only: it dispatches nothing
71
+ and does not claim anyone is available. The built-in starter and factory leads publish their
72
+ team's roster at first start.
73
+ - **`rig telemetry events` / `transitions` / `tenures <node-id>`** — past events, queue
74
+ transitions and a seat's occupants, one bounded page at a time with gaps reported. Reach for it
75
+ before querying the database yourself.
76
+ - **Check the exit code.** Many commands used to print nothing and exit 0 when a daemon read
77
+ failed; now they exit 1 or 2. Empty output from a failed read is not empty state.
66
78
 
67
79
  ## Reaching another agent
68
80
 
@@ -74,7 +86,9 @@ unseen — which makes messages the one delivery channel that never gets skipped
74
86
  on it. Alternate-screen and queued-command cases can still yield false negatives, so
75
87
  consequential delivery gets an effect check at the far end rather than a blind retry. A
76
88
  producer-link advisory reading `no_activity_signal` means activity could not be determined;
77
- confirm by effect, never relaunch on it.
89
+ confirm by effect, never relaunch on it. A send or wake to a seat whose latest hook is a
90
+ question waiting for a person is refused with `target_needs_input`, even when its screen
91
+ can't be read: read it with `rig capture` and get the question answered instead of retrying.
78
92
  - **`rig send --raw`** — send exact text or keystrokes without the From/To envelope;
79
93
  the interactive-prompt guard still applies. To deliberately drive an interactive prompt,
80
94
  **`--dangerously-interact --reason "<why>"`** is the explicit override and implies raw text.
@@ -96,16 +110,34 @@ unseen — which makes messages the one delivery channel that never gets skipped
96
110
  runtime tokens.
97
111
  - **`rig chatroom wait`** — block until a peer actually says something, instead of polling
98
112
  `capture` in a loop. Also `history`, `watch`, `topic` for a named thread that stays retrievable.
113
+ Its `--timeout` is in seconds and ignores a suffix, so `2m` means 2 seconds.
99
114
  - **`rig stream emit` / `list` / `watch` / `archive`** — drop an observation somewhere the *next*
100
115
  agent will find it. Emitting costs nothing and does not interrupt anyone; the value appears when
101
116
  someone lists the stream before starting.
102
- - **`rig terminal open <view>`** — bring every live agent in a rig, mission or slice up as real
103
- typeable tiles at once.
117
+ - **`rig terminal open <view>`** — open a desktop terminal with live agent tiles; a window is the
118
+ default. **Opening `rig terminal open saved:kernel --window` is the step after install or start**:
119
+ say you're opening it, run it on the daemon's desktop, then tell the person where it opened. Don't
120
+ wait for a phrase like “show me my agents”; the same command brings their agents back later. No
121
+ YAML, herdr when installed or plain tmux. The layout follows the terminal's width: on a narrow
122
+ one the operator gets the first tab; on a wide one the dashboard and operator sit side by side
123
+ and the advisor gets its own tab. A `kernel` view the person saved still wins. Inside herdr it
124
+ opens a focused `openrig kernel` space. It opens where the caller is: Terminal gets a window and
125
+ Ghostty a tab; from Claude Desktop, iTerm or VS Code on a Mac it opens a new Ghostty or Terminal
126
+ window, and only then say that clicking macOS's Allow is fine. Herdr is visible only in a
127
+ terminal the person can see; switching the shared TUI to `:terminals` does not open one. Over
128
+ SSH, in CI or with no display, the command returns a definite no-window result with the reason
129
+ and an attach command: relay that command exactly. Inspect the result and visible content, or
130
+ say what cannot be verified. On a desktop, do not finish by printing a command for the person to
131
+ type. Only if the window cannot open, `rig tui --shared` is the dashboard-only fallback; explain
132
+ the failure. `--provider herdr` or `--provider cmux` adds tiles inside a workspace that is
133
+ already visible, without opening a window; in `--json` output, `reusedWorkspace` with no new
134
+ tiles means an existing view was reused, which is success.
104
135
  In the TUI, **TERMINALS** keeps Saved views prominent and Derived groups collapsed until
105
136
  expanded. Names load before detailed readiness. Select a view to inspect its members,
106
137
  layout and pages; preview is passive. Saved membership requires deliberate setup.
107
- **Open in Herdr** deliberately opens the inspected plan
108
- and reports opened, absent or degraded members. Help or a side trip returns to the same preview.
138
+ **Open terminals ▸** opens the inspected plan through the same desktop launcher, herdr or plain
139
+ tmux, so the TUI must run on the daemon's desktop; when no window was attempted it shows the
140
+ preview and attach commands. Help or a side trip returns to the same preview.
109
141
  - **`rig walk <seat> --through <files> --pace <n>`** — deliver context pieces through
110
142
  file-backed terminal paste. When the current native generation record resolves, the complete
111
143
  piece and its matching Claude/Codex turn closure must arrive before pacing onward, including
@@ -114,14 +146,30 @@ unseen — which makes messages the one delivery channel that never gets skipped
114
146
  Delivery and turn completion do not prove comprehension.
115
147
  - **`rig slack`** — inspect and manage one connector implementation. Use registered-human
116
148
  readiness for the delivery decision and `queue create --verify` for its receipt; connector
117
- setup or verification is not an outbound human message.
149
+ setup or verification is not an outbound human message. After a connection gap the daemon
150
+ catches up on missed channel messages and marks them late; `rig slack status` shows the
151
+ connection and the catch-up state. **`rig slack channel-map list` / `set <match> <channel>` /
152
+ `remove <match>`** sends a rig's or seat's human-bound posts to its own channel (a seat match
153
+ beats a rig match; the rest use the default channel). After a change, invite the app to each
154
+ channel, run `rig slack verify`, and rewire the connector (`rig slack disable` then `enable`, or
155
+ restart the daemon). An emoji reaction on any message posted for an ask reaches the asking seat
156
+ as a task tagged `human-reaction`: a signal to interpret, not an answer, and the ask stays open.
157
+ It needs the `reactions:read` scope and the `reaction_added` event (reinstall the app);
158
+ `rig slack verify` warns when the scope is missing. A long ask is posted in numbered thread parts; one that
159
+ still can't be posted comes back to the asking seat as a `slack-undeliverable` task. Replies
160
+ sent with “Also send to #channel” reach the seat like any other thread reply. A person's reply
161
+ inside a thread OpenRig opened is answered in that thread: answer with `rig queue create
162
+ --human-intent update --reply-to <the inbound reply's row>`; a top-level message is answered
163
+ top-level.
118
164
 
119
165
  ## Making work outlive you
120
166
 
121
167
  **Your terminal buffer is not a record and your turn is not a container.** A durable row survives
122
168
  your context, your compaction and your replacement — and it is the only thing that does.
123
169
 
124
- - **`rig queue create`** — a row with an owner, a body and a transition history.
170
+ - **`rig queue create`** — a row with an owner, a body and a transition history. Its reply, like
171
+ `handoff`'s, confirms the row was saved; the owner is woken after that. Before you say they were
172
+ told, read the row's transitions (or use `--verify` for a person's request).
125
173
  - **`rig queue show`** — what a row *actually says*. The header is not the body.
126
174
  - **`rig queue claim` / `unclaim`** — is this mine and running, or still pending where two agents
127
175
  might double-work it. Put it down honestly when it is not yours.
@@ -129,7 +177,9 @@ your context, your compaction and your replacement — and it is the only thing
129
177
  `--note` does not reopen a terminal row; terminal-to-active repair requires explicit `--reopen`
130
178
  with both `--state` and `--note`.
131
179
  - **`rig queue handoff`** — pass work so the close and the create are **one transaction**, instead
132
- of closing yours, failing to create theirs, and stranding the work in between.
180
+ of closing yours, failing to create theirs, and stranding the work in between. A standing sweep
181
+ checks recently closed rows (a 24-hour lookback) and flags a `handed_off_to` closure whose
182
+ successor it can't verify; use `handoff` instead.
133
183
  - **`rig queue block` / `resolve`** — park a row on a real blocker so it stays **yours and
134
184
  visible**, with a plain-language summary and a pointer to what a human must judge; `resolve`
135
185
  writes their decision onto the durable record and wakes the owner. **Closing it would be a lie
@@ -176,7 +226,10 @@ relay is a reason to inspect the available routing, not to surrender judgment to
176
226
 
177
227
  - **`rig workflow specs`** — what can be started here, and which are shipped versus authored by
178
228
  this rig.
179
- - **`rig workflow validate`** — will this spec instantiate at all, before a run finds out for you.
229
+ - **`rig workflow validate`** — will this spec instantiate at all, before a run finds out for you. A
230
+ step with no allowed exit that can finish it or route onward is reported as `step_cannot_finish`.
231
+ An allowed mapped exit is valid; in a dependency graph, `handoff` can finish a sink without a next
232
+ step.
180
233
  - **`rig workflow compile <mission>`** / **`instantiate-lifecycle`** — derive one executable graph
181
234
  from `project.yaml` → `mission.yaml` → `slice.yaml`, inspect it without writing, then start an
182
235
  eligible graph with an opaque replay key. Typed acceptance candidate, verdict, and evidence
@@ -240,23 +293,56 @@ relay is a reason to inspect the available routing, not to surrender judgment to
240
293
 
241
294
  ## Bringing things into and out of existence
242
295
 
243
- **For a first useful repository change**, tell the kernel operator your goal. It recommends one
244
- of three teams, `starter` (a Claude Code builder and a Codex reviewer), `workshop` (a rig bundle:
245
- a lead, a builder, QA and a reviewer) or `factory` (seven agents), and adapts the team to the
246
- accounts you have. `first-project` is starter's old name. Preview the team, inspect
247
- `rig up <team> --cwd . --plan`, and follow `docs/reference/getting-started.md`. Verify
248
- prerequisites and actual runtime readiness before work. Existing Herdr/cmux terminals can present the managed team
249
- through `rig terminal open`.
296
+ **For a first useful repository change**, tell the kernel operator your goal. After install the
297
+ operator greets the person, asks the goal once and recommends one of three teams: `starter` (a
298
+ Claude Code builder and a Codex reviewer), `workshop` (a rig bundle: a lead, a builder, QA and a
299
+ reviewer) or `factory` (seven agents). It fits the team to the providers on the machine, launches
300
+ on a yes and hands the goal to the team's lead, which makes one light mission and slice for
301
+ continuing work. While explaining the choices it shows each team's graph in the shared TUI. After
302
+ a launch it gives each seat's attach command, names the dashboard as the overview and the lead as
303
+ the place to talk, and asks whether the person can see the team. **If you are the agent installing
304
+ OpenRig for someone**, show them the one-command install's `--dry-run` preview first
305
+ (`docs/reference/getting-started.md` has both forms) and run it on their yes. Then open the OpenRig
306
+ view as the handoff (`rig terminal open` above), keep the kernel running and pass the person's goal
307
+ and folder to the operator; don't build their project yourself. `rig setup` prints that handoff
308
+ even after an incomplete or dry-run result. The `rigs` skill takes an agent outside OpenRig from
309
+ install to a team doing the work. The daemon installs it for the person's own agent
310
+ (`~/.claude/skills/rigs` and `~/.agents/skills/rigs`) and refreshes it on every upgrade; a copy
311
+ added with skills.sh is left alone and never refreshed.
312
+
313
+ `starter` and `factory` are built in: preview the team, inspect `rig up <team> --cwd . --plan`,
314
+ and follow `docs/reference/getting-started.md`. `first-project` is starter's old name and still
315
+ works. **`workshop` is not built in**, so `rig up workshop` does not resolve. Install it from its
316
+ pinned openrig-world link, `rig up https://github.com/mvschwarz/openrig-world/tree/<commit>/rigs/workshop
317
+ --target ~/rigs/workshop`, taking the commit from
318
+ `https://raw.githubusercontent.com/mvschwarz/openrig-registry/main/registry/workshop.yaml`; fetch it
319
+ fresh, since a web tool's cached copy can be older. The built-in shelf also holds `code-review`,
320
+ `research`, `pm`, `secrets-manager` and `kernel`. Older names are gone: `adversarial-review`,
321
+ `research-team` and `pm-team` became `code-review`, `research` and `pm` with no alias, and
322
+ `first-project-claude`, `first-project-mixed`, `conveyor`, `demo`, `implementation-pair` and
323
+ `product-team` were removed. When authoring a new team, read
324
+ `docs/reference/topology-naming.md`: name the rig for its purpose, pods for domains,
325
+ and members for their roles. Verify prerequisites (Node 22 or 24) and actual runtime readiness
326
+ before work. The starter's Codex model `gpt-6-astra` needs a Codex newer than 0.145; when a Codex
327
+ seat reports that, the operator offers to update Codex and restart that seat. Existing Herdr/cmux
328
+ terminals can present the managed team through `rig terminal open`.
250
329
 
251
330
  **Need a small team now, without authoring YAML?** Start with `rig create`, then use `rig grow`
252
331
  (including `--new-pod`) while it runs. A working topology can become a reusable spec later; you do
253
332
  not have to tear one down to change it, and you rarely have to start from nothing.
254
333
 
255
334
  - **`rig up <source>`** — make a whole rig exist and run: from a spec you wrote, a shipped starter
256
- by name, a bundle someone handed you, or a stopped rig.
257
- - **`rig down`** — stop a rig's seats and take it out of the running set.
335
+ by name, a bundle someone handed you, a GitHub folder link (pinned to one commit), or a stopped
336
+ rig. `rig up` with a pod-aware spec on a stopped team's name replaces that team (the earlier one
337
+ is archived), so check `rig ps --nodes` first. Launch-created `AGENTS.md` or `CLAUDE` files now show in `git status`.
338
+ - **`rig down`** — stop a rig's seats and take it out of the running set. It ends the agents'
339
+ sessions and any work in progress; don't run it on a live team unless the person asked. In
340
+ human mode it first prints one line with each agent's last known activity, or “unknown”: a
341
+ best-effort snapshot, not a record of what was interrupted. With `--host`, a remote teardown
342
+ that reports errors exits 2.
258
343
  - **`rig launch <rig> [seat]`** — one seat is down; start just that one, without disturbing the
259
- rest.
344
+ rest. Add `--plan` to preview it first, locally or with `--host`; a plan is never sent to a
345
+ daemon older than 0.5.9, which would ignore it and launch.
260
346
  - **`rig seat launch <seat> --fresh --reason <why>`** — deliberately create a blank occupant for
261
347
  exactly one existing seat. It uses no resume, fork, rebuild, snapshot, or restore packet;
262
348
  siblings and durable work stay put, and unmanaged ambiguity refuses.
@@ -301,10 +387,14 @@ version, from checking the environment to a useful report to the OpenRig team.
301
387
  `daemon-shutdown.json` and log when completion is incomplete or unverified. No target is a
302
388
  distinct no-op, and a timeout never proves down. Use command help for exact limits and recovery.
303
389
  - **`rig doctor`** — is the *installation* wired up correctly, or are you chasing a bug that is
304
- really a broken install. **`rig preflight`** asks whether this machine can run OpenRig at all.
390
+ really a broken install. It checks Claude and Codex installs, and a login or configured provider
391
+ credential, the way setup does; it fails for a harness the person doesn't use, which they can
392
+ ignore. A pass is not "ready": local credential availability is not proof that a provider accepts
393
+ the credential or that an agent can work.
394
+ **`rig preflight`** asks whether this machine can run OpenRig at all.
305
395
  - **Bare `rig`** — the same TUI for first setup, daemon-down startup and ordinary work.
306
- A positive observation of a running rig enters ordinary work without a repeated Startup choice.
307
- With no running rig, the chooser remains; slow or unverified detection does not mean stopped.
396
+ After a successful daemon read it opens the ordinary work views, even when no rig is running;
397
+ press **S** for Startup. Slow or unverified detection does not mean stopped.
308
398
  A late observation never takes navigation away after you have chosen another route.
309
399
  **?** Help, **w** Skip and **L** Local reading remain usable during slow probes or loading,
310
400
  and when the daemon is down or unverified. Local reading shows selected disk intent with
@@ -335,24 +425,34 @@ version, from checking the environment to a useful report to the OpenRig team.
335
425
  actually come back, and for everything that would not, which check fails and what the fix is.
336
426
  Use `rig launch ... --snapshot-id <id>` when selection must be exact, and `rig restore status
337
427
  <attempt> --rig <rig>` for the derived intended-set receipt after an asynchronous restore.
428
+ restore-check's per-seat `seat.<s>.queue-file` check is now `seat.<s>.queue-store`.
338
429
  - **`rig restore-packet write` / `read` / `validate`** — a seat is about to die or must move
339
430
  runtimes; capture what it knows into a portable artifact instead of losing it with the process.
340
431
  - **Upgrading is agent-led** — load the shipped `openrig-upgrade` skill for the bounded inspect,
341
432
  backup, plugin-refresh, and 0.5.9 instance-migration helpers. The migration is an
342
433
  Agent-Operated Workflow: inspect, take one bounded reversible action, verify its effect, and
343
434
  continue from the receipt. There is no `rig upgrade` verb, and `rig down` is not part of a
344
- continuity-preserving upgrade.
435
+ continuity-preserving upgrade. After an upgrade, `rig context get reference/whats-new.md` says
436
+ what behaves differently for an agent; the skill's last step reads it and tells the person.
345
437
  - **A seat's `compaction_strategy` is declared, not improvised at the wall.** Pair a threshold-
346
438
  managed seat with the `context-usage-threshold` watchdog above so continuity is arranged while
347
439
  the seat can still act.
348
440
  - **`rig handover <seat>`** — replace the **occupant** of a seat while the seat, its name, its
349
441
  edges and its inbound work stay exactly where they are. **`rig seat handover` uses the same
350
442
  effectful handover path.** Both forms perform the operation by default; pass `--dry-run`
351
- to plan without changing the seat. Check the selected source and continuity evidence first.
443
+ to plan without changing the seat. Check the selected source and continuity evidence first. A
444
+ seat can be handed over again into its own pane, so a seat left half-handed-over recovers by
445
+ running the handover again.
352
446
  - **`rig seat clear-attention` / `set-resume-token`** — clear a stale attention flag, or repair a
353
447
  lost resume handle so restore works next time.
448
+ - **`rig seat continue <seat>`** — a launch stopped on Claude's bypass-permissions consent dialog.
449
+ After the person accepts it in the pane, this delivers the pending startup text into the same
450
+ conversation without relaunching; `rig up` and `rig bundle install` name it when startup pauses.
451
+ Managed Codex launches turn off Codex's startup update check, so no update notice stops them;
452
+ updating Codex is the operator's job.
354
453
  - **`rig seat set-model` / `stop` / `clean`** — persist the model for later managed resumes, stop
355
- exactly one live seat, or clear a dead seat's stale binding. When the topology is right and only
454
+ exactly one live seat (ending its session and any work in progress), or clear a dead seat's
455
+ stale binding. When the topology is right and only
356
456
  the occupant is wrong, use these seat lifecycle verbs or `rig handover`, not a rig down/up cycle.
357
457
  Effective-model detection follows the identity-verified current occupant, not a retained
358
458
  predecessor; a `<synthetic>` transcript record is skipped, so a PENDING model check is not a
@@ -367,6 +467,13 @@ version, from checking the environment to a useful report to the OpenRig team.
367
467
  retires one; disabling the guard does not replay held messages.
368
468
  - **`rig compact-plan`** → **`rig compact`** — who is near the context wall, then act on it.
369
469
  **Ordering matters: running `compact` without the plan is guessing which seat needed it.**
470
+ Managed compaction waits for the seat's restore map before compacting; `rig compact --state`,
471
+ `--cancel` and `--skip-map` inspect, stop or skip that wait. The `claude-compaction-restore`
472
+ skill covers writing and reading the map; `claude-compact-in-place` no longer ships. After a
473
+ managed compaction, refocus waits for the restore request, which names the `refocusing` skill
474
+ (the daemon installs it globally); three failed refocus attempts in a row for one occupant post
475
+ one issue to the stream. The turn boundary, restore request and read-depth audit reach a seat
476
+ that stays quiet after `/compact`; they don't wait for its next turn.
370
477
  - **Know what compaction costs before you reach for it.** On some runtimes what comes back has
371
478
  enough context left to believe it knows everything and not enough to actually know anything — and
372
479
  **the compacted agent is the only one who knows it happened**, while every other seat keeps
@@ -445,14 +552,27 @@ scheme, and nothing downstream can see it.
445
552
  System World, topology, and Project World plan. Add `--runtime` to see the composed managed skill
446
553
  loadout, `--apply-skills` to reconcile its owned harness projection, or `--deliver` to emit the
447
554
  exact extant files in order while marking absent pieces visibly. Without the flags it remains
448
- plan-only.
555
+ plan-only. Without `--project` it picks the project itself, in order: the only project, the
556
+ project whose `rigs:` lists the seat's rig, the deepest project root containing the working
557
+ folder, then the only unclaimed project. It reports `position.selectedBy`. If a step is
558
+ ambiguous (two projects list the rig, or two roots tie), it stops there and asks for
559
+ `--project` rather than falling through to a weaker signal. Several projects alone no longer
560
+ require `--project`. World packs named in `project.yaml`'s `install.worlds`
561
+ are listed after the System World; read each with `rig context get <ref>`.
449
562
  `context profile` and `context work-install` both accept `--runtime claude-code` (alias
450
- `claude`) or `codex`; explicit invalid values refuse before projection. This does not rename
451
- every other command's runtime vocabulary.
563
+ `claude`) or `codex`; explicit invalid values refuse before projection. This does not rename every
564
+ other command's runtime vocabulary. A catalog skill with uncommitted content blocks only itself:
565
+ it is skipped and named (`catalog_skill_skipped`, or `selected_skill_skipped` with its selector).
566
+ With `--runtime`, work-install reports selected skips with exit 1. It inspects by default;
567
+ `--apply-skills` projects the remaining clean skills while keeping any previously projected copy
568
+ of the skipped skill. Commit or restore that skill's folder, then apply the projection again.
452
569
  - **`rig context show` / `sync` / `rm`** — what is inside a context pack before you prime a seat
453
- with it, and how to make the library catch up when you edit one.
570
+ with it, and how to make the library catch up when you edit one. `sync` also finds a workspace
571
+ pack created after the daemon started; a daemon restart is no longer needed.
454
572
  - **`rig context add <repository-path-or-URL> --git`** — select a pack while retaining its Git
455
- source and checkout; `--pack <path>` chooses a repository-relative pack. Inspect that relationship
573
+ source and checkout; `--pack <path>` chooses a repository-relative pack. It starts a stopped
574
+ local daemon itself. Initial retrieval is shallow by default; a server that refuses shallow
575
+ retrieval falls back to a full clone with a warning. Inspect that relationship
456
576
  with **`rig context source inspect <ref>`**; it does not fetch or prove agent consumption.
457
577
  **`rig context source update <ref>`** explicitly fetches and merges, preserving committed local
458
578
  authorship before selecting clean content. Dirty work, conflicts, unavailable upstreams and
@@ -481,6 +601,7 @@ scheme, and nothing downstream can see it.
481
601
  - **`rig context recap-write`** — a durable, seat-scoped RECAP beside LEARNED with a
482
602
  collision-safe superseded chain, written at the handover or compaction boundary; restore
483
603
  packets carry the pointer, so a successor reads decisions-with-rationale instead of scrollback.
604
+ Write it with this command, not a file tool, so earlier recaps are kept.
484
605
  - **`rig project classify` / `list` / `show`** — turn a raw observation into a routed, typed,
485
606
  deduped record instead of hand-creating a row from a hunch.
486
607
 
@@ -493,7 +614,10 @@ working arrangement becomes something someone else can instantiate.
493
614
  file well-formed, would it boot *on this host*, and **will the agents it launches actually know
494
615
  anything when they arrive**. The third is the one people skip. Unknown structural keys refuse
495
616
  with their path instead of being normalized away. Use `rig spec validate --help` for its current
496
- behavior and options.
617
+ behavior and options. For Pi seats, preflight reports the Pi version against the tested
618
+ baseline, and at launch the runner says whether the seat has a stored sign-in or provider key
619
+ (advisory; launch continues). A provider key reaches a Pi seat only when its name is in
620
+ `recovery.provider_auth_env_allowlist`; `MINIMAX_API_KEY` serves `minimax/<id>` models.
497
621
  - **`rig context trace --pod <pod>`** — walk the context chain through instance → rig → pod → seat
498
622
  when the pod altitude matters.
499
623
  - **`rig specs show` / `preview` / `add` / `sync` / `rename` / `remove`** — where a spec lives,
@@ -505,7 +629,29 @@ working arrangement becomes something someone else can instantiate.
505
629
  workspace declaration to an existing rig without changing topology; `rig export` preserves it.
506
630
  - **`rig bundle create` / `inspect` / `install` / `history`** — one file that rebuilds a rig on a
507
631
  machine with none of its content, what is inside one before you trust it, and what has actually
508
- been installed here.
632
+ been installed here. `create`, `inspect` and `install` also take a GitHub folder link and pin it
633
+ to one commit, as `rig up <link>` does. `inspect`, and the view shown before `install` or `rig up`, list the
634
+ permission posture, startup actions, writes, outside domains and the author's preconditions
635
+ (shown, never run). A bundle can declare configurations: `rig bundle configurations <spec>`
636
+ lists them, and `--preset <name>` or `--seat pod.member=runtime` picks one. A bundle from a link
637
+ installs into `--target` (default: the current folder); a local archive needs `--target`.
638
+ `--cwd <dir>` sets every seat's working folder, separately from the install folder. For a
639
+ pod-aware (schema 2) bundle, skills, plugins and context packs are routed before any seat
640
+ launches, with failures listed in `routingFailures`, so there is no sync step after the install;
641
+ a legacy (schema 1) bundle still routes them after a completed install. Re-installing a team that
642
+ is already installed says what is installed and offers to use it, stop and replace it, or
643
+ cancel. For a pod-aware bundle, a running team with the same name is refused before target files
644
+ are written, and a stopped one is replaced: the earlier team is archived, and reinstalling into its
645
+ own install folder first copies each differing file to a backup. A legacy bundle doesn't replace
646
+ a stopped team, and with `--force` it can run its approved install steps before its name check
647
+ fails. Read those choices before reaching for `--force`. The manifest safety check always runs,
648
+ even with `--skip-version-check --force`.
649
+ - **`rig bundle check <folder>`** — a local, advisory check of a team you are authoring; each
650
+ finding names its file. `rig bundle create` and `rig up <link>` name the bundle after
651
+ `rig.yaml`'s `name`.
652
+ `rig bundle create --context-pack <dir>` and `--project-dir <dir>` carry a context pack or a
653
+ project with it, and `docs/reference/publishing-a-rig-bundle.md` explains how to share it on
654
+ openrig.dev/rigs.
509
655
  - **`rig bootstrap`** — spec file to running rig in one command. **`rig requirements`** — what this
510
656
  spec needs installed first.
511
657
  - **`rig plugin show` / `used-by` / `validate`** — what a plugin actually gives an agent, and
@@ -533,6 +679,7 @@ reaching them is ordinary work rather than an escalation.
533
679
  request, then boundedly inspect its transport receipt. Posted means posted, not read;
534
680
  pending, failed, or indeterminate delivery leaves the row intact. Inspect the same row's
535
681
  transitions before retrying. `rig send` remains agent-terminal delivery only.
682
+ `--human-questions-file` adds clickable decision questions.
536
683
  - **When project policy calls for human judgment or an update, load `messaging-the-human`.**
537
684
  Use `rig context get skills/core/messaging-the-human/SKILL.md` for a complete decision brief,
538
685
  related supplemental detail and explicit quiet-update intent. An FYI creates no approval
@@ -563,6 +710,39 @@ your circumstances is configuration, and the ones that are not, another agent ca
563
710
  actually in effect: discovers custom policy specs, validates refs (malformed can never read as
564
711
  valid OR absent), shows what would apply. The older `rig policy list|show|current|apply` forms
565
712
  remain as aliases with the same output.
713
+ - **What a team seat may do without asking.** Claude seats in a team that OpenRig launches run
714
+ `rig` commands, project reads and common test commands without a prompt; lifecycle commands
715
+ (`rig up`, `rig down`, `rig seat stop`, `rig daemon stop` and similar) ask. Routine `rig`
716
+ commands used to prompt, so don't widen permissions to avoid prompts. Codex team seats run
717
+ `workspace-write` with the workspace root and their pod's state folder writable. When Codex's
718
+ own config check shows a default-sandbox seat is eligible, OpenRig turns its network access on
719
+ (`network_access = false` keeps it off); if that check can't be read, the launch is left
720
+ unchanged. So full bypass is usually not needed just to reach the daemon; this was not checked
721
+ with real logins or on Linux. Explicit author or person policies, explicit seat selections and
722
+ named Codex profiles turn these team defaults off, and native ask and deny rules still apply.
723
+ When setting up a team, the operator recommends keeping this default. It offers to remember
724
+ extra OpenRig commands in your native settings, for this project or user-wide, only when you
725
+ want that, and stricter rules and Claude's lifecycle asks remain. The `openrig-core` plugin's
726
+ `applying-a-permission-policy` skill has the procedure. In a Claude team seat, help on lifecycle
727
+ commands (`rig down --help`, `-h`) and equivalent spellings of allowed commands run without a
728
+ prompt; the lifecycle actions still ask, and pipelines, command substitutions, redirects and
729
+ heredocs are left to Claude's own check. The kernel operator's Claude session also runs routine
730
+ inspection (Python, command lookup, `cd`, text helpers) and WebFetch without prompts. Known
731
+ limit: Codex team seats are not yet asked before lifecycle commands.
732
+ - **`permission_policy: builtin:auto`**, and a fixed order for a seat's first launch:
733
+ `rig seat set-permissions`, then the member policy, then the rig policy, then the system floor.
734
+ See `docs/reference/rig-spec.md#built-in-permission-policies`.
735
+ - **`--non-interruptive`** on `rig up` or `rig bundle install` accepts Claude's bypass-permissions
736
+ warning and hides Codex's full-access notices for seats that already launch with full bypass. It
737
+ does not select bypass or change permission policy or native settings, so other seats ask as
738
+ before. The choice is saved for that team and carries through restores and handovers;
739
+ `--no-non-interruptive`, with the team down, clears it. A rig spec can declare `non_interruptive: true` beside its
740
+ permission policy: an explicit flag wins over it, and it wins over the operator default
741
+ `launch.non_interruptive`. The before-install view shows it as
742
+ `posture[].nonInterruptiveDefault`.
743
+ - **Smaller settings worth knowing:** per-seat `effort`, passed to Claude as `--effort` and to
744
+ Codex as `model_reasoning_effort`; and `runtime.readiness_timeout_seconds` for seats that start
745
+ slowly.
566
746
  - **`rig policy cite` / `defaults`** — what posture the operator is in: how autonomous to be, how
567
747
  loudly to report, whether to batch permission questions or block on them. **This declares a
568
748
  posture; it does not grant or deny permissions** — the harness's own settings are the control
@@ -590,16 +770,30 @@ your circumstances is configuration, and the ones that are not, another agent ca
590
770
  - **`rig env`** — the real services behind a rig: are they up, what are they saying, how do you
591
771
  stop them without killing the rig.
592
772
  - **`rig setup`** — what OpenRig would change about this machine, shown before it touches anything.
773
+ It installs herdr by default on macOS and Linux (`--no-herdr` declines; if the install fails,
774
+ views fall back to plain tmux) and on a Mac offers Ghostty once (`--ghostty` / `--no-ghostty`).
775
+ It no longer installs cmux; an existing cmux still works.
593
776
  - **`rig usage series`** — what a seat's token curve has looked like over time: climbing steadily,
594
777
  reset, or stopped reporting entirely. The last one is a signal, not a gap.
595
- - **`rig tui`** — the interactive view over rigs, pods, seats and specs. `rig tui --shared`
596
- attaches to the existing kernel terminal; Ctrl-b then d detaches, and no missing seat or
597
- terminal is implicitly launched. Plain `rig tui` remains a separate view.
778
+ - **`rig tui`** — the interactive view over rigs, pods, seats and specs. `rig` and `rig tui` open
779
+ the status dashboard, not a conversation with an agent: talk to the operator through
780
+ `rig terminal open saved:kernel --window`, which opens the dashboard and conversations together.
781
+ Open it as the step after install or start, and whenever the person wants their agents back
782
+ (see `rig terminal open` above); do not finish by showing a table or suggesting a command for
783
+ the person to type.
784
+ Only if the window cannot open, `rig tui --shared` is the dashboard-only fallback:
785
+ it attaches to the existing kernel terminal; Ctrl-b then d detaches, and no missing
786
+ seat or terminal is implicitly launched. Explain the failure and help with the
787
+ chosen fallback. Plain `rig tui` remains a separate dashboard.
788
+ On an empty command line every typed command reaches the line whole and `j`/`k` move the
789
+ selection; the footer toggle is `F`, and a selected Scopes view's mini-requirements and
790
+ narrative keys are `M` and `N`.
598
791
  Open the instance row for one continuous cross-rig agent table with pod separators and material
599
792
  `RECENT` transitions; drill into a rig, mission, slice, or agent without losing the owning
600
793
  identity. Use the mission's workflow/packet view and Specs purpose/source to understand work.
601
794
  In **Specs**, kind groups start collapsed and expand explicitly. Selection previews purpose,
602
- contents and provenance; Enter opens details.
795
+ contents and provenance; Enter opens details. A rig spec opens as a graph with **Launch**, which
796
+ asks for a working folder and then runs the real `rig up`.
603
797
  **View current source** reads disk within the explicitly configured readable roots. Relative
604
798
  Markdown links resolve against that source; headings open with a labelled starting point.
605
799
  Escape or `back` restores the caller's selection and scroll. Detail uses the full width on
@@ -629,7 +823,9 @@ your circumstances is configuration, and the ones that are not, another agent ca
629
823
  - **`rig skill loadout --runtime <claude-code|codex>`** — inspect the exact catalog revision,
630
824
  selectors, target, and current/missing/shadowed/conflicting state for one working directory.
631
825
  `--apply` writes only the managed ownership set, is idempotent, and refuses local edits or
632
- unowned collisions.
826
+ unowned collisions. Launch now delivers a selected plugin's skills into `.claude/skills/` or
827
+ `.agents/skills/`, so don't copy them by hand; read the `plugin_skill_*` warnings if one is
828
+ missing. TDD is no longer a default skill.
633
829
  - **`rig startup-proof submit`** — answer an explicitly selected authenticated startup challenge.
634
830
  Startup adds no proof exercise by default. Declare `startup_proof` with `authenticated` or
635
831
  `none` in the applicable startup layers; see `docs/reference/rig-spec.md#startup-block/startup-proof-selection`.
@@ -699,6 +895,6 @@ deliberate writing.
699
895
 
700
896
  **`rig --help`**, then `rig <verb> --help`.
701
897
 
702
- Eighty-one verbs ship, and this page named most of them once. **You will not remember which — you
898
+ Eighty-seven verbs ship, and this page named most of them once. **You will not remember which — you
703
899
  are meant to remember only that the list is long enough to be worth reading before you build
704
900
  anything.** The question is never *how do I write this*; it is **does this already exist**.