session-orchestrator 3.21.0 → 3.23.0

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 (345) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/.codex-plugin/plugin.json +1 -1
  4. package/.cursor/commands/autopilot-multi.md +14 -0
  5. package/.cursor/commands/autopilot.md +14 -0
  6. package/.cursor/commands/bootstrap.md +14 -0
  7. package/.cursor/commands/brainstorm.md +14 -0
  8. package/.cursor/commands/close.md +13 -0
  9. package/.cursor/commands/contract-version-bump.md +14 -0
  10. package/.cursor/commands/debug.md +14 -0
  11. package/.cursor/commands/discovery.md +14 -0
  12. package/.cursor/commands/dispatcher.md +14 -0
  13. package/.cursor/commands/eli5.md +14 -0
  14. package/.cursor/commands/eval.md +14 -0
  15. package/.cursor/commands/evolve.md +14 -0
  16. package/.cursor/commands/go.md +14 -0
  17. package/.cursor/commands/grill.md +14 -0
  18. package/.cursor/commands/harness-audit.md +13 -0
  19. package/.cursor/commands/journey-audit.md +14 -0
  20. package/.cursor/commands/memory-cleanup.md +14 -0
  21. package/.cursor/commands/persona-panel.md +14 -0
  22. package/.cursor/commands/plan.md +14 -0
  23. package/.cursor/commands/portfolio.md +14 -0
  24. package/.cursor/commands/reconcile.md +14 -0
  25. package/.cursor/commands/release.md +14 -0
  26. package/.cursor/commands/repo-audit.md +13 -0
  27. package/.cursor/commands/session.md +14 -0
  28. package/.cursor/commands/spinout.md +14 -0
  29. package/.cursor/commands/sunset-review.md +14 -0
  30. package/.cursor/commands/templates-ack.md +14 -0
  31. package/.cursor/commands/test.md +14 -0
  32. package/.cursor/hooks.json +60 -0
  33. package/.cursor/rules/000-session-orchestrator.mdc +11 -2
  34. package/.cursor/rules/010-session-workflow.mdc +9 -1
  35. package/.cursor/rules/020-quality-gates.mdc +1 -1
  36. package/.cursor/rules/030-wave-execution.mdc +1 -1
  37. package/.cursor/rules/040-discovery.mdc +6 -6
  38. package/.cursor/rules/050-plan.mdc +10 -10
  39. package/.cursor/rules/070-gitlab-ops.mdc +73 -57
  40. package/.cursor/rules/080-ecosystem-health.mdc +7 -7
  41. package/.cursor/skills/architecture/SKILL.md +13 -0
  42. package/.cursor/skills/autopilot/SKILL.md +12 -0
  43. package/.cursor/skills/bootstrap/SKILL.md +12 -0
  44. package/.cursor/skills/brainstorm/SKILL.md +13 -0
  45. package/.cursor/skills/claude-md-drift-check/SKILL.md +13 -0
  46. package/.cursor/skills/contract-version-bump/SKILL.md +12 -0
  47. package/.cursor/skills/convergence-monitoring/SKILL.md +12 -0
  48. package/.cursor/skills/daily/SKILL.md +12 -0
  49. package/.cursor/skills/debug/SKILL.md +13 -0
  50. package/.cursor/skills/discovery/SKILL.md +13 -0
  51. package/.cursor/skills/dispatcher/SKILL.md +13 -0
  52. package/.cursor/skills/docs-orchestrator/SKILL.md +13 -0
  53. package/.cursor/skills/domain-model/SKILL.md +13 -0
  54. package/.cursor/skills/ecosystem-health/SKILL.md +13 -0
  55. package/.cursor/skills/eli5/SKILL.md +13 -0
  56. package/.cursor/skills/eval/SKILL.md +12 -0
  57. package/.cursor/skills/evolve/SKILL.md +13 -0
  58. package/.cursor/skills/frontmatter-guard/SKILL.md +13 -0
  59. package/.cursor/skills/gitlab-ops/SKILL.md +13 -0
  60. package/.cursor/skills/gitlab-portfolio/SKILL.md +13 -0
  61. package/.cursor/skills/grill/SKILL.md +13 -0
  62. package/.cursor/skills/hook-development/SKILL.md +13 -0
  63. package/.cursor/skills/journey-audit/SKILL.md +13 -0
  64. package/.cursor/skills/mcp-builder/SKILL.md +13 -0
  65. package/.cursor/skills/memory-cleanup/SKILL.md +12 -0
  66. package/.cursor/skills/mode-selector/SKILL.md +13 -0
  67. package/.cursor/skills/npm-publish/SKILL.md +12 -0
  68. package/.cursor/skills/peekaboo-driver/SKILL.md +13 -0
  69. package/.cursor/skills/persona-panel/SKILL.md +12 -0
  70. package/.cursor/skills/plan/SKILL.md +13 -0
  71. package/.cursor/skills/playwright-driver/SKILL.md +13 -0
  72. package/.cursor/skills/quality-gates/SKILL.md +13 -0
  73. package/.cursor/skills/reconcile/SKILL.md +12 -0
  74. package/.cursor/skills/repo-audit/SKILL.md +13 -0
  75. package/.cursor/skills/session-end/SKILL.md +13 -0
  76. package/.cursor/skills/session-plan/SKILL.md +13 -0
  77. package/.cursor/skills/session-start/SKILL.md +13 -0
  78. package/.cursor/skills/skill-creator/SKILL.md +13 -0
  79. package/.cursor/skills/spinout/SKILL.md +12 -0
  80. package/.cursor/skills/sunset-review/SKILL.md +13 -0
  81. package/.cursor/skills/test-runner/SKILL.md +13 -0
  82. package/.cursor/skills/tmux-layout/SKILL.md +13 -0
  83. package/.cursor/skills/ubiquitous-language/SKILL.md +13 -0
  84. package/.cursor/skills/using-orchestrator/SKILL.md +13 -0
  85. package/.cursor/skills/vault-mirror/SKILL.md +13 -0
  86. package/.cursor/skills/vault-sync/SKILL.md +13 -0
  87. package/.cursor/skills/wave-executor/SKILL.md +13 -0
  88. package/.cursor/skills/write-executable-plan/SKILL.md +13 -0
  89. package/.mcp.json +4 -1
  90. package/CHANGELOG.md +269 -0
  91. package/README.md +18 -15
  92. package/agents/AGENTS.md +23 -4
  93. package/agents/code-implementer.md +2 -1
  94. package/agents/db-specialist.md +2 -1
  95. package/agents/docs-writer.md +3 -1
  96. package/agents/eval-judge.md +1 -1
  97. package/agents/memory-proposal-collector.md +6 -4
  98. package/agents/session-reviewer.md +7 -1
  99. package/agents/test-writer.md +2 -1
  100. package/agents/ui-developer.md +2 -1
  101. package/commands/bootstrap.md +2 -2
  102. package/commands/close.md +3 -1
  103. package/commands/eli5.md +33 -0
  104. package/commands/go.md +1 -1
  105. package/commands/journey-audit.md +43 -0
  106. package/commands/release.md +5 -3
  107. package/commands/test.md +2 -2
  108. package/docs/USER-GUIDE.md +2 -2
  109. package/docs/ci-setup.md +14 -0
  110. package/docs/codex-setup.md +64 -0
  111. package/docs/components.md +7 -6
  112. package/docs/cursor-setup.md +26 -47
  113. package/docs/events-schema.md +76 -4
  114. package/docs/github-mirror-protection.md +197 -0
  115. package/docs/pi-setup.md +2 -0
  116. package/docs/rule-authoring.md +3 -1
  117. package/docs/scope-collision-guard.md +52 -5
  118. package/docs/session-config-reference.md +57 -12
  119. package/docs/session-config-template.md +4 -3
  120. package/docs/telemetry.md +22 -0
  121. package/hooks/_lib/lock-bootstrap.mjs +26 -16
  122. package/hooks/_lib/vcs-create-matcher.mjs +397 -38
  123. package/hooks/enforce-scope.mjs +64 -0
  124. package/hooks/hooks-codex.json +1 -1
  125. package/hooks/hooks-cursor.json +201 -20
  126. package/hooks/hooks-pi.json +1 -1
  127. package/hooks/hooks.json +12 -2
  128. package/hooks/on-session-end.mjs +237 -104
  129. package/hooks/on-session-start.mjs +404 -110
  130. package/hooks/on-stop.mjs +48 -9
  131. package/hooks/post-subagent-discovery-validator.mjs +34 -3
  132. package/hooks/post-tool-batch-wave-signal.mjs +11 -2
  133. package/hooks/pre-auq-clarity.mjs +787 -0
  134. package/hooks/pre-bash-issue-budget.mjs +133 -21
  135. package/hooks/pre-bash-sessions-ledger-guard.mjs +159 -0
  136. package/hooks/pre-bash-staging-fence.mjs +4 -0
  137. package/hooks/pre-task-scope-disjoint.mjs +368 -35
  138. package/hooks/skill-invocation-telemetry.mjs +21 -10
  139. package/monitors/monitors.json +6 -0
  140. package/package.json +3 -1
  141. package/pi/prompts/eli5.md +12 -0
  142. package/pi/prompts/journey-audit.md +12 -0
  143. package/rules/_index.md +9 -1
  144. package/rules/always-on/ask-via-tool.md +62 -0
  145. package/rules/always-on/bash-harness-pitfalls.md +168 -0
  146. package/rules/always-on/build-value.md +47 -0
  147. package/rules/always-on/cross-session-messaging.md +59 -0
  148. package/rules/always-on/loop-and-monitor.md +221 -0
  149. package/rules/always-on/parallel-sessions.md +142 -12
  150. package/rules/always-on/receiving-review.md +108 -0
  151. package/rules/always-on/test-value.md +40 -0
  152. package/rules/always-on/verification-before-completion.md +77 -0
  153. package/scripts/archive-closed-prds.mjs +258 -18
  154. package/scripts/auq-audit.mjs +825 -0
  155. package/scripts/autopilot.mjs +12 -8
  156. package/scripts/backfill-evidence-digest.mjs +376 -0
  157. package/scripts/cursor-install.mjs +89 -48
  158. package/scripts/export-hw-learnings.mjs +143 -2
  159. package/scripts/express-path.mjs +299 -0
  160. package/scripts/generate-cursor-adapter.mjs +253 -0
  161. package/scripts/github-protection-audit.mjs +358 -0
  162. package/scripts/lib/auq/clarity.mjs +1314 -0
  163. package/scripts/lib/auq/parse.mjs +1006 -0
  164. package/scripts/lib/auq/schema.mjs +1457 -0
  165. package/scripts/lib/autopilot/worktree-pipeline.mjs +240 -16
  166. package/scripts/lib/build-live-signals.mjs +24 -5
  167. package/scripts/lib/ci-status-banner.mjs +221 -68
  168. package/scripts/lib/command-blocker.mjs +70 -0
  169. package/scripts/lib/config/dispatcher-autonomy-capture.mjs +32 -9
  170. package/scripts/lib/config/reconcile.mjs +79 -4
  171. package/scripts/lib/config/section-extractor.mjs +235 -36
  172. package/scripts/lib/config/vault-integration.mjs +12 -1
  173. package/scripts/lib/config-schema.mjs +9 -1
  174. package/scripts/lib/config.mjs +57 -6
  175. package/scripts/lib/convergence-monitor.mjs +13 -2
  176. package/scripts/lib/cursor-hook-bridge.mjs +443 -0
  177. package/scripts/lib/dispatcher/cli.mjs +2 -2
  178. package/scripts/lib/dispatcher/rank.mjs +4 -7
  179. package/scripts/lib/express-path.mjs +327 -0
  180. package/scripts/lib/file-lock.mjs +22 -4
  181. package/scripts/lib/gates/gate-full.mjs +84 -11
  182. package/scripts/lib/gates/gate-helpers.mjs +93 -21
  183. package/scripts/lib/git-config-drift.mjs +134 -5
  184. package/scripts/lib/host-identity.mjs +247 -2
  185. package/scripts/lib/instruction-budget-guard.mjs +31 -1
  186. package/scripts/lib/io.mjs +239 -0
  187. package/scripts/lib/issue-budget.mjs +284 -31
  188. package/scripts/lib/learnings/io.mjs +55 -10
  189. package/scripts/lib/learnings/schema.mjs +95 -28
  190. package/scripts/lib/lock-reaper.mjs +7 -1
  191. package/scripts/lib/locks/staging-fence-lock.mjs +5 -1
  192. package/scripts/lib/locks/state-md-lock.mjs +8 -1
  193. package/scripts/lib/memory-banner.mjs +5 -2
  194. package/scripts/lib/memory-paths.mjs +15 -6
  195. package/scripts/lib/mode-selector/scoring.mjs +53 -6
  196. package/scripts/lib/owner-interview.mjs +78 -32
  197. package/scripts/lib/peer-discovery.mjs +73 -22
  198. package/scripts/lib/platform.mjs +72 -9
  199. package/scripts/lib/plugin-root.mjs +143 -19
  200. package/scripts/lib/project-hygiene.mjs +104 -4
  201. package/scripts/lib/quality-gate.mjs +271 -13
  202. package/scripts/lib/reconcile/emitter.mjs +87 -19
  203. package/scripts/lib/reconcile/engine.mjs +281 -13
  204. package/scripts/lib/reconcile/idempotency.mjs +102 -1
  205. package/scripts/lib/reconcile/renderer.mjs +165 -7
  206. package/scripts/lib/reconcile/sanitize.mjs +40 -17
  207. package/scripts/lib/reconcile/writer.mjs +415 -84
  208. package/scripts/lib/resource-probe/evaluate.mjs +330 -149
  209. package/scripts/lib/resource-probe/probe-platform.mjs +35 -0
  210. package/scripts/lib/resource-probe.mjs +18 -2
  211. package/scripts/lib/rule-loader.mjs +37 -2
  212. package/scripts/lib/rules-sync.mjs +51 -8
  213. package/scripts/lib/scope-gate.mjs +90 -0
  214. package/scripts/lib/session-close-backfill.mjs +369 -28
  215. package/scripts/lib/session-discovery.mjs +13 -3
  216. package/scripts/lib/session-end/phase-skip.mjs +37 -4
  217. package/scripts/lib/session-end/worktree-cleanup.mjs +154 -7
  218. package/scripts/lib/session-id.mjs +30 -14
  219. package/scripts/lib/session-identity/own-session.mjs +159 -0
  220. package/scripts/lib/session-lock.mjs +85 -30
  221. package/scripts/lib/session-schema/normalizer.mjs +70 -3
  222. package/scripts/lib/session-schema/validator.mjs +40 -0
  223. package/scripts/lib/session-start-probes.mjs +608 -0
  224. package/scripts/lib/session-transition.mjs +277 -0
  225. package/scripts/lib/sessions-staleness-banner.mjs +124 -57
  226. package/scripts/lib/spiral-carryover.mjs +111 -9
  227. package/scripts/lib/state-md/frontmatter-mutators.mjs +41 -8
  228. package/scripts/lib/state-md/mission-status.mjs +467 -72
  229. package/scripts/lib/state-md/yaml-parser.mjs +145 -16
  230. package/scripts/lib/state-md.mjs +12 -2
  231. package/scripts/lib/telemetry/sync.mjs +46 -8
  232. package/scripts/lib/validate/check-agents.mjs +66 -0
  233. package/scripts/lib/validate/check-auq-clarity.mjs +274 -0
  234. package/scripts/lib/validate/check-cursor-adapter.mjs +102 -0
  235. package/scripts/lib/validate/check-dead-bridge.mjs +24 -2
  236. package/scripts/lib/validate/check-doc-cli-commands.mjs +16 -32
  237. package/scripts/lib/validate/check-hooks-symmetry.mjs +59 -63
  238. package/scripts/lib/validate/check-playwright-mcp-canary.mjs +13 -22
  239. package/scripts/lib/validate/check-plugin-monitors.mjs +10 -4
  240. package/scripts/lib/validate/check-rules.mjs +153 -9
  241. package/scripts/lib/validate/check-test-value-bans.mjs +165 -17
  242. package/scripts/lib/validate/check-unwired-features.mjs +340 -32
  243. package/scripts/lib/validate/repo-files.mjs +275 -0
  244. package/scripts/lib/validate-vendored-rules.mjs +229 -7
  245. package/scripts/lib/vault-backfill/glab.mjs +91 -58
  246. package/scripts/lib/vault-backfill/manifest.mjs +28 -8
  247. package/scripts/lib/vault-mirror/process.mjs +99 -43
  248. package/scripts/lib/vault-mirror/telemetry.mjs +210 -0
  249. package/scripts/lib/vault-staleness-banner.mjs +76 -6
  250. package/scripts/lib/vault-status/board-writer.mjs +211 -10
  251. package/scripts/lib/vault-status/narrative-mirror.mjs +188 -8
  252. package/scripts/lib/vcs-repo-spec.mjs +182 -13
  253. package/scripts/lib/wave-executor/foreign-dispatch.mjs +832 -0
  254. package/scripts/lib/wave-resource-gate.mjs +67 -73
  255. package/scripts/lib/wave-transcript-tail.mjs +869 -0
  256. package/scripts/materialize-wave-scope.mjs +478 -0
  257. package/scripts/mcp-server.sh +11 -2
  258. package/scripts/parse-config.mjs +65 -0
  259. package/scripts/release.mjs +443 -122
  260. package/scripts/run-quality-gate.mjs +14 -0
  261. package/scripts/token-audit.sh +9 -2
  262. package/scripts/validate-plugin.mjs +6 -0
  263. package/scripts/validate-wave-scope.mjs +73 -1
  264. package/scripts/vault-backfill.mjs +32 -5
  265. package/scripts/vault-mirror.mjs +203 -34
  266. package/skills/_shared/monitor-patterns.md +31 -5
  267. package/skills/_shared/parallel-aware-auq.md +31 -25
  268. package/skills/_shared/parallel-aware-preamble.md +35 -4
  269. package/skills/_shared/platform-tools.md +11 -5
  270. package/skills/_shared/state-ownership.md +61 -8
  271. package/skills/autopilot/SKILL.md +5 -1
  272. package/skills/bootstrap/SKILL.md +5 -4
  273. package/skills/bootstrap/_shared-template.md +18 -10
  274. package/skills/bootstrap/deep-template.md +10 -6
  275. package/skills/bootstrap/fast-template.md +15 -8
  276. package/skills/bootstrap/standard-template.md +10 -6
  277. package/skills/brainstorm/SKILL.md +18 -18
  278. package/skills/brainstorm/soul.md +12 -0
  279. package/skills/claude-md-drift-check/checker.mjs +39 -11
  280. package/skills/discovery/SKILL.md +28 -24
  281. package/skills/dispatcher/SKILL.md +1 -1
  282. package/skills/eli5/SKILL.md +43 -0
  283. package/skills/evolve/SKILL.md +8 -9
  284. package/skills/gitlab-ops/SKILL.md +30 -26
  285. package/skills/grill/SKILL.md +6 -6
  286. package/skills/grill/soul.md +16 -0
  287. package/skills/journey-audit/SKILL.md +269 -0
  288. package/skills/memory-cleanup/SKILL.md +2 -2
  289. package/skills/npm-publish/SKILL.md +4 -4
  290. package/skills/peekaboo-driver/SKILL.md +18 -6
  291. package/skills/persona-panel/SKILL.md +1 -1
  292. package/skills/plan/SKILL.md +18 -16
  293. package/skills/plan/mode-feature.md +1 -1
  294. package/skills/plan/mode-new.md +35 -23
  295. package/skills/plan/soul.md +12 -0
  296. package/skills/reconcile/SKILL.md +44 -4
  297. package/skills/session-end/SKILL.md +70 -24
  298. package/skills/session-end/metrics-collection.md +7 -4
  299. package/skills/session-end/phase-3-6-tail.md +48 -5
  300. package/skills/session-end/phase-3-7a-recommendations.md +16 -2
  301. package/skills/session-plan/SKILL.md +6 -1
  302. package/skills/session-plan/wave-template.md +1 -0
  303. package/skills/session-start/SKILL.md +96 -48
  304. package/skills/session-start/phase-2-5-docs-planning.md +8 -8
  305. package/skills/session-start/phase-4-5-resource-health.md +82 -19
  306. package/skills/session-start/phase-7-5-mode-selector.md +15 -3
  307. package/skills/session-start/phase-8-5-express-path.md +77 -12
  308. package/skills/session-start/soul.md +110 -0
  309. package/skills/test-runner/SKILL.md +2 -2
  310. package/skills/using-orchestrator/SKILL.md +1 -1
  311. package/skills/vault-sync/validator.mjs +31 -0
  312. package/skills/wave-executor/SKILL.md +4 -2
  313. package/skills/wave-executor/circuit-breaker.md +34 -9
  314. package/skills/wave-executor/wave-loop.md +129 -24
  315. package/skills/write-executable-plan/SKILL.md +6 -6
  316. package/templates/_shared/journey-manifest.md +110 -0
  317. package/scripts/tests/fixtures/fetch-baseline/sample-rule.md +0 -8
  318. package/skills/vault-sync/tests/fixtures/archive-test-vault/90-archive/bad-archived.md +0 -8
  319. package/skills/vault-sync/tests/fixtures/archive-test-vault/_meta/.gitkeep +0 -0
  320. package/skills/vault-sync/tests/fixtures/archive-test-vault/live-note.md +0 -8
  321. package/skills/vault-sync/tests/fixtures/broken-frontmatter-vault/_meta/.gitkeep +0 -0
  322. package/skills/vault-sync/tests/fixtures/broken-frontmatter-vault/bad-type.md +0 -8
  323. package/skills/vault-sync/tests/fixtures/broken-frontmatter-vault/good-note.md +0 -8
  324. package/skills/vault-sync/tests/fixtures/clean-vault/.obsidian/config.md +0 -8
  325. package/skills/vault-sync/tests/fixtures/clean-vault/01-projects/foo/projects-baseline.md +0 -10
  326. package/skills/vault-sync/tests/fixtures/clean-vault/03-daily/daily-2026-04-13.md +0 -8
  327. package/skills/vault-sync/tests/fixtures/clean-vault/README.md +0 -3
  328. package/skills/vault-sync/tests/fixtures/clean-vault/hello-world.md +0 -11
  329. package/skills/vault-sync/tests/fixtures/dangling-link-vault/_meta/.gitkeep +0 -0
  330. package/skills/vault-sync/tests/fixtures/dangling-link-vault/has-dangling.md +0 -9
  331. package/skills/vault-sync/tests/fixtures/dangling-link-vault/real-target.md +0 -8
  332. package/skills/vault-sync/tests/fixtures/empty-vault/_meta/.gitkeep +0 -0
  333. package/skills/vault-sync/tests/fixtures/missing-field-vault/_meta/.gitkeep +0 -0
  334. package/skills/vault-sync/tests/fixtures/missing-field-vault/missing-id.md +0 -7
  335. package/skills/vault-sync/tests/fixtures/nested-tag-vault/03-daily/daily-2026-04-13.md +0 -9
  336. package/skills/vault-sync/tests/fixtures/nested-tag-vault/_meta/.gitkeep +0 -0
  337. package/skills/vault-sync/tests/fixtures/nested-tag-vault/nested-tags-note.md +0 -11
  338. package/skills/vault-sync/tests/fixtures/no-frontmatter-vault/README.md +0 -3
  339. package/skills/vault-sync/tests/fixtures/no-frontmatter-vault/_MOC.md +0 -3
  340. package/skills/vault-sync/tests/fixtures/no-frontmatter-vault/_meta/.gitkeep +0 -0
  341. package/skills/vault-sync/tests/fixtures/with-moc-vault/_MOC.md +0 -11
  342. package/skills/vault-sync/tests/fixtures/with-moc-vault/_meta/.gitkeep +0 -0
  343. package/skills/vault-sync/tests/fixtures/with-moc-vault/hello-world.md +0 -11
  344. package/skills/vault-sync/tests/schema-drift.test.mjs +0 -133
  345. package/templates/_shared/rules/parallel-sessions.md +0 -77
@@ -7,7 +7,7 @@
7
7
  },
8
8
  "metadata": {
9
9
  "description": "Loop engineering for AI coding agents — turn ad-hoc sessions into a repeatable research → plan → wave-execute → close loop with verification gates. Runs on Claude Code, Codex CLI, Cursor, and Pi.",
10
- "version": "3.21.0"
10
+ "version": "3.23.0"
11
11
  },
12
12
  "plugins": [
13
13
  {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json",
3
3
  "name": "session-orchestrator",
4
- "version": "3.21.0",
4
+ "version": "3.23.0",
5
5
  "description": "Loop engineering for AI coding agents — turn ad-hoc sessions into a repeatable research → plan → wave-execute → close loop with verification gates. Runs on Claude Code, Codex CLI, Cursor, and Pi.",
6
6
  "author": {
7
7
  "name": "Bernhard Goetzendorfer",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "session-orchestrator",
3
- "version": "3.21.0+codex.20260819195349",
3
+ "version": "3.23.0+codex.20260828183221",
4
4
  "description": "Loop engineering for AI coding agents — turn ad-hoc sessions into a repeatable research → plan → wave-execute → close loop with verification gates. Runs on Claude Code, Codex CLI, Cursor, and Pi.",
5
5
  "keywords": [
6
6
  "session",
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Multi-story autopilot orchestrator — runs N parallel issue pipelines in isolated git worktrees (v3.6 Phase D thin-slice)
3
+ argument-hint: [--dry-run|--apply] [--max-stories=N] [--max-hours=H] [--inactivity-timeout=S] [--stall-seconds=S] [--draft-mr=off|on-loop-start|on-green] [--json] [--verbose]
4
+ ---
5
+
6
+ # /autopilot-multi
7
+
8
+ Use the Session Orchestrator command definition at `commands/autopilot-multi.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Autonomous session-orchestration loop with kill-switches (Phase C-1.b — all 10 kill-switches shipped)
3
+ argument-hint: [--headless] [--verbose] [--max-sessions=N] [--max-hours=H] [--confidence-threshold=0.X] [--dry-run]
4
+ ---
5
+
6
+ # /autopilot
7
+
8
+ Use the Session Orchestrator command definition at `commands/autopilot.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Scaffold the minimum repo structure required by session-orchestrator
3
+ argument-hint: [--upgrade <tier>]
4
+ ---
5
+
6
+ # /bootstrap
7
+
8
+ Use the Session Orchestrator command definition at `commands/bootstrap.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Run a lightweight Socratic design dialogue (3-5 AUQ rounds) and write a spec markdown file before any implementation work. Use BEFORE /plan feature when scope/UX is ambiguous.
3
+ argument-hint: [topic-or-feature-slug]
4
+ ---
5
+
6
+ # /brainstorm
7
+
8
+ Use the Session Orchestrator command definition at `commands/brainstorm.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,13 @@
1
+ ---
2
+ description: End session with verification, commits, and documentation
3
+ ---
4
+
5
+ # /close
6
+
7
+ Use the Session Orchestrator command definition at `commands/close.md`.
8
+
9
+ Arguments: $ARGUMENTS
10
+
11
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
12
+
13
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Classify and apply a version bump to a machine-readable contract (JSON Schema, API spec, config schema) — version literals, consumer compatibility, changelog entry, downstream drift
3
+ argument-hint: [--contract <path>]
4
+ ---
5
+
6
+ # /contract-version-bump
7
+
8
+ Use the Session Orchestrator command definition at `commands/contract-version-bump.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: "Run a 4-phase systematic debugging investigation before proposing any fix. Iron Law — NO FIXES WITHOUT ROOT CAUSE INVESTIGATION FIRST. Produces a `.orchestrator/debug/` artifact the fixer agent must reference."
3
+ argument-hint: [bug-description-or-issue-ref]
4
+ ---
5
+
6
+ # /debug
7
+
8
+ Use the Session Orchestrator command definition at `commands/debug.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Systematic quality discovery and issue detection
3
+ argument-hint: [all|code|infra|ui|arch|session|audit|vault|feature] [--since <git-ref>] [--full]
4
+ ---
5
+
6
+ # /discovery
7
+
8
+ Use the Session Orchestrator command definition at `commands/discovery.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Pick the next-best repo to work on across the portfolio — rank free repos, recommend one, claim its lease atomically, and route to the entry command
3
+ argument-hint: [--dry-run] [--repo <name>]
4
+ ---
5
+
6
+ # /dispatcher
7
+
8
+ Use the Session Orchestrator command definition at `commands/dispatcher.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Say the last answer again in plain words — same facts, in the order the operator needs them. Optional topic argument.
3
+ argument-hint: [topic]
4
+ ---
5
+
6
+ # /eli5
7
+
8
+ Use the Session Orchestrator command definition at `commands/eli5.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Run an honest session-process evaluation (Standard v1, aiat-llm-eval/1.0) — score the last completed session against the pre-registered rubric-v1 dimensions
3
+ argument-hint: [--session <id>] [--no-write] [--verify <run-id>]
4
+ ---
5
+
6
+ # /eval
7
+
8
+ Use the Session Orchestrator command definition at `commands/eval.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Extract session patterns into reusable learnings
3
+ argument-hint: [analyze|review|list|dialectic [--apply]]
4
+ ---
5
+
6
+ # /evolve
7
+
8
+ Use the Session Orchestrator command definition at `commands/evolve.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Approve session plan and begin wave execution
3
+ argument-hint: [optional instructions]
4
+ ---
5
+
6
+ # /go
7
+
8
+ Use the Session Orchestrator command definition at `commands/go.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Stress-test a plan, design, or PRD before any build — relentless one-question-at-a-time interrogation that hunts contradictions against the code and challenges assumptions. Composable; no HARD-GATE.
3
+ argument-hint: [file-path-or-topic]
4
+ ---
5
+
6
+ # /grill
7
+
8
+ Use the Session Orchestrator command definition at `commands/grill.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,13 @@
1
+ ---
2
+ description: Run the harness audit and report the rubric score for this repository
3
+ ---
4
+
5
+ # /harness-audit
6
+
7
+ Use the Session Orchestrator command definition at `commands/harness-audit.md`.
8
+
9
+ Arguments: $ARGUMENTS
10
+
11
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
12
+
13
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Outside-in product audit as a deep session — 7 read-only roles check what the site promises against what the code does, what a user experiences, what arrives by mail, and what the data says is used. Writes a dossier; needs a per-repo journey-manifest.
3
+ argument-hint: [manifest-path]
4
+ ---
5
+
6
+ # /journey-audit
7
+
8
+ Use the Session Orchestrator command definition at `commands/journey-audit.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Manual memory consolidation — review, consolidate, and prune memory files (Dream-equivalent)
3
+ argument-hint: [--dry-run | --apply-pending]
4
+ ---
5
+
6
+ # /memory-cleanup
7
+
8
+ Use the Session Orchestrator command definition at `commands/memory-cleanup.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Run a parallel multi-persona domain-expert review panel against a file, directory, or output range
3
+ argument-hint: <target> [--personas <names,...>] [--mode <voting|hard-gate|summary>] [--threshold <M-of-N|all|any>] [--grounding <off|re-derive>] [--dry-run]
4
+ ---
5
+
6
+ # /persona-panel
7
+
8
+ Use the Session Orchestrator command definition at `commands/persona-panel.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Plan a new project, feature, or retrospective with structured requirement gathering
3
+ argument-hint: [new|feature|retro]
4
+ ---
5
+
6
+ # /plan
7
+
8
+ Use the Session Orchestrator command definition at `commands/plan.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Aggregate cross-repo issue/MR/CI health across vault-registered projects into a single Markdown dashboard
3
+ argument-hint: [--dry-run] [--repo <name>]
4
+ ---
5
+
6
+ # /portfolio
7
+
8
+ Use the Session Orchestrator command definition at `commands/portfolio.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Reconcile learnings into .claude/rules/ proposals — on-demand version of session-end Phase 3.6.8
3
+ argument-hint: [--dry-run]
4
+ ---
5
+
6
+ # /reconcile
7
+
8
+ Use the Session Orchestrator command definition at `commands/reconcile.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Cut a release — the order the steps must run in, and the criteria that abort a release
3
+ argument-hint: [X.Y.Z]
4
+ ---
5
+
6
+ # /release
7
+
8
+ Use the Session Orchestrator command definition at `commands/release.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,13 @@
1
+ ---
2
+ description: Run a 9-category baseline compliance audit on the current repository
3
+ ---
4
+
5
+ # /repo-audit
6
+
7
+ Use the Session Orchestrator command definition at `commands/repo-audit.md`.
8
+
9
+ Arguments: $ARGUMENTS
10
+
11
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
12
+
13
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Start a development session (housekeeping, feature, deep)
3
+ argument-hint: [housekeeping|feature|deep]
4
+ ---
5
+
6
+ # /session
7
+
8
+ Use the Session Orchestrator command definition at `commands/session.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Guided 5-step venture-spinout / sanitized-fork runbook (copy + fresh-init + SNAPSHOT-FREEZE) — interactive, not scripted
3
+ argument-hint: [--type venture|snapshot] [--dry-run]
4
+ ---
5
+
6
+ # /spinout
7
+
8
+ Use the Session Orchestrator command definition at `commands/spinout.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Identify unused / near-zero-use / stale skills, agents, and commands as Demote or Retire candidates (read-only; never deletes)
3
+ argument-hint: [--kind skill|agent|command] [--window-days N]
4
+ ---
5
+
6
+ # /sunset-review
7
+
8
+ Use the Session Orchestrator command definition at `commands/sunset-review.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Acknowledge templates-first policy for the current session — bypasses the pre-bash-templates-first hook for the remainder of the session
3
+ argument-hint: [optional-reason]
4
+ ---
5
+
6
+ # /templates-ack
7
+
8
+ Use the Session Orchestrator command definition at `commands/templates-ack.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,14 @@
1
+ ---
2
+ description: Agentic end-to-end test orchestrator — drive web/macOS flows, evaluate UX rubric, reconcile issues
3
+ argument-hint: [scope|profile-name] [--since <git-ref>] [--full]
4
+ ---
5
+
6
+ # /test
7
+
8
+ Use the Session Orchestrator command definition at `commands/test.md`.
9
+
10
+ Arguments: $ARGUMENTS
11
+
12
+ Read that command file and follow it exactly. When it references `$ARGUMENTS`, substitute the arguments above. Keep all Session Orchestrator platform fallbacks intact.
13
+
14
+ Cursor has no Skill tool. When the command says to invoke a skill, Read `skills/<skill-name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same `skills/<skill-name>/` directory.
@@ -0,0 +1,60 @@
1
+ {
2
+ "version": 1,
3
+ "hooks": {
4
+ "sessionStart": [
5
+ {
6
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event sessionStart"
7
+ }
8
+ ],
9
+ "sessionEnd": [
10
+ {
11
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event sessionEnd"
12
+ }
13
+ ],
14
+ "beforeShellExecution": [
15
+ {
16
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event beforeShellExecution"
17
+ }
18
+ ],
19
+ "afterShellExecution": [
20
+ {
21
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event afterShellExecution"
22
+ }
23
+ ],
24
+ "preToolUse": [
25
+ {
26
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event preToolUse"
27
+ }
28
+ ],
29
+ "postToolUse": [
30
+ {
31
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event postToolUse"
32
+ }
33
+ ],
34
+ "afterFileEdit": [
35
+ {
36
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event afterFileEdit"
37
+ }
38
+ ],
39
+ "postToolUseFailure": [
40
+ {
41
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event postToolUseFailure"
42
+ }
43
+ ],
44
+ "stop": [
45
+ {
46
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event stop"
47
+ }
48
+ ],
49
+ "subagentStart": [
50
+ {
51
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event subagentStart"
52
+ }
53
+ ],
54
+ "subagentStop": [
55
+ {
56
+ "command": "sh hooks/run-node.sh scripts/lib/cursor-hook-bridge.mjs --event subagentStop"
57
+ }
58
+ ]
59
+ }
60
+ }
@@ -8,6 +8,14 @@ alwaysApply: true
8
8
 
9
9
  You have Session Orchestrator capabilities. This plugin provides structured session management for development work.
10
10
 
11
+ Native Cursor surface (this repo and `scripts/cursor-install.mjs` targets):
12
+ - Slash commands: `.cursor/commands/*.md` — type `/session`, `/go`, `/close`
13
+ - Skills: `.cursor/skills/<name>/SKILL.md` wrappers that point at canonical `skills/<name>/SKILL.md`
14
+ - Hooks: `.cursor/hooks.json` → `scripts/lib/cursor-hook-bridge.mjs`
15
+
16
+ **There is no Skill tool on Cursor.** When a command says to invoke a skill, Read `skills/<name>/SKILL.md` and follow it. Supporting files (`soul.md`, phase docs) live in that same directory.
17
+
18
+
11
19
  ## Platform Context
12
20
 
13
21
  - Platform: Cursor IDE (SO_PLATFORM=cursor)
@@ -33,10 +41,11 @@ You have Session Orchestrator capabilities. This plugin provides structured sess
33
41
  **No AskUserQuestion tool**: Present choices as numbered Markdown lists:
34
42
  ```
35
43
  Choose one:
36
- 1. Option A — description
37
- 2. Option B — description
44
+ 1. Option A (Recommended) what it does, and why it is the safe default here.
45
+ 2. Option B — when B applies instead, and what it costs.
38
46
  Reply with the number of your choice.
39
47
  ```
48
+ Two rules the example above follows. `(Recommended)` goes on option 1, in the label — an operator skims labels, so a recommendation hidden in the description is a recommendation he never sees. And every option names a reason, a cost, or a consequence: a recommendation without one is a claim he can only believe or ignore.
40
49
 
41
50
  **No TaskCreate/Update**: Use plain-text checklists to track progress:
42
51
  ```
@@ -6,6 +6,14 @@ alwaysApply: false
6
6
 
7
7
  # Session Workflow
8
8
 
9
+ This rule is an index, not the procedure. Canonical skills:
10
+
11
+ - `/session` → Read `commands/session.md`, then `skills/session-start/SKILL.md`
12
+ - `/go` → Read `commands/go.md`, then `skills/wave-executor/SKILL.md`
13
+ - `/close` → Read `commands/close.md`, then `skills/session-end/SKILL.md`
14
+
15
+ Cursor has no Skill tool. Follow those files exactly. The summary below is not a substitute.
16
+
9
17
  Three-phase workflow: Start -> Execute -> Close.
10
18
 
11
19
  ## Phase 1: Session Start (`/session [type]`)
@@ -155,7 +163,7 @@ For each planned item:
155
163
  grep -rn 'console\.log\|debugger\|TODO: remove' --include='*.ts' --include='*.tsx' src/
156
164
  ```
157
165
 
158
- Do NOT commit if any check fails. Fix quick issues (<2 min) inline. For longer fixes, create a `priority:high` issue.
166
+ Do NOT commit if any check fails. Fix quick issues (<2 min) inline. For longer fixes, create a `priority::high` issue.
159
167
 
160
168
  ### Step 3: Commit and Push
161
169
 
@@ -69,7 +69,7 @@ grep -rn 'console\.log\|debugger\|TODO: remove' \
69
69
  **Rules**:
70
70
  - Do NOT commit if any check fails
71
71
  - Fix quick issues (<2 min) inline
72
- - For longer fixes: create a `priority:high` issue and exclude affected files from commit
72
+ - For longer fixes: create a `priority::high` issue and exclude affected files from commit
73
73
 
74
74
  ## Variant 4: Per-File
75
75
 
@@ -56,7 +56,7 @@ For each wave in the session plan:
56
56
 
57
57
  ### Step 1: Write Scope Manifest
58
58
 
59
- Write `.cursor/wave-scope.json` before each wave. Set `enforcement: warn` — Cursor's afterFileEdit hook is post-hoc (warns only, cannot block):
59
+ Write `.cursor/wave-scope.json` before each wave. Set `enforcement: warn` unless `.cursor/hooks.json` is installed then `preToolUse` can block via `cursor-hook-bridge.mjs`. `afterFileEdit` remains post-hoc (cannot unwrite):
60
60
 
61
61
  ```json
62
62
  {
@@ -186,9 +186,9 @@ Options:
186
186
  1. [title] — [file_path]:[line] ([severity])
187
187
 
188
188
  Options:
189
- 1. Accept all (Recommended) — create issues for all
190
- 2. Review individually
191
- 3. Dismiss all
189
+ 1. Accept all (Recommended) — one issue per finding. Fastest, and you can still close any of them later.
190
+ 2. Review individually — decide finding by finding. Costs about a minute per item.
191
+ 3. Dismiss all — no issues created, and the findings are gone when this session ends.
192
192
  ```
193
193
 
194
194
  ### Step 4: Batch Confirmation
@@ -196,9 +196,9 @@ Options:
196
196
  ```
197
197
  Ready to create [N] issues? ([X] critical, [Y] high, [Z] medium, [W] low)
198
198
 
199
- 1. Create all [N] issues (Recommended)
200
- 2. Review list first
201
- 3. Cancel
199
+ 1. Create all [N] issues (Recommended) — the list is already filtered, so nothing here is noise. You can close any of them later.
200
+ 2. Review list first — read the titles before anything is written. Costs one extra step.
201
+ 3. Cancel — nothing is written, and this run's findings are not kept.
202
202
  ```
203
203
 
204
204
  ## Phase 5: Issue Creation