@openrig/cli 0.6.8 → 0.6.10

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 (480) hide show
  1. package/README.md +2 -2
  2. package/daemon/assets/onboarding/02-self-and-competent-action.md +4 -3
  3. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  4. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  5. package/daemon/assets/plugins/openrig-core/hooks/scripts/activity-relay.cjs +42 -2
  6. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +41 -2
  7. package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +12 -4
  8. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +7 -1
  9. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +218 -7
  10. package/daemon/assets/skills/rigs/SKILL.md +6 -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 +51 -16
  14. package/daemon/context-packs/reference/getting-started.md +10 -6
  15. package/daemon/context-packs/reference/manifest.yaml +1 -1
  16. package/daemon/context-packs/reference/whats-new.md +145 -74
  17. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  18. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  19. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  20. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  21. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  22. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  23. package/daemon/context-packs/skills/core/cross-host-rig-commands/SKILL.md +1 -0
  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/SKILL.md +12 -4
  27. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  31. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/SKILL.md +2 -2
  39. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/openrig-user/SKILL.md +7 -1
  47. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  69. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +218 -7
  70. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  74. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  75. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  76. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  77. package/daemon/dist/adapters/claude-code-adapter.js +16 -7
  78. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  79. package/daemon/dist/adapters/claude-resume-launch.d.ts +4 -0
  80. package/daemon/dist/adapters/claude-resume-launch.d.ts.map +1 -0
  81. package/daemon/dist/adapters/claude-resume-launch.js +13 -0
  82. package/daemon/dist/adapters/claude-resume-launch.js.map +1 -0
  83. package/daemon/dist/adapters/claude-resume.d.ts +2 -1
  84. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  85. package/daemon/dist/adapters/claude-resume.js +9 -4
  86. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  87. package/daemon/dist/adapters/tmux-server.d.ts +15 -0
  88. package/daemon/dist/adapters/tmux-server.d.ts.map +1 -0
  89. package/daemon/dist/adapters/tmux-server.js +58 -0
  90. package/daemon/dist/adapters/tmux-server.js.map +1 -0
  91. package/daemon/dist/adapters/tmux.d.ts +3 -1
  92. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  93. package/daemon/dist/adapters/tmux.js +4 -2
  94. package/daemon/dist/adapters/tmux.js.map +1 -1
  95. package/daemon/dist/build-info.js +3 -3
  96. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  97. package/daemon/dist/db/all-migrations.js +6 -0
  98. package/daemon/dist/db/all-migrations.js.map +1 -1
  99. package/daemon/dist/db/migrations/098_queue_transitions_qitem_id_order.d.ts +3 -0
  100. package/daemon/dist/db/migrations/098_queue_transitions_qitem_id_order.d.ts.map +1 -0
  101. package/daemon/dist/db/migrations/098_queue_transitions_qitem_id_order.js +12 -0
  102. package/daemon/dist/db/migrations/098_queue_transitions_qitem_id_order.js.map +1 -0
  103. package/daemon/dist/db/migrations/099_queue_items_recovery_tags.d.ts +3 -0
  104. package/daemon/dist/db/migrations/099_queue_items_recovery_tags.d.ts.map +1 -0
  105. package/daemon/dist/db/migrations/099_queue_items_recovery_tags.js +19 -0
  106. package/daemon/dist/db/migrations/099_queue_items_recovery_tags.js.map +1 -0
  107. package/daemon/dist/db/migrations/101_claude_resume_rotation.d.ts +3 -0
  108. package/daemon/dist/db/migrations/101_claude_resume_rotation.d.ts.map +1 -0
  109. package/daemon/dist/db/migrations/101_claude_resume_rotation.js +19 -0
  110. package/daemon/dist/db/migrations/101_claude_resume_rotation.js.map +1 -0
  111. package/daemon/dist/domain/agent-activity-store.js +3 -0
  112. package/daemon/dist/domain/agent-activity-store.js.map +1 -1
  113. package/daemon/dist/domain/bootstrap-repository.js +1 -1
  114. package/daemon/dist/domain/bootstrap-repository.js.map +1 -1
  115. package/daemon/dist/domain/chat-repository.d.ts +3 -0
  116. package/daemon/dist/domain/chat-repository.d.ts.map +1 -1
  117. package/daemon/dist/domain/chat-repository.js +15 -4
  118. package/daemon/dist/domain/chat-repository.js.map +1 -1
  119. package/daemon/dist/domain/claude-managed-launch.d.ts +1 -1
  120. package/daemon/dist/domain/claude-managed-launch.d.ts.map +1 -1
  121. package/daemon/dist/domain/claude-managed-launch.js +3 -2
  122. package/daemon/dist/domain/claude-managed-launch.js.map +1 -1
  123. package/daemon/dist/domain/cmux-layout-service.d.ts.map +1 -1
  124. package/daemon/dist/domain/cmux-layout-service.js +2 -1
  125. package/daemon/dist/domain/cmux-layout-service.js.map +1 -1
  126. package/daemon/dist/domain/codex-git-add-dirs.js +1 -1
  127. package/daemon/dist/domain/codex-git-add-dirs.js.map +1 -1
  128. package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
  129. package/daemon/dist/domain/context-usage-store.js +6 -1
  130. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  131. package/daemon/dist/domain/crash-cart-conductor.d.ts.map +1 -1
  132. package/daemon/dist/domain/crash-cart-conductor.js +3 -1
  133. package/daemon/dist/domain/crash-cart-conductor.js.map +1 -1
  134. package/daemon/dist/domain/current-work.d.ts +74 -0
  135. package/daemon/dist/domain/current-work.d.ts.map +1 -1
  136. package/daemon/dist/domain/current-work.js +165 -0
  137. package/daemon/dist/domain/current-work.js.map +1 -1
  138. package/daemon/dist/domain/files/file-read.d.ts.map +1 -1
  139. package/daemon/dist/domain/files/file-read.js +11 -3
  140. package/daemon/dist/domain/files/file-read.js.map +1 -1
  141. package/daemon/dist/domain/gateway/connections-projection.d.ts +3 -1
  142. package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
  143. package/daemon/dist/domain/gateway/connections-projection.js +3 -1
  144. package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
  145. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +3 -1
  146. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
  147. package/daemon/dist/domain/gateway/gateway-subsystem.js +3 -1
  148. package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
  149. package/daemon/dist/domain/gateway/slack/inbound.d.ts +21 -2
  150. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  151. package/daemon/dist/domain/gateway/slack/inbound.js +70 -11
  152. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  153. package/daemon/dist/domain/gateway/slack/queue-access.d.ts +3 -0
  154. package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
  155. package/daemon/dist/domain/gateway/slack/queue-access.js +5 -1
  156. package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -1
  157. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +4 -0
  158. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
  159. package/daemon/dist/domain/gateway/slack/slack-delivery.js +1 -1
  160. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
  161. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  162. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +81 -23
  163. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  164. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +37 -0
  165. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
  166. package/daemon/dist/domain/gateway/slack/socket-inbound.js +281 -38
  167. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
  168. package/daemon/dist/domain/gateway/slack/state-store.d.ts +14 -1
  169. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
  170. package/daemon/dist/domain/gateway/slack/state-store.js +16 -0
  171. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
  172. package/daemon/dist/domain/history-query.d.ts.map +1 -1
  173. package/daemon/dist/domain/history-query.js +8 -6
  174. package/daemon/dist/domain/history-query.js.map +1 -1
  175. package/daemon/dist/domain/human-questions.d.ts +16 -4
  176. package/daemon/dist/domain/human-questions.d.ts.map +1 -1
  177. package/daemon/dist/domain/human-questions.js +10 -5
  178. package/daemon/dist/domain/human-questions.js.map +1 -1
  179. package/daemon/dist/domain/install-engine.js +2 -2
  180. package/daemon/dist/domain/install-engine.js.map +1 -1
  181. package/daemon/dist/domain/kernel-boot-tracker.d.ts +20 -1
  182. package/daemon/dist/domain/kernel-boot-tracker.d.ts.map +1 -1
  183. package/daemon/dist/domain/kernel-boot-tracker.js +66 -14
  184. package/daemon/dist/domain/kernel-boot-tracker.js.map +1 -1
  185. package/daemon/dist/domain/kernel-boot.d.ts +4 -0
  186. package/daemon/dist/domain/kernel-boot.d.ts.map +1 -1
  187. package/daemon/dist/domain/kernel-boot.js +26 -1
  188. package/daemon/dist/domain/kernel-boot.js.map +1 -1
  189. package/daemon/dist/domain/native-process-lineage.d.ts +52 -4
  190. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  191. package/daemon/dist/domain/native-process-lineage.js +254 -34
  192. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  193. package/daemon/dist/domain/node-cmux-service.d.ts.map +1 -1
  194. package/daemon/dist/domain/node-cmux-service.js +2 -1
  195. package/daemon/dist/domain/node-cmux-service.js.map +1 -1
  196. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  197. package/daemon/dist/domain/node-inventory.js +58 -13
  198. package/daemon/dist/domain/node-inventory.js.map +1 -1
  199. package/daemon/dist/domain/progress/progress-indexer.d.ts.map +1 -1
  200. package/daemon/dist/domain/progress/progress-indexer.js +19 -0
  201. package/daemon/dist/domain/progress/progress-indexer.js.map +1 -1
  202. package/daemon/dist/domain/provider/codex-limit-banner.d.ts +40 -0
  203. package/daemon/dist/domain/provider/codex-limit-banner.d.ts.map +1 -0
  204. package/daemon/dist/domain/provider/codex-limit-banner.js +121 -0
  205. package/daemon/dist/domain/provider/codex-limit-banner.js.map +1 -0
  206. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  207. package/daemon/dist/domain/ps-projection.js +3 -2
  208. package/daemon/dist/domain/ps-projection.js.map +1 -1
  209. package/daemon/dist/domain/queue-recovery.d.ts.map +1 -1
  210. package/daemon/dist/domain/queue-recovery.js +10 -3
  211. package/daemon/dist/domain/queue-recovery.js.map +1 -1
  212. package/daemon/dist/domain/queue-repository.d.ts +78 -13
  213. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  214. package/daemon/dist/domain/queue-repository.js +103 -41
  215. package/daemon/dist/domain/queue-repository.js.map +1 -1
  216. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
  217. package/daemon/dist/domain/queue-stuck-sweep.js +5 -2
  218. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
  219. package/daemon/dist/domain/queue-transition-log.d.ts +12 -4
  220. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
  221. package/daemon/dist/domain/queue-transition-log.js +24 -0
  222. package/daemon/dist/domain/queue-transition-log.js.map +1 -1
  223. package/daemon/dist/domain/queue-wake-ladder.d.ts +17 -0
  224. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
  225. package/daemon/dist/domain/queue-wake-ladder.js +49 -3
  226. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
  227. package/daemon/dist/domain/restore-guidance.d.ts +39 -0
  228. package/daemon/dist/domain/restore-guidance.d.ts.map +1 -0
  229. package/daemon/dist/domain/restore-guidance.js +163 -0
  230. package/daemon/dist/domain/restore-guidance.js.map +1 -0
  231. package/daemon/dist/domain/restore-orchestrator.d.ts +6 -1
  232. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  233. package/daemon/dist/domain/restore-orchestrator.js +160 -6
  234. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  235. package/daemon/dist/domain/runtime-adapter.d.ts +2 -0
  236. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  237. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  238. package/daemon/dist/domain/scope/scope-approve.d.ts +21 -0
  239. package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  240. package/daemon/dist/domain/scope/scope-approve.js +48 -4
  241. package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  242. package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  243. package/daemon/dist/domain/scope/scope-view-projection.js +5 -7
  244. package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  245. package/daemon/dist/domain/seat-attention-reconciler.d.ts +5 -2
  246. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  247. package/daemon/dist/domain/seat-attention-reconciler.js +18 -4
  248. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  249. package/daemon/dist/domain/seat-identity-reconciler.d.ts.map +1 -1
  250. package/daemon/dist/domain/seat-identity-reconciler.js +7 -2
  251. package/daemon/dist/domain/seat-identity-reconciler.js.map +1 -1
  252. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  253. package/daemon/dist/domain/seat-status-service.d.ts +2 -1
  254. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -1
  255. package/daemon/dist/domain/seat-status-service.js +1 -0
  256. package/daemon/dist/domain/seat-status-service.js.map +1 -1
  257. package/daemon/dist/domain/seat-structural-activity-service.d.ts +9 -1
  258. package/daemon/dist/domain/seat-structural-activity-service.d.ts.map +1 -1
  259. package/daemon/dist/domain/seat-structural-activity-service.js +28 -4
  260. package/daemon/dist/domain/seat-structural-activity-service.js.map +1 -1
  261. package/daemon/dist/domain/seat-switch-client-service.d.ts.map +1 -1
  262. package/daemon/dist/domain/seat-switch-client-service.js +2 -1
  263. package/daemon/dist/domain/seat-switch-client-service.js.map +1 -1
  264. package/daemon/dist/domain/session-registry.d.ts +46 -0
  265. package/daemon/dist/domain/session-registry.d.ts.map +1 -1
  266. package/daemon/dist/domain/session-registry.js +86 -4
  267. package/daemon/dist/domain/session-registry.js.map +1 -1
  268. package/daemon/dist/domain/session-transport.d.ts +13 -1
  269. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  270. package/daemon/dist/domain/session-transport.js +101 -5
  271. package/daemon/dist/domain/session-transport.js.map +1 -1
  272. package/daemon/dist/domain/startup-orchestrator.d.ts +8 -0
  273. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  274. package/daemon/dist/domain/startup-orchestrator.js +37 -1
  275. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  276. package/daemon/dist/domain/terminal/terminal-service.d.ts +5 -1
  277. package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
  278. package/daemon/dist/domain/terminal/terminal-service.js +30 -4
  279. package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
  280. package/daemon/dist/domain/terminal/view-composer.d.ts +6 -0
  281. package/daemon/dist/domain/terminal/view-composer.d.ts.map +1 -1
  282. package/daemon/dist/domain/terminal/view-composer.js +2 -1
  283. package/daemon/dist/domain/terminal/view-composer.js.map +1 -1
  284. package/daemon/dist/domain/transcript-store.js +1 -1
  285. package/daemon/dist/domain/transcript-store.js.map +1 -1
  286. package/daemon/dist/domain/types.d.ts +9 -0
  287. package/daemon/dist/domain/types.d.ts.map +1 -1
  288. package/daemon/dist/domain/types.js +5 -0
  289. package/daemon/dist/domain/types.js.map +1 -1
  290. package/daemon/dist/domain/usage-series.d.ts.map +1 -1
  291. package/daemon/dist/domain/usage-series.js +9 -4
  292. package/daemon/dist/domain/usage-series.js.map +1 -1
  293. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  294. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  295. package/daemon/dist/domain/user-settings/settings-store.js +13 -0
  296. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  297. package/daemon/dist/domain/view-projector.d.ts +4 -0
  298. package/daemon/dist/domain/view-projector.d.ts.map +1 -1
  299. package/daemon/dist/domain/view-projector.js +19 -4
  300. package/daemon/dist/domain/view-projector.js.map +1 -1
  301. package/daemon/dist/domain/workflow-runtime.d.ts +1 -1
  302. package/daemon/dist/routes/activity.d.ts.map +1 -1
  303. package/daemon/dist/routes/activity.js +33 -1
  304. package/daemon/dist/routes/activity.js.map +1 -1
  305. package/daemon/dist/routes/chat.d.ts.map +1 -1
  306. package/daemon/dist/routes/chat.js +6 -2
  307. package/daemon/dist/routes/chat.js.map +1 -1
  308. package/daemon/dist/routes/gateway.d.ts.map +1 -1
  309. package/daemon/dist/routes/gateway.js +2 -0
  310. package/daemon/dist/routes/gateway.js.map +1 -1
  311. package/daemon/dist/routes/kernel-status.js +3 -1
  312. package/daemon/dist/routes/kernel-status.js.map +1 -1
  313. package/daemon/dist/routes/projects.d.ts.map +1 -1
  314. package/daemon/dist/routes/projects.js +5 -1
  315. package/daemon/dist/routes/projects.js.map +1 -1
  316. package/daemon/dist/routes/query-limit.d.ts +19 -0
  317. package/daemon/dist/routes/query-limit.d.ts.map +1 -0
  318. package/daemon/dist/routes/query-limit.js +24 -0
  319. package/daemon/dist/routes/query-limit.js.map +1 -0
  320. package/daemon/dist/routes/queue.d.ts.map +1 -1
  321. package/daemon/dist/routes/queue.js +35 -9
  322. package/daemon/dist/routes/queue.js.map +1 -1
  323. package/daemon/dist/routes/rig-cmux.js +8 -10
  324. package/daemon/dist/routes/rig-cmux.js.map +1 -1
  325. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  326. package/daemon/dist/routes/rigs.js +6 -4
  327. package/daemon/dist/routes/rigs.js.map +1 -1
  328. package/daemon/dist/routes/scope-approve.d.ts.map +1 -1
  329. package/daemon/dist/routes/scope-approve.js +3 -0
  330. package/daemon/dist/routes/scope-approve.js.map +1 -1
  331. package/daemon/dist/routes/stream.d.ts.map +1 -1
  332. package/daemon/dist/routes/stream.js +5 -1
  333. package/daemon/dist/routes/stream.js.map +1 -1
  334. package/daemon/dist/routes/up.d.ts.map +1 -1
  335. package/daemon/dist/routes/up.js +2 -1
  336. package/daemon/dist/routes/up.js.map +1 -1
  337. package/daemon/dist/routes/views.d.ts.map +1 -1
  338. package/daemon/dist/routes/views.js +7 -1
  339. package/daemon/dist/routes/views.js.map +1 -1
  340. package/daemon/dist/startup.d.ts.map +1 -1
  341. package/daemon/dist/startup.js +19 -0
  342. package/daemon/dist/startup.js.map +1 -1
  343. package/daemon/docs/reference/getting-started.md +10 -6
  344. package/daemon/docs/reference/refocus-channel.md +33 -0
  345. package/daemon/docs/reference/slack-app-setup.md +19 -0
  346. package/daemon/docs/reference/whats-new.md +145 -74
  347. package/daemon/specs/agents/development/qa/guidance/role.md +9 -0
  348. package/daemon/specs/agents/shared/skills/core/cross-host-rig-commands/SKILL.md +1 -0
  349. package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +12 -4
  350. package/daemon/specs/agents/shared/skills/core/topology-mutation-and-seat-management/SKILL.md +2 -2
  351. package/daemon/specs/rigs/launch/factory/CULTURE.md +13 -0
  352. package/daemon/specs/rigs/launch/factory/guidance/lead-first-move.md +18 -5
  353. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +20 -1
  354. package/daemon/specs/rigs/launch/starter/CULTURE.md +13 -0
  355. package/daemon/specs/rigs/launch/starter/guidance/lead-first-move.md +18 -5
  356. package/dist/build-info.js +3 -3
  357. package/dist/cli-error.d.ts.map +1 -1
  358. package/dist/cli-error.js +2 -0
  359. package/dist/cli-error.js.map +1 -1
  360. package/dist/commands/add.d.ts.map +1 -1
  361. package/dist/commands/add.js +55 -4
  362. package/dist/commands/add.js.map +1 -1
  363. package/dist/commands/capture.d.ts +9 -0
  364. package/dist/commands/capture.d.ts.map +1 -1
  365. package/dist/commands/capture.js +93 -41
  366. package/dist/commands/capture.js.map +1 -1
  367. package/dist/commands/chatroom.d.ts.map +1 -1
  368. package/dist/commands/chatroom.js +25 -5
  369. package/dist/commands/chatroom.js.map +1 -1
  370. package/dist/commands/config.d.ts.map +1 -1
  371. package/dist/commands/config.js +4 -1
  372. package/dist/commands/config.js.map +1 -1
  373. package/dist/commands/daemon.d.ts.map +1 -1
  374. package/dist/commands/daemon.js +37 -3
  375. package/dist/commands/daemon.js.map +1 -1
  376. package/dist/commands/down.d.ts.map +1 -1
  377. package/dist/commands/down.js +1 -50
  378. package/dist/commands/down.js.map +1 -1
  379. package/dist/commands/env.d.ts.map +1 -1
  380. package/dist/commands/env.js +6 -0
  381. package/dist/commands/env.js.map +1 -1
  382. package/dist/commands/heartbeat.js +2 -2
  383. package/dist/commands/heartbeat.js.map +1 -1
  384. package/dist/commands/ps.d.ts +3 -0
  385. package/dist/commands/ps.d.ts.map +1 -1
  386. package/dist/commands/ps.js +8 -3
  387. package/dist/commands/ps.js.map +1 -1
  388. package/dist/commands/queue.d.ts +39 -6
  389. package/dist/commands/queue.d.ts.map +1 -1
  390. package/dist/commands/queue.js +130 -33
  391. package/dist/commands/queue.js.map +1 -1
  392. package/dist/commands/scope.d.ts.map +1 -1
  393. package/dist/commands/scope.js +10 -1
  394. package/dist/commands/scope.js.map +1 -1
  395. package/dist/commands/seat.d.ts.map +1 -1
  396. package/dist/commands/seat.js +6 -0
  397. package/dist/commands/seat.js.map +1 -1
  398. package/dist/commands/send.d.ts.map +1 -1
  399. package/dist/commands/send.js +23 -5
  400. package/dist/commands/send.js.map +1 -1
  401. package/dist/commands/setup.d.ts +6 -0
  402. package/dist/commands/setup.d.ts.map +1 -1
  403. package/dist/commands/setup.js +100 -44
  404. package/dist/commands/setup.js.map +1 -1
  405. package/dist/commands/slack.d.ts +17 -0
  406. package/dist/commands/slack.d.ts.map +1 -1
  407. package/dist/commands/slack.js +41 -0
  408. package/dist/commands/slack.js.map +1 -1
  409. package/dist/commands/start.d.ts.map +1 -1
  410. package/dist/commands/start.js +5 -1
  411. package/dist/commands/start.js.map +1 -1
  412. package/dist/commands/status.d.ts.map +1 -1
  413. package/dist/commands/status.js +5 -0
  414. package/dist/commands/status.js.map +1 -1
  415. package/dist/commands/usage.d.ts.map +1 -1
  416. package/dist/commands/usage.js +10 -5
  417. package/dist/commands/usage.js.map +1 -1
  418. package/dist/commands/workflow.d.ts.map +1 -1
  419. package/dist/commands/workflow.js +8 -8
  420. package/dist/commands/workflow.js.map +1 -1
  421. package/dist/config-store.d.ts +2 -1
  422. package/dist/config-store.d.ts.map +1 -1
  423. package/dist/config-store.js +14 -0
  424. package/dist/config-store.js.map +1 -1
  425. package/dist/cross-host-types.d.ts +1 -1
  426. package/dist/cross-host-types.d.ts.map +1 -1
  427. package/dist/daemon-lifecycle.d.ts +4 -0
  428. package/dist/daemon-lifecycle.d.ts.map +1 -1
  429. package/dist/daemon-lifecycle.js +16 -4
  430. package/dist/daemon-lifecycle.js.map +1 -1
  431. package/dist/lib/scope/capability-delta.d.ts.map +1 -1
  432. package/dist/lib/scope/capability-delta.js +8 -0
  433. package/dist/lib/scope/capability-delta.js.map +1 -1
  434. package/dist/lib/scope/progress-edit.js +1 -1
  435. package/dist/lib/scope/progress-edit.js.map +1 -1
  436. package/dist/lib/scope/scope-fs.d.ts +13 -0
  437. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  438. package/dist/lib/scope/scope-fs.js +31 -7
  439. package/dist/lib/scope/scope-fs.js.map +1 -1
  440. package/dist/remote-host-ops.d.ts +4 -0
  441. package/dist/remote-host-ops.d.ts.map +1 -1
  442. package/dist/remote-host-ops.js +20 -2
  443. package/dist/remote-host-ops.js.map +1 -1
  444. package/dist/rig-handle.d.ts +45 -0
  445. package/dist/rig-handle.d.ts.map +1 -0
  446. package/dist/rig-handle.js +51 -0
  447. package/dist/rig-handle.js.map +1 -0
  448. package/dist/system-preflight.d.ts +5 -0
  449. package/dist/system-preflight.d.ts.map +1 -1
  450. package/dist/system-preflight.js +8 -0
  451. package/dist/system-preflight.js.map +1 -1
  452. package/dist/terminal-window.d.ts.map +1 -1
  453. package/dist/terminal-window.js +3 -1
  454. package/dist/terminal-window.js.map +1 -1
  455. package/package.json +1 -1
  456. package/tui/dist/config/config-model.d.ts.map +1 -1
  457. package/tui/dist/config/config-model.js +1 -0
  458. package/tui/dist/config/config-model.js.map +1 -1
  459. package/tui/dist/connections/connections-model.d.ts +5 -0
  460. package/tui/dist/connections/connections-model.d.ts.map +1 -1
  461. package/tui/dist/connections/connections-model.js +16 -1
  462. package/tui/dist/connections/connections-model.js.map +1 -1
  463. package/tui/dist/daemon-client.d.ts +3 -0
  464. package/tui/dist/daemon-client.d.ts.map +1 -1
  465. package/tui/dist/daemon-client.js +4 -1
  466. package/tui/dist/daemon-client.js.map +1 -1
  467. package/tui/dist/detail.d.ts.map +1 -1
  468. package/tui/dist/detail.js +6 -1
  469. package/tui/dist/detail.js.map +1 -1
  470. package/tui/dist/hydrate.d.ts.map +1 -1
  471. package/tui/dist/hydrate.js +19 -17
  472. package/tui/dist/hydrate.js.map +1 -1
  473. package/tui/dist/input.d.ts.map +1 -1
  474. package/tui/dist/input.js +15 -4
  475. package/tui/dist/input.js.map +1 -1
  476. package/tui/dist/local-reading.js +2 -2
  477. package/tui/dist/local-reading.js.map +1 -1
  478. package/tui/dist/reading.d.ts.map +1 -1
  479. package/tui/dist/reading.js +14 -3
  480. package/tui/dist/reading.js.map +1 -1
@@ -11,7 +11,7 @@ not know exists.** So the point of what follows is not skill. It is recognition:
11
11
  lands, something rhymes, and you go check instead of building.
12
12
 
13
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
14
+ `capability-delta-v0.6.10`). 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,8 +28,9 @@ 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. **`rig ps --resources`** shows this host's load and transcript
32
- capture cost.
31
+ cells you were scanning for. A seat whose tmux session is confirmed gone reads `detached`
32
+ (activity reason `session_missing`), and `rig ps --nodes` says to restore or relaunch it.
33
+ **`rig ps --resources`** shows this host's load and transcript capture cost.
33
34
  - **`rig ps --all-hosts --nodes -A`** — the same across every registered machine. Rollup-only
34
35
  unless you ask for nodes.
35
36
  - **`rig discover`** — what is running on this box that OpenRig is *not* managing.
@@ -89,6 +90,9 @@ unseen — which makes messages the one delivery channel that never gets skipped
89
90
  confirm by effect, never relaunch on it. A send or wake to a seat whose latest hook is a
90
91
  question waiting for a person is refused with `target_needs_input`, even when its screen
91
92
  can't be read: read it with `rig capture` and get the question answered instead of retrying.
93
+ Over `--host` to an http-registered host, a send that may have reached the remote reads
94
+ `remote-outcome-unknown` ("Delivery UNCONFIRMED"): check the target with `rig capture <session>
95
+ --host <id>` before any resend. Only a host that was never reached reads as unreachable.
92
96
  - **`rig send --raw`** — send exact text or keystrokes without the From/To envelope;
93
97
  the interactive-prompt guard still applies. To deliberately drive an interactive prompt,
94
98
  **`--dangerously-interact --reason "<why>"`** is the explicit override and implies raw text.
@@ -97,7 +101,9 @@ unseen — which makes messages the one delivery channel that never gets skipped
97
101
  the wording wrong on the fourth. **Blast radius is real** — on a large rig this lands in every
98
102
  seat's turn.
99
103
  - **`rig capture <seat>`** — read what is on their screen right now. **`--rig` / `--pod`** captures
100
- every seat in one call.
104
+ every seat in one call. `--lines N` is the last N lines (stderr says how many earlier lines were
105
+ cut); `--history-plus-pane` gives the older N history lines plus the whole pane. A short capture
106
+ doesn't prove a seat is idle.
101
107
  - **`rig transcript <seat>`** — what has been *said* in a seat, and **seat-scoped rather than
102
108
  session-scoped**: one file spanning every agent generation that has occupied it, so it reaches
103
109
  back through handovers. Capped (`transcripts.lines`, default 1000 — raise it for depth), and
@@ -110,7 +116,9 @@ unseen — which makes messages the one delivery channel that never gets skipped
110
116
  runtime tokens.
111
117
  - **`rig chatroom wait`** — block until a peer actually says something, instead of polling
112
118
  `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.
119
+ Its `--timeout` is in seconds and ignores a suffix, so `2m` means 2 seconds. Poll timeouts,
120
+ connection refusals, and reset or closed connections are retried until that deadline; other errors,
121
+ including an error answer from the daemon such as a removed rig, still end the wait.
114
122
  - **`rig stream emit` / `list` / `watch` / `archive`** — drop an observation somewhere the *next*
115
123
  agent will find it. Emitting costs nothing and does not interrupt anyone; the value appears when
116
124
  someone lists the stream before starting.
@@ -126,7 +134,9 @@ unseen — which makes messages the one delivery channel that never gets skipped
126
134
  window, and only then say that clicking macOS's Allow is fine. Herdr is visible only in a
127
135
  terminal the person can see; switching the shared TUI to `:terminals` does not open one. Over
128
136
  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
137
+ and an attach command: relay that command exactly. When the daemon runs on a non-default tmux
138
+ server, attach commands carry `-L <name>` or `-S <path>`; from inside tmux run them as
139
+ `env -u TMUX <tmuxAttachCommand>`. Inspect the result and visible content, or
130
140
  say what cannot be verified. On a desktop, do not finish by printing a command for the person to
131
141
  type. Only if the window cannot open, `rig tui --shared` is the dashboard-only fallback; explain
132
142
  the failure. `--provider herdr` or `--provider cmux` adds tiles inside a workspace that is
@@ -148,7 +158,10 @@ unseen — which makes messages the one delivery channel that never gets skipped
148
158
  readiness for the delivery decision and `queue create --verify` for its receipt; connector
149
159
  setup or verification is not an outbound human message. After a connection gap the daemon
150
160
  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>` /
161
+ connection, the catch-up state, and the count of retained retry records for inbound messages,
162
+ reactions and click answers (kept across restarts, not a distinct-message count). A retained alert whose row closed before its retry isn't
163
+ posted; the row says why. Its `Delivery:` line says whether events are confirmed arriving;
164
+ "connected" alone is not delivery, and a connection that stops delivering is replaced. **`rig slack channel-map list` / `set <match> <channel>` /
152
165
  `remove <match>`** sends a rig's or seat's human-bound posts to its own channel (a seat match
153
166
  beats a rig match; the rest use the default channel). After a change, invite the app to each
154
167
  channel, run `rig slack verify`, and rewire the connector (`rig slack disable` then `enable`, or
@@ -169,7 +182,11 @@ your context, your compaction and your replacement — and it is the only thing
169
182
 
170
183
  - **`rig queue create`** — a row with an owner, a body and a transition history. Its reply, like
171
184
  `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).
185
+ told, read the row's transitions, or use `--verify`. For a seat it reports the wake's terminal
186
+ receipt and any claim separately: an unconfirmed receipt is not a failed handoff, and a claim is
187
+ pickup, not proof the body was read. For a row the seat already claimed, `outcome` can read
188
+ `indeterminate` while `claim` is accurate: read `claim`. It isn't a failed handoff, so don't
189
+ re-run the create.
173
190
  - **`rig queue show`** — what a row *actually says*. The header is not the body.
174
191
  - **`rig queue claim` / `unclaim`** — is this mine and running, or still pending where two agents
175
192
  might double-work it. Put it down honestly when it is not yours.
@@ -191,6 +208,11 @@ your context, your compaction and your replacement — and it is the only thing
191
208
  delivery, the row's transitions are the receipt ledger; `undelivered` does not answer whether a
192
209
  person received the escalation. **`overdue` and `undelivered` are the two halves of "is anything
193
210
  silently stuck", and a rig can be clean on one and rotten on the other.**
211
+ - **`queue.wake_human_rung`** — when a seat can't be woken, the last escalation step posts to a
212
+ person. `rig config set queue.wake_human_rung explicit-only` (default `always`) keeps that post
213
+ for rows addressed to a person (an `@external` address or a registered human); the rest stop at
214
+ `rig view show escalations`. A seat stuck at a prompt only a person can clear still reaches one,
215
+ and an unreadable human registry posts everything.
194
216
  - **`rig queue inbox-drop` / `inbox-pending` / `inbox-absorb` / `inbox-deny`** — put something in
195
217
  front of a seat that it can *refuse*. Mail, not assignment.
196
218
  - **`rig queue outbox-record` / `outbox-list`** — what you dispatched, in a record that survives
@@ -335,19 +357,25 @@ not have to tear one down to change it, and you rarely have to start from nothin
335
357
  by name, a bundle someone handed you, a GitHub folder link (pinned to one commit), or a stopped
336
358
  rig. `rig up` with a pod-aware spec on a stopped team's name replaces that team (the earlier one
337
359
  is archived), so check `rig ps --nodes` first. Launch-created `AGENTS.md` or `CLAUDE` files now show in `git status`.
360
+ `rig up <rig> --existing` puts back the OpenRig guidance blocks `rig down` removed before a
361
+ resumed seat starts. A seat still missing one makes the rig `partially_restored` (its node lists
362
+ `guidanceGaps`) and `rig up` exits 1.
338
363
  - **`rig down`** — stop a rig's seats and take it out of the running set. It ends the agents'
339
364
  sessions and any work in progress; don't run it on a live team unless the person asked. In
340
365
  human mode it first prints one line with each agent's last known activity, or “unknown”: a
341
366
  best-effort snapshot, not a record of what was interrupted. With `--host`, a remote teardown
342
367
  that reports errors exits 2.
343
- - **`rig launch <rig> [seat]`** — one seat is down; start just that one, without disturbing the
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.
368
+ - **`rig launch <rigId> [seat]`** — one seat is down; start just that one, without disturbing the
369
+ rest. It takes the rig ID from `rig ps --json`; a rig name gives `rig_not_found`. Add `--plan` to preview it first, locally or with `--host`; a plan is never sent to a
370
+ daemon older than 0.5.9, which would ignore it and launch. A seat whose agent exited to a shell in
371
+ its kept pane reads `attention_required` (exit 1), not already running: resume it, or
372
+ `rig seat launch <session> --fresh --stop`.
346
373
  - **`rig seat launch <seat> --fresh --reason <why>`** — deliberately create a blank occupant for
347
374
  exactly one existing seat. It uses no resume, fork, rebuild, snapshot, or restore packet;
348
375
  siblings and durable work stay put, and unmanaged ambiguity refuses.
349
376
  - **`rig add`** / **`rig expand`** — graft one more member, or a whole new pod, onto a rig that is
350
- already running. `rig grow --new-pod` and `rig expand` are one ingress; choose by input shape.
377
+ already running. `rig add` takes the rig's name or ID; a name two active rigs share is refused
378
+ with `rig_ambiguous` and the candidates. `rig grow --new-pod` and `rig expand` are one ingress; choose by input shape.
351
379
  - **`rig remove`** / **`rig shrink`** — take a seat, or an entire pod, out of a running topology.
352
380
  If it holds active work, pass `--fallback <live-seat>` to reroute before mutation; without a
353
381
  valid fallback the command refuses rather than strand the rows.
@@ -519,7 +547,8 @@ scheme, and nothing downstream can see it.
519
547
  - **`rig scope slice progress` / `mission progress`** — record that a step moved, in a form the
520
548
  progress view can parse.
521
549
  - **`rig scope slice approve`** — freeze a decision — *this is the plan* or *this is delivered* —
522
- so the freeze is recorded rather than asserted in chat.
550
+ so the freeze is recorded rather than asserted in chat. With `--workspace`, approve stamps the
551
+ tree you named, and refuses one with no `missions/` folder.
523
552
  - **`rig scope slice close` / `ship` / `move`** — retire it with the reason attached, move it into
524
553
  the release it belongs to preserving git history, or re-file it under a different mission.
525
554
  - **`rig scope slice stage` / `verified`** — how mature is this, and *when was it last checked and
@@ -679,7 +708,8 @@ reaching them is ordinary work rather than an escalation.
679
708
  request, then boundedly inspect its transport receipt. Posted means posted, not read;
680
709
  pending, failed, or indeterminate delivery leaves the row intact. Inspect the same row's
681
710
  transitions before retrying. `rig send` remains agent-terminal delivery only.
682
- `--human-questions-file` adds clickable decision questions.
711
+ `--human-questions-file` adds clickable decision questions. A typed Slack reply to one is kept
712
+ in `humanAnswers`, placed under the first unanswered question; closing isn't approval.
683
713
  - **When project policy calls for human judgment or an update, load `messaging-the-human`.**
684
714
  Use `rig context get skills/core/messaging-the-human/SKILL.md` for a complete decision brief,
685
715
  related supplemental detail and explicit quiet-update intent. An FYI creates no approval
@@ -764,7 +794,9 @@ your circumstances is configuration, and the ones that are not, another agent ca
764
794
  - **`rig provider accounts` / `bindings` / `signals` / `switch`** — which seats are bound to which
765
795
  accounts, what the usage signals say, and whether a seat can be moved without stranding the
766
796
  conversation it is in the middle of. **`provider signals` reports anomalies rather than a
767
- listing** — unbound seats, accounts shared across several seats.
797
+ listing** — unbound seats, accounts shared across several seats. A Codex seat showing its
798
+ usage-limit banner reads activity `unknown` with reason `usage_limit`, and `provider signals` can
799
+ show a provider-event signal for that seat's account that allows a switch decision.
768
800
  - **Codex configuration fragments** — a `codex_config_fragment` must open with a table header and
769
801
  never overrides a user-declared table; see `docs/reference/agent-spec.md`.
770
802
  - **`rig env`** — the real services behind a rig: are they up, what are they saying, how do you
@@ -772,7 +804,8 @@ your circumstances is configuration, and the ones that are not, another agent ca
772
804
  - **`rig setup`** — what OpenRig would change about this machine, shown before it touches anything.
773
805
  It installs herdr by default on macOS and Linux (`--no-herdr` declines; if the install fails,
774
806
  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.
807
+ It no longer installs cmux; an existing cmux still works. `--providers claude`, `codex` or
808
+ `both` sets which harnesses it installs and checks; one not chosen reads `skipped`, never failed.
776
809
  - **`rig usage series`** — what a seat's token curve has looked like over time: climbing steadily,
777
810
  reset, or stopped reporting entirely. The last one is a signal, not a gap.
778
811
  - **`rig tui`** — the interactive view over rigs, pods, seats and specs. `rig` and `rig tui` open
@@ -858,6 +891,8 @@ database. It is one more set of primitives on a machine full of them.
858
891
  - **"Did that actually land?"** — `rig queue show <qitemId>` gives a bounded preview,
859
892
  original byte size and the exact expansion command. Read the complete original record with
860
893
  `rig queue show <qitemId> --full --json`; a preview or a compact list is not the whole body.
894
+ Compact `rig queue list` rows carry `summary`; the fields they leave out are absent, not empty,
895
+ and `fieldsElided` names them.
861
896
  Delivery status is separate from content: inspect its receipt before claiming it was consumed.
862
897
  - **"What am I waiting on?"** — the queue row's `waiting` view derives its owner, exact blocker
863
898
  and blocker owner, last meaningful change, activity confidence and next backstop from live
@@ -137,7 +137,9 @@ The other provider's CLI/login is optional. Herdr is installed by default unless
137
137
  you decline it; cmux remains optional. Do not copy credentials
138
138
  or start repeated sign-in attempts. Recheck the selected login after the user
139
139
  completes it. `rig setup --dry-run` previews the broader setup; applying
140
- `rig setup` checks **both** harnesses and installs a missing one with npm; on
140
+ `rig setup` checks **both** harnesses and installs a missing one with npm, unless
141
+ you pass the person's choice: `rig setup --providers claude` (or `codex`) leaves
142
+ the other out, so it reads not selected instead of failed. On
141
143
  macOS it uses an existing Homebrew (it does not install Homebrew) to install a
142
144
  missing tmux (elsewhere tmux is checked, not installed). Herdr installs on
143
145
  macOS and Linux; pass `--no-herdr` to decline it. Setup also
@@ -198,7 +200,7 @@ leaves existing cmux settings alone and does not open a view during setup.
198
200
 
199
201
  On a Mac, the installing agent also asks once, "Install Ghostty for the OpenRig
200
202
  view?" On Yes it reruns setup with `--ghostty`, preserving earlier choices such
201
- as `--no-herdr`. This installs the
203
+ as `--no-herdr` and `--providers`. This installs the
202
204
  [documented Homebrew cask](https://ghostty.org/docs/install/binary) and checks for
203
205
  the app. On No it uses `--no-ghostty`; Terminal.app remains available. Plain setup
204
206
  reports this offer without installing Ghostty or waiting for input. The person
@@ -331,17 +333,19 @@ For the first desktop handoff, use `--window`. Only if the window cannot open,
331
333
  For an explicitly requested manual attachment, inspect the current bindings:
332
334
 
333
335
  ```sh
334
- rig ps --nodes --rig kernel --json
336
+ rig ps --nodes --rig kernel --json --fields logicalId,canonicalSessionName,tmuxAttachCommand
335
337
  ```
336
338
 
337
- Find `logicalId: operator.agent` and use its `canonicalSessionName` in a new
339
+ Find `logicalId: operator.agent` and run its `tmuxAttachCommand`, after `env -u TMUX`, in a new
338
340
  terminal on the same host and account:
339
341
 
340
342
  ```sh
341
- env -u TMUX tmux attach-session -t '=<canonicalSessionName>'
343
+ env -u TMUX <tmuxAttachCommand>
342
344
  ```
343
345
 
344
- The installing agent fills in the actual session name. This optional manual route
346
+ When the daemon was started inside tmux on a non-default socket, its sessions live on that
347
+ server, and `tmuxAttachCommand` names it (`tmux -L <name> …` or `tmux -S <path> …`). The installing
348
+ agent fills in the actual command. This optional manual route
345
349
  is separate from the first-install desktop action above.
346
350
 
347
351
  ### Plain terminal: a new viewing session
@@ -1,7 +1,7 @@
1
1
  # Reference guides the help pack links to, loaded one file or section at a time by address
2
2
  # (rig context get reference/<file>#<section>). Each file is a symlink to docs/reference/.
3
3
  name: reference
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: world
6
6
  purpose: "Version-matched reference guides the help guide links to. Load a single file or section by address; don't load the whole pack."
7
7
  files:
@@ -1,96 +1,167 @@
1
- # What changed in OpenRig 0.6.8
1
+ # What changed in OpenRig 0.6.10
2
2
 
3
- This note is for an agent on an install that was just upgraded to 0.6.8. It lists only what behaves differently from
4
- 0.6.7 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.10. It lists only what behaves differently from
4
+ 0.6.9 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
8
  after an upgrade it can still hold the previous version's note.
9
9
 
10
- ## Skills from the managed catalog
11
-
12
- - **A skill with uncommitted changes in the catalog now blocks only itself.** Before, one edited skill made the whole
13
- catalog unavailable to work-install, launch and restore preflight. Now that skill is skipped and named, and the
14
- remaining clean skills stay available for projection.
15
- - **Read the warning, don't retry.** `catalog_skill_skipped` names a skill nobody selected; `selected_skill_skipped`
16
- names the selector and the folder. The fix is to commit or restore that folder's content in the catalog, then run the
17
- projection again.
18
- - **A selected skipped skill makes the inspection commands exit 1.** `rig context work-install --runtime <runtime>`
19
- and `rig skill loadout --runtime <runtime>` inspect by default. Use `--apply-skills` with work-install or `--apply`
20
- with skill loadout to project the remaining clean skills. Read the warnings and projection result; exit 1 alone does
21
- not say whether files were changed. With `--json`, skipped skills are in `skillLoadout.skipped` or
22
- `loadout.skipped`, respectively.
23
- - **A seat keeps the copy it already has** of a skipped skill, unchanged. After the catalog change is committed or
24
- restored, the next applied projection can refresh it. No seat receives the skipped skill's uncommitted files, and
25
- launch only warns about the skip.
26
- - **An uncommitted `catalog.yaml` still makes the whole catalog unavailable,** because it changes every selection.
27
-
28
- ## Launch plans
29
-
30
- - **`rig launch <rig> <seat> --plan` previews one seat's launch** without launching it, locally or with `--host`. Use
31
- it before starting a single seat, as `--seats … --plan` already allowed for several.
32
- - **A plan is never sent to a daemon older than 0.5.9,** which would ignore the flag and launch. If `rig launch --plan`
33
- refuses for that reason, restart or upgrade that daemon. If it exits non-zero saying the daemon may have acted, check
34
- `rig ps --nodes -A` before retrying.
10
+ ## After the upgrade
11
+
12
+ - **Restart the daemon** (`rig daemon stop`, then `rig daemon start`). Two migrations run on the first start: `099`
13
+ adds one partial index to the queue table, and `101` adds four empty columns to `sessions`. Neither changes existing
14
+ data. There is no migration `100`. The bundled openrig-core plugin goes from 0.1.8 to 0.1.9.
15
+
16
+ ## Output that changed shape
17
+
18
+ - **`rig capture --lines N` is the last N lines,** after blank rows at the bottom are dropped. When earlier lines are
19
+ cut, stderr says `[rig capture: <session>: N earlier lines not shown; last M shown]`. In `--json`, `lines` is then
20
+ the count returned, and `requestedLines` and `omittedLines` are new (per seat under `--rig` or `--pod`). For the old
21
+ output, N history lines plus the whole pane, add `--history-plus-pane`; it keeps the old JSON too, without
22
+ `requestedLines` or `omittedLines`. Without `--lines`, or with a non-numeric or zero `--lines`, nothing changed. A
23
+ short capture doesn't prove a seat is idle.
24
+ - **Compact `rig queue list` rows carry `summary`,** and so do `overdue` and `undelivered`. The fields they leave out
25
+ (`body`, `evidenceRef`, `humanDetail`, `waiting`, `chainOfRecord`, `replyTo`, `humanQuestions`, `humanAnswers`) are
26
+ now absent, not `null` or `""`, and `fieldsElided` names them. A filter that tested those fields for null must test
27
+ for presence. Read a full row with `rig queue show <id> --full --json`.
28
+ - **`lastNudgeResult` reads `claimed`** on a claimed row whose wake was recorded as `delivered-ack-pending` or
29
+ `indeterminate:…`. The recorded value is unchanged and shows in the new `lastNudgeWireResult`; unclaiming brings it
30
+ back. `claimed` is never promoted to `verified`.
31
+ - **`rig chatroom history` returns the newest messages** when you give neither `--after` nor `--since`, still listed
32
+ oldest first. Before, a room longer than the limit returned its oldest messages. `--after` and `--since` still page
33
+ forward from that point, and `rig chatroom wait` is unchanged.
34
+
35
+ ## Seats and restore
36
+
37
+ - **`rig launch <rigId> <seat>` no longer calls an exited agent running.** When a seat's kept pane is at an idle shell,
38
+ the launch returns `attention_required` (HTTP 409, exit 1) with `Session alive, agent not running for '<seat>'` and
39
+ the ways back: resume it with `--snapshot-id <id>` when a snapshot can, `rig seat launch <session> --fresh --stop`, or
40
+ restart the agent in the pane. The pane and its history are kept. This covers Claude Code, Codex, Pi and OMP seats.
41
+ - **`rig up <rig> --existing` puts back the guidance `rig down` removed.** Before a resumed seat starts, the missing
42
+ OpenRig managed blocks go back into the rig's Claude file (`CLAUDE.md`, or `CLAUDE.local.md`) or `AGENTS.md` for
43
+ Codex. Existing blocks and the person's own text are untouched, and nothing is sent to the conversation. The
44
+ warnings say `Restore guidance: <seat>: put back missing blocks …`. A seat still missing a block keeps running, its
45
+ node lists `guidanceGaps`, the rig reads `partially_restored` instead of `fully_restored`, and `rig up` exits 1.
46
+ - **A resumed Claude seat whose session ID changed can prove.** When Claude continues `--resume T1` under a new ID T2,
47
+ and the first SessionStart hook from the process OpenRig launched reports `source: "resume"`, OpenRig records T2. The
48
+ seat restores as `resumed`, `rig seat clear-attention` can clear it, and sends stop warning that the launch identity
49
+ differs. Resume commands now start with `OPENRIG_RESUME_LAUNCH='<T1>'`. It needs openrig-core 0.1.9; `/clear`, an
50
+ in-process `/resume`, or a hand-started process still keep the refusal.
51
+ - **A restore no longer proves a seat from a launcher's token** when the launcher isn't Claude and the Claude it
52
+ started names a different conversation. That seat reads `mismatch` and the restore returns `attention_required`.
53
+ - **A seat whose tmux session is confirmed gone reads `detached`,** with activity `unknown` and reason
54
+ `session_missing`. `rig ps --nodes` shows `tmux session missing; restore or relaunch the seat`, `rig seat status`
55
+ prints a `Reason:` line, and `--full --json` adds `storedSessionStatus`. The stored status isn't rewritten.
56
+ - **A Codex seat at its usage limit reads `unknown` with reason `usage_limit`,** not idle, when its screen ends with
57
+ the `■ You've hit your usage limit` banner. For a seat bound to a known Codex account, `rig provider signals` can show
58
+ a provider-event signal for that account that allows a switch decision.
59
+ - **`rig add <rig> …` takes the rig's name as well as its ID.** A name two active rigs share is refused with
60
+ `rig_ambiguous` and the candidates. `rig launch` still takes an ID only.
61
+ - **`rig start` says why it skipped an existing kernel:** `Kernel auto-boot skipped (kernel rig already managed).` and,
62
+ if its seats aren't running, `rig up kernel --existing`.
63
+
64
+ ## Sends and wakes
65
+
66
+ - **Codex seats behind a launcher receive sends.** When a seat's `codex` is a launcher that starts Codex as a child,
67
+ `rig send` and queue wakes used to refuse with "reports sh as the foreground command". The deepest `codex` on one
68
+ process chain now counts as the seat. Codex processes on separate branches, or naming different conversations, are
69
+ still refused.
70
+ - **Claude's faint suggested prompt isn't a person's draft.** A send to an idle Claude seat whose empty input box shows
71
+ only that suggestion is no longer refused as `prompt_draft`. OpenRig takes one styled capture to tell; real typed or
72
+ pasted text is still refused, and a suggestion that wraps onto a second row still reads as a draft.
73
+ - **`rig queue create --verify` reports a seat's wake and claim.** For an agent destination it returns as soon as a
74
+ wake result or a claim is recorded, bounded at 30 seconds, with `receiptSource: "terminal"`, `outcome`, `wakeResult`
75
+ and `claim {observed, claimedAt, pickup}`. An unconfirmed receipt is not a failed handoff. See the known gap below
76
+ for a row the seat already claimed.
77
+ - **Keep agent-to-agent escalations off the person's Slack (off by default).** `rig config set queue.wake_human_rung
78
+ explicit-only` (or `OPENRIG_QUEUE_WAKE_HUMAN_RUNG`) stops the wake ladder's last step at `rig view show escalations`
79
+ unless the row is addressed to a person: an `@external` address or a registered human. A seat stuck at a prompt only
80
+ a person can clear still reaches one, and an unreadable human registry posts everything. The default, `always`,
81
+ changes nothing.
35
82
 
36
83
  ## Slack
37
84
 
38
- - **Answer a person's thread reply in that thread.** When someone replies inside a thread OpenRig opened, answer with
39
- `rig queue create --human-intent update --reply-to <the inbound reply's row>`, and the answer posts in that thread.
40
- A top-level message is still answered top-level.
41
- - **A short rate limit is waited out.** When Slack asks for a pause of 10 seconds or less, OpenRig waits and retries the
42
- post once. A longer pause is still left to the usual retry of retained messages.
43
-
44
- ## Managed compaction
45
-
46
- - **A quiet seat is restored after `/compact`.** The turn boundary, the restore request and the read-depth
47
- audit now reach a Claude seat that takes no turn after compacting. Before, they waited for the seat's next turn,
48
- so a seat with nothing to do could sit unrestored. Each stage still waits until the seat's screen shows it idle.
49
-
50
- ## Workflows
51
-
52
- - **Validate before you run.** `rig workflow validate` reports `step_cannot_finish` when no allowed exit can finish a
53
- step or route onward, and such a workflow cannot be instantiated. Allow `done` or an exit with a route onward. In a
54
- dependency graph, `handoff` can also finish a sink without a next step. A spec that validated on 0.6.7 may need a
55
- correction.
56
-
57
- ## The TUI
58
-
59
- - **Type whole commands on an empty command line.** The footer toggle is now `F`, and in a selected Scopes view the
60
- mini-requirements and narrative keys are `M` and `N`, so `find`, `feed`, `mission`, `narrative` and `needs` reach the
61
- command line intact.
62
- - **`j` and `k` move the selection down and up** when the command line is empty. With text on the line they're ordinary
63
- letters.
64
-
65
- ## Smaller changes
66
-
67
- - **A Claude seat launched with `--remote-control`** confirms its identity instead of staying "identity not confirmed".
68
- - **`rig down` still saves its recovery snapshot** when finding one seat's resume details fails.
69
- - **A wake for a handed-off task shows its summary** on one line, so read it to see what the task is for.
70
- - **`rig scope audit` accepts slice folders numbered 100 and above.** `rig proof add --file` keeps a leading UTF-8
71
- byte-order mark.
72
- - **Building from source no longer needs POSIX shell tools** for the CLI and TUI output. It hasn't been run on Windows
73
- yet; WSL2 is still the way to run OpenRig there.
74
- - **A topology naming reference** explains how to name a team's pods and seats: `rig context get
75
- reference/topology-naming.md`.
85
+ - **A decision click that isn't recorded gets one reply in the thread** saying why: the clicker isn't registered, the
86
+ decision was sent to someone else or is no longer waiting, the button no longer matches, or OpenRig can't find the
87
+ decision. Where it helps, the reply asks for an answer in words. A recorded click still gets its usual reply, and a
88
+ redelivered click gets no second one. It's best effort and needs the bot token. A successful press doesn't exercise
89
+ these replies.
90
+
91
+ ## Terminals and attach
92
+
93
+ - **Attach commands name the daemon's tmux server.** When the daemon was started inside tmux on a non-default socket,
94
+ every attach command OpenRig prints carries `-L <name>` or `-S <path>`, including `tmuxAttachCommand` in `rig ps
95
+ --json`. From inside tmux, run it as `env -u TMUX <tmuxAttachCommand>`. On the default server nothing changed.
96
+ - **When a caller of the daemon's terminal API names no provider, the daemon uses cmux if Herdr isn't available** and
97
+ cmux is, and says so. A named `--provider` is used as named. `rig terminal open` without `--provider`, and the TUI's
98
+ "Open terminals", open Herdr, or plain tmux when Herdr is missing, never cmux. The TUI's preview now asks for the
99
+ same provider as the window it opens, so it isn't refused when cmux is running.
100
+ - **A tmux started inside a Herdr pane is recognised** by Herdr's markers (`HERDR_ENV`, `HERDR_PANE_ID`,
101
+ `HERDR_SOCKET_PATH`), so `rig terminal open --window` opens in that Herdr.
102
+
103
+ ## Setup
104
+
105
+ - **`rig setup --providers claude|codex|both`** (or a comma list) sets which harnesses it installs and checks. One not
106
+ chosen reads `skipped` with `Not selected: …`, never failed. Without the flag, setup is unchanged. `rig doctor` still
107
+ checks both.
108
+ - **A first `rig daemon start` after a timed-out probe goes ahead when the port is free,** as on WSL2. A port that's
109
+ really held is refused with `Address already in use (EADDRINUSE)` and the `--port` advice.
110
+
111
+ ## Teams
112
+
113
+ - **Starter and factory teams run their own first steps and checks without stopping for approval** where they can:
114
+ plain `rig` commands, the file tool instead of a heredoc, the project's test command first. Their leads read the goal
115
+ from `rig queue show <id> --full`.
116
+ - **The operator says what a team launch changes in the person's folder before asking** (`CLAUDE.md`, skills,
117
+ `.mcp.json`, `.openrig/`, and an accept-edits `.claude/settings.local.json`), and offers a separate copy such as a git
118
+ worktree. When a seat shows `needs_input`, the operator or lead tells the person which seat, what it asks, and its
119
+ attach command.
120
+
121
+ ## Smaller fixes
122
+
123
+ - `_` and `%` in a `rig view show <lens> --rig <name>` rig name are no longer wildcards, in all seven lenses that
124
+ filter by rig.
125
+ - `rig ask` matches chat keywords such as `config.json` or `C++` literally.
126
+ - `rig heartbeat` reads CRLF queue files and reads a zone-less proof timestamp as UTC when picking the latest.
127
+ - `rig usage top` reads every sample in its window; `rig usage top|series --json` prints the daemon's error as JSON.
128
+ - A `?limit=` that isn't a number returns 400, not 500.
129
+ - `rig workflow instantiate` and `project` print the instance and packet the daemon returned.
130
+ - `rig transcript --tail` keeps a line ending in `%` and drops a repeated prompt.
131
+ - `--json` after `--` no longer turns an error into JSON; `rig env` prints the daemon's error.
132
+ - A file read over 1 MiB ends at a whole UTF-8 character, and `truncatedAtBytes` says where.
133
+ - The TUI counts CR+LF as one Enter, keeps an emoji whole at a wrap, pages Local reading directories by 10, and skips
134
+ fenced examples when opening a file at a heading.
135
+ - Scope progress rows go only under a matching `##` heading, frontmatter updates stay inside the exact `---`
136
+ delimiters, a capability delta expires only with a readable successor file, and fenced examples no longer count as
137
+ slice sections or progress tasks.
138
+ - `rig package install` looks for a guidance block's closing marker only after its opening one.
139
+ - A Codex seat keeps its last context reading across quota-only usage records, and a fresh Codex launch keeps git
140
+ metadata paths that end in whitespace.
76
141
 
77
142
  ## What to stop doing
78
143
 
79
- - **Stop treating a non-zero work-install exit as proof that nothing changed.** Read the skipped-skill warnings and
80
- projection result. Inspection alone changes no skill files; an applied projection can update clean skills while
81
- reporting a skipped one.
82
- - **Stop scripting around the TUI's single-letter keys.** Type the command whole.
83
- - **Stop assuming a workflow that validated on 0.6.7 can finish.** Validate it again on 0.6.8.
144
+ - **Stop reading "already running" from `rig launch` as healthy** for a seat whose agent may have exited; 0.6.10 says
145
+ `attention_required`.
146
+ - **Stop reading `rig capture --lines N` as N history lines plus the pane.** Add `--history-plus-pane` for that.
147
+ - **Stop testing compact queue rows for null fields.** They're absent; check `fieldsElided`.
148
+ - **Stop attaching to the default tmux server** when the printed command names `-L` or `-S`.
84
149
 
85
- ## Known gaps in 0.6.8
150
+ ## Known gaps in 0.6.10
86
151
 
87
- - **Not yet checked on a real machine:** the full first install from nothing, on Mac, Linux and Windows.
152
+ - **`rig queue create --verify` can report `outcome: "indeterminate"` for a row the seat already claimed,** with
153
+ "Terminal receipt unconfirmed (claimed)." Read `claim` for pickup: neither the claim nor this outcome shows the
154
+ message was displayed or read. It isn't a failed handoff, so don't re-run the create.
155
+ - **The latest first-install check used 0.6.9 on Linux only.** macOS was last checked with 0.6.8, and native Windows
156
+ hasn't been checked.
88
157
  - **Only one selected lifecycle-help command has been checked in a live Claude session;** source and parser coverage
89
158
  is broader. If a help command still asks, report it.
90
159
  - **Codex team seats aren't asked before lifecycle commands yet.**
91
160
  - **The send gate trusts the most recently recorded hook.** If hooks are recorded out of order, it can hold a send for
92
161
  a question that's already answered, or miss one that's waiting. `rig capture` shows the real screen.
93
162
  - **A Codex seat whose permission request was approved automatically can still read "needs input".**
94
- - **A launched team still writes its skills into its working folder.**
163
+ - **A launched team still writes into its working folder;** the operator now says what changes before you agree.
95
164
  - **After a restart, `rig status` shows `Kernel: skipped` whatever the kernel seats' state.** Read them with
96
165
  `rig ps --nodes --rig kernel --full`.
166
+ - **`rig tui --shared` still attaches on the default tmux server,** so it can't find the dashboard when the daemon runs
167
+ on a non-default tmux socket. Use `rig tui` there instead.
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "agent-operated-software"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when designing, building, operating, or diagnosing an ongoing application whose live backend or control loop includes OpenRig agents, including applications with a Markdown, YAML, or JSON agent control plane or a thin surface over specialist agent roles."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "agent-operated-workflows"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when a bounded real-world procedure has a deterministic happy path but brownfield, variable, or partially knowable state; when an operation must resume from verified evidence; or when deciding whether agent judgment or ordinary code should own a procedure's control loop."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "applying-a-permission-policy"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use before launching a team during agent-guided setup, or when a user asks to configure OpenRig command permissions, reduce repeated native approval prompts, or apply a selected rig/seat permission policy."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "claude-compaction-restore"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when a Claude Code session is about to compact, has just compacted, reached its context limit, resumed after /compact, or must rebuild its working picture of a long-running seat from its own restore map, its JSONL transcript and the files it touched."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "agent-starters"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when creating, refreshing, packaging, inspecting, promoting, or deprecating a named per-seat starting point — Agent Starter manifest authoring, the 6-state lifecycle (captured → named → inspectable → used → promoted → deprecated), provenance honesty, and refusal rules. NOT a VM image; a managed starting point composed from agent role + startup context + optional native session source + provenance."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "agent-startup-and-context-ingestion"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when designing or auditing how an agent becomes useful after launch — AGENTS.md overlays, role files, skills, rig specs, workflow specs, startup checklists, refocus messages, \"rig context\" surface. Covers the 4 failure modes that make startup context fail (old rig spec misses current operating mode; current agents never told about new guidance; startup file as dumping ground; orchestrator transmits implementation without preserving product intent)."
7
7
  files:
@@ -85,6 +85,7 @@ A local success message alone does not establish remote persistence or pickup.
85
85
  | ssh-unreachable | SSH connection, target and transport diagnostics |
86
86
  | permission-gate | The configured SSH or HTTP credentials and target policy |
87
87
  | remote-daemon-unreachable | Target listener and actual running daemon identity |
88
+ | remote-outcome-unknown | The request may have arrived (timeout, dropped connection, unreadable reply): check its effect, for a send the target pane, before any retry |
88
89
  | remote-command-not-found | Remote CLI installation and executable lookup |
89
90
  | remote-command-failed | The remote operation's own status and error |
90
91
 
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "cross-host-rig-commands"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when addressing a registered remote OpenRig host, choosing its transport, or interpreting a cross-host result."
7
7
  files:
@@ -1,7 +1,7 @@
1
1
  # GENERATED by scripts/generate-context-packs.mjs — DO NOT EDIT.
2
2
  # Package-time projection of a canonical skill; regenerated every build.
3
3
  name: "human-in-the-loop"
4
- version: "0.6.8"
4
+ version: "0.6.10"
5
5
  taxonomy: "skills"
6
6
  purpose: "Use when classifying a slice closeout (auto-continue / human gate / park), routing a real decision to a human, or designing a human queue/dashboard surface. Treats humans as durable network participants with attention surfaces, queues, and decision records — escalation lands as a durable attention item, not a chat message. Approval is NOT required for every clean closeout; the default RSI conveyor continues unless an explicit human gate is reached."
7
7
  files: