@openrig/cli 0.2.0 → 0.3.1

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 (635) hide show
  1. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +15 -0
  2. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +24 -0
  3. package/daemon/assets/plugins/openrig-core/LICENSE +200 -0
  4. package/daemon/assets/plugins/openrig-core/README.md +42 -0
  5. package/daemon/assets/plugins/openrig-core/hooks/claude.json +78 -0
  6. package/daemon/assets/plugins/openrig-core/hooks/codex.json +37 -0
  7. package/daemon/assets/{openrig-activity-hook-relay.cjs → plugins/openrig-core/hooks/scripts/activity-relay.cjs} +12 -0
  8. package/daemon/assets/plugins/openrig-core/hooks/scripts/compaction-restore-bridge.cjs +172 -0
  9. package/daemon/assets/plugins/openrig-core/skills/agent-startup-and-context-ingestion/SKILL.md +104 -0
  10. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +131 -0
  11. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +174 -0
  12. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/restore-from-jsonl.mjs +433 -0
  13. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/templates/compact-instruction.md +1 -0
  14. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/templates/post-compact-restore-instruction.md +1 -0
  15. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +305 -0
  16. package/daemon/{specs/agents/shared/skills/rig-architect → assets/plugins/openrig-core/skills/openrig-architect}/SKILL.md +38 -19
  17. package/daemon/assets/plugins/openrig-core/skills/openrig-operator/SKILL.md +222 -0
  18. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +597 -0
  19. package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +122 -0
  20. package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +137 -0
  21. package/daemon/assets/vm-preview-fixtures/README.md +48 -0
  22. package/daemon/assets/vm-preview-fixtures/workflows/sample-basic-loop.yaml +79 -0
  23. package/daemon/dist/adapters/claude-code-adapter.d.ts +11 -3
  24. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  25. package/daemon/dist/adapters/claude-code-adapter.js +58 -60
  26. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  27. package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
  28. package/daemon/dist/adapters/cmux-transport.js +81 -2
  29. package/daemon/dist/adapters/cmux-transport.js.map +1 -1
  30. package/daemon/dist/adapters/cmux.d.ts +4 -0
  31. package/daemon/dist/adapters/cmux.d.ts.map +1 -1
  32. package/daemon/dist/adapters/cmux.js +87 -0
  33. package/daemon/dist/adapters/cmux.js.map +1 -1
  34. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +14 -3
  35. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  36. package/daemon/dist/adapters/codex-runtime-adapter.js +43 -57
  37. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  38. package/daemon/dist/builtins/workflow-specs/basic-loop.yaml +76 -0
  39. package/daemon/dist/builtins/workflow-specs/conveyor.yaml +80 -0
  40. package/daemon/dist/db/migrations/026_inbox_entries.d.ts +1 -1
  41. package/daemon/dist/db/migrations/026_inbox_entries.js +1 -1
  42. package/daemon/dist/db/migrations/029_classifier_leases.d.ts +1 -1
  43. package/daemon/dist/db/migrations/029_classifier_leases.js +1 -1
  44. package/daemon/dist/db/migrations/037_mission_control_actions.d.ts +51 -0
  45. package/daemon/dist/db/migrations/037_mission_control_actions.d.ts.map +1 -0
  46. package/daemon/dist/db/migrations/037_mission_control_actions.js +74 -0
  47. package/daemon/dist/db/migrations/037_mission_control_actions.js.map +1 -0
  48. package/daemon/dist/db/migrations/038_workspace_primitive.d.ts +16 -0
  49. package/daemon/dist/db/migrations/038_workspace_primitive.d.ts.map +1 -0
  50. package/daemon/dist/db/migrations/038_workspace_primitive.js +20 -0
  51. package/daemon/dist/db/migrations/038_workspace_primitive.js.map +1 -0
  52. package/daemon/dist/db/migrations/039_queue_target_repo.d.ts +16 -0
  53. package/daemon/dist/db/migrations/039_queue_target_repo.d.ts.map +1 -0
  54. package/daemon/dist/db/migrations/039_queue_target_repo.js +21 -0
  55. package/daemon/dist/db/migrations/039_queue_target_repo.js.map +1 -0
  56. package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.d.ts +32 -0
  57. package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.d.ts.map +1 -0
  58. package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.js +37 -0
  59. package/daemon/dist/db/migrations/040_workflow_specs_diagnostic.js.map +1 -0
  60. package/daemon/dist/domain/active-lens-store.d.ts +23 -0
  61. package/daemon/dist/domain/active-lens-store.d.ts.map +1 -0
  62. package/daemon/dist/domain/active-lens-store.js +87 -0
  63. package/daemon/dist/domain/active-lens-store.js.map +1 -0
  64. package/daemon/dist/domain/agent-images/agent-image-library-service.d.ts +68 -0
  65. package/daemon/dist/domain/agent-images/agent-image-library-service.d.ts.map +1 -0
  66. package/daemon/dist/domain/agent-images/agent-image-library-service.js +339 -0
  67. package/daemon/dist/domain/agent-images/agent-image-library-service.js.map +1 -0
  68. package/daemon/dist/domain/agent-images/agent-image-types.d.ts +113 -0
  69. package/daemon/dist/domain/agent-images/agent-image-types.d.ts.map +1 -0
  70. package/daemon/dist/domain/agent-images/agent-image-types.js +24 -0
  71. package/daemon/dist/domain/agent-images/agent-image-types.js.map +1 -0
  72. package/daemon/dist/domain/agent-images/evidence-guard.d.ts +26 -0
  73. package/daemon/dist/domain/agent-images/evidence-guard.d.ts.map +1 -0
  74. package/daemon/dist/domain/agent-images/evidence-guard.js +185 -0
  75. package/daemon/dist/domain/agent-images/evidence-guard.js.map +1 -0
  76. package/daemon/dist/domain/agent-images/manifest-parser.d.ts +3 -0
  77. package/daemon/dist/domain/agent-images/manifest-parser.d.ts.map +1 -0
  78. package/daemon/dist/domain/agent-images/manifest-parser.js +114 -0
  79. package/daemon/dist/domain/agent-images/manifest-parser.js.map +1 -0
  80. package/daemon/dist/domain/agent-images/resume-token-discovery.d.ts +28 -0
  81. package/daemon/dist/domain/agent-images/resume-token-discovery.d.ts.map +1 -0
  82. package/daemon/dist/domain/agent-images/resume-token-discovery.js +83 -0
  83. package/daemon/dist/domain/agent-images/resume-token-discovery.js.map +1 -0
  84. package/daemon/dist/domain/agent-images/snapshot-capturer.d.ts +36 -0
  85. package/daemon/dist/domain/agent-images/snapshot-capturer.d.ts.map +1 -0
  86. package/daemon/dist/domain/agent-images/snapshot-capturer.js +58 -0
  87. package/daemon/dist/domain/agent-images/snapshot-capturer.js.map +1 -0
  88. package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
  89. package/daemon/dist/domain/agent-manifest.js +116 -37
  90. package/daemon/dist/domain/agent-manifest.js.map +1 -1
  91. package/daemon/dist/domain/agent-resolver.js +1 -1
  92. package/daemon/dist/domain/agent-resolver.js.map +1 -1
  93. package/daemon/dist/domain/agent-starter-resolver.d.ts +10 -16
  94. package/daemon/dist/domain/agent-starter-resolver.d.ts.map +1 -1
  95. package/daemon/dist/domain/agent-starter-resolver.js +11 -13
  96. package/daemon/dist/domain/agent-starter-resolver.js.map +1 -1
  97. package/daemon/dist/domain/classifier-lease-manager.d.ts +1 -1
  98. package/daemon/dist/domain/classifier-lease-manager.js +1 -1
  99. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +81 -0
  100. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -0
  101. package/daemon/dist/domain/claude-compaction-enforcer.js +242 -0
  102. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -0
  103. package/daemon/dist/domain/cmux-layout-service.d.ts +41 -0
  104. package/daemon/dist/domain/cmux-layout-service.d.ts.map +1 -0
  105. package/daemon/dist/domain/cmux-layout-service.js +184 -0
  106. package/daemon/dist/domain/cmux-layout-service.js.map +1 -0
  107. package/daemon/dist/domain/conflict-detector.d.ts.map +1 -1
  108. package/daemon/dist/domain/conflict-detector.js +6 -3
  109. package/daemon/dist/domain/conflict-detector.js.map +1 -1
  110. package/daemon/dist/domain/context-monitor.d.ts +20 -5
  111. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  112. package/daemon/dist/domain/context-monitor.js +63 -13
  113. package/daemon/dist/domain/context-monitor.js.map +1 -1
  114. package/daemon/dist/domain/context-packs/bundle-assembler.d.ts +49 -0
  115. package/daemon/dist/domain/context-packs/bundle-assembler.d.ts.map +1 -0
  116. package/daemon/dist/domain/context-packs/bundle-assembler.js +81 -0
  117. package/daemon/dist/domain/context-packs/bundle-assembler.js.map +1 -0
  118. package/daemon/dist/domain/context-packs/context-pack-library-service.d.ts +41 -0
  119. package/daemon/dist/domain/context-packs/context-pack-library-service.d.ts.map +1 -0
  120. package/daemon/dist/domain/context-packs/context-pack-library-service.js +148 -0
  121. package/daemon/dist/domain/context-packs/context-pack-library-service.js.map +1 -0
  122. package/daemon/dist/domain/context-packs/context-pack-types.d.ts +64 -0
  123. package/daemon/dist/domain/context-packs/context-pack-types.d.ts.map +1 -0
  124. package/daemon/dist/domain/context-packs/context-pack-types.js +22 -0
  125. package/daemon/dist/domain/context-packs/context-pack-types.js.map +1 -0
  126. package/daemon/dist/domain/context-packs/manifest-parser.d.ts +3 -0
  127. package/daemon/dist/domain/context-packs/manifest-parser.d.ts.map +1 -0
  128. package/daemon/dist/domain/context-packs/manifest-parser.js +74 -0
  129. package/daemon/dist/domain/context-packs/manifest-parser.js.map +1 -0
  130. package/daemon/dist/domain/context-usage-store.d.ts +14 -1
  131. package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
  132. package/daemon/dist/domain/context-usage-store.js +156 -1
  133. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  134. package/daemon/dist/domain/files/file-write-service.d.ts +61 -0
  135. package/daemon/dist/domain/files/file-write-service.d.ts.map +1 -0
  136. package/daemon/dist/domain/files/file-write-service.js +180 -0
  137. package/daemon/dist/domain/files/file-write-service.js.map +1 -0
  138. package/daemon/dist/domain/files/path-safety.d.ts +47 -0
  139. package/daemon/dist/domain/files/path-safety.d.ts.map +1 -0
  140. package/daemon/dist/domain/files/path-safety.js +176 -0
  141. package/daemon/dist/domain/files/path-safety.js.map +1 -0
  142. package/daemon/dist/domain/graph-projection.d.ts +14 -1
  143. package/daemon/dist/domain/graph-projection.d.ts.map +1 -1
  144. package/daemon/dist/domain/graph-projection.js +8 -0
  145. package/daemon/dist/domain/graph-projection.js.map +1 -1
  146. package/daemon/dist/domain/install-engine.d.ts.map +1 -1
  147. package/daemon/dist/domain/install-engine.js +22 -6
  148. package/daemon/dist/domain/install-engine.js.map +1 -1
  149. package/daemon/dist/domain/install-verifier.d.ts.map +1 -1
  150. package/daemon/dist/domain/install-verifier.js +10 -5
  151. package/daemon/dist/domain/install-verifier.js.map +1 -1
  152. package/daemon/dist/domain/kernel-boot-tracker.d.ts +74 -0
  153. package/daemon/dist/domain/kernel-boot-tracker.d.ts.map +1 -0
  154. package/daemon/dist/domain/kernel-boot-tracker.js +213 -0
  155. package/daemon/dist/domain/kernel-boot-tracker.js.map +1 -0
  156. package/daemon/dist/domain/kernel-boot.d.ts +50 -0
  157. package/daemon/dist/domain/kernel-boot.d.ts.map +1 -0
  158. package/daemon/dist/domain/kernel-boot.js +147 -0
  159. package/daemon/dist/domain/kernel-boot.js.map +1 -0
  160. package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
  161. package/daemon/dist/domain/managed-blocks.js +22 -3
  162. package/daemon/dist/domain/managed-blocks.js.map +1 -1
  163. package/daemon/dist/domain/mission-control/audit-browse.d.ts +26 -0
  164. package/daemon/dist/domain/mission-control/audit-browse.d.ts.map +1 -0
  165. package/daemon/dist/domain/mission-control/audit-browse.js +101 -0
  166. package/daemon/dist/domain/mission-control/audit-browse.js.map +1 -0
  167. package/daemon/dist/domain/mission-control/mission-control-action-log.d.ts +51 -0
  168. package/daemon/dist/domain/mission-control/mission-control-action-log.d.ts.map +1 -0
  169. package/daemon/dist/domain/mission-control/mission-control-action-log.js +124 -0
  170. package/daemon/dist/domain/mission-control/mission-control-action-log.js.map +1 -0
  171. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.d.ts +131 -0
  172. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.d.ts.map +1 -0
  173. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.js +232 -0
  174. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.js.map +1 -0
  175. package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts +90 -0
  176. package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts.map +1 -0
  177. package/daemon/dist/domain/mission-control/mission-control-read-layer.js +279 -0
  178. package/daemon/dist/domain/mission-control/mission-control-read-layer.js.map +1 -0
  179. package/daemon/dist/domain/mission-control/mission-control-write-contract.d.ts +69 -0
  180. package/daemon/dist/domain/mission-control/mission-control-write-contract.d.ts.map +1 -0
  181. package/daemon/dist/domain/mission-control/mission-control-write-contract.js +302 -0
  182. package/daemon/dist/domain/mission-control/mission-control-write-contract.js.map +1 -0
  183. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.d.ts +18 -0
  184. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.d.ts.map +1 -0
  185. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js +48 -0
  186. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js.map +1 -0
  187. package/daemon/dist/domain/mission-control/notification-adapter-types.d.ts +25 -0
  188. package/daemon/dist/domain/mission-control/notification-adapter-types.d.ts.map +1 -0
  189. package/daemon/dist/domain/mission-control/notification-adapter-types.js +7 -0
  190. package/daemon/dist/domain/mission-control/notification-adapter-types.js.map +1 -0
  191. package/daemon/dist/domain/mission-control/notification-adapter-webhook.d.ts +27 -0
  192. package/daemon/dist/domain/mission-control/notification-adapter-webhook.d.ts.map +1 -0
  193. package/daemon/dist/domain/mission-control/notification-adapter-webhook.js +47 -0
  194. package/daemon/dist/domain/mission-control/notification-adapter-webhook.js.map +1 -0
  195. package/daemon/dist/domain/mission-control/notification-dispatcher.d.ts +53 -0
  196. package/daemon/dist/domain/mission-control/notification-dispatcher.d.ts.map +1 -0
  197. package/daemon/dist/domain/mission-control/notification-dispatcher.js +181 -0
  198. package/daemon/dist/domain/mission-control/notification-dispatcher.js.map +1 -0
  199. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  200. package/daemon/dist/domain/node-inventory.js +24 -0
  201. package/daemon/dist/domain/node-inventory.js.map +1 -1
  202. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  203. package/daemon/dist/domain/node-launcher.js +7 -5
  204. package/daemon/dist/domain/node-launcher.js.map +1 -1
  205. package/daemon/dist/domain/plugin-discovery-service.d.ts +150 -0
  206. package/daemon/dist/domain/plugin-discovery-service.d.ts.map +1 -0
  207. package/daemon/dist/domain/plugin-discovery-service.js +468 -0
  208. package/daemon/dist/domain/plugin-discovery-service.js.map +1 -0
  209. package/daemon/dist/domain/plugin-vendor-service.d.ts +54 -0
  210. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -0
  211. package/daemon/dist/domain/plugin-vendor-service.js +111 -0
  212. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -0
  213. package/daemon/dist/domain/preview/preview-rate-limiter.d.ts +20 -0
  214. package/daemon/dist/domain/preview/preview-rate-limiter.d.ts.map +1 -0
  215. package/daemon/dist/domain/preview/preview-rate-limiter.js +46 -0
  216. package/daemon/dist/domain/preview/preview-rate-limiter.js.map +1 -0
  217. package/daemon/dist/domain/profile-resolver.d.ts +8 -3
  218. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  219. package/daemon/dist/domain/profile-resolver.js +69 -15
  220. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  221. package/daemon/dist/domain/progress/progress-indexer.d.ts +73 -0
  222. package/daemon/dist/domain/progress/progress-indexer.d.ts.map +1 -0
  223. package/daemon/dist/domain/progress/progress-indexer.js +210 -0
  224. package/daemon/dist/domain/progress/progress-indexer.js.map +1 -0
  225. package/daemon/dist/domain/project-classifier.d.ts +1 -1
  226. package/daemon/dist/domain/projection-planner.d.ts +7 -1
  227. package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
  228. package/daemon/dist/domain/projection-planner.js +44 -4
  229. package/daemon/dist/domain/projection-planner.js.map +1 -1
  230. package/daemon/dist/domain/queue-repository.d.ts +30 -5
  231. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  232. package/daemon/dist/domain/queue-repository.js +94 -27
  233. package/daemon/dist/domain/queue-repository.js.map +1 -1
  234. package/daemon/dist/domain/rehydrate-eligibility.d.ts +16 -0
  235. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -0
  236. package/daemon/dist/domain/rehydrate-eligibility.js +43 -0
  237. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -0
  238. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  239. package/daemon/dist/domain/restore-check-service.js +19 -6
  240. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  241. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  242. package/daemon/dist/domain/restore-orchestrator.js +4 -2
  243. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  244. package/daemon/dist/domain/rig-repository.d.ts +14 -0
  245. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  246. package/daemon/dist/domain/rig-repository.js +41 -0
  247. package/daemon/dist/domain/rig-repository.js.map +1 -1
  248. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  249. package/daemon/dist/domain/rig-teardown.js +5 -0
  250. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  251. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  252. package/daemon/dist/domain/rigspec-codec.js +15 -0
  253. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  254. package/daemon/dist/domain/rigspec-instantiator.d.ts +29 -0
  255. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  256. package/daemon/dist/domain/rigspec-instantiator.js +136 -4
  257. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  258. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  259. package/daemon/dist/domain/rigspec-schema.js +157 -4
  260. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  261. package/daemon/dist/domain/runtime-adapter.d.ts +11 -0
  262. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  263. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  264. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  265. package/daemon/dist/domain/session-transport.js +33 -0
  266. package/daemon/dist/domain/session-transport.js.map +1 -1
  267. package/daemon/dist/domain/skill-discovery.d.ts +51 -0
  268. package/daemon/dist/domain/skill-discovery.d.ts.map +1 -0
  269. package/daemon/dist/domain/skill-discovery.js +144 -0
  270. package/daemon/dist/domain/skill-discovery.js.map +1 -0
  271. package/daemon/dist/domain/skill-library-discovery.d.ts +68 -0
  272. package/daemon/dist/domain/skill-library-discovery.d.ts.map +1 -0
  273. package/daemon/dist/domain/skill-library-discovery.js +144 -0
  274. package/daemon/dist/domain/skill-library-discovery.js.map +1 -0
  275. package/daemon/dist/domain/slices/slice-detail-projector.d.ts +182 -0
  276. package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -0
  277. package/daemon/dist/domain/slices/slice-detail-projector.js +508 -0
  278. package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -0
  279. package/daemon/dist/domain/slices/slice-indexer.d.ts +137 -0
  280. package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -0
  281. package/daemon/dist/domain/slices/slice-indexer.js +585 -0
  282. package/daemon/dist/domain/slices/slice-indexer.js.map +1 -0
  283. package/daemon/dist/domain/spec-library-service.d.ts +23 -2
  284. package/daemon/dist/domain/spec-library-service.d.ts.map +1 -1
  285. package/daemon/dist/domain/spec-library-service.js +31 -1
  286. package/daemon/dist/domain/spec-library-service.js.map +1 -1
  287. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts +124 -0
  288. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts.map +1 -0
  289. package/daemon/dist/domain/spec-library-workflow-scanner.js +325 -0
  290. package/daemon/dist/domain/spec-library-workflow-scanner.js.map +1 -0
  291. package/daemon/dist/domain/spec-review-service.d.ts +1 -1
  292. package/daemon/dist/domain/spec-review-service.d.ts.map +1 -1
  293. package/daemon/dist/domain/spec-review-service.js +14 -1
  294. package/daemon/dist/domain/spec-review-service.js.map +1 -1
  295. package/daemon/dist/domain/startup-validation.d.ts.map +1 -1
  296. package/daemon/dist/domain/startup-validation.js +57 -11
  297. package/daemon/dist/domain/startup-validation.js.map +1 -1
  298. package/daemon/dist/domain/steering/health-summary.d.ts +39 -0
  299. package/daemon/dist/domain/steering/health-summary.d.ts.map +1 -0
  300. package/daemon/dist/domain/steering/health-summary.js +100 -0
  301. package/daemon/dist/domain/steering/health-summary.js.map +1 -0
  302. package/daemon/dist/domain/steering/steering-composer.d.ts +102 -0
  303. package/daemon/dist/domain/steering/steering-composer.d.ts.map +1 -0
  304. package/daemon/dist/domain/steering/steering-composer.js +263 -0
  305. package/daemon/dist/domain/steering/steering-composer.js.map +1 -0
  306. package/daemon/dist/domain/transcript-capture.d.ts.map +1 -1
  307. package/daemon/dist/domain/transcript-capture.js +7 -4
  308. package/daemon/dist/domain/transcript-capture.js.map +1 -1
  309. package/daemon/dist/domain/transcript-rotation.d.ts +29 -0
  310. package/daemon/dist/domain/transcript-rotation.d.ts.map +1 -0
  311. package/daemon/dist/domain/transcript-rotation.js +109 -0
  312. package/daemon/dist/domain/transcript-rotation.js.map +1 -0
  313. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  314. package/daemon/dist/domain/transcript-store.js +7 -1
  315. package/daemon/dist/domain/transcript-store.js.map +1 -1
  316. package/daemon/dist/domain/types.d.ts +128 -9
  317. package/daemon/dist/domain/types.d.ts.map +1 -1
  318. package/daemon/dist/domain/types.js +8 -1
  319. package/daemon/dist/domain/types.js.map +1 -1
  320. package/daemon/dist/domain/user-settings/settings-store.d.ts +66 -0
  321. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -0
  322. package/daemon/dist/domain/user-settings/settings-store.js +546 -0
  323. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -0
  324. package/daemon/dist/domain/view-event-bridge.d.ts.map +1 -1
  325. package/daemon/dist/domain/view-event-bridge.js +2 -3
  326. package/daemon/dist/domain/view-event-bridge.js.map +1 -1
  327. package/daemon/dist/domain/whoami-service.d.ts +29 -0
  328. package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
  329. package/daemon/dist/domain/whoami-service.js +68 -0
  330. package/daemon/dist/domain/whoami-service.js.map +1 -1
  331. package/daemon/dist/domain/workflow/slice-workflow-binding.d.ts +21 -0
  332. package/daemon/dist/domain/workflow/slice-workflow-binding.d.ts.map +1 -0
  333. package/daemon/dist/domain/workflow/slice-workflow-binding.js +103 -0
  334. package/daemon/dist/domain/workflow/slice-workflow-binding.js.map +1 -0
  335. package/daemon/dist/domain/workflow/slice-workflow-projection.d.ts +81 -0
  336. package/daemon/dist/domain/workflow/slice-workflow-projection.d.ts.map +1 -0
  337. package/daemon/dist/domain/workflow/slice-workflow-projection.js +127 -0
  338. package/daemon/dist/domain/workflow/slice-workflow-projection.js.map +1 -0
  339. package/daemon/dist/domain/workflow/starter-spec-loader.d.ts +51 -0
  340. package/daemon/dist/domain/workflow/starter-spec-loader.d.ts.map +1 -0
  341. package/daemon/dist/domain/workflow/starter-spec-loader.js +140 -0
  342. package/daemon/dist/domain/workflow/starter-spec-loader.js.map +1 -0
  343. package/daemon/dist/domain/workflow-projector.js +11 -3
  344. package/daemon/dist/domain/workflow-projector.js.map +1 -1
  345. package/daemon/dist/domain/workflow-spec-cache.d.ts +34 -0
  346. package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
  347. package/daemon/dist/domain/workflow-spec-cache.js +121 -15
  348. package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
  349. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +6 -0
  350. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -0
  351. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +252 -0
  352. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -0
  353. package/daemon/dist/domain/workspace/frontmatter-validator.d.ts +40 -0
  354. package/daemon/dist/domain/workspace/frontmatter-validator.d.ts.map +1 -0
  355. package/daemon/dist/domain/workspace/frontmatter-validator.js +185 -0
  356. package/daemon/dist/domain/workspace/frontmatter-validator.js.map +1 -0
  357. package/daemon/dist/domain/workspace/getting-started-narrative.d.ts +15 -0
  358. package/daemon/dist/domain/workspace/getting-started-narrative.d.ts.map +1 -0
  359. package/daemon/dist/domain/workspace/getting-started-narrative.js +237 -0
  360. package/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -0
  361. package/daemon/dist/domain/workspace/workspace-resolver.d.ts +25 -0
  362. package/daemon/dist/domain/workspace/workspace-resolver.d.ts.map +1 -0
  363. package/daemon/dist/domain/workspace/workspace-resolver.js +86 -0
  364. package/daemon/dist/domain/workspace/workspace-resolver.js.map +1 -0
  365. package/daemon/dist/index.d.ts +2 -1
  366. package/daemon/dist/index.d.ts.map +1 -1
  367. package/daemon/dist/index.js +56 -12
  368. package/daemon/dist/index.js.map +1 -1
  369. package/daemon/dist/lib/pane-envelope.d.ts +7 -0
  370. package/daemon/dist/lib/pane-envelope.d.ts.map +1 -0
  371. package/daemon/dist/lib/pane-envelope.js +38 -0
  372. package/daemon/dist/lib/pane-envelope.js.map +1 -0
  373. package/daemon/dist/middleware/auth-bearer-token.d.ts +91 -0
  374. package/daemon/dist/middleware/auth-bearer-token.d.ts.map +1 -0
  375. package/daemon/dist/middleware/auth-bearer-token.js +236 -0
  376. package/daemon/dist/middleware/auth-bearer-token.js.map +1 -0
  377. package/daemon/dist/openrig-compat.d.ts +1 -1
  378. package/daemon/dist/openrig-compat.d.ts.map +1 -1
  379. package/daemon/dist/openrig-compat.js +6 -4
  380. package/daemon/dist/openrig-compat.js.map +1 -1
  381. package/daemon/dist/routes/agent-images.d.ts +8 -0
  382. package/daemon/dist/routes/agent-images.d.ts.map +1 -0
  383. package/daemon/dist/routes/agent-images.js +253 -0
  384. package/daemon/dist/routes/agent-images.js.map +1 -0
  385. package/daemon/dist/routes/config.d.ts +3 -0
  386. package/daemon/dist/routes/config.d.ts.map +1 -0
  387. package/daemon/dist/routes/config.js +109 -0
  388. package/daemon/dist/routes/config.js.map +1 -0
  389. package/daemon/dist/routes/context-packs.d.ts +3 -0
  390. package/daemon/dist/routes/context-packs.d.ts.map +1 -0
  391. package/daemon/dist/routes/context-packs.js +129 -0
  392. package/daemon/dist/routes/context-packs.js.map +1 -0
  393. package/daemon/dist/routes/files.d.ts +17 -0
  394. package/daemon/dist/routes/files.d.ts.map +1 -0
  395. package/daemon/dist/routes/files.js +262 -0
  396. package/daemon/dist/routes/files.js.map +1 -0
  397. package/daemon/dist/routes/health-summary.d.ts +9 -0
  398. package/daemon/dist/routes/health-summary.d.ts.map +1 -0
  399. package/daemon/dist/routes/health-summary.js +33 -0
  400. package/daemon/dist/routes/health-summary.js.map +1 -0
  401. package/daemon/dist/routes/kernel-status.d.ts +3 -0
  402. package/daemon/dist/routes/kernel-status.d.ts.map +1 -0
  403. package/daemon/dist/routes/kernel-status.js +40 -0
  404. package/daemon/dist/routes/kernel-status.js.map +1 -0
  405. package/daemon/dist/routes/mission-control.d.ts +37 -0
  406. package/daemon/dist/routes/mission-control.d.ts.map +1 -0
  407. package/daemon/dist/routes/mission-control.js +306 -0
  408. package/daemon/dist/routes/mission-control.js.map +1 -0
  409. package/daemon/dist/routes/missions.d.ts +3 -0
  410. package/daemon/dist/routes/missions.d.ts.map +1 -0
  411. package/daemon/dist/routes/missions.js +195 -0
  412. package/daemon/dist/routes/missions.js.map +1 -0
  413. package/daemon/dist/routes/plugins.d.ts +3 -0
  414. package/daemon/dist/routes/plugins.d.ts.map +1 -0
  415. package/daemon/dist/routes/plugins.js +223 -0
  416. package/daemon/dist/routes/plugins.js.map +1 -0
  417. package/daemon/dist/routes/progress.d.ts +7 -0
  418. package/daemon/dist/routes/progress.d.ts.map +1 -0
  419. package/daemon/dist/routes/progress.js +33 -0
  420. package/daemon/dist/routes/progress.js.map +1 -0
  421. package/daemon/dist/routes/queue.d.ts.map +1 -1
  422. package/daemon/dist/routes/queue.js +52 -1
  423. package/daemon/dist/routes/queue.js.map +1 -1
  424. package/daemon/dist/routes/rig-cmux.d.ts +3 -0
  425. package/daemon/dist/routes/rig-cmux.d.ts.map +1 -0
  426. package/daemon/dist/routes/rig-cmux.js +121 -0
  427. package/daemon/dist/routes/rig-cmux.js.map +1 -0
  428. package/daemon/dist/routes/rigs.d.ts +3 -0
  429. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  430. package/daemon/dist/routes/rigs.js +73 -7
  431. package/daemon/dist/routes/rigs.js.map +1 -1
  432. package/daemon/dist/routes/rigspec.js +6 -3
  433. package/daemon/dist/routes/rigspec.js.map +1 -1
  434. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  435. package/daemon/dist/routes/sessions.js +119 -0
  436. package/daemon/dist/routes/sessions.js.map +1 -1
  437. package/daemon/dist/routes/skills.d.ts +3 -0
  438. package/daemon/dist/routes/skills.d.ts.map +1 -0
  439. package/daemon/dist/routes/skills.js +147 -0
  440. package/daemon/dist/routes/skills.js.map +1 -0
  441. package/daemon/dist/routes/slices.d.ts +9 -0
  442. package/daemon/dist/routes/slices.d.ts.map +1 -0
  443. package/daemon/dist/routes/slices.js +207 -0
  444. package/daemon/dist/routes/slices.js.map +1 -0
  445. package/daemon/dist/routes/spec-library.d.ts.map +1 -1
  446. package/daemon/dist/routes/spec-library.js +87 -5
  447. package/daemon/dist/routes/spec-library.js.map +1 -1
  448. package/daemon/dist/routes/steering.d.ts +7 -0
  449. package/daemon/dist/routes/steering.d.ts.map +1 -0
  450. package/daemon/dist/routes/steering.js +27 -0
  451. package/daemon/dist/routes/steering.js.map +1 -0
  452. package/daemon/dist/routes/up.d.ts.map +1 -1
  453. package/daemon/dist/routes/up.js +21 -3
  454. package/daemon/dist/routes/up.js.map +1 -1
  455. package/daemon/dist/routes/whoami.d.ts.map +1 -1
  456. package/daemon/dist/routes/whoami.js +6 -1
  457. package/daemon/dist/routes/whoami.js.map +1 -1
  458. package/daemon/dist/routes/workflow.d.ts.map +1 -1
  459. package/daemon/dist/routes/workflow.js +43 -0
  460. package/daemon/dist/routes/workflow.js.map +1 -1
  461. package/daemon/dist/routes/workspace.d.ts +3 -0
  462. package/daemon/dist/routes/workspace.d.ts.map +1 -0
  463. package/daemon/dist/routes/workspace.js +53 -0
  464. package/daemon/dist/routes/workspace.js.map +1 -0
  465. package/daemon/dist/server.d.ts +82 -0
  466. package/daemon/dist/server.d.ts.map +1 -1
  467. package/daemon/dist/server.js +82 -1
  468. package/daemon/dist/server.js.map +1 -1
  469. package/daemon/dist/startup.d.ts +9 -0
  470. package/daemon/dist/startup.d.ts.map +1 -1
  471. package/daemon/dist/startup.js +577 -5
  472. package/daemon/dist/startup.js.map +1 -1
  473. package/daemon/docs/reference/agent-spec.md +7 -7
  474. package/daemon/docs/reference/agent-startup-guide.md +2 -2
  475. package/daemon/docs/reference/project-workspace.md +102 -0
  476. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +1 -2
  477. package/daemon/specs/agents/apps/vault-specialist/guidance/role.md +0 -1
  478. package/daemon/specs/agents/conveyor/builder/agent.yaml +34 -0
  479. package/daemon/specs/agents/conveyor/builder/guidance/role.md +31 -0
  480. package/daemon/specs/agents/conveyor/builder/startup/context.md +9 -0
  481. package/daemon/specs/agents/conveyor/lead/agent.yaml +34 -0
  482. package/daemon/specs/agents/conveyor/lead/guidance/role.md +34 -0
  483. package/daemon/specs/agents/conveyor/lead/startup/context.md +15 -0
  484. package/daemon/specs/agents/conveyor/planner/agent.yaml +34 -0
  485. package/daemon/specs/agents/conveyor/planner/guidance/role.md +29 -0
  486. package/daemon/specs/agents/conveyor/planner/startup/context.md +12 -0
  487. package/daemon/specs/agents/conveyor/reviewer/agent.yaml +34 -0
  488. package/daemon/specs/agents/conveyor/reviewer/guidance/role.md +29 -0
  489. package/daemon/specs/agents/conveyor/reviewer/startup/context.md +10 -0
  490. package/daemon/specs/agents/design/product-designer/agent.yaml +0 -1
  491. package/daemon/specs/agents/development/implementer/agent.yaml +1 -2
  492. package/daemon/specs/agents/development/implementer/guidance/role.md +0 -1
  493. package/daemon/specs/agents/development/qa/agent.yaml +0 -1
  494. package/daemon/specs/agents/development/qa/guidance/role.md +0 -2
  495. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +1 -2
  496. package/daemon/specs/agents/orchestration/orchestrator/guidance/role.md +2 -3
  497. package/daemon/specs/agents/research/analyst/agent.yaml +0 -1
  498. package/daemon/specs/agents/research/synthesizer/agent.yaml +0 -1
  499. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +0 -1
  500. package/daemon/specs/agents/shared/agent.yaml +6 -8
  501. package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +361 -0
  502. package/daemon/specs/agents/shared/skills/core/openrig-installer/SKILL.md +142 -0
  503. package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +30 -0
  504. package/daemon/specs/agents/shared/skills/core/openrig-user-settings/SKILL.md +153 -0
  505. package/daemon/specs/agents/shared/skills/core/rig-lifecycle/SKILL.md +116 -0
  506. package/daemon/specs/agents/shared/skills/pods/development-team/SKILL.md +0 -1
  507. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +2 -2
  508. package/daemon/specs/agents/shared/skills/process/agent-browser/LOCAL-INSIGHTS.md +6 -6
  509. package/daemon/specs/agents/shared/skills/process/agent-browser/OPENRIG.md +40 -0
  510. package/daemon/specs/agents/shared/skills/process/agent-browser/SKILL.md +10 -0
  511. package/daemon/specs/agents/shared/skills/process/brainstorming/OPENRIG.md +48 -0
  512. package/daemon/specs/agents/shared/skills/process/brainstorming/SKILL.md +11 -0
  513. package/daemon/specs/agents/shared/skills/process/dogfood/SKILL.md +5 -0
  514. package/daemon/specs/agents/shared/skills/process/executing-plans/OPENRIG.md +56 -0
  515. package/daemon/specs/agents/shared/skills/process/executing-plans/SKILL.md +10 -0
  516. package/daemon/specs/agents/shared/skills/process/frontend-design/SKILL.md +5 -0
  517. package/daemon/specs/agents/shared/skills/process/systematic-debugging/SKILL.md +5 -0
  518. package/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md +5 -0
  519. package/daemon/specs/agents/shared/skills/process/using-superpowers/OPENRIG.md +48 -0
  520. package/daemon/specs/agents/shared/skills/process/using-superpowers/SKILL.md +11 -0
  521. package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +5 -0
  522. package/daemon/specs/agents/shared/skills/process/writing-plans/OPENRIG.md +52 -0
  523. package/daemon/specs/agents/shared/skills/process/writing-plans/SKILL.md +12 -2
  524. package/daemon/specs/rigs/launch/conveyor/CULTURE.md +34 -0
  525. package/daemon/specs/rigs/launch/conveyor/README.md +33 -0
  526. package/daemon/specs/rigs/launch/conveyor/rig.yaml +72 -0
  527. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/agent.yaml +35 -0
  528. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +50 -0
  529. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/startup/context.md +37 -0
  530. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/agent.yaml +35 -0
  531. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +49 -0
  532. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/startup/context.md +63 -0
  533. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/agent.yaml +35 -0
  534. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/guidance/role.md +33 -0
  535. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/startup/context.md +30 -0
  536. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +69 -0
  537. package/daemon/specs/rigs/launch/kernel/rig-claude-only.yaml +59 -0
  538. package/daemon/specs/rigs/launch/kernel/rig-codex-only.yaml +59 -0
  539. package/daemon/specs/rigs/launch/kernel/rig.yaml +69 -0
  540. package/daemon/specs/rigs/preview/product-team/CULTURE.md +2 -2
  541. package/daemon/specs/rigs/preview/product-team/rig.yaml +3 -4
  542. package/dist/commands/agent-image.d.ts +4 -0
  543. package/dist/commands/agent-image.d.ts.map +1 -0
  544. package/dist/commands/agent-image.js +352 -0
  545. package/dist/commands/agent-image.js.map +1 -0
  546. package/dist/commands/config-init-workspace.d.ts +35 -0
  547. package/dist/commands/config-init-workspace.d.ts.map +1 -0
  548. package/dist/commands/config-init-workspace.js +553 -0
  549. package/dist/commands/config-init-workspace.js.map +1 -0
  550. package/dist/commands/config.d.ts.map +1 -1
  551. package/dist/commands/config.js +86 -18
  552. package/dist/commands/config.js.map +1 -1
  553. package/dist/commands/context-pack.d.ts +4 -0
  554. package/dist/commands/context-pack.d.ts.map +1 -0
  555. package/dist/commands/context-pack.js +357 -0
  556. package/dist/commands/context-pack.js.map +1 -0
  557. package/dist/commands/daemon.d.ts.map +1 -1
  558. package/dist/commands/daemon.js +61 -1
  559. package/dist/commands/daemon.js.map +1 -1
  560. package/dist/commands/heartbeat.d.ts.map +1 -1
  561. package/dist/commands/heartbeat.js +0 -5
  562. package/dist/commands/heartbeat.js.map +1 -1
  563. package/dist/commands/import.d.ts.map +1 -1
  564. package/dist/commands/import.js +7 -2
  565. package/dist/commands/import.js.map +1 -1
  566. package/dist/commands/plugin.d.ts +4 -0
  567. package/dist/commands/plugin.d.ts.map +1 -0
  568. package/dist/commands/plugin.js +395 -0
  569. package/dist/commands/plugin.js.map +1 -0
  570. package/dist/commands/ps.d.ts.map +1 -1
  571. package/dist/commands/ps.js +173 -14
  572. package/dist/commands/ps.js.map +1 -1
  573. package/dist/commands/queue.d.ts.map +1 -1
  574. package/dist/commands/queue.js +9 -0
  575. package/dist/commands/queue.js.map +1 -1
  576. package/dist/commands/send.d.ts +15 -0
  577. package/dist/commands/send.d.ts.map +1 -1
  578. package/dist/commands/send.js +32 -1
  579. package/dist/commands/send.js.map +1 -1
  580. package/dist/commands/specs.d.ts +4 -2
  581. package/dist/commands/specs.d.ts.map +1 -1
  582. package/dist/commands/specs.js +12 -8
  583. package/dist/commands/specs.js.map +1 -1
  584. package/dist/commands/up.d.ts.map +1 -1
  585. package/dist/commands/up.js +30 -4
  586. package/dist/commands/up.js.map +1 -1
  587. package/dist/commands/whoami.d.ts.map +1 -1
  588. package/dist/commands/whoami.js +9 -4
  589. package/dist/commands/whoami.js.map +1 -1
  590. package/dist/commands/workflow.d.ts.map +1 -1
  591. package/dist/commands/workflow.js +37 -0
  592. package/dist/commands/workflow.js.map +1 -1
  593. package/dist/commands/workspace.d.ts +6 -0
  594. package/dist/commands/workspace.d.ts.map +1 -0
  595. package/dist/commands/workspace.js +83 -0
  596. package/dist/commands/workspace.js.map +1 -0
  597. package/dist/config-store.d.ts +90 -1
  598. package/dist/config-store.d.ts.map +1 -1
  599. package/dist/config-store.js +477 -42
  600. package/dist/config-store.js.map +1 -1
  601. package/dist/daemon-lifecycle.d.ts +42 -1
  602. package/dist/daemon-lifecycle.d.ts.map +1 -1
  603. package/dist/daemon-lifecycle.js +98 -7
  604. package/dist/daemon-lifecycle.js.map +1 -1
  605. package/dist/host-registry.d.ts +1 -1
  606. package/dist/host-registry.js +1 -1
  607. package/dist/index.d.ts +5 -0
  608. package/dist/index.d.ts.map +1 -1
  609. package/dist/index.js +8 -0
  610. package/dist/index.js.map +1 -1
  611. package/dist/openrig-compat.d.ts +1 -1
  612. package/dist/openrig-compat.d.ts.map +1 -1
  613. package/dist/openrig-compat.js +6 -4
  614. package/dist/openrig-compat.js.map +1 -1
  615. package/dist/restore-packet/claude-transcript-parser.js +1 -1
  616. package/dist/restore-packet/claude-transcript-parser.js.map +1 -1
  617. package/dist/restore-packet/codex-jsonl-parser.js +1 -1
  618. package/dist/restore-packet/codex-jsonl-parser.js.map +1 -1
  619. package/package.json +2 -2
  620. package/ui/dist/assets/index-C_Q5FczU.css +1 -0
  621. package/ui/dist/assets/index-Rl3ZBrUg.js +547 -0
  622. package/ui/dist/graphics/operator-climber-monochrome.png +0 -0
  623. package/ui/dist/index.html +3 -2
  624. package/daemon/specs/agents/shared/skills/claude-compact-in-place/SKILL.md +0 -100
  625. package/daemon/specs/agents/shared/skills/mental-model-ha/SKILL.md +0 -956
  626. package/daemon/specs/agents/shared/skills/process/containerized-e2e/SKILL.md +0 -256
  627. package/daemon/specs/agents/shared/skills/process/containerized-e2e/scripts/Dockerfile +0 -39
  628. package/daemon/specs/agents/shared/skills/process/containerized-e2e/scripts/build-e2e-image.sh +0 -37
  629. package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/control-plane-test.yaml +0 -40
  630. package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/e2e-report-template.md +0 -94
  631. package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/expansion-collision-fragment.yaml +0 -13
  632. package/daemon/specs/agents/shared/skills/process/containerized-e2e/templates/expansion-pod-fragment.yaml +0 -14
  633. package/ui/dist/assets/index-B09doO8H.js +0 -139
  634. package/ui/dist/assets/index-Dec25siz.css +0 -1
  635. package/ui/dist/assets/index-GNYaWmBj.js +0 -225
@@ -0,0 +1,142 @@
1
+ ---
2
+ name: openrig-installer
3
+ description: Use when installing or upgrading OpenRig on a host, especially the V0.3.1 upgrade flow which includes the substrate-kernel → daemon-managed-kernel migration ceremony. Covers npm install, rig setup, rig daemon start (auto-boots kernel), and the canonical verification commands. NOT for ordinary kernel operation post-install — use openrig-operator skill for that.
4
+ metadata:
5
+ openrig:
6
+ maturity: L2
7
+ distribution_scope: shipped
8
+ source_evidence: V0.3.1 slice 05-kernel-rig-as-default IMPLEMENTATION-PRD §8 + OQ-A=B migration-ceremony decision
9
+ ---
10
+
11
+ # OpenRig Installer
12
+
13
+ This skill teaches the operator agent how to install + upgrade
14
+ OpenRig cleanly. The V0.3.1 upgrade is the one with the migration
15
+ ceremony (substrate kernel → daemon-managed kernel); other upgrades
16
+ follow the same install / setup / start shape with no migration.
17
+
18
+ ## Fresh install
19
+
20
+ ```bash
21
+ npm install -g @openrig/cli
22
+ rig setup
23
+ ```
24
+
25
+ `rig setup` is idempotent — safe to re-run if a step fails. It probes
26
+ host prereqs (tmux present, Node version, writable state path,
27
+ optional cmux), then invokes `rig daemon start` per the L2 factoring
28
+ (OQ-B). The daemon's start path auto-boots the kernel rig per the
29
+ V0.3.1 slice 05 kernel-rig-as-default logic.
30
+
31
+ ## Verification after install
32
+
33
+ ```bash
34
+ rig ps --nodes --rig kernel --json
35
+ ```
36
+
37
+ Should report 4 members (advisor.lead + operator.agent +
38
+ operator.human + queue.worker) all ready. If a runtime is unavailable
39
+ the daemon picks the matching variant (`rig-claude-only.yaml` or
40
+ `rig-codex-only.yaml`); the topology stays the same shape with the
41
+ unavailable runtime omitted from the agent membership.
42
+
43
+ Entry point for chatting with the rig:
44
+
45
+ ```bash
46
+ rig capture advisor-lead@kernel
47
+ ```
48
+
49
+ Or click the CMUX button on the topology graph in the UI at
50
+ `/topology`.
51
+
52
+ ## V0.3.1 upgrade ceremony (one-time migration)
53
+
54
+ Operators with a kernel spec stored outside the daemon-managed
55
+ location (any pre-V0.3.1 layout, typically wherever you kept your
56
+ own `rigs/kernel/` directory) must migrate to
57
+ `~/.openrig/specs/rigs/kernel/` as a one-time step during the V0.3.1
58
+ upgrade. The V0.3.1 upgrade IS the migration moment; it's not a
59
+ separate ceremony.
60
+
61
+ ### Migration steps
62
+
63
+ 1. **Snapshot first.** Take a snapshot of the running substrate
64
+ kernel so the migration is reversible:
65
+
66
+ ```bash
67
+ rig snapshot kernel
68
+ ```
69
+
70
+ 2. **Stop the substrate kernel** (so the migration doesn't race a
71
+ running rig):
72
+
73
+ ```bash
74
+ rig down kernel --snapshot
75
+ ```
76
+
77
+ 3. **Copy your existing kernel spec** into the daemon-managed
78
+ location:
79
+
80
+ ```bash
81
+ mkdir -p ~/.openrig/specs/rigs/kernel
82
+ cp -r /path/to/old/kernel-spec/* ~/.openrig/specs/rigs/kernel/
83
+ ```
84
+
85
+ 4. **Upgrade the CLI + daemon**:
86
+
87
+ ```bash
88
+ npm install -g @openrig/cli@0.3.1
89
+ rig daemon stop
90
+ rig daemon start
91
+ ```
92
+
93
+ At this point the new daemon detects `~/.openrig/specs/rigs/kernel.yaml`
94
+ exists and skips the V0.3.1 builtin-kernel boot (the
95
+ already-managed-rig branch). The substrate-rooted topology
96
+ continues to run under daemon management.
97
+
98
+ 5. **Verify** the migrated kernel matches expectations:
99
+
100
+ ```bash
101
+ rig ps --nodes --rig kernel --json
102
+ ```
103
+
104
+ 6. **Decommission the old copy** (only after verifying the
105
+ daemon-managed copy works):
106
+
107
+ ```bash
108
+ rm -rf /path/to/old/kernel-spec
109
+ ```
110
+
111
+ ### If migration fails
112
+
113
+ The pre-step snapshot is the rollback. `rig restore <snapshot-id>
114
+ --rig kernel` revives the prior topology. Then `npm install -g
115
+ @openrig/cli@0.3.0` rolls the CLI back and you can retry later.
116
+
117
+ ## Operator agent's role in install + upgrade
118
+
119
+ The operator agent shepherds operators through these steps when the
120
+ user asks "how do I upgrade?" or "what's the V0.3.1 ceremony?". The
121
+ agent reads this skill on demand via `find-skills` — it does not
122
+ need to memorize the steps; it consults the canonical reference
123
+ (this file) and walks the operator through.
124
+
125
+ ## 3-part error remediation
126
+
127
+ | What failed | Why it matters | Fix |
128
+ |---|---|---|
129
+ | `npm install -g @openrig/cli` permission denied | Global install needs writable npm prefix; macOS Homebrew default is usually writable; some custom Node installs aren't | Either fix the npm prefix permissions or use `sudo npm install -g`; check `npm config get prefix` |
130
+ | `rig setup` host prereq fail | tmux, Node version, or writable state path missing | `rig doctor` lists each missing piece + the install command; run those, retry `rig setup` |
131
+ | `rig daemon start` auth-block error | Neither Claude Code nor Codex authenticated; kernel rig requires at least one | Run `claude auth login` OR `codex login`; then retry `rig daemon start` |
132
+ | `rig daemon start` "kernel already managed" | An existing managed rig named `kernel` exists; the daemon skips builtin-boot per design | This is the expected path after migration — no action needed |
133
+ | `rig ps --rig kernel --json` returns empty | Daemon healthy but no kernel rig managed; likely the migration step copied content but did not boot | `rig up kernel` from inside `~/.openrig/specs/rigs/kernel/`; or invoke the daemon's cold-boot path explicitly |
134
+
135
+ ## What this skill is NOT
136
+
137
+ - Not the canonical OpenRig command surface; that lives in the
138
+ `openrig-user` skill.
139
+ - Not the kernel-operating-procedure for post-install daily use;
140
+ that's `openrig-operator`.
141
+ - Not for project rigs; project rigs install themselves via `rig
142
+ up <spec>` after the kernel is in place.
@@ -8,6 +8,36 @@ description: Use when operating OpenRig with the `rig` CLI and you need the ship
8
8
  This is an as-built guide to the shipped `rig` CLI.
9
9
  Use current code and `rig ... --help` as ground truth if anything here ever conflicts with older planning docs.
10
10
 
11
+ This is not the config-layer or builder guide. Use the substrate control-plane guidance for `rigx`
12
+ and experimental overlays. Use the OpenRig builder guidance when changing OpenRig behavior,
13
+ doctrine, or release posture.
14
+
15
+ ## Runtime-Gated Coordination Primitives
16
+
17
+ OpenRig v0.2.0 includes the bundled PL-004 Coordination Primitive System: Phase A `rig stream` /
18
+ `rig queue`, Phase B `rig project` / `rig view`, Phase C `rig watchdog`, and Phase D `rig workflow`
19
+ / `workflow-keepalive`.
20
+
21
+ Do not confuse package/source truth with active daemon truth. These commands are shipped product
22
+ surfaces in v0.2.0+, but they need a v0.2.0+ daemon and matching SQLite schema at runtime.
23
+
24
+ Default posture:
25
+
26
+ - Treat daemon `rig queue`, `rig stream`, `rig project`, `rig view`, `rig watchdog`, and
27
+ `rig workflow` as the product coordination surfaces when the active daemon is v0.2.0 or newer.
28
+ - **CANONICAL SURFACE NOTE (2026-05-11)**: `rig queue` (daemon-backed SQLite) is the
29
+ canonical surface for queue routing since the 2026-05-11 host-CLI fix landed. Use
30
+ `rig queue create / handoff / update / show / list` for all substantive work.
31
+ - Use temporary substrate overlays such as `rigx queue`, `rigx stream`, `rigx project`, and
32
+ `rigx view-proto` only where the current OpenRig workstream explicitly says that legacy/control
33
+ layer is still in use. For queue specifically, `rigx queue` is recovery-only fallback;
34
+ qitems written via `rigx queue` are invisible to daemon-backed reads and break fleet-wide
35
+ routing discipline.
36
+ - If a daemon-backed coordination command fails, debug the command/runtime/schema edge directly;
37
+ do not assume the right workaround is to drop back to a config-layer primitive.
38
+ - Do not perform daemon stop/start, production DB copy/mutation, release, publish, or other
39
+ consequence-boundary actions unless the operator/workstream has granted that specific gate.
40
+
11
41
  ## Core Loop
12
42
 
13
43
  Most work in OpenRig reduces to this loop:
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: openrig-user-settings
3
+ description: Use when the user asks an OpenRig agent to read or change OpenRig configuration settings — workspace paths, file allowlists, progress scan roots, daemon port/host, transcripts, or anything stored in ~/.openrig/config.json
4
+ ---
5
+
6
+ # OpenRig User Settings
7
+
8
+ OpenRig settings live in `~/.openrig/config.json` and are managed via the
9
+ `rig config` CLI family. The agent-editable surface is **CLI shell-out**;
10
+ do NOT write the JSON file directly unless the operator specifically asks
11
+ for raw-text editing (which is handled by the UI Files browser, not by you).
12
+
13
+ ## Read
14
+
15
+ ```bash
16
+ rig config # all keys, value + source
17
+ rig config --json # JSON: full RiggedConfig
18
+ rig config --json --with-source # JSON: {key: {value, source, default}}
19
+ rig config get <key> # single value
20
+ rig config get <key> --show-source # value + source on one line
21
+ rig config get <key> --json # {value, source, default}
22
+ ```
23
+
24
+ Resolution order: **env var > config file > default**. Always use
25
+ `--show-source` (or `--json`) when reporting back to the operator so they
26
+ see *where* the value came from.
27
+
28
+ ## Write
29
+
30
+ ```bash
31
+ rig config set <key> <value> # set a key
32
+ rig config reset <key> # clear one override (revert to default)
33
+ rig config reset # delete the whole file
34
+ ```
35
+
36
+ ## Initialize a default workspace
37
+
38
+ ```bash
39
+ rig config init-workspace # scaffold ~/.openrig/workspace/ with missions + slices
40
+ rig config init-workspace --dry-run # show what would be created
41
+ rig config init-workspace --root /path # use a custom root
42
+ rig config init-workspace --force # overwrite scaffolded files (NOT operator content)
43
+ ```
44
+
45
+ This creates a file-backed Project workspace under the workspace root:
46
+
47
+ ```text
48
+ README.md
49
+ STEERING.md
50
+ missions/<mission-id>/README.md
51
+ missions/<mission-id>/PROGRESS.md
52
+ missions/<mission-id>/slices/<slice-id>/README.md
53
+ progress/
54
+ field-notes/
55
+ specs/
56
+ ```
57
+
58
+ It seeds two starter missions with multiple slices so the Project UI has a
59
+ real mission/slice map out of the box. It is operator-explicit; do NOT run it
60
+ on your own initiative unless the operator asks for workspace initialization
61
+ or repair.
62
+
63
+ ## Common keys
64
+
65
+ | Key | Type | Purpose |
66
+ |---|---|---|
67
+ | `daemon.port` | number | OpenRig daemon HTTP port (default 7433) |
68
+ | `daemon.host` | string | Daemon bind host (default 127.0.0.1) |
69
+ | `db.path` | string | SQLite DB path (default ~/.openrig/openrig.sqlite) |
70
+ | `transcripts.enabled` | boolean | Whether the daemon writes transcripts |
71
+ | `transcripts.path` | string | Transcripts dir (default ~/.openrig/transcripts) |
72
+ | `workspace.root` | string | Single-root override (default ~/.openrig/workspace) |
73
+ | `workspace.slices_root` | string | Slice discovery root; default `<root>/missions` |
74
+ | `workspace.steering_path` | string | STEERING.md path; default `<root>/STEERING.md` |
75
+ | `workspace.field_notes_root` | string | Field notes dir; default `<root>/field-notes` |
76
+ | `workspace.specs_root` | string | Specs dir; default `<root>/specs` |
77
+ | `files.allowlist` | string | `name:/abs/path,name:/abs/path` — UI Files browser roots |
78
+ | `progress.scan_roots` | string | `name:/abs/path,name:/abs/path` — Progress browse roots |
79
+
80
+ Resolution order for workspace per-subdir keys: per-subdir override >
81
+ `workspace.root` cascade > built-in default.
82
+
83
+ ## Common operator requests → canonical commands
84
+
85
+ > **"Make the UI work against an existing workspace layout"**:
86
+ > set the per-subdir workspace overrides explicitly:
87
+ >
88
+ > ```bash
89
+ > rig config set workspace.slices_root /path/to/your/workspace/missions
90
+ > rig config set workspace.steering_path /path/to/your/workspace/STEERING.md
91
+ > rig config set workspace.progress_scan_roots 'work:/path/to/your/workspace,missions:/path/to/your/workspace/missions'
92
+ > rig config set workspace.field_notes_root /path/to/your/workspace/field-notes
93
+ > ```
94
+ >
95
+ > No restart needed for the CLI; for the daemon's reads to pick up
96
+ > changes affecting startup-time wiring (`files.allowlist`,
97
+ > `progress.scan_roots`), restart with `rig daemon restart`.
98
+
99
+ > **"Initialize a default workspace"**:
100
+ >
101
+ > ```bash
102
+ > rig config init-workspace
103
+ > ```
104
+
105
+ After initialization, the Project UI expects this mapping:
106
+
107
+ - `workspace.root` maps to the Project workspace.
108
+ - `workspace.root/missions/<mission-id>` maps to a Project mission.
109
+ - `workspace.root/missions/<mission-id>/slices/<slice-id>` maps to a Project slice.
110
+
111
+ Queue item bodies or tags should mention the mission id and slice id when the
112
+ work belongs to a slice. That lets the Project Story, Queue, Tests, and
113
+ Topology tabs attach runtime work to the filesystem slice.
114
+
115
+ > **"Allow the file browser to see X directory"**:
116
+ >
117
+ > ```bash
118
+ > # Append to existing list (operator decides the name token):
119
+ > rig config get files.allowlist --show-source # check current
120
+ > rig config set files.allowlist 'workspace:/path/to/ws,docs:/path/to/docs'
121
+ > rig daemon restart # picks up new roots
122
+ > ```
123
+
124
+ > **"What's my current setting for X and where does it come from?"**:
125
+ >
126
+ > ```bash
127
+ > rig config get <key> --show-source
128
+ > ```
129
+
130
+ ## When NOT to use this skill
131
+
132
+ - **Per-rig config** — settings are host-global at v0; per-rig is v0+1.
133
+ - **Secrets / credentials** — the `vault.specialist` managed-app handles
134
+ secrets. Don't put API keys or tokens in `~/.openrig/config.json`.
135
+ - **Settings sync across hosts** — out of scope at v0.
136
+
137
+ ## Errors you might see
138
+
139
+ - `Unknown config key "<x>". Valid keys: …` — the key name is wrong.
140
+ Check the table above; suggest the correct key.
141
+ - `Config file at <path> is malformed. Fix the JSON or reset with: rig config reset` —
142
+ hand-edit broke the JSON. Operator can `rig config reset` (deletes the
143
+ whole file) or fix the syntax in the Files browser.
144
+ - `Invalid value for <key>: expected a number/true-false, got "<x>"` —
145
+ wrong type for a typed key. Reach for the key's type in the table.
146
+
147
+ ## Provenance + safety
148
+
149
+ - Never write to `~/.openrig/config.json` directly. Use `rig config set`.
150
+ - Don't run `rig config init-workspace` on your own initiative — wait for
151
+ an operator request.
152
+ - Always cite the resolved source (env / file / default) when reporting
153
+ values back, so the operator knows whether their change actually took.
@@ -0,0 +1,116 @@
1
+ ---
2
+ name: rig-lifecycle
3
+ description: Use when reasoning about the rig lifecycle operations family (create / start / stop / resume / restore / snapshot / release / unclaim / destroy), reading or trusting `rig ps` / lifecycle projections after recovery, or designing proof for a lifecycle scenario. Covers the 4 failure modes (auto-restore creates partial rig; projections report healthier than reality; provider auth treated as impl work; resume succeeds for one runtime fails another) plus the restore-honesty rule (failed resume is FAILED loudly — no auto fresh fallback).
4
+ metadata:
5
+ openrig:
6
+ stage: factory-approved
7
+ last_verified: "2026-05-04"
8
+ distribution_scope: product-bound
9
+ source_evidence: |
10
+ Lifecycle Reboot/Recovery Scenario Matrix (Tier 1 complete; Tier 2
11
+ human-gated). Codex auth-refusal surfaces as attention_required.
12
+ sibling_skills:
13
+ - openrig-user
14
+ - openrig-operator
15
+ - seat-continuity-and-handover
16
+ transfer_test: pending
17
+ ---
18
+
19
+ # Rig Lifecycle
20
+
21
+ The family of operations that **create, start, stop, resume, restore,
22
+ snapshot, release, unclaim, and destroy** OpenRig-managed topologies.
23
+ Includes the user story after reboot: **"bring my work back without
24
+ turning a clean recovery into a cleanup project."**
25
+
26
+ If lifecycle is brittle, every higher-level primitive inherits that
27
+ brittleness. Queue, workflow, seat continuity, cross-host operation,
28
+ and RSI all assume that rigs and seats can be restored into known
29
+ states.
30
+
31
+ ## Use this when
32
+
33
+ - Operating `rig up / down / restore / resume / snapshot / release / unclaim / destroy`
34
+ - Reading `rig ps` after a reboot or recovery and deciding what to trust
35
+ - Designing proof for a lifecycle scenario (clean start / warm resume / host reboot / provider auth loss / partial boot / operator recovery)
36
+ - Reasoning about restore-outcome semantics (`resumed` / `rebuilt` / `fresh` / `failed` / `attention_required`)
37
+ - Auditing whether a lifecycle proof is in-process bedrock vs requires real reboot evidence
38
+
39
+ ## Don't use this when
40
+
41
+ - The operation is single-command and deterministic — use `openrig-user` skill for CLI surface
42
+ - The work is operator-level configuration of OpenRig itself — use `openrig-operator`
43
+ - The work is rig spec authoring — use `openrig-architect`
44
+
45
+ ## Failure modes (4)
46
+
47
+ 1. **Auto-restore creates a partially restored rig that must be cleaned up before real recovery.** Partial restore looks like recovery but isn't; cleanup-before-recovery becomes the actual workload.
48
+ 2. **`rig ps` or lifecycle projections report a healthier state than the runtime actually has.** Projections are summaries; the runtime is truth. Don't trust projections silently.
49
+ 3. **Provider auth is unavailable after reboot and the system treats that as implementation work** instead of a human/environment decision. Auth issues are environmental; route to human.
50
+ 4. **Resume succeeds for one runtime/provider but fails for another scenario that was never tested.** Per-runtime parity assumptions break silently; matrix proof catches them.
51
+
52
+ ## Restore-honesty rule (load-bearing)
53
+
54
+ **Failed resume is FAILED loudly.** No automatic fresh fallback. Fresh
55
+ launch is **explicit follow-up only.** This is enforced architecturally
56
+ at the daemon level (per `architecture.md` §7 rule 15).
57
+
58
+ The locked restore-outcome vocabulary:
59
+
60
+ | Outcome | Meaning |
61
+ |---|---|
62
+ | `resumed` | Native runtime resumed the same conversation |
63
+ | `rebuilt` | New process assembled from artifacts (`session_source: mode: rebuild`) |
64
+ | `fresh` | New process with no prior continuity |
65
+ | `failed` | Restore attempted and failed; no automatic fallback |
66
+ | `attention_required` | Recoverable blocker (provider auth refused, etc.); needs operator action |
67
+ | `n-a` | Not applicable (terminal nodes, etc.) |
68
+
69
+ Codex auth-refusal returns `attention_required` (recoverable); Claude
70
+ `looksLikeClaudeLoginPrompt` returns `failed/login_required` (terminal).
71
+ Cross-runtime alignment is an open follow-up question.
72
+
73
+ ## Proof standard
74
+
75
+ Lifecycle proof should include **real reboot or VM-reboot evidence**,
76
+ not only daemon-unit evidence. The minimum useful matrix covers:
77
+
78
+ | Scenario | What it proves |
79
+ |---|---|
80
+ | Clean start | Boot from spec into known state |
81
+ | Warm resume | `rig down` → `rig up <name>` resumes seats |
82
+ | Host reboot / tmux socket absence | Recovery from lost tmux connection |
83
+ | Provider auth loss | Codex/Claude auth refusal handled honestly |
84
+ | Partial boot / partial failure | Some seats up, some failed; honest reporting |
85
+ | Intentional operator recovery | Operator-initiated restore from snapshot |
86
+
87
+ Tier 1: in-process bedrock (daemon-unit evidence). Tier 2: real reboot
88
+ or disposable Tart VM. Tier 1 alone is not lifecycle proof; it's
89
+ bedrock.
90
+
91
+ ## Default policy is part of the primitive
92
+
93
+ **Treat default policy as part of the primitive, not an afterthought.**
94
+ Lifecycle defaults that are too optimistic for the reliability level
95
+ actually proven create silent harm:
96
+
97
+ - `auto-restore` defaults that mask failure modes
98
+ - Implicit fresh-fallback that hides resume failure
99
+ - Permissive verification that doesn't distinguish honest success from "appeared to work"
100
+
101
+ ## Total-Host Restore Product Rail v2
102
+
103
+ The rail sequences restore truth into **four rungs**:
104
+
105
+ - `fully_restored` is a **Rung 3 execution rollup**
106
+ - "fully back" is **reserved for Rung 4 only**
107
+
108
+ Naming discipline matters. "Fully restored" and "fully back" are
109
+ different claims; don't conflate.
110
+
111
+ ## See also
112
+
113
+ - `openrig-user` skill — CLI surface for `rig up / down / restore / etc.`
114
+ - `openrig-operator` skill — operator-level discipline for OpenRig itself
115
+ - `seat-continuity-and-handover` skill — occupant-creation modes for restore (`resume` / `rebuild` / `fresh` / `failed`)
116
+ - `openrig/docs/as-built/architecture.md` (product reference doc) — daemon enforcement of restore-honesty rule
@@ -115,7 +115,6 @@ The development pod has access to browser automation and structured dogfood test
115
115
 
116
116
  - **`agent-browser`** — browser automation CLI. Navigate to the daemon UI, snapshot interactive elements, take annotated screenshots, record repro videos. Use `agent-browser open <url>`, `agent-browser snapshot -i`, `agent-browser screenshot --annotate`.
117
117
  - **`dogfood`** — structured exploratory testing workflow. Produces a report with screenshots, repro videos, and step-by-step evidence for every finding.
118
- - **`containerized-e2e`** — Docker-based clean-install testing. Simulates a fresh user environment.
119
118
 
120
119
  QA typically drives browser and dogfood testing, but both impl and QA should know these tools exist and can use them. When dogfooding UI:
121
120
  1. Load `/agent-browser` and `/dogfood`
@@ -183,7 +183,7 @@ For destructive operations (git push, rm, daemon stop, npm publish): DO NOT auto
183
183
  - After being told to slow down, over-corrects to "wait for permission for everything"
184
184
  - Compaction is catastrophic — full context loss, needs preparation
185
185
  - After compaction: must re-read ALL skills from disk (skill names survive in system reminders but content is truncated)
186
- - For Claude compact-in-place, use `claude-compact-in-place` and require marshal acceptance before treating a `RESTORED` claim as real
186
+ - After compaction, require marshal acceptance before treating a `RESTORED` claim as real — quiz the recovered seat on asked-vs-read depth before resuming work
187
187
 
188
188
  ### Codex agents (QA, peer, R2)
189
189
  - Self-manages its own context window — do NOT intervene based on context percentage
@@ -222,7 +222,7 @@ Before any destructive operation: "If this goes wrong, can I undo it?" If no, co
222
222
  4. Read your restore file and session log if available
223
223
  5. Ask your peer for a quiz to verify your mental model
224
224
 
225
- For Claude Code seats in OpenRig, marshals/orchestrators should use `claude-compact-in-place` for the asked-vs-read-depth audit before accepting recovery. Preserve the Codex boundary: do not intervene on Codex context percentage or apply Claude compact-in-place by default.
225
+ For Claude Code seats in OpenRig, marshals/orchestrators should run an asked-vs-read-depth audit before accepting recovery (quiz the seat on context it claims to have restored). Preserve the Codex boundary: do not intervene on Codex context percentage or apply Claude compact-in-place by default.
226
226
 
227
227
  ## What you do not do
228
228
 
@@ -123,7 +123,7 @@ EVALEOF
123
123
 
124
124
  ## Authentication: What Actually Works
125
125
 
126
- **`--session-name` (state save/restore) does NOT work for all apps.** It saves cookies and localStorage, but apps using HTTP-only cookies, server-side sessions, or complex auth flows may not persist. Tested and failed on: tbbc (The Big Blue Cloud / localhost:8083).
126
+ **`--session-name` (state save/restore) does NOT work for all apps.** It saves cookies and localStorage, but apps using HTTP-only cookies, server-side sessions, or complex auth flows may not persist. Tested and failed on: example-app-1 (Example Service One / localhost:8083).
127
127
 
128
128
  **`--profile` (persistent Chrome profile) is the reliable approach.** It preserves everything - cookies, localStorage, IndexedDB, cache, service workers. This is what actually works for real apps.
129
129
 
@@ -131,10 +131,10 @@ EVALEOF
131
131
 
132
132
  | Profile | Service | URL | Command |
133
133
  |---------|---------|-----|---------|
134
- | `tbbc` | The Big Blue Cloud | `http://localhost:8083` | `agent-browser --profile ~/.agent-browser/profiles/tbbc open http://localhost:8083` |
135
- | `localhost-3000` | Specright Formulate (Clerk auth) | `http://localhost:3000` | `agent-browser --profile ~/.agent-browser/profiles/localhost-3000 open http://localhost:3000` |
136
- | `localhost-3010-email` | Smart Report Writer (email login) | `http://localhost:3010` | `agent-browser --profile ~/.agent-browser/profiles/localhost-3010-email open http://localhost:3010` |
137
- | `localhost-3010-google` | Smart Report Writer (Google auth) | `http://localhost:3010` | See Google OAuth note below |
134
+ | `example-app-1` | Example Service One | `http://localhost:8083` | `agent-browser --profile ~/.agent-browser/profiles/example-app-1 open http://localhost:8083` |
135
+ | `localhost-3000` | Example Service Two (Clerk auth) | `http://localhost:3000` | `agent-browser --profile ~/.agent-browser/profiles/localhost-3000 open http://localhost:3000` |
136
+ | `local-app-email-profile` | Example Service Three (email login) | `http://localhost:3010` | `agent-browser --profile ~/.agent-browser/profiles/local-app-email-profile open http://localhost:3010` |
137
+ | `local-app-google-profile` | Example Service Three (Google auth) | `http://localhost:3010` | See Google OAuth note below |
138
138
 
139
139
  ### Google OAuth Profiles
140
140
 
@@ -142,7 +142,7 @@ Google blocks sign-in from the bundled Chromium ("This browser or app may not be
142
142
 
143
143
  ```bash
144
144
  agent-browser \
145
- --profile ~/.agent-browser/profiles/localhost-3010-google \
145
+ --profile ~/.agent-browser/profiles/local-app-google-profile \
146
146
  --executable-path "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \
147
147
  --args "--disable-blink-features=AutomationControlled" \
148
148
  open http://localhost:3010
@@ -0,0 +1,40 @@
1
+ ---
2
+ skill: agent-browser
3
+ openrig-relationship: vendored-supplemented
4
+ ---
5
+
6
+ # OpenRig and this skill
7
+
8
+ ## Origin
9
+
10
+ - **Upstream**: Vercel agent-browser CLI (https://github.com/vercel/agent-browser)
11
+ - **Vendoring pattern**: `add-supplementary-files`
12
+ - **Last upstream check**: 2026-05-13 (initial relationship declaration)
13
+
14
+ ## How OpenRig uses this skill
15
+
16
+ OpenRig ships `agent-browser` so any agent dispatched by an OpenRig topology can drive a real browser (snapshots, form fills, screenshots, scraping, web-app testing) without operators having to separately install a browser-automation skill. It's referenced from any agent profile whose role includes web work.
17
+
18
+ ## OpenRig-specific modifications
19
+
20
+ This is the canonical example of the **add-supplementary-files** pattern (see `writing-skills-for-openrig` SKILL.md §"Vendored skills"). The upstream skill is kept structurally intact; OpenRig adds a companion file that captures local-use insights without polluting the upstream content.
21
+
22
+ | Surface | What changed | Why |
23
+ |---|---|---|
24
+ | `SKILL.md` body | A short "## Local Dev Insights" section was added near the end with an `**IMPORTANT:** Read LOCAL-INSIGHTS.md` pointer. | Without the pointer, agents loading the skill wouldn't know the companion file exists. The pointer is the only structural modification needed for the supplementary pattern to be discoverable. |
25
+ | `LOCAL-INSIGHTS.md` (new sibling, ~189 lines) | Field-tested gotchas, command-compatibility matrices, corrections discovered through hands-on use that the upstream skill doesn't cover. | E.g., not all `get` subcommands accept `@refs` — `get text @e1` works but `get html @e1` fails silently. The compatibility matrix saves agents from the most common confusion class. |
26
+
27
+ Nothing else in `SKILL.md` diverges from upstream content as of the last upstream check.
28
+
29
+ ## Companion files
30
+
31
+ - `LOCAL-INSIGHTS.md` — load-bearing supplementary content. The SKILL.md body explicitly points readers here for hands-on gotchas the upstream skill doesn't cover.
32
+
33
+ ## When to re-sync upstream
34
+
35
+ Watch for new `agent-browser` CLI releases (Vercel). When the command surface changes meaningfully:
36
+
37
+ 1. Re-sync `SKILL.md` body from upstream, preserving the "Local Dev Insights" pointer section.
38
+ 2. Update `LOCAL-INSIGHTS.md` compatibility matrix to reflect new behavior (some `get` subcommands may gain `@ref` support, breaking the current matrix).
39
+ 3. Bump `last_upstream_check` in `SKILL.md` frontmatter.
40
+ 4. Note any structural shape changes in `divergence_notes`.
@@ -2,6 +2,16 @@
2
2
  name: agent-browser
3
3
  description: Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
4
4
  allowed-tools: Bash(npx agent-browser:*), Bash(agent-browser:*)
5
+ metadata:
6
+ openrig:
7
+ vendored_from: "Vercel agent-browser (https://github.com/vercel/agent-browser)"
8
+ vendoring_pattern: add-supplementary-files
9
+ last_upstream_check: "2026-05-13 (initial vendoring declaration)"
10
+ divergence_notes: |
11
+ Upstream SKILL.md content tracks upstream; a small "Local Dev Insights"
12
+ pointer section was added near the end of the body to surface the sibling
13
+ LOCAL-INSIGHTS.md companion file. See OPENRIG.md for the full OpenRig
14
+ relationship to this skill.
5
15
  ---
6
16
 
7
17
  # Browser Automation with agent-browser
@@ -0,0 +1,48 @@
1
+ ---
2
+ skill: brainstorming
3
+ openrig-relationship: vendored-modified
4
+ ---
5
+
6
+ # OpenRig and this skill
7
+
8
+ ## Origin
9
+
10
+ - **Upstream**: Obra Superpowers (https://github.com/obra/superpowers)
11
+ - **Vendoring pattern**: `modify-the-file`
12
+ - **Last upstream check**: 2026-05-13 (diff against plugin source pulled 2026-05-11)
13
+
14
+ ## How OpenRig uses this skill
15
+
16
+ `brainstorming` is the "intent → design" front of the OpenRig planning chain. Agents use it before any creative or implementation work — to refine user intent into a shareable design doc that downstream skills (`writing-plans`, then `executing-plans`) consume.
17
+
18
+ ## OpenRig-specific modifications
19
+
20
+ | Surface | Upstream | OpenRig |
21
+ |---|---|---|
22
+ | Visual Companion offer step | Standalone step #2 in the flow — "offer Visual Companion in its own message before clarifying questions" | **Removed.** OpenRig agents typically operate without a separate visual-companion mode; visual design work routes through dedicated design-pod seats. |
23
+ | Spec self-review step | Step #7 — inline self-review for placeholders/contradictions/scope | **Removed.** Self-review is handled at the rig/orchestration layer (driver/guard pattern + review-lead). |
24
+ | User reviews written spec | Step #8 — pause for user to review the spec file | **Removed.** OpenRig's founder-walk and orchestration gates already cover this checkpoint at a higher level. |
25
+ | Spec save path | `docs/superpowers/specs/YYYY-MM-DD-<topic>-design.md` | `docs/plans/YYYY-MM-DD-<topic>-design.md` (matches OpenRig's `docs/plans/` convention) |
26
+ | Process flow diagram | Includes Visual Companion + Spec self-review nodes | Simplified to remove those nodes; edges rewired |
27
+
28
+ ## Why these modifications (inferred)
29
+
30
+ - **Multi-platform / multi-step gates removed**: OpenRig's rig-level orchestration (driver → guard → qa, founder-walks) already provides the checkpoint structure that the upstream skill builds inline. Keeping those steps inside the skill double-gates the work.
31
+ - **`docs/plans/` path**: OpenRig's project structure uses `docs/plans/` as the canonical home for design + implementation plan documents (matches `writing-plans` modification — both are co-ordinated).
32
+
33
+ ## Companion files
34
+
35
+ None.
36
+
37
+ ## When to re-sync upstream
38
+
39
+ Watch upstream for:
40
+
41
+ - New phases or checkpoints in the brainstorming flow that OpenRig might want to adopt (rare; the skill is structurally stable in upstream).
42
+ - Changes to the brainstorming-to-writing-plans handoff (must stay coordinated with the `writing-plans` modifications).
43
+
44
+ When upstream changes:
45
+
46
+ 1. Pull non-conflicting changes into the OpenRig copy.
47
+ 2. Preserve the simplified 6-step flow and the `docs/plans/` save path unless founder direction reverses.
48
+ 3. Bump `last_upstream_check` in `SKILL.md` frontmatter.
@@ -1,6 +1,17 @@
1
1
  ---
2
2
  name: brainstorming
3
3
  description: "You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation."
4
+ metadata:
5
+ openrig:
6
+ vendored_from: "Obra Superpowers (https://github.com/obra/superpowers)"
7
+ vendoring_pattern: modify-the-file
8
+ last_upstream_check: "2026-05-13 (diff against plugin source pulled 2026-05-11)"
9
+ divergence_notes: |
10
+ Simplified the process flow. Removed the Visual Companion offer step,
11
+ the Spec self-review step, and the User-reviews-spec step (those gates
12
+ are handled at the rig/orchestration layer in OpenRig). Changed plan-
13
+ doc save path from docs/superpowers/specs/ to docs/plans/.
14
+ See OPENRIG.md for full divergence details.
4
15
  ---
5
16
 
6
17
  # Brainstorming Ideas Into Designs
@@ -2,6 +2,11 @@
2
2
  name: dogfood
3
3
  description: Systematically explore and test a web application to find bugs, UX issues, and other problems. Use when asked to "dogfood", "QA", "exploratory test", "find issues", "bug hunt", "test this app/site/platform", or review the quality of a web application. Produces a structured report with full reproduction evidence -- step-by-step screenshots, repro videos, and detailed repro steps for every issue -- so findings can be handed directly to the responsible teams.
4
4
  allowed-tools: Bash(agent-browser:*), Bash(npx agent-browser:*)
5
+ metadata:
6
+ openrig:
7
+ vendored_from: "Vercel agent-browser ecosystem (https://github.com/vercel/agent-browser)"
8
+ vendoring_pattern: vendored-as-is
9
+ last_upstream_check: "2026-05-13 (diff against ~/.agents/skills/dogfood = identical)"
5
10
  ---
6
11
 
7
12
  # Dogfood