@openrig/cli 0.6.12 → 0.6.14

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 (494) hide show
  1. package/README.md +69 -14
  2. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  3. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  4. package/daemon/assets/plugins/openrig-core/README.md +9 -2
  5. package/daemon/assets/plugins/openrig-core/hooks/scripts/activity-relay.cjs +25 -9
  6. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +7 -4
  7. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +5 -0
  8. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +11 -3
  9. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +73 -48
  10. package/daemon/assets/skills/rigs/SKILL.md +8 -4
  11. package/daemon/context-packs/help/manifest.yaml +1 -1
  12. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  13. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +76 -16
  14. package/daemon/context-packs/reference/getting-started.md +135 -28
  15. package/daemon/context-packs/reference/manifest.yaml +1 -1
  16. package/daemon/context-packs/reference/rig-spec.md +5 -5
  17. package/daemon/context-packs/reference/whats-new.md +65 -167
  18. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  19. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  20. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  21. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  22. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  23. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  24. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  31. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/mission-slice-sop/SKILL.md +5 -0
  43. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/openrig-user/SKILL.md +11 -3
  46. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +73 -48
  69. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  73. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  74. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  75. package/daemon/dist/adapters/claude-code-adapter.d.ts +9 -1
  76. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  77. package/daemon/dist/adapters/claude-code-adapter.js +110 -52
  78. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  79. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  80. package/daemon/dist/adapters/codex-runtime-adapter.js +47 -6
  81. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  82. package/daemon/dist/adapters/pi-resume.d.ts +1 -1
  83. package/daemon/dist/adapters/pi-resume.d.ts.map +1 -1
  84. package/daemon/dist/adapters/pi-resume.js +4 -1
  85. package/daemon/dist/adapters/pi-resume.js.map +1 -1
  86. package/daemon/dist/adapters/pi-runner-protocol.d.ts +9 -0
  87. package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
  88. package/daemon/dist/adapters/pi-runner-protocol.js +16 -0
  89. package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
  90. package/daemon/dist/adapters/pi-runner.d.ts +5 -2
  91. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  92. package/daemon/dist/adapters/pi-runner.js +72 -15
  93. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  94. package/daemon/dist/adapters/pi-runtime-adapter.d.ts.map +1 -1
  95. package/daemon/dist/adapters/pi-runtime-adapter.js +2 -0
  96. package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
  97. package/daemon/dist/adapters/stub-compaction.d.ts +1 -0
  98. package/daemon/dist/adapters/stub-compaction.d.ts.map +1 -1
  99. package/daemon/dist/adapters/stub-compaction.js +2 -0
  100. package/daemon/dist/adapters/stub-compaction.js.map +1 -1
  101. package/daemon/dist/adapters/stub-refocus.d.ts +6 -0
  102. package/daemon/dist/adapters/stub-refocus.d.ts.map +1 -0
  103. package/daemon/dist/adapters/stub-refocus.js +22 -0
  104. package/daemon/dist/adapters/stub-refocus.js.map +1 -0
  105. package/daemon/dist/adapters/stub-runner.d.ts +6 -0
  106. package/daemon/dist/adapters/stub-runner.d.ts.map +1 -1
  107. package/daemon/dist/adapters/stub-runner.js +18 -1
  108. package/daemon/dist/adapters/stub-runner.js.map +1 -1
  109. package/daemon/dist/adapters/stub-script.d.ts +2 -2
  110. package/daemon/dist/adapters/stub-script.d.ts.map +1 -1
  111. package/daemon/dist/adapters/stub-script.js +2 -2
  112. package/daemon/dist/adapters/stub-script.js.map +1 -1
  113. package/daemon/dist/adapters/tmux.js +1 -1
  114. package/daemon/dist/adapters/tmux.js.map +1 -1
  115. package/daemon/dist/build-info.js +3 -3
  116. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  117. package/daemon/dist/db/all-migrations.js +2 -0
  118. package/daemon/dist/db/all-migrations.js.map +1 -1
  119. package/daemon/dist/db/migrations/117_provider_account_readings.d.ts +3 -0
  120. package/daemon/dist/db/migrations/117_provider_account_readings.d.ts.map +1 -0
  121. package/daemon/dist/db/migrations/117_provider_account_readings.js +32 -0
  122. package/daemon/dist/db/migrations/117_provider_account_readings.js.map +1 -0
  123. package/daemon/dist/domain/claim-service.d.ts +9 -18
  124. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  125. package/daemon/dist/domain/claim-service.js +83 -0
  126. package/daemon/dist/domain/claim-service.js.map +1 -1
  127. package/daemon/dist/domain/claude-activity-hooks.d.ts +6 -0
  128. package/daemon/dist/domain/claude-activity-hooks.d.ts.map +1 -1
  129. package/daemon/dist/domain/claude-activity-hooks.js +19 -1
  130. package/daemon/dist/domain/claude-activity-hooks.js.map +1 -1
  131. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +2 -2
  132. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  133. package/daemon/dist/domain/claude-compaction-enforcer.js +20 -14
  134. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  135. package/daemon/dist/domain/claude-core-plugin-env.d.ts +2 -0
  136. package/daemon/dist/domain/claude-core-plugin-env.d.ts.map +1 -1
  137. package/daemon/dist/domain/claude-core-plugin-env.js +6 -2
  138. package/daemon/dist/domain/claude-core-plugin-env.js.map +1 -1
  139. package/daemon/dist/domain/claude-managed-launch.d.ts +5 -0
  140. package/daemon/dist/domain/claude-managed-launch.d.ts.map +1 -1
  141. package/daemon/dist/domain/claude-managed-launch.js +48 -7
  142. package/daemon/dist/domain/claude-managed-launch.js.map +1 -1
  143. package/daemon/dist/domain/claude-mcp-menu.d.ts +5 -0
  144. package/daemon/dist/domain/claude-mcp-menu.d.ts.map +1 -0
  145. package/daemon/dist/domain/claude-mcp-menu.js +25 -0
  146. package/daemon/dist/domain/claude-mcp-menu.js.map +1 -0
  147. package/daemon/dist/domain/fresh-occupant-relation.d.ts +7 -0
  148. package/daemon/dist/domain/fresh-occupant-relation.d.ts.map +1 -1
  149. package/daemon/dist/domain/fresh-occupant-relation.js +45 -0
  150. package/daemon/dist/domain/fresh-occupant-relation.js.map +1 -1
  151. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts +14 -2
  152. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -1
  153. package/daemon/dist/domain/gateway/slack/channel-recovery.js +128 -89
  154. package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -1
  155. package/daemon/dist/domain/gateway/slack/inbound.d.ts +4 -0
  156. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  157. package/daemon/dist/domain/gateway/slack/inbound.js +5 -3
  158. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  159. package/daemon/dist/domain/gateway/slack/recovery-budget.d.ts +24 -0
  160. package/daemon/dist/domain/gateway/slack/recovery-budget.d.ts.map +1 -0
  161. package/daemon/dist/domain/gateway/slack/recovery-budget.js +18 -0
  162. package/daemon/dist/domain/gateway/slack/recovery-budget.js.map +1 -0
  163. package/daemon/dist/domain/gateway/slack/slack-recovery.d.ts +104 -0
  164. package/daemon/dist/domain/gateway/slack/slack-recovery.d.ts.map +1 -0
  165. package/daemon/dist/domain/gateway/slack/slack-recovery.js +236 -0
  166. package/daemon/dist/domain/gateway/slack/slack-recovery.js.map +1 -0
  167. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  168. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +29 -6
  169. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  170. package/daemon/dist/domain/gateway/slack/state-store.d.ts +34 -0
  171. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
  172. package/daemon/dist/domain/gateway/slack/state-store.js +67 -0
  173. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
  174. package/daemon/dist/domain/gateway/slack/thread-recovery.d.ts +37 -0
  175. package/daemon/dist/domain/gateway/slack/thread-recovery.d.ts.map +1 -0
  176. package/daemon/dist/domain/gateway/slack/thread-recovery.js +173 -0
  177. package/daemon/dist/domain/gateway/slack/thread-recovery.js.map +1 -0
  178. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +8 -0
  179. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
  180. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +11 -0
  181. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
  182. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts +6 -1
  183. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts.map +1 -1
  184. package/daemon/dist/domain/model-divergence/current-generation-record.js +4 -1
  185. package/daemon/dist/domain/model-divergence/current-generation-record.js.map +1 -1
  186. package/daemon/dist/domain/model-divergence/current-model-reader.d.ts +74 -0
  187. package/daemon/dist/domain/model-divergence/current-model-reader.d.ts.map +1 -0
  188. package/daemon/dist/domain/model-divergence/current-model-reader.js +246 -0
  189. package/daemon/dist/domain/model-divergence/current-model-reader.js.map +1 -0
  190. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts +18 -0
  191. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts.map +1 -1
  192. package/daemon/dist/domain/model-divergence/effective-model-readers.js +24 -8
  193. package/daemon/dist/domain/model-divergence/effective-model-readers.js.map +1 -1
  194. package/daemon/dist/domain/native-process-lineage.d.ts +8 -1
  195. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  196. package/daemon/dist/domain/native-process-lineage.js +40 -26
  197. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  198. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  199. package/daemon/dist/domain/native-resume-probe.js +34 -8
  200. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  201. package/daemon/dist/domain/node-inventory.d.ts +1 -1
  202. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  203. package/daemon/dist/domain/node-inventory.js +84 -18
  204. package/daemon/dist/domain/node-inventory.js.map +1 -1
  205. package/daemon/dist/domain/process-census.d.ts +1 -1
  206. package/daemon/dist/domain/process-census.d.ts.map +1 -1
  207. package/daemon/dist/domain/process-table.d.ts +26 -0
  208. package/daemon/dist/domain/process-table.d.ts.map +1 -0
  209. package/daemon/dist/domain/process-table.js +185 -0
  210. package/daemon/dist/domain/process-table.js.map +1 -0
  211. package/daemon/dist/domain/profile-resolver.d.ts +8 -0
  212. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  213. package/daemon/dist/domain/profile-resolver.js +11 -0
  214. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  215. package/daemon/dist/domain/projection-planner.js +1 -1
  216. package/daemon/dist/domain/projection-planner.js.map +1 -1
  217. package/daemon/dist/domain/provider/claude-usage-windows.d.ts +3 -1
  218. package/daemon/dist/domain/provider/claude-usage-windows.d.ts.map +1 -1
  219. package/daemon/dist/domain/provider/claude-usage-windows.js +48 -3
  220. package/daemon/dist/domain/provider/claude-usage-windows.js.map +1 -1
  221. package/daemon/dist/domain/provider/codex-usage-reader.d.ts +4 -1
  222. package/daemon/dist/domain/provider/codex-usage-reader.d.ts.map +1 -1
  223. package/daemon/dist/domain/provider/codex-usage-reader.js +3 -0
  224. package/daemon/dist/domain/provider/codex-usage-reader.js.map +1 -1
  225. package/daemon/dist/domain/provider/codex-usage-windows.d.ts +3 -1
  226. package/daemon/dist/domain/provider/codex-usage-windows.d.ts.map +1 -1
  227. package/daemon/dist/domain/provider/codex-usage-windows.js +1 -0
  228. package/daemon/dist/domain/provider/codex-usage-windows.js.map +1 -1
  229. package/daemon/dist/domain/provider/provider-account-readings.d.ts +42 -0
  230. package/daemon/dist/domain/provider/provider-account-readings.d.ts.map +1 -0
  231. package/daemon/dist/domain/provider/provider-account-readings.js +132 -0
  232. package/daemon/dist/domain/provider/provider-account-readings.js.map +1 -0
  233. package/daemon/dist/domain/provider/provider-types.d.ts +29 -0
  234. package/daemon/dist/domain/provider/provider-types.d.ts.map +1 -1
  235. package/daemon/dist/domain/provider/usage-across-hosts.d.ts.map +1 -1
  236. package/daemon/dist/domain/provider/usage-across-hosts.js +6 -0
  237. package/daemon/dist/domain/provider/usage-across-hosts.js.map +1 -1
  238. package/daemon/dist/domain/provider/usage-windows.d.ts +25 -0
  239. package/daemon/dist/domain/provider/usage-windows.d.ts.map +1 -1
  240. package/daemon/dist/domain/provider/usage-windows.js +100 -4
  241. package/daemon/dist/domain/provider/usage-windows.js.map +1 -1
  242. package/daemon/dist/domain/queue-repository.d.ts +23 -0
  243. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  244. package/daemon/dist/domain/queue-repository.js +59 -1
  245. package/daemon/dist/domain/queue-repository.js.map +1 -1
  246. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
  247. package/daemon/dist/domain/queue-stuck-sweep.js +47 -4
  248. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
  249. package/daemon/dist/domain/restore-check-service.d.ts +10 -0
  250. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  251. package/daemon/dist/domain/restore-check-service.js +73 -10
  252. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  253. package/daemon/dist/domain/restore-guidance.d.ts +6 -0
  254. package/daemon/dist/domain/restore-guidance.d.ts.map +1 -1
  255. package/daemon/dist/domain/restore-guidance.js +21 -5
  256. package/daemon/dist/domain/restore-guidance.js.map +1 -1
  257. package/daemon/dist/domain/restore-orchestrator.js +1 -1
  258. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  259. package/daemon/dist/domain/resume-metadata-refresher.d.ts.map +1 -1
  260. package/daemon/dist/domain/resume-metadata-refresher.js +6 -29
  261. package/daemon/dist/domain/resume-metadata-refresher.js.map +1 -1
  262. package/daemon/dist/domain/rig-repository.d.ts +3 -0
  263. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  264. package/daemon/dist/domain/rig-repository.js +6 -0
  265. package/daemon/dist/domain/rig-repository.js.map +1 -1
  266. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  267. package/daemon/dist/domain/rigspec-instantiator.js +4 -2
  268. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  269. package/daemon/dist/domain/rigspec-preflight.d.ts +4 -0
  270. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  271. package/daemon/dist/domain/rigspec-preflight.js +12 -2
  272. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  273. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  274. package/daemon/dist/domain/rigspec-schema.js +11 -0
  275. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  276. package/daemon/dist/domain/runtime-adapter.d.ts +13 -0
  277. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  278. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  279. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  280. package/daemon/dist/domain/seat-attention-reconciler.js +15 -1
  281. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  282. package/daemon/dist/domain/seat-cwd-preparation.d.ts +22 -0
  283. package/daemon/dist/domain/seat-cwd-preparation.d.ts.map +1 -0
  284. package/daemon/dist/domain/seat-cwd-preparation.js +107 -0
  285. package/daemon/dist/domain/seat-cwd-preparation.js.map +1 -0
  286. package/daemon/dist/domain/seat-effort.d.ts +4 -3
  287. package/daemon/dist/domain/seat-effort.d.ts.map +1 -1
  288. package/daemon/dist/domain/seat-effort.js +21 -3
  289. package/daemon/dist/domain/seat-effort.js.map +1 -1
  290. package/daemon/dist/domain/seat-lifecycle-service.d.ts +36 -2
  291. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  292. package/daemon/dist/domain/seat-lifecycle-service.js +206 -15
  293. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
  294. package/daemon/dist/domain/seat-restart-in-place.d.ts +14 -0
  295. package/daemon/dist/domain/seat-restart-in-place.d.ts.map +1 -1
  296. package/daemon/dist/domain/seat-restart-in-place.js +59 -3
  297. package/daemon/dist/domain/seat-restart-in-place.js.map +1 -1
  298. package/daemon/dist/domain/seat-status-service.d.ts +2 -0
  299. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -1
  300. package/daemon/dist/domain/seat-status-service.js +1 -0
  301. package/daemon/dist/domain/seat-status-service.js.map +1 -1
  302. package/daemon/dist/domain/seat-structural-activity-service.d.ts +7 -1
  303. package/daemon/dist/domain/seat-structural-activity-service.d.ts.map +1 -1
  304. package/daemon/dist/domain/seat-structural-activity-service.js +9 -3
  305. package/daemon/dist/domain/seat-structural-activity-service.js.map +1 -1
  306. package/daemon/dist/domain/session-name.d.ts +8 -0
  307. package/daemon/dist/domain/session-name.d.ts.map +1 -1
  308. package/daemon/dist/domain/session-name.js +12 -0
  309. package/daemon/dist/domain/session-name.js.map +1 -1
  310. package/daemon/dist/domain/session-transport.d.ts +78 -3
  311. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  312. package/daemon/dist/domain/session-transport.js +306 -15
  313. package/daemon/dist/domain/session-transport.js.map +1 -1
  314. package/daemon/dist/domain/successor-session-launcher.js +1 -1
  315. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  316. package/daemon/dist/domain/topology-converge.d.ts +1 -0
  317. package/daemon/dist/domain/topology-converge.d.ts.map +1 -1
  318. package/daemon/dist/domain/topology-converge.js +1 -0
  319. package/daemon/dist/domain/topology-converge.js.map +1 -1
  320. package/daemon/dist/domain/types.d.ts +14 -0
  321. package/daemon/dist/domain/types.d.ts.map +1 -1
  322. package/daemon/dist/domain/types.js.map +1 -1
  323. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  324. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  325. package/daemon/dist/domain/user-settings/settings-store.js +4 -0
  326. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  327. package/daemon/dist/domain/wake-resolve-service.d.ts +1 -0
  328. package/daemon/dist/domain/wake-resolve-service.d.ts.map +1 -1
  329. package/daemon/dist/domain/wake-resolve-service.js +10 -0
  330. package/daemon/dist/domain/wake-resolve-service.js.map +1 -1
  331. package/daemon/dist/domain/wake-resolver.d.ts.map +1 -1
  332. package/daemon/dist/domain/wake-resolver.js +7 -0
  333. package/daemon/dist/domain/wake-resolver.js.map +1 -1
  334. package/daemon/dist/domain/watchdog-delivery.d.ts +29 -0
  335. package/daemon/dist/domain/watchdog-delivery.d.ts.map +1 -0
  336. package/daemon/dist/domain/watchdog-delivery.js +113 -0
  337. package/daemon/dist/domain/watchdog-delivery.js.map +1 -0
  338. package/daemon/dist/domain/watchdog-policy-engine.d.ts +60 -1
  339. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  340. package/daemon/dist/domain/watchdog-policy-engine.js +154 -28
  341. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  342. package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -1
  343. package/daemon/dist/domain/watchdog-scheduler.js +6 -1
  344. package/daemon/dist/domain/watchdog-scheduler.js.map +1 -1
  345. package/daemon/dist/domain/workflow-instance-store.d.ts.map +1 -1
  346. package/daemon/dist/domain/workflow-instance-store.js +6 -2
  347. package/daemon/dist/domain/workflow-instance-store.js.map +1 -1
  348. package/daemon/dist/routes/attention.d.ts.map +1 -1
  349. package/daemon/dist/routes/attention.js +41 -1
  350. package/daemon/dist/routes/attention.js.map +1 -1
  351. package/daemon/dist/routes/compaction.js +1 -1
  352. package/daemon/dist/routes/compaction.js.map +1 -1
  353. package/daemon/dist/routes/queue.d.ts.map +1 -1
  354. package/daemon/dist/routes/queue.js +3 -1
  355. package/daemon/dist/routes/queue.js.map +1 -1
  356. package/daemon/dist/routes/restore-check.d.ts.map +1 -1
  357. package/daemon/dist/routes/restore-check.js +19 -1
  358. package/daemon/dist/routes/restore-check.js.map +1 -1
  359. package/daemon/dist/routes/seat.d.ts.map +1 -1
  360. package/daemon/dist/routes/seat.js +15 -2
  361. package/daemon/dist/routes/seat.js.map +1 -1
  362. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  363. package/daemon/dist/routes/sessions.js +42 -1
  364. package/daemon/dist/routes/sessions.js.map +1 -1
  365. package/daemon/dist/routes/transport.d.ts.map +1 -1
  366. package/daemon/dist/routes/transport.js +13 -2
  367. package/daemon/dist/routes/transport.js.map +1 -1
  368. package/daemon/dist/server.d.ts +1 -0
  369. package/daemon/dist/server.d.ts.map +1 -1
  370. package/daemon/dist/server.js +7 -4
  371. package/daemon/dist/server.js.map +1 -1
  372. package/daemon/dist/startup.d.ts.map +1 -1
  373. package/daemon/dist/startup.js +41 -118
  374. package/daemon/dist/startup.js.map +1 -1
  375. package/daemon/docs/reference/agent-spec.md +1 -1
  376. package/daemon/docs/reference/agent-startup-guide.md +84 -0
  377. package/daemon/docs/reference/getting-started.md +135 -28
  378. package/daemon/docs/reference/publishing-a-rig-bundle.md +5 -2
  379. package/daemon/docs/reference/quickstart.md +187 -0
  380. package/daemon/docs/reference/refocus-channel.md +11 -1
  381. package/daemon/docs/reference/rig-spec.md +5 -5
  382. package/daemon/docs/reference/rosters.md +29 -2
  383. package/daemon/docs/reference/slack-app-setup.md +47 -17
  384. package/daemon/docs/reference/whats-new.md +65 -167
  385. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +1 -0
  386. package/daemon/specs/agents/conveyor/builder/agent.yaml +1 -0
  387. package/daemon/specs/agents/conveyor/lead/agent.yaml +1 -0
  388. package/daemon/specs/agents/conveyor/planner/agent.yaml +1 -0
  389. package/daemon/specs/agents/conveyor/reviewer/agent.yaml +1 -0
  390. package/daemon/specs/agents/design/product-designer/agent.yaml +1 -0
  391. package/daemon/specs/agents/development/implementer/agent.yaml +1 -0
  392. package/daemon/specs/agents/development/qa/agent.yaml +1 -0
  393. package/daemon/specs/agents/factory-rsi/dogfood/agent.yaml +1 -0
  394. package/daemon/specs/agents/factory-rsi/release-manager/agent.yaml +1 -0
  395. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +1 -0
  396. package/daemon/specs/agents/product-management/pm/agent.yaml +1 -0
  397. package/daemon/specs/agents/research/analyst/agent.yaml +1 -0
  398. package/daemon/specs/agents/research/synthesizer/agent.yaml +1 -0
  399. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +1 -0
  400. package/dist/build-info.js +3 -3
  401. package/dist/client.d.ts +7 -1
  402. package/dist/client.d.ts.map +1 -1
  403. package/dist/client.js +28 -0
  404. package/dist/client.js.map +1 -1
  405. package/dist/commands/ask.d.ts.map +1 -1
  406. package/dist/commands/ask.js +13 -3
  407. package/dist/commands/ask.js.map +1 -1
  408. package/dist/commands/capture.d.ts.map +1 -1
  409. package/dist/commands/capture.js +14 -0
  410. package/dist/commands/capture.js.map +1 -1
  411. package/dist/commands/chatroom.d.ts.map +1 -1
  412. package/dist/commands/chatroom.js +1 -0
  413. package/dist/commands/chatroom.js.map +1 -1
  414. package/dist/commands/compact.d.ts.map +1 -1
  415. package/dist/commands/compact.js +5 -4
  416. package/dist/commands/compact.js.map +1 -1
  417. package/dist/commands/config.d.ts.map +1 -1
  418. package/dist/commands/config.js +4 -2
  419. package/dist/commands/config.js.map +1 -1
  420. package/dist/commands/doctor.d.ts +3 -0
  421. package/dist/commands/doctor.d.ts.map +1 -1
  422. package/dist/commands/doctor.js +47 -23
  423. package/dist/commands/doctor.js.map +1 -1
  424. package/dist/commands/grow.d.ts.map +1 -1
  425. package/dist/commands/grow.js +24 -7
  426. package/dist/commands/grow.js.map +1 -1
  427. package/dist/commands/provider.d.ts.map +1 -1
  428. package/dist/commands/provider.js +43 -7
  429. package/dist/commands/provider.js.map +1 -1
  430. package/dist/commands/ps.d.ts +2 -0
  431. package/dist/commands/ps.d.ts.map +1 -1
  432. package/dist/commands/ps.js +12 -1
  433. package/dist/commands/ps.js.map +1 -1
  434. package/dist/commands/reconcile-session.d.ts.map +1 -1
  435. package/dist/commands/reconcile-session.js +25 -4
  436. package/dist/commands/reconcile-session.js.map +1 -1
  437. package/dist/commands/remove.d.ts.map +1 -1
  438. package/dist/commands/remove.js +20 -1
  439. package/dist/commands/remove.js.map +1 -1
  440. package/dist/commands/roster.d.ts +2 -1
  441. package/dist/commands/roster.d.ts.map +1 -1
  442. package/dist/commands/roster.js +10 -5
  443. package/dist/commands/roster.js.map +1 -1
  444. package/dist/commands/scope.js +1 -1
  445. package/dist/commands/scope.js.map +1 -1
  446. package/dist/commands/seat.d.ts.map +1 -1
  447. package/dist/commands/seat.js +75 -8
  448. package/dist/commands/seat.js.map +1 -1
  449. package/dist/commands/slack.d.ts.map +1 -1
  450. package/dist/commands/slack.js +14 -1
  451. package/dist/commands/slack.js.map +1 -1
  452. package/dist/commands/ui.d.ts.map +1 -1
  453. package/dist/commands/ui.js +8 -1
  454. package/dist/commands/ui.js.map +1 -1
  455. package/dist/commands/usage.d.ts.map +1 -1
  456. package/dist/commands/usage.js +4 -3
  457. package/dist/commands/usage.js.map +1 -1
  458. package/dist/config-store.d.ts +2 -1
  459. package/dist/config-store.d.ts.map +1 -1
  460. package/dist/config-store.js +5 -0
  461. package/dist/config-store.js.map +1 -1
  462. package/dist/daemon-lifecycle.d.ts.map +1 -1
  463. package/dist/daemon-lifecycle.js +11 -3
  464. package/dist/daemon-lifecycle.js.map +1 -1
  465. package/dist/front-door.d.ts.map +1 -1
  466. package/dist/front-door.js +3 -1
  467. package/dist/front-door.js.map +1 -1
  468. package/dist/lib/model-observation.d.ts +13 -0
  469. package/dist/lib/model-observation.d.ts.map +1 -0
  470. package/dist/lib/model-observation.js +25 -0
  471. package/dist/lib/model-observation.js.map +1 -0
  472. package/dist/local-daemon-owner.d.ts +28 -0
  473. package/dist/local-daemon-owner.d.ts.map +1 -0
  474. package/dist/local-daemon-owner.js +98 -0
  475. package/dist/local-daemon-owner.js.map +1 -0
  476. package/dist/mcp-server.d.ts.map +1 -1
  477. package/dist/mcp-server.js +1 -0
  478. package/dist/mcp-server.js.map +1 -1
  479. package/package.json +1 -1
  480. package/tui/dist/attention/attention-model.js +6 -5
  481. package/tui/dist/attention/attention-model.js.map +1 -1
  482. package/tui/dist/attention/source-continuity.d.ts.map +1 -1
  483. package/tui/dist/attention/source-continuity.js +2 -0
  484. package/tui/dist/attention/source-continuity.js.map +1 -1
  485. package/tui/dist/terminals/open-window.d.ts +11 -1
  486. package/tui/dist/terminals/open-window.d.ts.map +1 -1
  487. package/tui/dist/terminals/open-window.js +47 -2
  488. package/tui/dist/terminals/open-window.js.map +1 -1
  489. package/tui/dist/usage/usage-model.d.ts +2 -0
  490. package/tui/dist/usage/usage-model.d.ts.map +1 -1
  491. package/tui/dist/usage/usage-model.js +38 -3
  492. package/tui/dist/usage/usage-model.js.map +1 -1
  493. package/ui/dist/assets/{index-Cfbtfd9G.js → index-CVgod3Pm.js} +1 -1
  494. package/ui/dist/index.html +1 -1
@@ -301,46 +301,76 @@ decisions, and posts its own replies.
301
301
  it with `host.name`).
302
302
  - **The hub's own channels** are handled on the hub, as before. A channel can be relayed to one
303
303
  machine only, and never the hub's own default channel.
304
+ - **Missed messages:** each machine recovers the channels it owns: the hub its own channels, and
305
+ every other machine its default channel and its channel map's (the hub never recovers a channel
306
+ it relays). See [Reconnect recovery and status](#reconnect-recovery-and-status).
304
307
  - **Not covered yet:** `rig slack verify` on the hub doesn't check the app's membership in relayed
305
- channels, and missed-message recovery covers the hub's default channel only.
308
+ channels.
306
309
 
307
310
  ## Reconnect recovery and status
308
311
 
309
312
  The daemon scans available top-level messages and replies broadcast with **Also send to
310
- channel** in the configured default channel after a Socket Mode connection and on its
311
- existing five-minute retry cadence. Broadcast replies keep their thread's routing. Recovered
312
- tasks say **Recovered after a gap** and show the original Slack posting time.
313
+ channel** in the channels this machine owns: its default channel and its channel map's, except a
314
+ channel it relays to another machine. It also scans replies in the threads it tracks in those
315
+ channels whose root was posted, or which closed, within the last seven days. A root's age is its
316
+ Slack posting time, so rebuilding the thread map doesn't make an old thread eligible again. An old
317
+ thread that closed within seven days is scanned from its root, so this isn't a seven-day history
318
+ limit. Missed replies in older open threads aren't caught up; live delivery is unchanged.
319
+
320
+ The hub scans after a Socket Mode connection and on its existing five-minute retry cadence. A
321
+ machine the hub relays to scans every five minutes, and recovers only the channels it owns that the
322
+ hub has relayed it an event for. Each such channel's coverage starts when its first relayed event
323
+ arrives, and is kept across restarts, so a restart needs no new event. A channel the machine no
324
+ longer owns isn't scanned, and a machine nothing is relayed to never reads its channels' history.
325
+
326
+ Broadcast replies keep their thread's routing. Recovered tasks say **Recovered after a gap** and
327
+ show the original Slack posting time. A recovered thread reply lands as a reply in its thread,
328
+ marked late, and never answers a decision, even one still open: the seat reads it and decides. A
329
+ recovered broadcast reply does the same in every channel except the default channel of the machine
330
+ that holds the Socket Mode connection, where it behaves as before; a relayed machine's default
331
+ channel counts as newly covered. A dead-lettered recovered reply keeps that mark when it's retried.
313
332
  They use the same sender admission, routing, attachment handling, fixed identity
314
333
  and dead-letter path as live messages. A durable dead letter is custody of a
315
334
  failed delivery, not successful delivery.
316
335
 
317
336
  Recovery keeps a per-channel checkpoint across reconnects, restarts and channel
318
- switches. On upgrade it initializes once from the newest retained accepted
319
- channel landing; without such evidence it starts at feature adoption. **Older
320
- history is unknown.** New live messages never move the recovery checkpoint. A
337
+ switches. For the hub's default channel it initializes once from the newest retained accepted
338
+ channel landing; without such evidence it starts at feature adoption. Every other channel starts
339
+ when recovery first adopts it. **Older history is unknown.** A tracked thread's checkpoint starts
340
+ at its root, so its first scan reads the whole thread; replies that already landed are recognized
341
+ and not delivered twice. New live messages never move the recovery checkpoint. A
321
342
  partial scan resumes its saved interval; only an exhausted interval advances the
322
- covered boundary. Each new interval ends five seconds before the local clock to
343
+ covered boundary. The checkpoint moves past a message once it landed, was a duplicate, was
344
+ dead-lettered, was refused because its sender isn't admitted, or was skipped as a kind inbound
345
+ doesn't take (a bot's post, an edit or join, an empty message). Each new interval ends five seconds before the local clock to
323
346
  allow recent messages to become visible; larger clock skew or visibility lag is
324
347
  not covered by that margin. A corrupt or unreadable checkpoint leaves recovery unavailable
325
348
  and preserves the existing file; live inbound continues.
326
349
 
327
- Each pass admits at most four pages, 100 entries and 15 seconds of work, with a
328
- five-second history-request ceiling. Work already started on a message, such as
350
+ Each pass admits at most four history calls, 100 entries and 15 seconds of work, with a
351
+ five-second request ceiling. Channels and threads take turns within that one budget, so with many
352
+ tracked threads each thread is scanned every few passes; `rig slack status` shows how far behind
353
+ the oldest waiting thread is. Work already started on a message, such as
329
354
  an attachment transfer, is not cancelled by these limits or by a stop, and a new
330
- pass waits for it to finish. Rate limits retain Slack's Retry-After across restart.
355
+ pass waits for it to finish. Rate limits retain Slack's Retry-After across restart, and hold back
356
+ only the method Slack limited (channel history or thread replies).
331
357
  Transport and server failures use a five-second backoff unless Slack supplies Retry-After.
332
358
  When Slack reports a plan history limit, recovery still lands the available page
333
359
  and advances normally, retaining an older-history limitation in status across restarts.
334
360
  Missing bot credentials, history scope, membership, retention limits and API
335
- failures appear as recovery limitations. No additional scope is required to keep
336
- live delivery working. Non-broadcast thread replies and other channels remain outside
337
- this recovery scope; global chronological order is not promised. This change does not
338
- replay intervals already checkpointed before broadcast-reply recovery was added.
361
+ failures appear as recovery limitations. A tracked thread Slack can't find stays incomplete in
362
+ status, with no further call, until its thread mapping changes or the daemon restarts or rewires
363
+ the connector; that isn't proof the thread was deleted. No additional scope is required to keep
364
+ live delivery working. Threads nobody tracks, older open threads, threads closed more than seven
365
+ days ago and other channels remain outside this recovery scope; global chronological order is
366
+ not promised. This change does not replay intervals already checkpointed before broadcast-reply
367
+ recovery was added.
339
368
 
340
369
  `rig slack status` retains local configuration checks and adds a bounded daemon
341
- snapshot: socket state/generation, last event, recovery interval/state/reason,
370
+ snapshot: socket state/generation, last event, recovery interval/state/reason for each
371
+ channel, a thread line (tracked, scanned, waiting and why any are backing off or incomplete),
342
372
  retry time and accepted/dead-lettered recovery counts since the connector last
343
- started (they reset when it is enabled or disabled, and when the daemon restarts).
373
+ started, including threads that have since left the window (they reset when it is enabled or disabled, and when the daemon restarts).
344
374
  It also reports the durable dead-letter backlog: the retained records for inbound messages,
345
375
  reactions and click answers that await retry, counted from both dead-letter files so the number
346
376
  survives a restart, and shown as unknown with a reason (and no count) when a file cannot be read.
@@ -1,189 +1,87 @@
1
- # What changed in OpenRig 0.6.12
1
+ # What changed in OpenRig 0.6.14
2
2
 
3
- This note is for an agent on an install that was just upgraded to 0.6.12. It lists only what behaves differently from
4
- 0.6.11 and what to do about it. For everything OpenRig can do, read the capability map:
3
+ This note is for an agent on an install that was just upgraded to 0.6.14. It lists only what behaves differently from
4
+ 0.6.13 and what to do about it. For everything OpenRig can do, read the capability map:
5
5
  `rig context get onboarding-width/public-what-you-can-do.md`. Each release replaces this file, so
6
6
  `rig context get reference/whats-new.md` describes the installed version once the upgraded daemon is running. Without
7
7
  a running daemon, read `$OPENRIG_HOME/reference/whats-new.md`. The daemon refreshes that copy when it starts, so right
8
- after an upgrade it can still hold the previous version's note.
8
+ after an upgrade it can still hold the previous version's note. Coming from 0.6.12 or earlier, also read 0.6.13's
9
+ release notes: its changes and migration `117` arrive with this upgrade.
9
10
 
10
11
  ## After the upgrade
11
12
 
12
- - **Restart the daemon** (`rig daemon stop`, then `rig daemon start`). Twelve migrations run on the first start,
13
- whatever you use: `100`, `104`, `105`, `107` to `115`. They add columns and tables for the typing guard's modes, a
14
- seat's saved effort, Claude's cost estimate, Pi usage, mode and posture categories, workflow scope, seat environment
15
- values, the Codex `--no-daemon` record and `sessions.agent_app`; build two indexes for recent queue activity (about
16
- 10 to 12 MB on a long-running install); and rebuild the Slack thread map. There are no migrations `102` or `106`.
17
- - **Claude seats now run the openrig-core plugin's hooks.** The bundled plugin goes from 0.1.9 to 0.1.13. A Claude
18
- seat whose plugins include `openrig-core` (every shipped agent spec selects it) starts with `CLAUDE_CODE_PLUGIN_DIRS`
19
- pointing at OpenRig's copy, so the activity relay, the compaction save and restore hooks and refocus actually run. It
20
- needs Claude Code 2.1.280 or later, which nothing checks. A running seat picks it up at its next launch, restore or
21
- handover. The refocus hook may take up to 60 seconds, so a hung refocus can hold a prompt that long.
22
- - **Six new settings, all off except one:** `output.whoami_peers` (8, used only while `output.compact` is on),
23
- `bundle.services_enabled`, `provider.subscription_moves`, `usage.pi_cost_facts`, `usage.pi_openrouter_charge` and
24
- `transport.verify_input_box`. See "Off by default" below.
13
+ - **Restart the daemon** (`rig daemon stop`, then `rig daemon start`). No migration runs. One setting is added,
14
+ `transport.local_user_guard`, off by default (see below).
15
+ - **The bundled openrig-core plugin goes from 0.1.14 to 0.1.15.** Installed copies are replaced and carry refocus's own
16
+ notes lookup.
25
17
 
26
18
  ## Output that changed shape
27
19
 
28
- - **Exit codes:** eleven client-fixable `rig queue update` refusals now answer HTTP 400 and exit 1 instead of 500 and
29
- exit 2 (`blocker_not_found`, `blocker_not_live` and `blocker_malformed` still exit 2). `rig ask` exits 1 for an
30
- unknown or ambiguous rig. `rig compact` exits 1 (was 2) for `pane_unknown_protected`, and its route answers 409 (was
31
- 502). Over the shared transport, a write that throws without a code makes `rig send` exit 1 with HTTP 409 instead of 2
32
- with 500, and a guarded send whose text was written returns `sent: true` with `inputPhase: "written"`.
33
- - **`rig compact` and `rig compact --state` add a `compact` result:** `submitted_unconfirmed` (shown as "submitted,
34
- unconfirmed"), `uncertain` or `not_sent`. "Submitted" means `/compact` and Enter reached the seat, not that compaction
35
- ran.
36
- - **`rig capture --lines N --json`** adds `activity: "unknown"` and `activityNote` when lines were cut.
37
- - **`rig start --last --json`** carries `keptDown` (always) and `warnings` (`seat_status_unreadable`).
38
- - **`rig queue show <id> --full`** on a closed row adds `closingTransition`; plain `rig queue show` on such a row reads
39
- `readView.complete: false` and lists it in `omittedFields`. `rig queue show` returns `resolution` when a close stored
40
- one.
41
- - **After `rig down`,** `rig ps`, the TUI and the rig summary read the rig `stopped`, not recoverable, and
42
- `hasLiveAgents` can read `false`.
43
- - **`rig seat status`** reads `Typing guard: on (hold)` for hold, and its JSON's `desired` and `effective` mean hold only;
44
- `desiredMode` and `effectiveMode` give the mode.
45
- - **`rig usage top`** measures tokens and rates within one conversation and one window, so figures can drop and more
46
- seats read `insufficient_samples`.
47
- - **The execution view** binds a row to a mission by its exact `mission:` tag first; `q1_lanes[].waiting` and
48
- `folded.merge_report` are new.
49
- - **Smaller:** `rig create --json` carries `detail` on failure; `rig status --json` is new; `rig mcp serve` lists 23 tools
50
- (five queue tools added); a JSON body of `null` gets 400 `invalid_json`; `GET /api/events` takes `?replay=`; a Slack
51
- seat post's sender line ends `on <host id>`; `rig ps --nodes` `resumeCommand` can carry `--no-daemon`.
20
+ - **`rig ask --wake`** on a seat whose runtime isn't Claude or Codex prints `Wake runtime '<runtime>' … is not
21
+ supported. Supported runtimes are claude and codex.` A `member@rig` target exits 2 (the daemon refuses it); a raw-id
22
+ `--runtime` value exits 1 (the CLI refuses it). No wake starts.
23
+ - **`/healthz`** gains `euid`, the daemon's effective user ID, beside `pid`, whether or not the Mac check is on.
24
+ - **`rig compact`** (manual) waits up to 240 seconds for its result, up from 180, because preparation now has 180
25
+ seconds, up from 120.
52
26
 
53
27
  ## Seats and restore
54
28
 
55
- - **`rig start --last` leaves down a rig stopped on purpose** (`rig down` or `rig seat stop`) and prints how to bring it
56
- back: `rig start --rigs <rig>`, or `rig up '<name>' --existing`.
57
- - **An ordinary terminal seat relaunches fresh on restore** and re-runs its startup actions; don't answer `--fresh` for
58
- it. A missing required startup file for such a seat blocks the whole restore before anything launches.
59
- - **Restore stops a seat whose current runtime differs from its snapshot's,** before launching it; `--fresh` doesn't
60
- bypass it. Restore from a snapshot taken with the seat's current runtime.
61
- - **A slow Claude restore ends `attention_required`, not failed:** "Claude resume did not finish within Ns; Claude may
62
- still be starting, so the launch was kept". Look at the pane, and once Claude is up run `rig seat clear-attention`.
63
- Each such seat can add up to about the readiness timeout, one after another, so `rig up` can pass its 120-second
64
- wait while the daemon keeps working: check `rig ps` before running it again.
65
- - **"Returned to a shell" now means the process tree shows an idle shell.** "The pane shows a shell that is not a proven
66
- idle shell; a launch script may still be starting …" means the seat may still be coming up. A Pi or OMP seat at a
67
- bare shell reads `attention_required`.
68
- - **A Codex fork whose new conversation ID arrives late** stops at `attention_required` with its startup context kept;
69
- let it finish starting, then run `rig seat continue <seat>`. A handover to a Codex fork can complete with `Fork id:
70
- PENDING`.
71
- - **A seat whose startup failed for a recoverable reason** becomes ready after a successful send or capture.
72
- - **`rig launch` takes a rig's name as well as its ID;** a name two active rigs share stops with `rig_ambiguous`.
73
- - **`rig add`, single-seat `rig launch` and `rig launch --seats` wait up to 120 seconds.** A timeout still isn't a
74
- rollback.
75
- - **A runtime `--version` check gives up after 30 seconds.** `rig bootstrap` blocks on a runtime that's installed but
76
- fails its check, reported apart from one that's missing; `rig up`'s preflight fails a Claude, Codex or OMP check that
77
- doesn't answer (a warning for Pi).
78
- - **Claude login detection:** only a current refusal reads `login_required`, not the "Not logged in" footer alone.
79
- - **Model pins:** `fable` now names `claude-fable-5-1`, a trailing `[1m]` is set aside, and pinned Pi seats are checked
80
- (a `:high`-style thinking suffix is accepted).
81
- - **A custom permission policy saved with CRLF line endings** now takes effect at the next launch or restore, instead
82
- of the advisory floor.
83
- - **`rig scope mission create`** writes `status: planned`; set it `active` to count it in `rig proof show --project`.
84
- With `--workspace <project>`, missions go under the project's declared `missions.root`.
85
-
86
- ## Sends, wakes and the queue
87
-
88
- - **A send to a pane in tmux copy or view mode** leaves the mode and delivers; `pane_in_mode` means the pane couldn't
89
- leave its mode. Leave it in that pane, then send again.
90
- - **`rig send --dangerously-interact` types exactly what you give it.** Enter is added only for a complete answer
91
- staged in a recognised Claude Code or Codex input box; anywhere else, put CR in the payload. With `--verify` it reads
92
- unchecked.
93
- - **A Codex seat reads "needs you" only when a real prompt is visible;** a pending permission request reads
94
- `permission_request_pending` first, and an unreadable pane gets `permission_request_unverified` after a grace.
95
- Codex's `»` prompt is recognised.
96
- - **Managed `/compact` is short enough to run and is sent only to an idle seat.** Confirm compaction by effect: the
97
- restore request, or the drop in context.
98
- - **A held-back (`retained`) wake doesn't use up a one-shot park timer;** it's tried again at the interval. You don't
99
- need to re-arm after one.
100
- - **A retired watchdog doesn't deliver a late wake.** A row parked on its owner's own repeating reminder reads
101
- `servedByOwnReminder` in `rig parked` and draws no extra parked-owner wake.
102
- - **`rig queue update <id> --summary "<text>"`** alone corrects a row's subject. Close with **`--resolution
103
- "<outcome>"`** to store the outcome on the row.
104
- - **`rig remove` and `rig shrink`** keep a seat that gets work while stopping (409, `retained: true`) unless
105
- `--fallback` takes it. A stale `rig unclaim` is refused with `session_not_current`.
29
+ - **A seat that refuses every send with "Managed pane identity unavailable or changed; no input written."** because an
30
+ older OpenRig never recorded its tmux pane can be repaired in place: `rig reconcile-session <seat>
31
+ --repair-missing-pane --no-launch`. It fills only the missing pane and keeps the session, resume token and occupant
32
+ generation; the result names the same session, with continuity unverified. It refuses, writing nothing, with
33
+ `repair_not_applicable` (the binding already has a pane), `pane_ambiguous` (more than one pane or window),
34
+ `pane_missing` (no PID), `guard_target_changed`, `guard_operation_in_progress`, `typing_guard_enabled` or
35
+ `repair_timed_out`. Against an older daemon it reads `repair_missing_pane_unsupported` and never adopts. It records no
36
+ event.
37
+ - **A manual `rig compact` whose preparation stops at an ordinary approval** keeps waiting within its deadline instead
38
+ of giving up. OpenRig never answers the approval: the person, or an agent allowed to, answers it.
39
+ - **Refocus resolves each ancestor's notes file itself** (`NOTES.md`, then `MISSION_NOTES.md`) instead of starting `rig
40
+ scope resolve-notes` per ancestor. Its output, budgets and settings are unchanged.
106
41
 
107
42
  ## New things you can do
108
43
 
109
- - **Set one seat's reasoning effort:** `rig seat set-effort <seat> --effort <level> --reason "<why>"` (or `--clear`); it
110
- applies at the next managed launch, not to the running process. Check it with `rig seat effort <seat>`.
111
- - **Change a seat's stored permission policy:** `rig policy apply <policy> --seat <seat> --reason "<why>"`. `rig policy
112
- current` and plain `rig ps` don't show it; `rig seat status` does.
113
- - **Give seats environment values:** `env:` on the rig or a member in `rig.yaml`, or `rig up <spec> --env KEY=VALUE` for
114
- one launch. Never put secrets there.
115
- - **Scope a workflow run:** `--project`, `--mission`, `--slice` and `--tags` on `rig workflow instantiate` and `run`;
116
- write a target as `member@{rig}` to follow the bound rig.
117
- - **Read cost:** `rig usage cost [--seat <session>] [--json]`. A missing figure is never $0, and Claude's figure is an
118
- estimate, not an invoice.
119
- - **Hand work over without a shell:** `rig mcp serve` with `OPENRIG_SESSION_NAME` set gives `rig_queue_create`,
120
- `rig_queue_show`, `rig_queue_list`, `rig_queue_claim` and `rig_queue_update`. Nothing wakes that agent.
121
- - **`rig status --json`:** treat `daemon.reachable: null` as unconfirmed, not down.
122
- - OpenRig 0.6.12 adds `rig community-harness list` for installed community-harness presets, showing their maintainer
123
- and declared limits. These harnesses are not tested by OpenRig. Support is launch-only: no resume or fork, no
124
- resource projection or startup-file delivery, and identity remains unconfirmed. A quiet screen is not proof that the
125
- seat is idle. (#1392, #1518)
126
- - **Guidance:** the `rigs` skill offers to join the team before the first operator message, and offers Codex users one
127
- removable rules file; `delegating-work` says to brief a peer by the model `rig ps --nodes --json` shows; the operator
128
- reads `$OPENRIG_HOME/reference/keeping-a-watch.md` when asked to watch or remind, including a low-allowance warning.
129
- - User-visible text says "harness" for the agent software around a model, and "community harness" for one an outside
130
- contributor maintains; `docs/reference/topology-naming.md` defines the terms. (#1506)
44
+ - **Repair a missing pane without adopting:** `rig reconcile-session <seat> --repair-missing-pane --no-launch`.
45
+ - **Point a person at a page written for them:** `docs/reference/quickstart.md` ("Getting started") is the first-use
46
+ page, with a glossary. `docs/reference/getting-started.md` is now titled "OpenRig setup reference" and opens with what
47
+ the agent doing the setup needs; its sections and anchors are unchanged, so `rig context get
48
+ reference/getting-started.md#…` lookups still work.
131
49
 
132
50
  ## Off by default
133
51
 
134
- - **`output.compact`** now also shortens `rig queue show` and `rig queue transitions` (`--full` for everything) and
135
- bounds `rig whoami --json` peers to `output.whoami_peers` (`--all-peers` lists all).
136
- - **`provider.usage_windows`** now also shows Claude's windows, each seat's configured account and, with
137
- `--all-hosts` or `--hosts`, every registered machine's windows. A Claude account's current availability always reads
138
- `unknown`: don't tell a person an account has room from a seat's reading.
139
- - **`usage.pi_cost_facts`** and **`usage.pi_openrouter_charge`** take effect when a Pi seat next launches or resumes, not
140
- at once; what was recorded stays visible after they're turned off.
141
- - **`provider.subscription_moves`** enables `rig provider moves`. The `openrig-user` skill's section for it mentions apps
142
- that don't ship in this release.
143
- - **`bundle.services_enabled`**, **`transport.verify_input_box`**, the per-seat draft-aware typing guard (`rig seat
144
- set-typing-guard <seat> --mode draft-aware`), `rig bundle create --include-login-files`, `OPENRIG_TMUX_CONTROL=1`
145
- and `OPENRIG_REFOCUS_BUDGET_MS` (4500 to 52000) each act only when chosen.
146
- - **The daemon runs tmux without `/bin/sh`** on Linux and macOS; `OPENRIG_TMUX_SHELL=1` at daemon start keeps the old
147
- path.
52
+ - **A Mac local-user check.** On a Mac shared by several accounts, `rig config set transport.local_user_guard true` (or
53
+ `OPENRIG_TRANSPORT_LOCAL_USER_GUARD=true` in the CLI's environment) makes the CLI refuse a local daemon another account
54
+ runs. It compares the PID and effective UID the daemon reports in `/healthz` with two `ps` readings and a second
55
+ health response, and refuses only when they agree on another account; the refusal names `rig daemon start --port
56
+ <unused-port>`. Missing, disagreeing or timed-out evidence, and an older daemon without `euid`, keep today's
57
+ behaviour. No daemon restart is needed. Explicit `OPENRIG_URL` targets and registered remote hosts keep their routing,
58
+ later browser or TUI connections aren't checked, and with it on `sudo rig …` against a user-owned daemon refuses. It
59
+ isn't authentication: it trusts the daemon's own report. Details: `rig context get
60
+ reference/getting-started.md#optional-mac-local-user-check`.
148
61
 
149
62
  ## What to stop doing
150
63
 
151
- - **Stop looking up a rig's ID before `rig launch`;** the name works.
152
- - **Stop expecting `rig start --last` to bring back a rig taken down on purpose;** use `rig start --rigs <rig>` or `rig
153
- up '<name>' --existing`.
154
- - **Stop counting on `--dangerously-interact` to press Enter;** put CR in the payload.
155
- - **Stop taking the preparation prompt's delivery as the compaction's result;** read the `compact` result and confirm by
156
- effect.
157
- - **Stop answering `--fresh` for an ordinary terminal seat on every restore.**
158
- - **Stop branching on exit 2 for a fixable `rig queue update` refusal;** it's exit 1.
159
- - **Stop recreating a seat, or editing the database, to change its permission policy;** use `rig policy apply --seat`.
160
-
161
- ## Known gaps in 0.6.12
162
-
163
- - **Managed compaction's 600-character budget** rests on one comparison on Claude Code 2.1.282, and nothing confirms
164
- compaction ran.
165
- - **The plugin hooks haven't run through this path in a real session,** and two hook runs for one seat aren't
166
- serialized: a post-compaction record can be lost or a refocus delivered twice.
167
- - **One Slack app across machines was simulated in one process,** never run on two real machines. Relayed events are
168
- trusted from the calling daemon, and `rig slack verify` on the hub doesn't check relayed channels.
169
- - **`env:` values aren't secret,** and members added with `rig grow` can't carry a member-level `env:`.
170
- - **`rig up --env` is not forwarded for flat-node specs or v1 bundles,** although the launch may succeed. Do not rely on
171
- the flag for those formats in this release.
172
- - **The draft-aware guard waits for idle inside the seat's delivery lease,** which can delay other work for that seat.
173
- - **With `bundle.services_enabled` on, `rig up <file>.rigbundle` installs into the current folder** when no `--target` is
174
- given.
175
- - **`rig seat restart --keep-conversation` supports Linux only,** and hasn't been re-run on 0.6.12.
176
- - **The rig status API can call a running rig `blocked`** because of one seat that isn't running: it folds a restore
177
- forecast into current status.
178
- - **A Codex seat can keep reading as at its usage limit** in a constructed screen case not seen in a real session.
179
- - **After `rig scope slice create` says it couldn't verify membership, the slice was kept.** Check `mission.yaml` before
180
- creating it again.
181
- - **A Claude Code seat whose permission request was approved automatically can still read "needs input";** the Codex
182
- case is fixed.
183
- - **Codex team seats aren't asked before lifecycle commands yet.**
184
- - **The send gate trusts the most recently recorded hook;** `rig capture` shows the real screen.
185
- - **A launched team still writes into its working folder;** the operator says what changes before you agree.
186
- - **After a restart, `rig status` shows `Kernel: skipped` whatever the kernel seats' state.** Read them with
187
- `rig ps --nodes --rig kernel --full`.
188
- - **`rig tui --shared` still attaches on the default tmux server,** so use `rig tui` when the daemon runs on a non-default
189
- tmux socket.
64
+ - **Don't use plain `rig reconcile-session` to fix a launched seat's missing pane.** It adopts the seat into a new
65
+ session with no resume token; use `--repair-missing-pane --no-launch`.
66
+ - **Don't abandon a manual `rig compact` because preparation hit an approval.** Answer it, or ask the person to, within
67
+ the 180 seconds.
68
+ - **Don't try `rig ask --wake` on a Pi or custom seat.** Use `rig ask` without `--wake` to search what it said, or send
69
+ to the live seat.
70
+
71
+ ## Known gaps in 0.6.14
72
+
73
+ - **The compaction and refocus fixes** are tested without a native compaction or a loaded machine: confirm a
74
+ compaction by its restore request or the drop in context, and check that a restored seat is really working.
75
+ - **The pane repair refuses while typing protection is on.** The compaction refusal for a protected seat whose pane
76
+ isn't recorded still suggests plain `rig reconcile-session <seat> --no-launch`, which adopts. For a running launched
77
+ seat whose pane was never recorded, use `rig reconcile-session <seat> --repair-missing-pane --no-launch` instead;
78
+ it needs typing protection off, so turn protection off only if the person agrees. A delivery held from before the
79
+ repair can still refuse.
80
+ - **`rig context get reference/quickstart.md` doesn't resolve:** the page isn't in the reference context pack. Read it
81
+ from the package's `docs/reference/` or the repository.
82
+ - **On a Mac with more than one user account,** a second user's `rig` commands can reach the first user's daemon on
83
+ its default port (7433) unless `transport.local_user_guard` is on. The check trusts the daemon's own report, identity
84
+ can change between the check and the connection, and direct HTTP clients aren't covered.
85
+ - **0.6.13's other known gaps still apply:** a fresh in-place Claude handover can report ready early when the screen,
86
+ pane or process can't be read or proven; one Slack app across machines hasn't run on two real machines, and Slack
87
+ recovery doesn't catch up older open threads; `rig seat set-cwd` checks the new folder once.
@@ -28,6 +28,7 @@ resources:
28
28
  startup:
29
29
  files:
30
30
  - path: guidance/role.md
31
+ orientation: role
31
32
  delivery_hint: send_text
32
33
  required: true
33
34
  - path: startup/context.md
@@ -27,6 +27,7 @@ resources:
27
27
  startup:
28
28
  files:
29
29
  - path: guidance/role.md
30
+ orientation: role
30
31
  delivery_hint: send_text
31
32
  required: true
32
33
  - path: startup/context.md
@@ -27,6 +27,7 @@ resources:
27
27
  startup:
28
28
  files:
29
29
  - path: guidance/role.md
30
+ orientation: role
30
31
  delivery_hint: send_text
31
32
  required: true
32
33
  - path: startup/context.md
@@ -27,6 +27,7 @@ resources:
27
27
  startup:
28
28
  files:
29
29
  - path: guidance/role.md
30
+ orientation: role
30
31
  delivery_hint: send_text
31
32
  required: true
32
33
  - path: startup/context.md
@@ -27,6 +27,7 @@ resources:
27
27
  startup:
28
28
  files:
29
29
  - path: guidance/role.md
30
+ orientation: role
30
31
  delivery_hint: send_text
31
32
  required: true
32
33
  - path: startup/context.md
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions:
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -47,6 +47,7 @@ resources:
47
47
  startup:
48
48
  files:
49
49
  - path: guidance/role.md
50
+ orientation: role
50
51
  delivery_hint: send_text
51
52
  required: true
52
53
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -25,6 +25,7 @@ resources:
25
25
  startup:
26
26
  files:
27
27
  - path: guidance/role.md
28
+ orientation: role
28
29
  delivery_hint: send_text
29
30
  required: true
30
31
  actions: []
@@ -1,9 +1,9 @@
1
1
  // GENERATED by scripts/build-package.sh — the packaged build-identity stamp.
2
2
  export const BUILD_INFO = {
3
- semver: "0.6.12",
4
- commit: "9e5382dd21f90158e95f6ce5bd251f22f5dc6391",
3
+ semver: "0.6.14",
4
+ commit: "df1c1517f03a403fb468523be1c563d489209a1d",
5
5
  dirty: false,
6
- builtAt: "2026-10-19T20:05:45Z",
6
+ builtAt: "2026-10-21T05:06:10Z",
7
7
  };
8
8
  export function stampFields(info = BUILD_INFO) {
9
9
  if (!info.commit) return {};
package/dist/client.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import { type LocalDaemonOwner } from "./local-daemon-owner.js";
2
+ export { ForeignLocalDaemonError } from "./local-daemon-owner.js";
1
3
  export declare function terminalAuthHeaders(): Record<string, string>;
2
4
  /** The header carrying the caller's seat identity, derived ONCE at the transport chokepoint. */
3
5
  export declare const SENDER_IDENTITY_HEADER = "X-OpenRig-Session";
@@ -59,6 +61,7 @@ interface DaemonRequestOptions {
59
61
  headers?: Record<string, string>;
60
62
  }
61
63
  interface DaemonClientOptions {
64
+ ownerProbe?: (baseUrl: string, timeoutMs?: number) => Promise<LocalDaemonOwner>;
62
65
  fetchImpl?: typeof fetch;
63
66
  timeoutMs?: number;
64
67
  }
@@ -66,6 +69,7 @@ export declare class DaemonClient {
66
69
  readonly baseUrl: string;
67
70
  private fetchImpl;
68
71
  private timeoutMs;
72
+ private ownerProbe;
69
73
  /** Set by remoteDaemonClient; absent origin is labelled explicitly on remote requests. */
70
74
  originSelfHostId?: string;
71
75
  remoteTarget: boolean;
@@ -73,6 +77,9 @@ export declare class DaemonClient {
73
77
  private originUnknown;
74
78
  private identityHeaders;
75
79
  constructor(baseUrl?: string, options?: DaemonClientOptions);
80
+ /** Shared with raw CLI data readers. Constructor URLs alone do not establish explicit intent. */
81
+ localOwnerCheckEnabled(): boolean;
82
+ assertLocalOwner(timeoutMs?: number): Promise<void>;
76
83
  get<T = unknown>(path: string, options?: DaemonRequestOptions): Promise<DaemonResponse<T>>;
77
84
  getText(path: string, options?: DaemonRequestOptions): Promise<DaemonResponse<string>>;
78
85
  post<T = unknown>(path: string, body?: unknown, options?: DaemonRequestOptions): Promise<DaemonResponse<T>>;
@@ -84,5 +91,4 @@ export declare class DaemonClient {
84
91
  private requestJson;
85
92
  private requestText;
86
93
  }
87
- export {};
88
94
  //# sourceMappingURL=client.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}