@openrig/cli 0.5.4 → 0.5.5

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 (747) hide show
  1. package/daemon/assets/guidance/openrig-start.md +7 -0
  2. package/daemon/assets/onboarding/01-world-and-purpose.md +52 -0
  3. package/daemon/assets/onboarding/02-self-and-competent-action.md +57 -0
  4. package/daemon/assets/plugins/openrig-core/README.md +5 -2
  5. package/daemon/assets/plugins/openrig-core/hooks/claude.json +3 -12
  6. package/daemon/assets/plugins/openrig-core/hooks/codex.json +5 -12
  7. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +194 -124
  8. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +18 -23
  9. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/CHANGELOG.md +92 -0
  10. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/REVISION-GUIDE.md +34 -0
  11. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROADMAP.md +23 -0
  12. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROLLOUT.md +234 -0
  13. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/SKILL.md +404 -0
  14. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/compose.py +653 -0
  15. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/scaffold.sh +34 -0
  16. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-due.sh +32 -0
  17. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-stamp.sh +5 -0
  18. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trunk-diff.sh +18 -0
  19. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/LEARNED.md +40 -0
  20. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/NOTES.md +9 -0
  21. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/PLAYBOOK.md +5 -0
  22. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SOP.md +24 -0
  23. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SPEC.md +54 -0
  24. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +2 -0
  25. package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -0
  26. package/daemon/assets/plugins/openrig-core/skills/refocusing/references/refocus.md +22 -0
  27. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +221 -0
  28. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -3
  29. package/daemon/context-packs/onboarding-width/manifest.yaml +11 -0
  30. package/daemon/context-packs/{world/install/reference-material.md → onboarding-width/public-reference-material.md} +4 -26
  31. package/daemon/context-packs/{world/install/what-you-can-do.md → onboarding-width/public-what-you-can-do.md} +13 -9
  32. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  34. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/attention-queue/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/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/SKILL.md +21 -15
  54. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +3 -3
  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/brainstorming/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/process/executing-plans/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/process/using-superpowers/manifest.yaml +1 -1
  69. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/process/writing-plans/manifest.yaml +1 -1
  71. package/daemon/context-packs/world-example/manifest.yaml +8 -0
  72. package/daemon/context-packs/world-example/your-world.md +37 -0
  73. package/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
  74. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  75. package/daemon/dist/adapters/claude-code-adapter.js +57 -0
  76. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  77. package/daemon/dist/build-info.js +3 -3
  78. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  79. package/daemon/dist/db/all-migrations.js +4 -0
  80. package/daemon/dist/db/all-migrations.js.map +1 -1
  81. package/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
  82. package/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
  83. package/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
  84. package/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
  85. package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
  86. package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
  87. package/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
  88. package/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
  89. package/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
  90. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
  91. package/daemon/dist/domain/activity-taxonomy.js +99 -0
  92. package/daemon/dist/domain/activity-taxonomy.js.map +1 -0
  93. package/daemon/dist/domain/bind-plan.d.ts +19 -0
  94. package/daemon/dist/domain/bind-plan.d.ts.map +1 -0
  95. package/daemon/dist/domain/bind-plan.js +25 -0
  96. package/daemon/dist/domain/bind-plan.js.map +1 -0
  97. package/daemon/dist/domain/event-bus.d.ts +6 -0
  98. package/daemon/dist/domain/event-bus.d.ts.map +1 -1
  99. package/daemon/dist/domain/event-bus.js +15 -5
  100. package/daemon/dist/domain/event-bus.js.map +1 -1
  101. package/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
  102. package/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
  103. package/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
  104. package/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
  105. package/daemon/dist/domain/gateway/gateway-process.js +9 -0
  106. package/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
  107. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
  108. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
  109. package/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
  110. package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
  111. package/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
  112. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  113. package/daemon/dist/domain/gateway/human-registry.js +250 -0
  114. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  115. package/{dist → daemon/dist/domain/gateway}/slack/config.d.ts +8 -5
  116. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
  117. package/{dist → daemon/dist/domain/gateway}/slack/config.js +8 -6
  118. package/daemon/dist/domain/gateway/slack/config.js.map +1 -0
  119. package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.d.ts +1 -1
  120. package/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
  121. package/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
  122. package/{dist → daemon/dist/domain/gateway}/slack/inbound.d.ts +14 -3
  123. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
  124. package/{dist → daemon/dist/domain/gateway}/slack/inbound.js +6 -5
  125. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
  126. package/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
  127. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
  128. package/daemon/dist/domain/gateway/slack/message.js +164 -0
  129. package/daemon/dist/domain/gateway/slack/message.js.map +1 -0
  130. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
  131. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
  132. package/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
  133. package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
  134. package/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
  135. package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
  136. package/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
  137. package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
  138. package/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
  139. package/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
  140. package/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
  141. package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
  142. package/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
  143. package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
  144. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
  145. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
  146. package/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
  147. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
  148. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
  149. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
  150. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
  151. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
  152. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
  153. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
  154. package/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
  155. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
  156. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
  157. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
  158. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
  159. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
  160. package/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
  161. package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
  162. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
  163. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
  164. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
  165. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
  166. package/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
  167. package/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
  168. package/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
  169. package/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
  170. package/daemon/dist/domain/gateway/transport.js +9 -0
  171. package/daemon/dist/domain/gateway/transport.js.map +1 -1
  172. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  173. package/daemon/dist/domain/node-inventory.js +20 -0
  174. package/daemon/dist/domain/node-inventory.js.map +1 -1
  175. package/daemon/dist/domain/parked-query.d.ts +81 -0
  176. package/daemon/dist/domain/parked-query.d.ts.map +1 -0
  177. package/daemon/dist/domain/parked-query.js +126 -0
  178. package/daemon/dist/domain/parked-query.js.map +1 -0
  179. package/daemon/dist/domain/queue-pickup.d.ts +38 -0
  180. package/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
  181. package/daemon/dist/domain/queue-pickup.js +67 -0
  182. package/daemon/dist/domain/queue-pickup.js.map +1 -0
  183. package/daemon/dist/domain/queue-repository.d.ts +38 -10
  184. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  185. package/daemon/dist/domain/queue-repository.js +267 -35
  186. package/daemon/dist/domain/queue-repository.js.map +1 -1
  187. package/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
  188. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
  189. package/daemon/dist/domain/queue-stuck-sweep.js +348 -0
  190. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
  191. package/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
  192. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
  193. package/daemon/dist/domain/queue-wake-ladder.js +533 -0
  194. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
  195. package/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
  196. package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
  197. package/daemon/dist/domain/queue-wake-repository.js +80 -0
  198. package/daemon/dist/domain/queue-wake-repository.js.map +1 -0
  199. package/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
  200. package/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
  201. package/daemon/dist/domain/rebuild-priming-chain.js +71 -0
  202. package/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
  203. package/daemon/dist/domain/review/compose.d.ts +3 -1
  204. package/daemon/dist/domain/review/compose.d.ts.map +1 -1
  205. package/daemon/dist/domain/review/compose.js +14 -8
  206. package/daemon/dist/domain/review/compose.js.map +1 -1
  207. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  208. package/daemon/dist/domain/review/gather.js +3 -1
  209. package/daemon/dist/domain/review/gather.js.map +1 -1
  210. package/daemon/dist/domain/rigspec-instantiator.d.ts +3 -0
  211. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  212. package/daemon/dist/domain/rigspec-instantiator.js +18 -0
  213. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  214. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
  215. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
  216. package/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
  217. package/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
  218. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
  219. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
  220. package/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
  221. package/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
  222. package/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
  223. package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  224. package/daemon/dist/domain/scope/scope-approve.js +5 -4
  225. package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  226. package/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
  227. package/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  228. package/daemon/dist/domain/scope/scope-audit.js +78 -93
  229. package/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  230. package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  231. package/daemon/dist/domain/scope/scope-view-projection.js +7 -2
  232. package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  233. package/daemon/dist/domain/seat-activity-service.d.ts +91 -0
  234. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  235. package/daemon/dist/domain/seat-activity-service.js +416 -1
  236. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  237. package/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
  238. package/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
  239. package/daemon/dist/domain/seat-handover-planner.js +14 -1
  240. package/daemon/dist/domain/seat-handover-planner.js.map +1 -1
  241. package/daemon/dist/domain/seat-handover-service.d.ts +54 -1
  242. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  243. package/daemon/dist/domain/seat-handover-service.js +162 -19
  244. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  245. package/daemon/dist/domain/session-transport.js +1 -2
  246. package/daemon/dist/domain/session-transport.js.map +1 -1
  247. package/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
  248. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  249. package/daemon/dist/domain/successor-session-launcher.js +3 -3
  250. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  251. package/daemon/dist/domain/types.d.ts +33 -0
  252. package/daemon/dist/domain/types.d.ts.map +1 -1
  253. package/daemon/dist/domain/types.js.map +1 -1
  254. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  255. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  256. package/daemon/dist/domain/user-settings/settings-store.js +48 -0
  257. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  258. package/daemon/dist/domain/view-projector.d.ts +1 -1
  259. package/daemon/dist/domain/view-projector.d.ts.map +1 -1
  260. package/daemon/dist/domain/view-projector.js +41 -2
  261. package/daemon/dist/domain/view-projector.js.map +1 -1
  262. package/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  263. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  264. package/daemon/dist/domain/watchdog-policy-engine.js +3 -0
  265. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  266. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
  267. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  268. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
  269. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  270. package/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
  271. package/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
  272. package/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
  273. package/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
  274. package/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
  275. package/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  276. package/daemon/dist/gateway-slack-surface.d.ts +4 -0
  277. package/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
  278. package/daemon/dist/gateway-slack-surface.js +8 -0
  279. package/daemon/dist/gateway-slack-surface.js.map +1 -0
  280. package/daemon/dist/index.d.ts +29 -0
  281. package/daemon/dist/index.d.ts.map +1 -1
  282. package/daemon/dist/index.js +99 -4
  283. package/daemon/dist/index.js.map +1 -1
  284. package/daemon/dist/lib/pane-envelope.d.ts +1 -1
  285. package/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
  286. package/daemon/dist/lib/pane-envelope.js +8 -14
  287. package/daemon/dist/lib/pane-envelope.js.map +1 -1
  288. package/daemon/dist/routes/activity.d.ts +13 -0
  289. package/daemon/dist/routes/activity.d.ts.map +1 -1
  290. package/daemon/dist/routes/activity.js +186 -0
  291. package/daemon/dist/routes/activity.js.map +1 -1
  292. package/daemon/dist/routes/config.js +2 -2
  293. package/daemon/dist/routes/config.js.map +1 -1
  294. package/daemon/dist/routes/gateway.d.ts +3 -0
  295. package/daemon/dist/routes/gateway.d.ts.map +1 -0
  296. package/daemon/dist/routes/gateway.js +46 -0
  297. package/daemon/dist/routes/gateway.js.map +1 -0
  298. package/daemon/dist/routes/health-summary.d.ts.map +1 -1
  299. package/daemon/dist/routes/health-summary.js +8 -0
  300. package/daemon/dist/routes/health-summary.js.map +1 -1
  301. package/daemon/dist/routes/queue.d.ts.map +1 -1
  302. package/daemon/dist/routes/queue.js +3 -1
  303. package/daemon/dist/routes/queue.js.map +1 -1
  304. package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  305. package/daemon/dist/routes/scope-audit.js +72 -13
  306. package/daemon/dist/routes/scope-audit.js.map +1 -1
  307. package/daemon/dist/routes/seat.d.ts.map +1 -1
  308. package/daemon/dist/routes/seat.js +15 -0
  309. package/daemon/dist/routes/seat.js.map +1 -1
  310. package/daemon/dist/server.d.ts +17 -0
  311. package/daemon/dist/server.d.ts.map +1 -1
  312. package/daemon/dist/server.js +25 -4
  313. package/daemon/dist/server.js.map +1 -1
  314. package/daemon/dist/startup.d.ts +4 -0
  315. package/daemon/dist/startup.d.ts.map +1 -1
  316. package/daemon/dist/startup.js +33 -0
  317. package/daemon/dist/startup.js.map +1 -1
  318. package/daemon/docs/reference/agent-state-taxonomy.md +106 -0
  319. package/daemon/docs/reference/project-workspace.md +22 -14
  320. package/daemon/docs/reference/refocus-channel.md +27 -14
  321. package/daemon/docs/reference/sdlc-conventions.md +24 -13
  322. package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  323. package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +21 -15
  324. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +1 -1
  325. package/dist/build-info.js +3 -3
  326. package/dist/commands/config-init-workspace.d.ts.map +1 -1
  327. package/dist/commands/config-init-workspace.js +32 -57
  328. package/dist/commands/config-init-workspace.js.map +1 -1
  329. package/dist/commands/config.d.ts.map +1 -1
  330. package/dist/commands/config.js +5 -0
  331. package/dist/commands/config.js.map +1 -1
  332. package/dist/commands/daemon.d.ts.map +1 -1
  333. package/dist/commands/daemon.js +14 -4
  334. package/dist/commands/daemon.js.map +1 -1
  335. package/dist/commands/gateway.d.ts +19 -1
  336. package/dist/commands/gateway.d.ts.map +1 -1
  337. package/dist/commands/gateway.js +157 -33
  338. package/dist/commands/gateway.js.map +1 -1
  339. package/dist/commands/parked.d.ts +3 -0
  340. package/dist/commands/parked.d.ts.map +1 -0
  341. package/dist/commands/parked.js +83 -0
  342. package/dist/commands/parked.js.map +1 -0
  343. package/dist/commands/proof.d.ts +2 -1
  344. package/dist/commands/proof.d.ts.map +1 -1
  345. package/dist/commands/proof.js +8 -8
  346. package/dist/commands/proof.js.map +1 -1
  347. package/dist/commands/ps.d.ts +10 -0
  348. package/dist/commands/ps.d.ts.map +1 -1
  349. package/dist/commands/ps.js +14 -3
  350. package/dist/commands/ps.js.map +1 -1
  351. package/dist/commands/queue.d.ts.map +1 -1
  352. package/dist/commands/queue.js +31 -3
  353. package/dist/commands/queue.js.map +1 -1
  354. package/dist/commands/scope.d.ts.map +1 -1
  355. package/dist/commands/scope.js +255 -136
  356. package/dist/commands/scope.js.map +1 -1
  357. package/dist/commands/seat.d.ts.map +1 -1
  358. package/dist/commands/seat.js +40 -10
  359. package/dist/commands/seat.js.map +1 -1
  360. package/dist/commands/send.d.ts +1 -1
  361. package/dist/commands/send.d.ts.map +1 -1
  362. package/dist/commands/send.js +13 -14
  363. package/dist/commands/send.js.map +1 -1
  364. package/dist/commands/slack.d.ts +14 -28
  365. package/dist/commands/slack.d.ts.map +1 -1
  366. package/dist/commands/slack.js +73 -187
  367. package/dist/commands/slack.js.map +1 -1
  368. package/dist/commands/start.d.ts +3 -0
  369. package/dist/commands/start.d.ts.map +1 -1
  370. package/dist/commands/start.js +12 -5
  371. package/dist/commands/start.js.map +1 -1
  372. package/dist/commands/up.d.ts.map +1 -1
  373. package/dist/commands/up.js +11 -4
  374. package/dist/commands/up.js.map +1 -1
  375. package/dist/commands/view.d.ts +4 -2
  376. package/dist/commands/view.d.ts.map +1 -1
  377. package/dist/commands/view.js +1 -1
  378. package/dist/commands/view.js.map +1 -1
  379. package/dist/commands/watchdog.d.ts.map +1 -1
  380. package/dist/commands/watchdog.js +2 -1
  381. package/dist/commands/watchdog.js.map +1 -1
  382. package/dist/commands/workspace.js +1 -1
  383. package/dist/config-store.d.ts +15 -1
  384. package/dist/config-store.d.ts.map +1 -1
  385. package/dist/config-store.js +60 -0
  386. package/dist/config-store.js.map +1 -1
  387. package/dist/cross-host-target.d.ts.map +1 -1
  388. package/dist/cross-host-target.js +5 -4
  389. package/dist/cross-host-target.js.map +1 -1
  390. package/dist/daemon-lifecycle.d.ts +45 -3
  391. package/dist/daemon-lifecycle.d.ts.map +1 -1
  392. package/dist/daemon-lifecycle.js +126 -0
  393. package/dist/daemon-lifecycle.js.map +1 -1
  394. package/dist/index.d.ts.map +1 -1
  395. package/dist/index.js +2 -0
  396. package/dist/index.js.map +1 -1
  397. package/dist/lib/scope/capability-delta.d.ts +9 -0
  398. package/dist/lib/scope/capability-delta.d.ts.map +1 -0
  399. package/dist/lib/scope/capability-delta.js +73 -0
  400. package/dist/lib/scope/capability-delta.js.map +1 -0
  401. package/dist/lib/scope/scaffold-placeholder.d.ts +4 -5
  402. package/dist/lib/scope/scaffold-placeholder.d.ts.map +1 -1
  403. package/dist/lib/scope/scaffold-placeholder.js +6 -7
  404. package/dist/lib/scope/scaffold-placeholder.js.map +1 -1
  405. package/dist/lib/scope/scope-audit.d.ts +42 -3
  406. package/dist/lib/scope/scope-audit.d.ts.map +1 -1
  407. package/dist/lib/scope/scope-audit.js +78 -93
  408. package/dist/lib/scope/scope-audit.js.map +1 -1
  409. package/dist/lib/scope/scope-fs.d.ts +18 -14
  410. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  411. package/dist/lib/scope/scope-fs.js +60 -29
  412. package/dist/lib/scope/scope-fs.js.map +1 -1
  413. package/dist/lib/scope/templates.d.ts +17 -17
  414. package/dist/lib/scope/templates.d.ts.map +1 -1
  415. package/dist/lib/scope/templates.js +35 -39
  416. package/dist/lib/scope/templates.js.map +1 -1
  417. package/dist/lib/scope-templates/backlog-deprecation.md +3 -1
  418. package/dist/lib/scope-templates/backlog-tech-debt.md +3 -1
  419. package/dist/lib/scope-templates/bug-fix.md +3 -1
  420. package/dist/lib/scope-templates/capability-delta.md +60 -0
  421. package/dist/lib/scope-templates/mission-placeholder.md +9 -40
  422. package/dist/lib/scope-templates/mission-progress.md +5 -6
  423. package/dist/lib/scope-templates/mission-release.md +9 -40
  424. package/dist/lib/scope-templates/notes.md +14 -0
  425. package/dist/lib/scope-templates/placeholder.md +3 -1
  426. package/dist/lib/scope-templates/proof.md +1 -1
  427. package/dist/lib/scope-templates/release-feature.md +3 -1
  428. package/dist/lib/scope-templates/research.md +3 -1
  429. package/dist/lib/scope-templates/slice-progress.md +4 -5
  430. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
  431. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  432. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js +57 -0
  433. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  434. package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
  435. package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts.map +1 -1
  436. package/node_modules/@openrig/daemon/dist/db/all-migrations.js +4 -0
  437. package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
  438. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
  439. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
  440. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
  441. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
  442. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
  443. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
  444. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
  445. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
  446. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
  447. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
  448. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js +99 -0
  449. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js.map +1 -0
  450. package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts +19 -0
  451. package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts.map +1 -0
  452. package/node_modules/@openrig/daemon/dist/domain/bind-plan.js +25 -0
  453. package/node_modules/@openrig/daemon/dist/domain/bind-plan.js.map +1 -0
  454. package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts +6 -0
  455. package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts.map +1 -1
  456. package/node_modules/@openrig/daemon/dist/domain/event-bus.js +15 -5
  457. package/node_modules/@openrig/daemon/dist/domain/event-bus.js.map +1 -1
  458. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
  459. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
  460. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
  461. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
  462. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js +9 -0
  463. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
  464. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
  465. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
  466. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
  467. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
  468. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
  469. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  470. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js +250 -0
  471. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  472. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts +44 -0
  473. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
  474. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js +62 -0
  475. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js.map +1 -0
  476. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts +8 -0
  477. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
  478. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js +20 -0
  479. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
  480. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts +113 -0
  481. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
  482. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js +146 -0
  483. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
  484. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
  485. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
  486. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js +164 -0
  487. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js.map +1 -0
  488. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
  489. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
  490. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
  491. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
  492. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
  493. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
  494. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
  495. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
  496. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts +21 -0
  497. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
  498. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js +73 -0
  499. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
  500. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
  501. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
  502. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
  503. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
  504. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
  505. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
  506. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
  507. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
  508. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
  509. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
  510. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
  511. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
  512. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
  513. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
  514. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
  515. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
  516. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts +62 -0
  517. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
  518. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js +132 -0
  519. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
  520. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
  521. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
  522. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
  523. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
  524. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
  525. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
  526. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
  527. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
  528. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
  529. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
  530. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
  531. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
  532. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js +9 -0
  533. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js.map +1 -1
  534. package/node_modules/@openrig/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  535. package/node_modules/@openrig/daemon/dist/domain/node-inventory.js +20 -0
  536. package/node_modules/@openrig/daemon/dist/domain/node-inventory.js.map +1 -1
  537. package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts +81 -0
  538. package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts.map +1 -0
  539. package/node_modules/@openrig/daemon/dist/domain/parked-query.js +126 -0
  540. package/node_modules/@openrig/daemon/dist/domain/parked-query.js.map +1 -0
  541. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts +38 -0
  542. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
  543. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js +67 -0
  544. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js.map +1 -0
  545. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +38 -10
  546. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  547. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +267 -35
  548. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js.map +1 -1
  549. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
  550. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
  551. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js +348 -0
  552. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
  553. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
  554. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
  555. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js +533 -0
  556. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
  557. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
  558. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
  559. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js +80 -0
  560. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js.map +1 -0
  561. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
  562. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
  563. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js +71 -0
  564. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
  565. package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts +3 -1
  566. package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts.map +1 -1
  567. package/node_modules/@openrig/daemon/dist/domain/review/compose.js +14 -8
  568. package/node_modules/@openrig/daemon/dist/domain/review/compose.js.map +1 -1
  569. package/node_modules/@openrig/daemon/dist/domain/review/gather.d.ts.map +1 -1
  570. package/node_modules/@openrig/daemon/dist/domain/review/gather.js +3 -1
  571. package/node_modules/@openrig/daemon/dist/domain/review/gather.js.map +1 -1
  572. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts +3 -0
  573. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  574. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js +18 -0
  575. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  576. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
  577. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
  578. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
  579. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
  580. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
  581. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
  582. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
  583. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
  584. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
  585. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  586. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js +5 -4
  587. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  588. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
  589. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  590. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js +78 -93
  591. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  592. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  593. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js +7 -2
  594. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  595. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts +91 -0
  596. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  597. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js +416 -1
  598. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js.map +1 -1
  599. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
  600. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
  601. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js +14 -1
  602. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js.map +1 -1
  603. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts +54 -1
  604. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  605. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js +162 -19
  606. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js.map +1 -1
  607. package/node_modules/@openrig/daemon/dist/domain/session-transport.js +1 -2
  608. package/node_modules/@openrig/daemon/dist/domain/session-transport.js.map +1 -1
  609. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
  610. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  611. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js +3 -3
  612. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  613. package/node_modules/@openrig/daemon/dist/domain/types.d.ts +33 -0
  614. package/node_modules/@openrig/daemon/dist/domain/types.d.ts.map +1 -1
  615. package/node_modules/@openrig/daemon/dist/domain/types.js.map +1 -1
  616. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  617. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  618. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js +48 -0
  619. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  620. package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts +1 -1
  621. package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts.map +1 -1
  622. package/node_modules/@openrig/daemon/dist/domain/view-projector.js +41 -2
  623. package/node_modules/@openrig/daemon/dist/domain/view-projector.js.map +1 -1
  624. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  625. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  626. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js +3 -0
  627. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  628. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
  629. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  630. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
  631. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  632. package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
  633. package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
  634. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
  635. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
  636. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
  637. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  638. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts +4 -0
  639. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
  640. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js +8 -0
  641. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js.map +1 -0
  642. package/node_modules/@openrig/daemon/dist/index.d.ts +29 -0
  643. package/node_modules/@openrig/daemon/dist/index.d.ts.map +1 -1
  644. package/node_modules/@openrig/daemon/dist/index.js +99 -4
  645. package/node_modules/@openrig/daemon/dist/index.js.map +1 -1
  646. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts +1 -1
  647. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
  648. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js +8 -14
  649. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js.map +1 -1
  650. package/node_modules/@openrig/daemon/dist/routes/activity.d.ts +13 -0
  651. package/node_modules/@openrig/daemon/dist/routes/activity.d.ts.map +1 -1
  652. package/node_modules/@openrig/daemon/dist/routes/activity.js +186 -0
  653. package/node_modules/@openrig/daemon/dist/routes/activity.js.map +1 -1
  654. package/node_modules/@openrig/daemon/dist/routes/config.js +2 -2
  655. package/node_modules/@openrig/daemon/dist/routes/config.js.map +1 -1
  656. package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts +3 -0
  657. package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts.map +1 -0
  658. package/node_modules/@openrig/daemon/dist/routes/gateway.js +46 -0
  659. package/node_modules/@openrig/daemon/dist/routes/gateway.js.map +1 -0
  660. package/node_modules/@openrig/daemon/dist/routes/health-summary.d.ts.map +1 -1
  661. package/node_modules/@openrig/daemon/dist/routes/health-summary.js +8 -0
  662. package/node_modules/@openrig/daemon/dist/routes/health-summary.js.map +1 -1
  663. package/node_modules/@openrig/daemon/dist/routes/queue.d.ts.map +1 -1
  664. package/node_modules/@openrig/daemon/dist/routes/queue.js +3 -1
  665. package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
  666. package/node_modules/@openrig/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  667. package/node_modules/@openrig/daemon/dist/routes/scope-audit.js +72 -13
  668. package/node_modules/@openrig/daemon/dist/routes/scope-audit.js.map +1 -1
  669. package/node_modules/@openrig/daemon/dist/routes/seat.d.ts.map +1 -1
  670. package/node_modules/@openrig/daemon/dist/routes/seat.js +15 -0
  671. package/node_modules/@openrig/daemon/dist/routes/seat.js.map +1 -1
  672. package/node_modules/@openrig/daemon/dist/server.d.ts +17 -0
  673. package/node_modules/@openrig/daemon/dist/server.d.ts.map +1 -1
  674. package/node_modules/@openrig/daemon/dist/server.js +25 -4
  675. package/node_modules/@openrig/daemon/dist/server.js.map +1 -1
  676. package/node_modules/@openrig/daemon/dist/startup.d.ts +4 -0
  677. package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
  678. package/node_modules/@openrig/daemon/dist/startup.js +33 -0
  679. package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
  680. package/node_modules/@openrig/daemon/package.json +5 -1
  681. package/package.json +1 -1
  682. package/tui/dist/daemon-client.d.ts +5 -0
  683. package/tui/dist/daemon-client.d.ts.map +1 -1
  684. package/tui/dist/daemon-client.js +17 -0
  685. package/tui/dist/daemon-client.js.map +1 -1
  686. package/tui/dist/hydrate.d.ts.map +1 -1
  687. package/tui/dist/hydrate.js +12 -4
  688. package/tui/dist/hydrate.js.map +1 -1
  689. package/tui/dist/live-events.d.ts +21 -0
  690. package/tui/dist/live-events.d.ts.map +1 -0
  691. package/tui/dist/live-events.js +88 -0
  692. package/tui/dist/live-events.js.map +1 -0
  693. package/tui/dist/live.js +1 -1
  694. package/tui/dist/main.js +27 -8
  695. package/tui/dist/main.js.map +1 -1
  696. package/tui/dist/refresh.d.ts +10 -1
  697. package/tui/dist/refresh.d.ts.map +1 -1
  698. package/tui/dist/refresh.js +22 -2
  699. package/tui/dist/refresh.js.map +1 -1
  700. package/daemon/context-packs/world/install/01-world-from-primitives.md +0 -97
  701. package/daemon/context-packs/world/install/02-permission-self-sleep.md +0 -141
  702. package/daemon/context-packs/world/install/03-what-this-is-for.md +0 -86
  703. package/daemon/context-packs/world/install/04-ontology.md +0 -790
  704. package/daemon/context-packs/world/install/05-harness-power-use.md +0 -355
  705. package/daemon/context-packs/world/install/06-a-competent-turn.md +0 -225
  706. package/daemon/context-packs/world/install/manifest.yaml +0 -125
  707. package/dist/lib/scope-templates/mission-brief.md +0 -20
  708. package/dist/lib/scope-templates/mission-notes.md +0 -102
  709. package/dist/slack/config.d.ts.map +0 -1
  710. package/dist/slack/config.js.map +0 -1
  711. package/dist/slack/connector-server.d.ts +0 -31
  712. package/dist/slack/connector-server.d.ts.map +0 -1
  713. package/dist/slack/connector-server.js +0 -108
  714. package/dist/slack/connector-server.js.map +0 -1
  715. package/dist/slack/inbound-admission.d.ts.map +0 -1
  716. package/dist/slack/inbound-admission.js.map +0 -1
  717. package/dist/slack/inbound.d.ts.map +0 -1
  718. package/dist/slack/inbound.js.map +0 -1
  719. package/dist/slack/message.d.ts +0 -39
  720. package/dist/slack/message.d.ts.map +0 -1
  721. package/dist/slack/message.js +0 -88
  722. package/dist/slack/message.js.map +0 -1
  723. package/dist/slack/outbound.d.ts +0 -39
  724. package/dist/slack/outbound.d.ts.map +0 -1
  725. package/dist/slack/outbound.js +0 -63
  726. package/dist/slack/outbound.js.map +0 -1
  727. package/dist/slack/queue-bridge.d.ts +0 -61
  728. package/dist/slack/queue-bridge.d.ts.map +0 -1
  729. package/dist/slack/queue-bridge.js +0 -114
  730. package/dist/slack/queue-bridge.js.map +0 -1
  731. package/dist/slack/secrets.d.ts.map +0 -1
  732. package/dist/slack/secrets.js.map +0 -1
  733. package/dist/slack/slack-api.d.ts +0 -49
  734. package/dist/slack/slack-api.d.ts.map +0 -1
  735. package/dist/slack/slack-api.js +0 -110
  736. package/dist/slack/slack-api.js.map +0 -1
  737. package/dist/slack/slack-delivery.d.ts +0 -14
  738. package/dist/slack/slack-delivery.d.ts.map +0 -1
  739. package/dist/slack/slack-delivery.js +0 -28
  740. package/dist/slack/slack-delivery.js.map +0 -1
  741. package/dist/slack/state-store.d.ts.map +0 -1
  742. package/dist/slack/state-store.js.map +0 -1
  743. /package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.js +0 -0
  744. /package/{dist → daemon/dist/domain/gateway}/slack/secrets.d.ts +0 -0
  745. /package/{dist → daemon/dist/domain/gateway}/slack/secrets.js +0 -0
  746. /package/{dist → daemon/dist/domain/gateway}/slack/state-store.d.ts +0 -0
  747. /package/{dist → daemon/dist/domain/gateway}/slack/state-store.js +0 -0
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/env bash
2
+ # scaffold.sh topology <root> --node <relpath> [--node <relpath> ...]
3
+ # scaffold.sh work <root> --node <relpath> [--node <relpath> ...]
4
+ # Creates missing chain files from templates at root + each named node dir.
5
+ # NEVER overwrites an existing file (brownfield-safe by construction; greenfield
6
+ # and brownfield are the same command with different starting states).
7
+ # Never deletes anything. Reports created vs existing.
8
+ set -euo pipefail
9
+ MODE="${1:?usage: scaffold.sh <topology|work> <root> --node <relpath> ...}"
10
+ ROOT="${2:?root dir required}"; shift 2
11
+ HERE="$(cd "$(dirname "$0")" && pwd)"; TPL="$HERE/../templates"
12
+ case "$MODE" in
13
+ # Chains carry knowledge about a POSITION. SOP.md is knowledge about a KIND and now ships
14
+ # in the rig's mode plugin (openrig-lab | openrig-factory | openrig-hq) — it is NOT a chain
15
+ # and must not be scaffolded onto the tree. CULTURE.md ships with OpenRig.
16
+ topology) FILES=(LEARNED.md) ; ROOT_FILES=(LEARNED.md) ;;
17
+ # SPEC.md is the authored node (intent: in frontmatter). NOTES.md is the LIVED file — the
18
+ # scaffold creates its surface only; lived entries are never generated or projected. PROGRESS is derived;
19
+ # PROOF.md is authored by the prover when there is something to prove.
20
+ work) FILES=(SPEC.md NOTES.md) ; ROOT_FILES=(SPEC.md NOTES.md) ;;
21
+ *) echo "mode must be topology|work" >&2; exit 2 ;;
22
+ esac
23
+ NODES=()
24
+ while [[ $# -gt 0 ]]; do case "$1" in --node) NODES+=("$2"); shift 2;; *) echo "unknown arg $1" >&2; exit 2;; esac; done
25
+ place(){ # $1=dir $2=file
26
+ mkdir -p "$1"
27
+ if [[ -e "$1/$2" ]]; then echo " exists : $1/$2"
28
+ else cp "$TPL/$2" "$1/$2"; echo " CREATED: $1/$2 (template — UNSEEDED; the real owner seeds it)"; fi
29
+ }
30
+ echo "scaffold $MODE @ $ROOT"
31
+ touch "$ROOT/.compose-root" 2>/dev/null || true
32
+ for f in "${ROOT_FILES[@]}"; do place "$ROOT" "$f"; done
33
+ for n in ${NODES[@]+"${NODES[@]}"}; do for f in "${FILES[@]}"; do place "$ROOT/$n" "$f"; done; done
34
+ echo "done. Rules: existing files untouched; UNSEEDED templates await their owners; seat LEARNED.md is SELF-seeded (the audit) — never bulk-filled."
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/env bash
2
+ # trace-due.sh <seat-dir> [work-dir ...]
3
+ # Deterministic due-check for the alignment trace. Exit 0 + reason when DUE;
4
+ # exit 1 SILENTLY when not (the no-op path is the point: schedulers may fire
5
+ # this on cadence; the ACTION stays evidence-gated — fixed-cadence traces were
6
+ # empirically falsified; see SKILL.md §4).
7
+ set -euo pipefail
8
+ SEAT_DIR="${1:?usage: trace-due.sh <seat-dir> [work-dir ...]}"; shift || true
9
+ STAMP="$SEAT_DIR/.last-trace"
10
+ MIN_HOURS="${TRACE_MIN_HOURS:-6}" # never due more often than this
11
+ FORCE_HOURS="${TRACE_FORCE_HOURS:-72}" # due regardless of activity after this
12
+ now=$(date +%s)
13
+ if [[ ! -f "$STAMP" ]]; then
14
+ # never traced: due only if the seat shows any life at all
15
+ if [[ -n "$(find "$SEAT_DIR" "$@" -type f -newermt '-7 days' -print -quit 2>/dev/null)" ]]; then
16
+ echo "DUE: no trace on record and recent activity exists"; exit 0
17
+ fi
18
+ exit 1
19
+ fi
20
+ last=$(stat -f %m "$STAMP" 2>/dev/null || stat -c %Y "$STAMP") # BSD then GNU; date -r means different things on the two OSes
21
+ age_h=$(( (now - last) / 3600 ))
22
+ (( age_h < MIN_HOURS )) && exit 1
23
+ if (( age_h >= FORCE_HOURS )); then
24
+ echo "DUE: ${age_h}h since last trace (force threshold ${FORCE_HOURS}h)"; exit 0
25
+ fi
26
+ # due only if meaningful work accumulated since the stamp
27
+ for d in "$SEAT_DIR" "$@"; do
28
+ if [[ -n "$(find "$d" -type f -newer "$STAMP" ! -name '.last-trace' -print -quit 2>/dev/null)" ]]; then
29
+ echo "DUE: ${age_h}h since last trace and new activity under $d"; exit 0
30
+ fi
31
+ done
32
+ exit 1
@@ -0,0 +1,5 @@
1
+ #!/usr/bin/env bash
2
+ # trace-stamp.sh <seat-dir> — record that a trace was performed now.
3
+ set -euo pipefail
4
+ touch "${1:?usage: trace-stamp.sh <seat-dir>}/.last-trace"
5
+ echo "stamped: $1/.last-trace ($(date '+%Y-%m-%d %H:%M %Z'))"
@@ -0,0 +1,18 @@
1
+ #!/usr/bin/env bash
2
+ # trunk-diff.sh <root-dir> <state-file> [--name FILE ...]
3
+ # The governance pull loop: render the subtree, diff against your PREVIOUS
4
+ # render, update state. Reading the diff = updating your mental model of a
5
+ # changing topology without reading everything or being told anything.
6
+ set -euo pipefail
7
+ ROOT="${1:?usage: trunk-diff.sh <root-dir> <state-file> [--name FILE ...]}"
8
+ STATE="${2:?state-file required}"; shift 2
9
+ NAMES=("$@"); [[ ${#NAMES[@]} -eq 0 ]] && NAMES=(--name CULTURE.md --name PLAYBOOK.md --name LEARNED.md --name INTENT.md)
10
+ HERE="$(cd "$(dirname "$0")" && pwd)"
11
+ NEW="$(mktemp)"
12
+ python3 "$HERE/compose.py" down "$ROOT" "${NAMES[@]}" | grep -v '^<!-- GENERATED' > "$NEW"
13
+ if [[ -f "$STATE" ]]; then
14
+ if diff -u "$STATE" "$NEW"; then echo "── no changes since your last render ──"; fi
15
+ else
16
+ echo "── first render (no previous state); full content is the baseline ──"
17
+ fi
18
+ mv "$NEW" "$STATE"
@@ -0,0 +1,40 @@
1
+ ---
2
+ seat: <pod>-<member>@<rig> # or rig/pod/fleet coords at higher altitudes
3
+ template: <path-or-name of PLAYBOOK.md this diffs against> @ <version/sha>
4
+ owners: self (sole direct writer) · <orchestrator/PM> (by proposal) · hierarchy (boundaries only, marked)
5
+ updated: <YYYY-MM-DD from the clock command — never mental math>
6
+ status: UNSEEDED # the first real occupant replaces this line with: seeded-by-self <date>
7
+ ---
8
+ # LEARNED — <instance coords>
9
+ <!-- HARD CAP ~150 lines. At the cap: distill LESSONS into HOW I WORK, or expire them. -->
10
+
11
+ ## MY JOB HERE (≤10 lines)
12
+ <!-- This instance's actual function, in operational terms. If you cannot write
13
+ this section yourself, say so to your orchestrator — that discovery is the
14
+ audit working, not a failure. -->
15
+
16
+ ## STANDING DUTIES
17
+ <!-- One per line: DUTY — cadence — surface. These survive handovers ONLY if
18
+ enumerated here. -->
19
+ -
20
+
21
+ ## HOW I WORK
22
+ <!-- Learned SOP bullets. EVERY bullet carries its reason — a rule without its
23
+ why is scripture and will be misapplied. -->
24
+ -
25
+
26
+ ## GATES & AUTHORITIES
27
+ <!-- What I hold (granted in writing, cite the grant). What I must never infer. -->
28
+ -
29
+
30
+ ## KEY RELATIONSHIPS
31
+ <!-- who I hand to · who gates me · whose funnel I feed -->
32
+ -
33
+
34
+ ## TRIGGER POINTERS
35
+ <!-- situation → read this. Attach pointers to MOMENTS, not to boot. -->
36
+ -
37
+
38
+ ## LESSONS (append-only, dated, capped)
39
+ <!-- newest first. At cap: distill upward or expire. -->
40
+ -
@@ -0,0 +1,9 @@
1
+ ---
2
+ node: <mission | slice>
3
+ updated: <YYYY-MM-DD>
4
+ ---
5
+ # NOTES — <node>
6
+ <!-- The working record: what actually happened doing this work. Append-only,
7
+ dated entries, newest first. Corrections annotated, never swapped.
8
+ Seat-specific learnings do NOT belong here — they go to that seat's
9
+ LEARNED.md (this file is the WORK's memory, not the worker's). -->
@@ -0,0 +1,5 @@
1
+ # MOVED — this file is now SOP.md
2
+
3
+ Renamed PLAYBOOK.md -> SOP.md per owner naming ruling 2026-08-11 (names are
4
+ prompts; SOP is the stronger consult-and-follow trigger and the factory-native
5
+ term). Read ./SOP.md. One-transition-period pointer; do not edit here.
@@ -0,0 +1,24 @@
1
+ ---
2
+ kind: <seat-type | pod-type | rig-type | fleet>
3
+ owner: <spec author> # instances NEVER edit this file
4
+ updated: <YYYY-MM-DD>
5
+ status: UNSEEDED
6
+ ---
7
+ # SOP — <kind>
8
+ <!-- The TEMPLATE half: how this KIND of thing does its job, anywhere it is
9
+ instantiated. Absorbs the static role file at seat altitude. Instance-local
10
+ knowledge belongs in LEARNED.md beside this, never here. -->
11
+
12
+ ## PURPOSE
13
+ <!-- what this kind exists to do -->
14
+
15
+ ## CORE LOOP
16
+ <!-- the job's shape: inputs → work → outputs/handoffs -->
17
+
18
+ ## DEFAULT PRACTICES
19
+ <!-- each with its reason attached -->
20
+ -
21
+
22
+ ## BOUNDARIES
23
+ <!-- what this kind never does; where its authority ends -->
24
+ -
@@ -0,0 +1,54 @@
1
+ ---
2
+ node: <project | mission | slice>
3
+ intent: >-
4
+ <ONE sentence: what this node is FOR. This composes UP the chain, so write it to be
5
+ read from below by someone standing on a slice. Say the purpose, never the location —
6
+ "deferred features land here" is a routing rule and orients nobody.>
7
+ id: <OPR.x.y[.n] — minted by the PM; omit if unminted>
8
+ stage: wip
9
+ # stage: wip | provisional | established | canonical | superseded | retired
10
+ status: UNSEEDED
11
+ ---
12
+
13
+ <!-- ONE authored file per work node. README.md and IMPLEMENTATION-PRD.md fold into this.
14
+ PROOF.md stays separate and is good. PROGRESS.md is the authored acceptance checklist:
15
+ checkbox items are stored marks; every roll-up above them is derived, never hand-authored.
16
+ Legacy README.md nodes stay valid indefinitely; nothing is forced to migrate.
17
+
18
+ PROJECT and MISSION nodes: the frontmatter `intent:` IS the whole job. A mission
19
+ ORGANISES slices and carries the context they need; it specifies nothing. Keep the
20
+ body short or delete it — everything below this line is for SLICES.
21
+
22
+ WHATEVER BODY YOU DO WRITE, two tests per sentence:
23
+ PORTABILITY — if it would read correctly on a stranger's machine it is knowledge
24
+ about a KIND; it belongs in the operating-model skill, not on the tree.
25
+ VOLATILITY — a SHA, a count, a status, a roster: write the COMMAND that derives it,
26
+ never the answer. A value here is stale by the next fold.
27
+ And check the tree: traps and how-we-work live in LEARNED.md on the topology tree,
28
+ not here. This file is what is being BUILT.
29
+
30
+ SLICE nodes are the ONLY altitude that specifies. Keep the sections you need and
31
+ delete the rest; this is a starting shape, not a contract. Under the FACTORY operating
32
+ model this node also carries mini-requirements and a proof contract — see that mode's
33
+ plugin. Under the LAB it does not. -->
34
+
35
+ # <name>
36
+
37
+ ## What must be built
38
+
39
+ <!-- The change itself, at the altitude a builder can act on. -->
40
+
41
+ ## Why this is the shape
42
+
43
+ <!-- The reasoning a reader would otherwise have to reconstruct — especially any option
44
+ considered and rejected. This is the part that survives you. -->
45
+
46
+ ## How we will know it works
47
+
48
+ <!-- Verified by EFFECT: run it, look at the result. Name the command and what it should
49
+ print, not the feeling of being done. -->
50
+
51
+ ## Scope fences
52
+
53
+ <!-- What this deliberately does NOT include, so it neither swallows the release nor grows
54
+ during the build. Fences written after the fact are excuses; written now they hold. -->
@@ -44,10 +44,12 @@ shows an operator — `get` is the agent-facing pull.)
44
44
  These are auto-delivered to every rig; their name+description are already in your context. Open the body when the "when" matches.
45
45
 
46
46
  - **forming-an-openrig-mental-model** — first boot, or you're unsure how the pieces fit. The runtime mental model.
47
+ - **openrig-operating-model** — you do not know where context or work belongs, or you are about to duplicate knowledge. The two-tree placement and trace-to-root model.
47
48
  - **openrig-user** — you need a `rig` CLI command (send / queue / ps / whoami / scope / broadcast). The daily CLI surface.
48
49
  - **claude-compaction-restore** — you just compacted (Claude). Restore from durable evidence before resuming real work.
49
50
  - **session-compaction-and-restore** — preparing for, or recovering from, compaction (any runtime). The write- and read-side protocol.
50
51
  - **queue-handoff** — you're passing durable work to another seat or ending your turn. The queue is the work ledger, not chat.
52
+ - **refocusing** — a long-running seat may have lost the product outcome, crossed a major boundary, or compacted and needs a fresh path-based trace.
51
53
  - **seat-continuity-and-handover** — handing your seat's work across a restart or to another owner.
52
54
  <!-- Territory amended 2026-08-26 by desk ruling qitem-20260826080800-r054-s9a-scope-ruling. -->
53
55
  - **orienting-to-an-inherited-seat** — you just inherited an existing seat through a planned handover and need to verify its identity, state, and testimony.
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: refocusing
3
+ description: >-
4
+ Use when a long-running agent may have lost the product outcome, when context was compacted,
5
+ when work has crossed a major boundary, or when a fresh path-based trace is needed before the
6
+ next consequential action. Not for fresh-session orientation, waking an idle seat, or checkpoints.
7
+ metadata:
8
+ openrig:
9
+ stage: product
10
+ ---
11
+
12
+ # Refocusing
13
+
14
+ Refocus preserves a long session's earned expertise while re-grounding it in current intent and
15
+ lived context. It is not a restart, wake, or phase checkpoint.
16
+
17
+ Run the bundled trace from this skill directory instead of reconstructing the hierarchy from memory:
18
+
19
+ ```bash
20
+ python3 scripts/trace-to-root.py --trees both --depth light
21
+ ```
22
+
23
+ Use `--trees topology|work|both` to select context domains and `--depth light|full` to control how
24
+ much each node contributes. Light work traces compose `intent:` and name notes; full traces include
25
+ the complete node and notes bodies. The script resolves `topology.root` and `workspace.root` with
26
+ `rig config get`. When a current node cannot be derived, set `OPENRIG_REFOCUS_TOPOLOGY_NODE` or
27
+ `OPENRIG_REFOCUS_WORK_NODE`, or pass the matching `--*-start` option.
28
+
29
+ Read [references/refocus.md](references/refocus.md) when changing the automatic hook or its content
30
+ ladder. A missing chain file is evidence: report the gap and continue; never follow pointers to invent
31
+ a second parent.
@@ -0,0 +1,22 @@
1
+ # Refocus
2
+
3
+ 1. What is the person actually trying to get? Not your current task — the outcome.
4
+ 2. Does what you are doing RIGHT NOW move that? If you cannot say what a user gets, stop and say so.
5
+ 3. What have you concluded without opening the file or running the thing?
6
+
7
+ Discomfort on any of these is the signal: drift feels like work.
8
+
9
+ The `refocusing` skill carries the source-appropriate path-only trace. Its
10
+ `scripts/trace-to-root.py` walks both current trees by default: topology `LEARNED.md`, then work
11
+ `SPEC.md` intent plus `NOTES.md`. Change breadth with `OPENRIG_REFOCUS_TREES=topology|work|both`
12
+ and read depth with `OPENRIG_REFOCUS_DEPTH=light|full`.
13
+
14
+ Replace this default without editing the plugin. The content ladder, highest precedence first, is:
15
+
16
+ 1. `OPENRIG_REFOCUS_CONTENT_REF`, resolved by `rig context get`.
17
+ 2. `OPENRIG_REFOCUS_CONTENT_FILE`, an operator-authored file.
18
+ 3. `$OPENRIG_HOME/refocus/REFOCUS.md`, instance content.
19
+ 4. This shipped default.
20
+
21
+ Fresh seats receive the separate onboarding assets `openrig-onboarding-01.md` and
22
+ `openrig-onboarding-02.md`. This file only cites those assets; it does not copy their world install.
@@ -0,0 +1,221 @@
1
+ #!/usr/bin/env python3
2
+ """Render topology and work context by ascending directory paths only."""
3
+
4
+ import argparse
5
+ import json
6
+ import os
7
+ import re
8
+ import subprocess
9
+ from pathlib import Path
10
+
11
+ SHELVES = {"rigs", "pods", "seats", "missions", "slices"}
12
+
13
+
14
+ def rig_output(*args):
15
+ try:
16
+ result = subprocess.run(
17
+ ["rig", *args], capture_output=True, text=True, timeout=10, check=False
18
+ )
19
+ except (OSError, subprocess.SubprocessError):
20
+ return None
21
+ value = (result.stdout or "").strip()
22
+ return value if result.returncode == 0 and value else None
23
+
24
+
25
+ def configured_root(key, env_key):
26
+ value = os.environ.get(env_key) or rig_output("config", "get", key)
27
+ return Path(value).expanduser().resolve() if value else None
28
+
29
+
30
+ def under_root(path, root):
31
+ try:
32
+ path.relative_to(root)
33
+ return True
34
+ except ValueError:
35
+ return False
36
+
37
+
38
+ def ascent(start, root):
39
+ start = start.expanduser().resolve()
40
+ if not under_root(start, root):
41
+ return None, f"start is outside configured root: {start}"
42
+ nodes = []
43
+ current = start
44
+ while True:
45
+ if current.name not in SHELVES:
46
+ nodes.append(current)
47
+ if current == root:
48
+ break
49
+ parent = current.parent
50
+ if parent == current:
51
+ return None, f"could not reach configured root: {root}"
52
+ current = parent
53
+ return list(reversed(nodes)), None
54
+
55
+
56
+ def read(path):
57
+ try:
58
+ return path.read_text(encoding="utf8", errors="replace")
59
+ except OSError:
60
+ return None
61
+
62
+
63
+ def intent(text):
64
+ if not text or not text.startswith("---"):
65
+ return None
66
+ match = re.match(r"^---\s*\n(.*?)\n---(?:\s*\n|$)", text, re.S)
67
+ if not match:
68
+ return None
69
+ lines = match.group(1).splitlines()
70
+ for index, line in enumerate(lines):
71
+ found = re.match(r"^intent:\s*(.*)$", line)
72
+ if not found:
73
+ continue
74
+ value = found.group(1).strip()
75
+ if value in {"|", ">", "|-", ">-", "|+", ">+"}:
76
+ block = []
77
+ for later in lines[index + 1:]:
78
+ if later and not later[0].isspace():
79
+ break
80
+ block.append(later.strip())
81
+ return " ".join(part for part in block if part)
82
+ if len(value) >= 2 and value[0] == value[-1] and value[0] in {"'", '"'}:
83
+ if value[0] == '"':
84
+ try:
85
+ return json.loads(value)
86
+ except json.JSONDecodeError:
87
+ pass
88
+ return value[1:-1]
89
+ return value or None
90
+ return None
91
+
92
+
93
+ def light_learned(text):
94
+ if not text:
95
+ return ""
96
+ body = re.sub(r"^---\s*\n.*?\n---\s*\n", "", text, count=1, flags=re.S).strip()
97
+ if len(body) <= 800:
98
+ return body
99
+ boundary = body.rfind("\n", 0, 800)
100
+ return body[:boundary if boundary > 0 else 800].rstrip() + "\n[… use --depth full for the rest]"
101
+
102
+
103
+ def render_topology(start, root, depth):
104
+ output = ["## TOPOLOGY TRACE", f"root: {root}", f"start: {start}"]
105
+ nodes, error = ascent(start, root)
106
+ if error:
107
+ return "\n".join(output + [f"TRACE GAP — {error}"])
108
+ for node in nodes:
109
+ chain_file = node / "LEARNED.md"
110
+ text = read(chain_file)
111
+ label = node.relative_to(root) or Path(".")
112
+ if text is None:
113
+ output.append(f"\n### {label}\nMISSING LINK — {chain_file}")
114
+ continue
115
+ body = text.strip() if depth == "full" else light_learned(text)
116
+ output.append(f"\n### {label} · LEARNED.md\n{body}")
117
+ return "\n".join(output)
118
+
119
+
120
+ def render_work(start, root, depth):
121
+ output = ["## WORK TRACE", f"root: {root}", f"start: {start}"]
122
+ nodes, error = ascent(start, root)
123
+ if error:
124
+ return "\n".join(output + [f"TRACE GAP — {error}"])
125
+ for node in nodes:
126
+ label = node.relative_to(root) or Path(".")
127
+ spec = next((candidate for candidate in (node / "SPEC.md", node / "README.md") if candidate.is_file()), None)
128
+ if spec is None:
129
+ output.append(f"\n### {label}\nMISSING LINK — no SPEC.md or README.md at {node}")
130
+ else:
131
+ text = read(spec) or ""
132
+ if depth == "full":
133
+ body = text.strip()
134
+ else:
135
+ value = intent(text)
136
+ body = f"intent: {value}" if value else "MISSING INTENT — no readable intent: field"
137
+ output.append(f"\n### {label} · {spec.name}\n{body}")
138
+
139
+ notes = next((candidate for candidate in (node / "NOTES.md", node / "MISSION_NOTES.md") if candidate.is_file()), None)
140
+ if notes:
141
+ if depth == "full":
142
+ output.append(f"\nNOTES · {notes.name}\n{(read(notes) or '').strip()}")
143
+ else:
144
+ try:
145
+ size = notes.stat().st_size
146
+ except OSError:
147
+ size = 0
148
+ output.append(f"NOTES · {notes.name} · {size} bytes · {notes}")
149
+ else:
150
+ output.append(f"NOTES GAP — no NOTES.md or MISSION_NOTES.md at {node}")
151
+ return "\n".join(output)
152
+
153
+
154
+ def derive_topology_start(root):
155
+ explicit = os.environ.get("OPENRIG_REFOCUS_TOPOLOGY_NODE")
156
+ if explicit:
157
+ return Path(explicit)
158
+ raw = rig_output("whoami", "--json")
159
+ if not raw:
160
+ return None
161
+ try:
162
+ identity = json.loads(raw).get("identity", {})
163
+ except json.JSONDecodeError:
164
+ return None
165
+ rig = identity.get("rigName")
166
+ session = identity.get("sessionName")
167
+ if not rig or not session:
168
+ return None
169
+ seat = str(session).split("@", 1)[0]
170
+ return root / "rigs" / str(rig) / "seats" / seat
171
+
172
+
173
+ def derive_work_start(root):
174
+ explicit = os.environ.get("OPENRIG_REFOCUS_WORK_NODE")
175
+ if explicit:
176
+ return Path(explicit)
177
+ current = Path.cwd().resolve()
178
+ if not under_root(current, root):
179
+ return None
180
+ while under_root(current, root):
181
+ if (current / "SPEC.md").is_file() or (current / "README.md").is_file():
182
+ return current
183
+ if current == root:
184
+ break
185
+ current = current.parent
186
+ return None
187
+
188
+
189
+ def main():
190
+ parser = argparse.ArgumentParser(description=__doc__)
191
+ parser.add_argument("--trees", choices=("topology", "work", "both"), default=os.environ.get("OPENRIG_REFOCUS_TREES", "both"))
192
+ parser.add_argument("--depth", choices=("light", "full"), default=os.environ.get("OPENRIG_REFOCUS_DEPTH", "light"))
193
+ parser.add_argument("--topology-start")
194
+ parser.add_argument("--work-start")
195
+ args = parser.parse_args()
196
+
197
+ sections = []
198
+ if args.trees in {"topology", "both"}:
199
+ root = configured_root("topology.root", "OPENRIG_TOPOLOGY_ROOT")
200
+ if root is None:
201
+ sections.append("## TOPOLOGY TRACE\nTRACE GAP — topology.root is unresolved")
202
+ else:
203
+ start = Path(args.topology_start) if args.topology_start else derive_topology_start(root)
204
+ sections.append(render_topology(start, root, args.depth) if start else
205
+ "## TOPOLOGY TRACE\nTRACE GAP — current topology node is unresolved; set OPENRIG_REFOCUS_TOPOLOGY_NODE")
206
+
207
+ if args.trees in {"work", "both"}:
208
+ root = configured_root("workspace.root", "OPENRIG_WORKSPACE_ROOT")
209
+ if root is None:
210
+ sections.append("## WORK TRACE\nTRACE GAP — workspace.root is unresolved")
211
+ else:
212
+ start = Path(args.work_start) if args.work_start else derive_work_start(root)
213
+ sections.append(render_work(start, root, args.depth) if start else
214
+ "## WORK TRACE\nTRACE GAP — current work node is unresolved; set OPENRIG_REFOCUS_WORK_NODE")
215
+
216
+ print("\n\n".join(sections))
217
+ return 0
218
+
219
+
220
+ if __name__ == "__main__":
221
+ raise SystemExit(main())
@@ -87,9 +87,9 @@ tenure:
87
87
  - **tombstone** — one line: what this tenure did, written by the retiring agent itself
88
88
 
89
89
  **Why it works (zero search infrastructure):** any timestamped record — a git commit, a
90
- qitem, a MISSION_NOTES line, a stream item — joins to the seat's ledger by interval match →
91
- generation + session token → wake that tenure. One row per handover, append-only. (Per-seat
92
- MISSION_NOTES continuation entries already *are* this record the ledger formalizes them.)
90
+ qitem, a NOTES.md line, a stream item — joins to the seat's ledger by interval match →
91
+ generation + session token → wake that tenure. One row per handover, append-only. The
92
+ ledger is the tenure record; work-tree notes remain lived context, not identity state.
93
93
 
94
94
  **Crash-ended tenures** get their row appended **post-hoc** by the crash-cart / restore path,
95
95
  flagged **honest-approximate** (the boot-captured session id is what makes this recoverable).
@@ -0,0 +1,11 @@
1
+ # Public capability and source-map width for the default onboarding walk.
2
+ name: onboarding-width
3
+ version: "0.5.5"
4
+ purpose: "The public capability map and source map referenced by the default onboarding walk."
5
+ files:
6
+ - path: public-what-you-can-do.md
7
+ role: reference
8
+ summary: "The public OpenRig capability map."
9
+ - path: public-reference-material.md
10
+ role: reference
11
+ summary: "The public source map and trust guidance."
@@ -19,7 +19,7 @@ points and were written to be entered from:
19
19
  into the code and do not know which module owns the thing.
20
20
  - **`cli-reference.md` — the full `rig` command surface, ~106 KB.** Every group, subcommand, flag,
21
21
  JSON shape. **This is the authority on how a command works**, and the capabilities piece
22
- (`what-you-can-do.md`) is only the map to it.
22
+ (`public-what-you-can-do.md`) is only the map to it.
23
23
 
24
24
  **These are maintained, not archaeology.** `cli-reference.md` alone has forty-nine commits against
25
25
  it. Treat them as current.
@@ -40,28 +40,6 @@ Each of these carries frontmatter, and three fields are worth knowing by name:
40
40
  field is how you calibrate rather than guess. Where a doc and the live binary disagree, **the
41
41
  binary wins** — and the disagreement is worth reporting, not just working around.
42
42
 
43
- ## The corpus — under `shared-docs/` in the OpenRig home
44
-
45
- Twenty-one directories of accumulated writing. The ones you are most likely to want:
46
-
47
- | where | roughly | what it holds |
48
- |---|---|---|
49
- | `product/` | 103 files | what OpenRig is, who it is for, why it exists in this shape |
50
- | `conventions/` | 76 files | how things are done here — naming, scope, cadence, formats |
51
- | `field-notes/` | 141 files | what actually happened, written by whoever it happened to |
52
- | `primitives/` | 38 files | the load-bearing concepts, examined one at a time |
53
- | `doctrine/` | 10 files | the rulings that settled a recurring argument |
54
- | `corpus/` | 14 files | canon and insights, distilled |
55
-
56
- **A warning you will need, because it is not obvious from the directory names:** almost all of this
57
- was written to explain OpenRig **to a human**. It says *you stop being the router, the bookkeeping
58
- leaves your head, your job shrinks to judgment.* Read as-is, it is about somebody else.
59
-
60
- **The agent version is the same content with the subject swapped: you are the router now.** The
61
- bookkeeping moved to you. The judgment that was supposed to stay human is sitting in your seat.
62
- When you read the corpus, do that substitution as you go — otherwise you will absorb it as
63
- background about a user rather than as a description of your own job.
64
-
65
43
  ## The living answer — `--help`
66
44
 
67
45
  **The binary is always more current than anything written about it.** `rig <verb> --help` and
@@ -74,9 +52,9 @@ building a parallel solution out of primitives that already compose into the ans
74
52
 
75
53
  ## Outside the forest — when nothing on this machine can answer it
76
54
 
77
- **Everything above is this box.** The corpus, the as-built docs, `--help`, the disk. There is a
78
- whole class of question none of it reaches: what an external library actually does today, anything
79
- that changed after your training cutoff, what is true in the world rather than in this repo.
55
+ There is a whole class of question the source repo and live `--help` do not reach: what an external
56
+ library actually does today, anything that changed after your training cutoff, what is true in the
57
+ world rather than in this repo.
80
58
 
81
59
  **And the failure is the same one this page already warns about, pointed outward.** An agent that
82
60
  does not know the corpus exists invents instead of looking. An agent that does not know these exist
@@ -355,9 +355,9 @@ your circumstances is configuration, and the ones that are not, another agent ca
355
355
  - **`rig usage series`** — what a seat's token curve has looked like over time: climbing steadily,
356
356
  reset, or stopped reporting entirely. The last one is a signal, not a gap.
357
357
  - **`rig tui`** — the interactive view over rigs, pods, seats and specs. **`rig tui commands`**
358
- lists everything it can do without launching it. **`rig ui open`** is a browser view of the same
359
- territory experimental and in maintenance mode, so do not diagnose product behaviour from it;
360
- check the CLI.
358
+ lists everything it can do without launching it. **`rig ui open`** is unmaintained, best-effort,
359
+ and replaced by the TUI, so never diagnose product behaviour from the web UI. The TUI plus Slack
360
+ are the human surface; the CLI plus terminal are the agent surface.
361
361
  - **`rig mcp serve`** — how an agent that speaks MCP rather than shell drives OpenRig, and which
362
362
  operations are exposed that way. Relevant the moment a tool you are integrating cannot run a
363
363
  shell command.
@@ -380,12 +380,16 @@ database. It is one more set of primitives on a machine full of them.
380
380
  - **"Who should be working and isn't?"** — `rig ps --nodes` knows who is alive; the queue knows who
381
381
  owes. **Neither knows the interesting cell.** Cross them and *alive, holding work, and not
382
382
  moving* falls out — which is the actual question behind every "is the rig stuck."
383
- - **"Is that seat stuck or thinking?"** — `rig capture` for the screen, `claimedAt` for how long,
384
- `queue transitions` for what it recorded. **Liveness is not health:** a pane can render while
385
- nothing progresses, and no single surface reports intent.
386
- - **"Is this a park or a strand?"** the row cannot tell you; a deliberate park and a dropped
387
- baton are byte-identical on it. `queue transitions` is where the disposition lives. **When a
388
- conclusion rests on one field's current value, go find the thing that records change.**
383
+ - **"Is that seat stuck or thinking?"** — the row face answers this now (S04 pickup receipts):
384
+ every list/show projection carries a derived `pickup` state `working`, `stalled-after-claim`
385
+ (with its evidence named: claimed N min ago, zero substantive transitions since), `parked`, or
386
+ `unclaimed` and `rig view show pickup` lists every claimed row with it. The old by-hand join
387
+ (capture + `claimedAt` arithmetic + `queue transitions`) is RETIRED as a first move; `rig
388
+ capture` remains the second question (is the pane alive), never the state derivation.
389
+ - **"Is this a park or a strand?"** — the row face answers the pickup half: `parked` means the row is blocked,
390
+ whether or not it has a wake; a strand reads `stalled-after-claim` with named evidence. Wake
391
+ health and fired-but-unconsumed diagnosis come from `rig parked`, not the pickup projection.
392
+ `queue transitions` remains the audit trail for WHAT happened, not the tool for deriving pickup.
389
393
  - **"Did that actually land?"** — `queue show` truncates the body and `queue list` can report
390
394
  `bodyBytes=0`; neither means empty. **`sqlite3 "$OPENRIG_DB" "select length(body) …"` is the
391
395
  only answer.** The CLI is a projection; the database is the thing.
@@ -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.5.4"
4
+ version: "0.5.5"
5
5
  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."
6
6
  files:
7
7
  - path: "SKILL.md"