@bonesofspring/ai-rules 0.2.26 → 0.2.28

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 (1569) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/LICENSE +21 -0
  3. package/README.md +1 -1
  4. package/bin/cli.js +275 -46
  5. package/bin/lib/safe-path.js +93 -0
  6. package/bin/lib/seed-ai-local-team.js +48 -5
  7. package/bin/mavis-install.js +35 -8
  8. package/bin/opencode-install.js +92 -11
  9. package/docs/LOCAL-OVERLAY.md +186 -0
  10. package/docs/MAVIS-COMPATIBILITY.md +174 -0
  11. package/docs/MAVIS.md +120 -0
  12. package/docs/OPENCODE-COMPATIBILITY.md +54 -0
  13. package/docs/OPENCODE.md +133 -0
  14. package/docs/PRESET-CONTRIBUTION.md +431 -0
  15. package/docs/PRESET-ENGLISH-STYLE.md +91 -0
  16. package/docs/specs/INDEX.md +9 -0
  17. package/docs/specs/_templates/feature.md +32 -0
  18. package/docs/specs/_templates/page.md +47 -0
  19. package/package.json +7 -1
  20. package/presets/_shared/core/meta/preset-layering.md +1 -1
  21. package/presets/_shared/core/meta/preset-pr-checklist.md +1 -1
  22. package/presets/_shared/core/meta/preset-token-budget.md +10 -10
  23. package/presets/_shared/core/quality/code-quality-and-refactoring.md +6 -0
  24. package/presets/claude/android-kotlin/CLAUDE.md +12 -0
  25. package/presets/claude/android-kotlin/agents/accessibility-reviewer.md +15 -0
  26. package/presets/claude/android-kotlin/agents/api-contract-reviewer.md +16 -1
  27. package/presets/claude/android-kotlin/agents/build-verifier.md +19 -2
  28. package/presets/claude/android-kotlin/agents/ci-investigator.md +25 -0
  29. package/presets/claude/android-kotlin/agents/code-reviewer.md +16 -0
  30. package/presets/claude/android-kotlin/agents/codebase-analyzer.md +15 -0
  31. package/presets/claude/android-kotlin/agents/debugger.md +25 -0
  32. package/presets/claude/android-kotlin/agents/feature-developer.md +25 -0
  33. package/presets/claude/android-kotlin/agents/instrumentation-test-generator.md +16 -0
  34. package/presets/claude/android-kotlin/agents/instrumentation-test-healer.md +16 -0
  35. package/presets/claude/android-kotlin/agents/instrumentation-test-planner.md +16 -0
  36. package/presets/claude/android-kotlin/agents/migration-specialist.md +15 -0
  37. package/presets/claude/android-kotlin/agents/mockup-reviewer.md +15 -0
  38. package/presets/claude/android-kotlin/agents/openspec-author.md +15 -0
  39. package/presets/claude/android-kotlin/agents/performance-auditor.md +15 -0
  40. package/presets/claude/android-kotlin/agents/qa-tester.md +17 -0
  41. package/presets/claude/android-kotlin/agents/security-reviewer.md +15 -0
  42. package/presets/claude/android-kotlin/agents/solution-architect.md +15 -0
  43. package/presets/claude/android-kotlin/agents/task-analyst.md +15 -0
  44. package/presets/claude/android-kotlin/agents/task-router.md +15 -0
  45. package/presets/claude/android-kotlin/agents/tech-writer.md +15 -1
  46. package/presets/claude/android-kotlin/agents/unit-test-generator.md +16 -0
  47. package/presets/claude/android-kotlin/agents/unit-test-healer.md +16 -0
  48. package/presets/claude/android-kotlin/agents/unit-test-planner.md +16 -0
  49. package/presets/claude/android-kotlin/commands/task.md +1 -1
  50. package/presets/claude/android-kotlin/hooks/chain-team-phases.sh +32 -3
  51. package/presets/claude/android-kotlin/hooks/examples/README.md +5 -3
  52. package/presets/claude/android-kotlin/hooks/examples/test-on-save.example.sh +6 -4
  53. package/presets/claude/android-kotlin/rules/README.md +1 -1
  54. package/presets/claude/android-kotlin/rules/tooling-and-review/code-quality.md +6 -0
  55. package/presets/claude/android-kotlin/rules/tooling-and-review/mcp-usage.md +1 -1
  56. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-layering.md +2 -2
  57. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
  58. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-pr-checklist.md +2 -2
  59. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-token-budget.md +11 -11
  60. package/presets/claude/android-kotlin/rules/tooling-and-review/preset-twin-sync.md +1 -1
  61. package/presets/claude/android-kotlin/rules/ui-and-accessibility/compose.md +2 -0
  62. package/presets/claude/android-kotlin/settings.json +10 -0
  63. package/presets/claude/go/CLAUDE.md +13 -1
  64. package/presets/claude/go/agents/api-contract-reviewer.md +17 -0
  65. package/presets/claude/go/agents/build-verifier.md +18 -1
  66. package/presets/claude/go/agents/ci-investigator.md +29 -0
  67. package/presets/claude/go/agents/code-reviewer.md +16 -0
  68. package/presets/claude/go/agents/codebase-analyzer.md +15 -0
  69. package/presets/claude/go/agents/debugger.md +29 -0
  70. package/presets/claude/go/agents/feature-developer.md +29 -0
  71. package/presets/claude/go/agents/integration-test-generator.md +17 -0
  72. package/presets/claude/go/agents/integration-test-healer.md +17 -0
  73. package/presets/claude/go/agents/integration-test-planner.md +17 -0
  74. package/presets/claude/go/agents/migration-specialist.md +15 -0
  75. package/presets/claude/go/agents/openspec-author.md +15 -0
  76. package/presets/claude/go/agents/performance-auditor.md +15 -0
  77. package/presets/claude/go/agents/qa-tester.md +18 -0
  78. package/presets/claude/go/agents/security-reviewer.md +15 -0
  79. package/presets/claude/go/agents/solution-architect.md +15 -0
  80. package/presets/claude/go/agents/task-analyst.md +15 -0
  81. package/presets/claude/go/agents/task-router.md +15 -0
  82. package/presets/claude/go/agents/tech-writer.md +15 -1
  83. package/presets/claude/go/agents/unit-test-generator.md +16 -0
  84. package/presets/claude/go/agents/unit-test-healer.md +16 -0
  85. package/presets/claude/go/agents/unit-test-planner.md +16 -0
  86. package/presets/claude/go/commands/task.md +1 -1
  87. package/presets/claude/go/hooks/chain-team-phases.sh +32 -3
  88. package/presets/claude/go/hooks/examples/README.md +5 -3
  89. package/presets/claude/go/rules/README.md +1 -1
  90. package/presets/claude/go/rules/api-and-data/adapters-driven.md +3 -3
  91. package/presets/claude/go/rules/api-and-data/adapters-driving.md +2 -2
  92. package/presets/claude/go/rules/api-and-data/api-grpc.md +2 -2
  93. package/presets/claude/go/rules/api-and-data/api-http.md +3 -3
  94. package/presets/claude/go/rules/api-and-data/messaging-adapters.md +1 -1
  95. package/presets/claude/go/rules/api-and-data/persistence-adapters.md +2 -2
  96. package/presets/claude/go/rules/architecture/application-usecases.md +1 -1
  97. package/presets/claude/go/rules/architecture/domain-layer.md +1 -1
  98. package/presets/claude/go/rules/architecture/feature-delivery.md +1 -1
  99. package/presets/claude/go/rules/architecture/ports-interfaces.md +2 -2
  100. package/presets/claude/go/rules/stack/go-conventions.md +1 -1
  101. package/presets/claude/go/rules/testing/e2e.md +2 -2
  102. package/presets/claude/go/rules/testing/integration.md +2 -2
  103. package/presets/claude/go/rules/testing/unit.md +1 -1
  104. package/presets/claude/go/rules/tooling-and-review/agent-team-intake.md +1 -1
  105. package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +1 -1
  106. package/presets/claude/go/rules/tooling-and-review/code-quality.md +6 -0
  107. package/presets/claude/go/rules/tooling-and-review/code-review.md +1 -1
  108. package/presets/claude/go/rules/tooling-and-review/go-tooling.md +1 -1
  109. package/presets/claude/go/rules/tooling-and-review/mcp-usage.md +1 -1
  110. package/presets/claude/go/rules/tooling-and-review/post-change-test.md +1 -1
  111. package/presets/claude/go/rules/tooling-and-review/preset-layering.md +1 -1
  112. package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +1 -1
  113. package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +10 -10
  114. package/presets/claude/go/rules/tooling-and-review/security-go.md +3 -3
  115. package/presets/claude/go/rules/tooling-and-review/technical-retro.md +1 -1
  116. package/presets/claude/go/settings.json +10 -0
  117. package/presets/claude/ios-swift/CLAUDE.md +12 -0
  118. package/presets/claude/ios-swift/agents/accessibility-reviewer.md +15 -0
  119. package/presets/claude/ios-swift/agents/api-contract-reviewer.md +16 -0
  120. package/presets/claude/ios-swift/agents/build-verifier.md +20 -3
  121. package/presets/claude/ios-swift/agents/ci-investigator.md +24 -0
  122. package/presets/claude/ios-swift/agents/code-reviewer.md +16 -0
  123. package/presets/claude/ios-swift/agents/codebase-analyzer.md +15 -0
  124. package/presets/claude/ios-swift/agents/debugger.md +24 -0
  125. package/presets/claude/ios-swift/agents/feature-developer.md +24 -0
  126. package/presets/claude/ios-swift/agents/migration-specialist.md +15 -0
  127. package/presets/claude/ios-swift/agents/mockup-reviewer.md +15 -0
  128. package/presets/claude/ios-swift/agents/openspec-author.md +15 -0
  129. package/presets/claude/ios-swift/agents/performance-auditor.md +15 -0
  130. package/presets/claude/ios-swift/agents/qa-tester.md +17 -0
  131. package/presets/claude/ios-swift/agents/security-reviewer.md +15 -0
  132. package/presets/claude/ios-swift/agents/solution-architect.md +15 -0
  133. package/presets/claude/ios-swift/agents/task-analyst.md +15 -0
  134. package/presets/claude/ios-swift/agents/task-router.md +15 -0
  135. package/presets/claude/ios-swift/agents/tech-writer.md +15 -1
  136. package/presets/claude/ios-swift/agents/unit-test-generator.md +16 -0
  137. package/presets/claude/ios-swift/agents/unit-test-healer.md +16 -0
  138. package/presets/claude/ios-swift/agents/unit-test-planner.md +16 -0
  139. package/presets/claude/ios-swift/agents/xcuitest-test-generator.md +16 -0
  140. package/presets/claude/ios-swift/agents/xcuitest-test-healer.md +16 -0
  141. package/presets/claude/ios-swift/agents/xcuitest-test-planner.md +16 -0
  142. package/presets/claude/ios-swift/commands/task.md +1 -1
  143. package/presets/claude/ios-swift/hooks/chain-team-phases.sh +32 -3
  144. package/presets/claude/ios-swift/hooks/examples/README.md +5 -3
  145. package/presets/claude/ios-swift/rules/README.md +1 -1
  146. package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +3 -3
  147. package/presets/claude/ios-swift/rules/architecture/reference-features.md +1 -1
  148. package/presets/claude/ios-swift/rules/tooling-and-review/code-quality.md +6 -0
  149. package/presets/claude/ios-swift/rules/tooling-and-review/mcp-usage.md +1 -1
  150. package/presets/claude/ios-swift/rules/tooling-and-review/post-change-build.md +2 -2
  151. package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +2 -2
  152. package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
  153. package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +2 -2
  154. package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +11 -11
  155. package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +1 -1
  156. package/presets/claude/ios-swift/rules/ui-and-accessibility/swiftui.md +7 -0
  157. package/presets/claude/ios-swift/settings.json +10 -0
  158. package/presets/claude/java/CLAUDE.md +14 -2
  159. package/presets/claude/java/agents/api-contract-reviewer.md +17 -0
  160. package/presets/claude/java/agents/build-verifier.md +18 -1
  161. package/presets/claude/java/agents/ci-investigator.md +29 -0
  162. package/presets/claude/java/agents/code-reviewer.md +16 -0
  163. package/presets/claude/java/agents/codebase-analyzer.md +15 -0
  164. package/presets/claude/java/agents/debugger.md +29 -0
  165. package/presets/claude/java/agents/feature-developer.md +29 -0
  166. package/presets/claude/java/agents/integration-test-generator.md +17 -0
  167. package/presets/claude/java/agents/integration-test-healer.md +17 -0
  168. package/presets/claude/java/agents/integration-test-planner.md +17 -0
  169. package/presets/claude/java/agents/migration-specialist.md +15 -0
  170. package/presets/claude/java/agents/openspec-author.md +15 -0
  171. package/presets/claude/java/agents/performance-auditor.md +15 -0
  172. package/presets/claude/java/agents/qa-tester.md +18 -0
  173. package/presets/claude/java/agents/security-reviewer.md +15 -0
  174. package/presets/claude/java/agents/solution-architect.md +15 -0
  175. package/presets/claude/java/agents/task-analyst.md +15 -0
  176. package/presets/claude/java/agents/task-router.md +15 -0
  177. package/presets/claude/java/agents/tech-writer.md +15 -1
  178. package/presets/claude/java/agents/unit-test-generator.md +16 -0
  179. package/presets/claude/java/agents/unit-test-healer.md +16 -0
  180. package/presets/claude/java/agents/unit-test-planner.md +16 -0
  181. package/presets/claude/java/commands/task.md +1 -1
  182. package/presets/claude/java/hooks/chain-team-phases.sh +32 -3
  183. package/presets/claude/java/hooks/examples/README.md +5 -3
  184. package/presets/claude/java/rules/README.md +1 -1
  185. package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +1 -1
  186. package/presets/claude/java/rules/tooling-and-review/code-quality.md +6 -0
  187. package/presets/claude/java/rules/tooling-and-review/mcp-usage.md +1 -1
  188. package/presets/claude/java/rules/tooling-and-review/preset-layering.md +1 -1
  189. package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +1 -1
  190. package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +10 -10
  191. package/presets/claude/java/settings.json +10 -0
  192. package/presets/claude/mcp-ts/CLAUDE.md +13 -1
  193. package/presets/claude/mcp-ts/agents/build-verifier.md +18 -1
  194. package/presets/claude/mcp-ts/agents/feature-developer.md +22 -0
  195. package/presets/claude/mcp-ts/agents/security-reviewer.md +15 -0
  196. package/presets/claude/mcp-ts/agents/solution-architect.md +15 -1
  197. package/presets/claude/mcp-ts/agents/task-analyst.md +15 -0
  198. package/presets/claude/mcp-ts/agents/task-router.md +15 -0
  199. package/presets/claude/mcp-ts/commands/task.md +1 -1
  200. package/presets/claude/mcp-ts/hooks/chain-team-phases.sh +32 -3
  201. package/presets/claude/mcp-ts/rules/README.md +1 -1
  202. package/presets/claude/mcp-ts/rules/api-and-data/mcp-auth-secrets.md +4 -4
  203. package/presets/claude/mcp-ts/rules/api-and-data/mcp-contract-testing.md +2 -2
  204. package/presets/claude/mcp-ts/rules/api-and-data/mcp-tool-design.md +1 -1
  205. package/presets/claude/mcp-ts/rules/api-and-data/mcp-transport-packaging.md +2 -2
  206. package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +1 -1
  207. package/presets/claude/mcp-ts/rules/testing/unit.md +2 -2
  208. package/presets/claude/mcp-ts/rules/tooling-and-review/anti-sycophancy-discipline.md +2 -2
  209. package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +6 -0
  210. package/presets/claude/mcp-ts/rules/tooling-and-review/mcp-ts-tooling.md +3 -3
  211. package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +1 -1
  212. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +1 -1
  213. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +1 -1
  214. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +10 -10
  215. package/presets/claude/mcp-ts/rules/tooling-and-review/security-mcp.md +1 -1
  216. package/presets/claude/mcp-ts/settings.json +10 -0
  217. package/presets/claude/next/CLAUDE.md +12 -0
  218. package/presets/claude/next/README.md +1 -1
  219. package/presets/claude/next/agents/accessibility-reviewer.md +17 -0
  220. package/presets/claude/next/agents/api-contract-reviewer.md +19 -0
  221. package/presets/claude/next/agents/build-verifier.md +19 -2
  222. package/presets/claude/next/agents/ci-investigator.md +34 -0
  223. package/presets/claude/next/agents/code-reviewer.md +18 -0
  224. package/presets/claude/next/agents/codebase-analyzer.md +17 -0
  225. package/presets/claude/next/agents/debugger.md +34 -0
  226. package/presets/claude/next/agents/feature-developer.md +34 -0
  227. package/presets/claude/next/agents/migration-specialist.md +17 -0
  228. package/presets/claude/next/agents/mockup-reviewer.md +17 -0
  229. package/presets/claude/next/agents/openspec-author.md +17 -0
  230. package/presets/claude/next/agents/performance-auditor.md +17 -0
  231. package/presets/claude/next/agents/playwright-test-generator.md +19 -0
  232. package/presets/claude/next/agents/playwright-test-healer.md +19 -1
  233. package/presets/claude/next/agents/playwright-test-planner.md +20 -1
  234. package/presets/claude/next/agents/qa-tester.md +20 -0
  235. package/presets/claude/next/agents/security-reviewer.md +17 -0
  236. package/presets/claude/next/agents/solution-architect.md +17 -0
  237. package/presets/claude/next/agents/task-analyst.md +17 -0
  238. package/presets/claude/next/agents/task-router.md +17 -0
  239. package/presets/claude/next/agents/tech-writer.md +17 -0
  240. package/presets/claude/next/agents/unit-test-generator.md +18 -0
  241. package/presets/claude/next/agents/unit-test-healer.md +18 -0
  242. package/presets/claude/next/agents/unit-test-planner.md +18 -0
  243. package/presets/claude/next/commands/task.md +1 -1
  244. package/presets/claude/next/hooks/chain-team-phases.sh +32 -3
  245. package/presets/claude/next/hooks/examples/README.md +5 -3
  246. package/presets/claude/next/rules/README.md +1 -1
  247. package/presets/claude/next/rules/api-and-data/api-services.md +6 -4
  248. package/presets/claude/next/rules/api-and-data/store-rtk.md +6 -5
  249. package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +4 -0
  250. package/presets/claude/next/rules/architecture/reference-features.md +1 -1
  251. package/presets/claude/next/rules/stack/next-app-core.md +2 -1
  252. package/presets/claude/next/rules/testing/tests-unit.md +1 -0
  253. package/presets/claude/next/rules/tooling-and-review/code-quality.md +6 -0
  254. package/presets/claude/next/rules/tooling-and-review/preset-layering.md +2 -2
  255. package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
  256. package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +2 -2
  257. package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +11 -11
  258. package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +1 -1
  259. package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +37 -1
  260. package/presets/claude/next/settings.json +16 -0
  261. package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
  262. package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
  263. package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
  264. package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
  265. package/presets/claude/next/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
  266. package/presets/claude/next/team/fixtures/metrics.example.json +54 -0
  267. package/presets/claude/nuxt/CLAUDE.md +12 -0
  268. package/presets/claude/nuxt/agents/accessibility-reviewer.md +17 -0
  269. package/presets/claude/nuxt/agents/api-contract-reviewer.md +19 -0
  270. package/presets/claude/nuxt/agents/build-verifier.md +19 -2
  271. package/presets/claude/nuxt/agents/ci-investigator.md +34 -0
  272. package/presets/claude/nuxt/agents/code-reviewer.md +18 -0
  273. package/presets/claude/nuxt/agents/codebase-analyzer.md +17 -0
  274. package/presets/claude/nuxt/agents/debugger.md +34 -0
  275. package/presets/claude/nuxt/agents/feature-developer.md +34 -0
  276. package/presets/claude/nuxt/agents/migration-specialist.md +17 -0
  277. package/presets/claude/nuxt/agents/mockup-reviewer.md +17 -0
  278. package/presets/claude/nuxt/agents/openspec-author.md +17 -0
  279. package/presets/claude/nuxt/agents/performance-auditor.md +17 -0
  280. package/presets/claude/nuxt/agents/playwright-test-generator.md +19 -0
  281. package/presets/claude/nuxt/agents/playwright-test-healer.md +19 -1
  282. package/presets/claude/nuxt/agents/playwright-test-planner.md +20 -1
  283. package/presets/claude/nuxt/agents/qa-tester.md +20 -0
  284. package/presets/claude/nuxt/agents/security-reviewer.md +17 -0
  285. package/presets/claude/nuxt/agents/solution-architect.md +17 -0
  286. package/presets/claude/nuxt/agents/task-analyst.md +17 -0
  287. package/presets/claude/nuxt/agents/task-router.md +17 -0
  288. package/presets/claude/nuxt/agents/tech-writer.md +17 -0
  289. package/presets/claude/nuxt/agents/unit-test-generator.md +18 -0
  290. package/presets/claude/nuxt/agents/unit-test-healer.md +18 -0
  291. package/presets/claude/nuxt/agents/unit-test-planner.md +18 -0
  292. package/presets/claude/nuxt/commands/task.md +1 -1
  293. package/presets/claude/nuxt/hooks/chain-team-phases.sh +32 -3
  294. package/presets/claude/nuxt/hooks/examples/README.md +5 -3
  295. package/presets/claude/nuxt/hooks/examples/format-edited.example.sh +8 -7
  296. package/presets/claude/nuxt/hooks/examples/test-on-save.example.sh +8 -3
  297. package/presets/claude/nuxt/rules/README.md +1 -1
  298. package/presets/claude/nuxt/rules/architecture/layer-barrel-exports.md +1 -1
  299. package/presets/claude/nuxt/rules/architecture/reference-features.md +1 -1
  300. package/presets/claude/nuxt/rules/tooling-and-review/code-quality.md +6 -0
  301. package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +2 -2
  302. package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
  303. package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +2 -2
  304. package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +11 -11
  305. package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +1 -1
  306. package/presets/claude/nuxt/rules/ui-and-accessibility/vue-ui.md +7 -0
  307. package/presets/claude/nuxt/settings.json +16 -0
  308. package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
  309. package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
  310. package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
  311. package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
  312. package/presets/claude/nuxt/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
  313. package/presets/claude/nuxt/team/fixtures/metrics.example.json +54 -0
  314. package/presets/claude/php-hexagonal/CLAUDE.md +14 -2
  315. package/presets/claude/php-hexagonal/agents/api-contract-reviewer.md +17 -0
  316. package/presets/claude/php-hexagonal/agents/build-verifier.md +18 -1
  317. package/presets/claude/php-hexagonal/agents/ci-investigator.md +29 -0
  318. package/presets/claude/php-hexagonal/agents/code-reviewer.md +16 -0
  319. package/presets/claude/php-hexagonal/agents/codebase-analyzer.md +15 -0
  320. package/presets/claude/php-hexagonal/agents/debugger.md +29 -0
  321. package/presets/claude/php-hexagonal/agents/feature-developer.md +29 -0
  322. package/presets/claude/php-hexagonal/agents/integration-test-generator.md +17 -0
  323. package/presets/claude/php-hexagonal/agents/integration-test-healer.md +17 -0
  324. package/presets/claude/php-hexagonal/agents/integration-test-planner.md +17 -0
  325. package/presets/claude/php-hexagonal/agents/migration-specialist.md +15 -0
  326. package/presets/claude/php-hexagonal/agents/openspec-author.md +15 -0
  327. package/presets/claude/php-hexagonal/agents/performance-auditor.md +15 -0
  328. package/presets/claude/php-hexagonal/agents/qa-tester.md +18 -0
  329. package/presets/claude/php-hexagonal/agents/security-reviewer.md +15 -0
  330. package/presets/claude/php-hexagonal/agents/solution-architect.md +15 -0
  331. package/presets/claude/php-hexagonal/agents/task-analyst.md +15 -0
  332. package/presets/claude/php-hexagonal/agents/task-router.md +15 -0
  333. package/presets/claude/php-hexagonal/agents/tech-writer.md +15 -1
  334. package/presets/claude/php-hexagonal/agents/unit-test-generator.md +16 -0
  335. package/presets/claude/php-hexagonal/agents/unit-test-healer.md +16 -0
  336. package/presets/claude/php-hexagonal/agents/unit-test-planner.md +16 -0
  337. package/presets/claude/php-hexagonal/commands/task.md +1 -1
  338. package/presets/claude/php-hexagonal/hooks/chain-team-phases.sh +32 -3
  339. package/presets/claude/php-hexagonal/hooks/examples/README.md +5 -3
  340. package/presets/claude/php-hexagonal/rules/README.md +1 -1
  341. package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +1 -1
  342. package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +6 -0
  343. package/presets/claude/php-hexagonal/rules/tooling-and-review/mcp-usage.md +1 -1
  344. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +1 -1
  345. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +1 -1
  346. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +10 -10
  347. package/presets/claude/php-hexagonal/settings.json +10 -0
  348. package/presets/claude/php-laravel/CLAUDE.md +12 -0
  349. package/presets/claude/php-laravel/agents/api-contract-reviewer.md +18 -0
  350. package/presets/claude/php-laravel/agents/build-verifier.md +18 -1
  351. package/presets/claude/php-laravel/agents/ci-investigator.md +29 -0
  352. package/presets/claude/php-laravel/agents/code-reviewer.md +16 -0
  353. package/presets/claude/php-laravel/agents/codebase-analyzer.md +15 -0
  354. package/presets/claude/php-laravel/agents/debugger.md +29 -0
  355. package/presets/claude/php-laravel/agents/feature-developer.md +29 -0
  356. package/presets/claude/php-laravel/agents/integration-test-generator.md +17 -0
  357. package/presets/claude/php-laravel/agents/integration-test-healer.md +17 -0
  358. package/presets/claude/php-laravel/agents/integration-test-planner.md +17 -0
  359. package/presets/claude/php-laravel/agents/migration-specialist.md +15 -0
  360. package/presets/claude/php-laravel/agents/openspec-author.md +15 -0
  361. package/presets/claude/php-laravel/agents/performance-auditor.md +15 -0
  362. package/presets/claude/php-laravel/agents/qa-tester.md +18 -0
  363. package/presets/claude/php-laravel/agents/security-reviewer.md +15 -0
  364. package/presets/claude/php-laravel/agents/solution-architect.md +15 -0
  365. package/presets/claude/php-laravel/agents/task-analyst.md +15 -0
  366. package/presets/claude/php-laravel/agents/task-router.md +15 -0
  367. package/presets/claude/php-laravel/agents/tech-writer.md +15 -1
  368. package/presets/claude/php-laravel/agents/unit-test-generator.md +16 -0
  369. package/presets/claude/php-laravel/agents/unit-test-healer.md +16 -0
  370. package/presets/claude/php-laravel/agents/unit-test-planner.md +16 -0
  371. package/presets/claude/php-laravel/commands/task.md +1 -1
  372. package/presets/claude/php-laravel/hooks/chain-team-phases.sh +32 -3
  373. package/presets/claude/php-laravel/hooks/examples/README.md +5 -3
  374. package/presets/claude/php-laravel/rules/README.md +1 -1
  375. package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +1 -1
  376. package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +6 -0
  377. package/presets/claude/php-laravel/rules/tooling-and-review/mcp-usage.md +1 -1
  378. package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +1 -1
  379. package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +1 -1
  380. package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +10 -10
  381. package/presets/claude/php-laravel/settings.json +10 -0
  382. package/presets/claude/svelte/CLAUDE.md +12 -0
  383. package/presets/claude/svelte/agents/accessibility-reviewer.md +17 -0
  384. package/presets/claude/svelte/agents/api-contract-reviewer.md +19 -0
  385. package/presets/claude/svelte/agents/build-verifier.md +19 -2
  386. package/presets/claude/svelte/agents/ci-investigator.md +34 -0
  387. package/presets/claude/svelte/agents/code-reviewer.md +18 -0
  388. package/presets/claude/svelte/agents/codebase-analyzer.md +17 -0
  389. package/presets/claude/svelte/agents/debugger.md +34 -0
  390. package/presets/claude/svelte/agents/feature-developer.md +34 -0
  391. package/presets/claude/svelte/agents/migration-specialist.md +17 -0
  392. package/presets/claude/svelte/agents/mockup-reviewer.md +17 -0
  393. package/presets/claude/svelte/agents/openspec-author.md +17 -0
  394. package/presets/claude/svelte/agents/performance-auditor.md +17 -0
  395. package/presets/claude/svelte/agents/playwright-test-generator.md +19 -0
  396. package/presets/claude/svelte/agents/playwright-test-healer.md +19 -1
  397. package/presets/claude/svelte/agents/playwright-test-planner.md +20 -1
  398. package/presets/claude/svelte/agents/qa-tester.md +20 -0
  399. package/presets/claude/svelte/agents/security-reviewer.md +17 -0
  400. package/presets/claude/svelte/agents/solution-architect.md +17 -0
  401. package/presets/claude/svelte/agents/task-analyst.md +17 -0
  402. package/presets/claude/svelte/agents/task-router.md +17 -0
  403. package/presets/claude/svelte/agents/tech-writer.md +17 -0
  404. package/presets/claude/svelte/agents/unit-test-generator.md +18 -0
  405. package/presets/claude/svelte/agents/unit-test-healer.md +18 -0
  406. package/presets/claude/svelte/agents/unit-test-planner.md +18 -0
  407. package/presets/claude/svelte/commands/task.md +1 -1
  408. package/presets/claude/svelte/hooks/chain-team-phases.sh +32 -3
  409. package/presets/claude/svelte/hooks/examples/README.md +5 -3
  410. package/presets/claude/svelte/rules/README.md +1 -1
  411. package/presets/claude/svelte/rules/api-and-data/store-svelte.md +1 -1
  412. package/presets/claude/svelte/rules/architecture/layer-barrel-exports.md +1 -1
  413. package/presets/claude/svelte/rules/architecture/reference-features.md +1 -1
  414. package/presets/claude/svelte/rules/tooling-and-review/code-quality.md +6 -0
  415. package/presets/claude/svelte/rules/tooling-and-review/mcp-usage.md +1 -1
  416. package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +2 -2
  417. package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +1 -1
  418. package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +2 -2
  419. package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +11 -11
  420. package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +1 -1
  421. package/presets/claude/svelte/rules/ui-and-accessibility/no-rest-props-spread.md +1 -1
  422. package/presets/claude/svelte/rules/ui-and-accessibility/svelte-ui.md +7 -0
  423. package/presets/claude/svelte/settings.json +16 -0
  424. package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
  425. package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
  426. package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
  427. package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
  428. package/presets/claude/svelte/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
  429. package/presets/claude/svelte/team/fixtures/metrics.example.json +54 -0
  430. package/presets/cursor/android-kotlin/agents/build-verifier.md +2 -2
  431. package/presets/cursor/android-kotlin/commands/task.md +1 -1
  432. package/presets/cursor/android-kotlin/hooks/chain-team-phases.sh +32 -3
  433. package/presets/cursor/android-kotlin/hooks/examples/test-on-save.example.sh +6 -4
  434. package/presets/cursor/android-kotlin/rules/README.md +1 -1
  435. package/presets/cursor/android-kotlin/rules/code-quality-and-refactoring.mdc +6 -0
  436. package/presets/cursor/android-kotlin/rules/compose-ui.mdc +2 -0
  437. package/presets/cursor/android-kotlin/rules/preset-layering.mdc +2 -2
  438. package/presets/cursor/android-kotlin/rules/preset-no-cross-stack-leakage.mdc +1 -1
  439. package/presets/cursor/android-kotlin/rules/preset-pr-checklist.mdc +2 -2
  440. package/presets/cursor/android-kotlin/rules/preset-token-budget.mdc +11 -11
  441. package/presets/cursor/android-kotlin/rules/preset-twin-sync.mdc +1 -1
  442. package/presets/cursor/go/README.md +1 -1
  443. package/presets/cursor/go/agents/build-verifier.md +1 -1
  444. package/presets/cursor/go/commands/task.md +1 -1
  445. package/presets/cursor/go/hooks/chain-team-phases.sh +32 -3
  446. package/presets/cursor/go/rules/README.md +2 -2
  447. package/presets/cursor/go/rules/code-quality-and-refactoring.mdc +6 -0
  448. package/presets/cursor/go/rules/preset-layering.mdc +1 -1
  449. package/presets/cursor/go/rules/preset-pr-checklist.mdc +1 -1
  450. package/presets/cursor/go/rules/preset-token-budget.mdc +10 -10
  451. package/presets/cursor/ios-swift/README.md +1 -1
  452. package/presets/cursor/ios-swift/agents/build-verifier.md +3 -3
  453. package/presets/cursor/ios-swift/commands/task.md +1 -1
  454. package/presets/cursor/ios-swift/hooks/chain-team-phases.sh +32 -3
  455. package/presets/cursor/ios-swift/rules/README.md +2 -2
  456. package/presets/cursor/ios-swift/rules/code-quality-and-refactoring.mdc +6 -0
  457. package/presets/cursor/ios-swift/rules/preset-layering.mdc +2 -2
  458. package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +1 -1
  459. package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +2 -2
  460. package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +11 -11
  461. package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +1 -1
  462. package/presets/cursor/ios-swift/rules/reference-features.mdc +1 -1
  463. package/presets/cursor/ios-swift/rules/swiftui-ui.mdc +7 -0
  464. package/presets/cursor/java/AGENTS.md +1 -1
  465. package/presets/cursor/java/agents/build-verifier.md +1 -1
  466. package/presets/cursor/java/commands/task.md +1 -1
  467. package/presets/cursor/java/hooks/chain-team-phases.sh +32 -3
  468. package/presets/cursor/java/rules/README.md +2 -2
  469. package/presets/cursor/java/rules/agent-team-orchestrator.mdc +1 -1
  470. package/presets/cursor/java/rules/code-quality-and-refactoring.mdc +6 -0
  471. package/presets/cursor/java/rules/preset-layering.mdc +1 -1
  472. package/presets/cursor/java/rules/preset-pr-checklist.mdc +1 -1
  473. package/presets/cursor/java/rules/preset-token-budget.mdc +10 -10
  474. package/presets/cursor/mcp-ts/agents/build-verifier.md +1 -1
  475. package/presets/cursor/mcp-ts/commands/task.md +1 -1
  476. package/presets/cursor/mcp-ts/hooks/chain-team-phases.sh +32 -3
  477. package/presets/cursor/mcp-ts/rules/README.md +2 -2
  478. package/presets/cursor/mcp-ts/rules/anti-sycophancy-discipline.mdc +2 -2
  479. package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +6 -0
  480. package/presets/cursor/mcp-ts/rules/mcp-auth-secrets.mdc +4 -4
  481. package/presets/cursor/mcp-ts/rules/mcp-contract-testing.mdc +2 -2
  482. package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +1 -1
  483. package/presets/cursor/mcp-ts/rules/mcp-tool-design.mdc +1 -1
  484. package/presets/cursor/mcp-ts/rules/mcp-transport-packaging.mdc +2 -2
  485. package/presets/cursor/mcp-ts/rules/mcp-ts-tooling.mdc +3 -3
  486. package/presets/cursor/mcp-ts/rules/preset-layering.mdc +1 -1
  487. package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +1 -1
  488. package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +10 -10
  489. package/presets/cursor/mcp-ts/rules/security-mcp.mdc +1 -1
  490. package/presets/cursor/mcp-ts/rules/tests-unit.mdc +2 -2
  491. package/presets/cursor/next/README.md +2 -2
  492. package/presets/cursor/next/agents/build-verifier.md +2 -2
  493. package/presets/cursor/next/ai-local/rules-library/agent-artifacts-no-local-paths.md +38 -0
  494. package/presets/cursor/next/ai-local/rules-library/commit-hygiene.md +17 -0
  495. package/presets/cursor/next/ai-local/rules-library/mcp-required-for-ui-layout.md +41 -0
  496. package/presets/cursor/next/ai-local/rules-library/no-test-driven-behavior-change.md +14 -0
  497. package/presets/cursor/next/ai-local/rules-library/pre-pr-checklist.md +16 -0
  498. package/presets/cursor/next/ai-local/rules-library/router-pages.md +23 -0
  499. package/presets/cursor/next/ai-local/rules-library/single-source-copy-constants.md +16 -0
  500. package/presets/cursor/next/commands/task.md +1 -1
  501. package/presets/cursor/next/hooks/chain-team-phases.sh +32 -3
  502. package/presets/cursor/next/rules/README.md +1 -1
  503. package/presets/cursor/next/rules/api-services.mdc +6 -4
  504. package/presets/cursor/next/rules/code-quality-and-refactoring.mdc +6 -0
  505. package/presets/cursor/next/rules/feature-delivery-workflow.mdc +4 -0
  506. package/presets/cursor/next/rules/next-app-core.mdc +2 -1
  507. package/presets/cursor/next/rules/preset-layering.mdc +2 -2
  508. package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +1 -1
  509. package/presets/cursor/next/rules/preset-pr-checklist.mdc +2 -2
  510. package/presets/cursor/next/rules/preset-token-budget.mdc +11 -11
  511. package/presets/cursor/next/rules/preset-twin-sync.mdc +1 -1
  512. package/presets/cursor/next/rules/react-ui.mdc +37 -1
  513. package/presets/cursor/next/rules/reference-features.mdc +1 -1
  514. package/presets/cursor/next/rules/store-rtk.mdc +6 -5
  515. package/presets/cursor/next/rules/tests-unit.mdc +1 -0
  516. package/presets/cursor/nuxt/README.md +1 -1
  517. package/presets/cursor/nuxt/agents/build-verifier.md +2 -2
  518. package/presets/cursor/nuxt/commands/task.md +1 -1
  519. package/presets/cursor/nuxt/hooks/chain-team-phases.sh +32 -3
  520. package/presets/cursor/nuxt/hooks/examples/format-edited.example.sh +8 -7
  521. package/presets/cursor/nuxt/hooks/examples/test-on-save.example.sh +8 -3
  522. package/presets/cursor/nuxt/rules/anti-sycophancy-discipline.mdc +1 -1
  523. package/presets/cursor/nuxt/rules/code-quality-and-refactoring.mdc +6 -0
  524. package/presets/cursor/nuxt/rules/design-guidance.mdc +1 -1
  525. package/presets/cursor/nuxt/rules/layer-barrel-exports.mdc +1 -1
  526. package/presets/cursor/nuxt/rules/preset-layering.mdc +2 -2
  527. package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +1 -1
  528. package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +2 -2
  529. package/presets/cursor/nuxt/rules/preset-token-budget.mdc +11 -11
  530. package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +1 -1
  531. package/presets/cursor/nuxt/rules/reference-features.mdc +1 -1
  532. package/presets/cursor/nuxt/rules/vue-ui.mdc +7 -0
  533. package/presets/cursor/php-hexagonal/AGENTS.md +1 -1
  534. package/presets/cursor/php-hexagonal/agents/build-verifier.md +1 -1
  535. package/presets/cursor/php-hexagonal/commands/task.md +1 -1
  536. package/presets/cursor/php-hexagonal/hooks/chain-team-phases.sh +32 -3
  537. package/presets/cursor/php-hexagonal/rules/README.md +2 -2
  538. package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +1 -1
  539. package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +6 -0
  540. package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +1 -1
  541. package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +1 -1
  542. package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +10 -10
  543. package/presets/cursor/php-laravel/AGENTS.md +1 -1
  544. package/presets/cursor/php-laravel/agents/build-verifier.md +1 -1
  545. package/presets/cursor/php-laravel/commands/task.md +1 -1
  546. package/presets/cursor/php-laravel/hooks/chain-team-phases.sh +32 -3
  547. package/presets/cursor/php-laravel/rules/README.md +2 -2
  548. package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +1 -1
  549. package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +6 -0
  550. package/presets/cursor/php-laravel/rules/preset-layering.mdc +1 -1
  551. package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +1 -1
  552. package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +10 -10
  553. package/presets/cursor/svelte/README.md +1 -1
  554. package/presets/cursor/svelte/agents/build-verifier.md +2 -2
  555. package/presets/cursor/svelte/commands/task.md +1 -1
  556. package/presets/cursor/svelte/hooks/chain-team-phases.sh +32 -3
  557. package/presets/cursor/svelte/rules/code-quality-and-refactoring.mdc +6 -0
  558. package/presets/cursor/svelte/rules/layer-barrel-exports.mdc +1 -1
  559. package/presets/cursor/svelte/rules/preset-layering.mdc +2 -2
  560. package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +1 -1
  561. package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +2 -2
  562. package/presets/cursor/svelte/rules/preset-token-budget.mdc +11 -11
  563. package/presets/cursor/svelte/rules/preset-twin-sync.mdc +1 -1
  564. package/presets/cursor/svelte/rules/reference-features.mdc +1 -1
  565. package/presets/cursor/svelte/rules/svelte-ui.mdc +7 -0
  566. package/presets/mavis/android-kotlin/MAVIS.md +13 -0
  567. package/presets/mavis/android-kotlin/adapter-map.json +1 -1
  568. package/presets/mavis/android-kotlin/agents/accessibility-reviewer.md +15 -0
  569. package/presets/mavis/android-kotlin/agents/api-contract-reviewer.md +16 -0
  570. package/presets/mavis/android-kotlin/agents/build-verifier.md +19 -2
  571. package/presets/mavis/android-kotlin/agents/ci-investigator.md +25 -0
  572. package/presets/mavis/android-kotlin/agents/code-reviewer.md +16 -0
  573. package/presets/mavis/android-kotlin/agents/codebase-analyzer.md +15 -0
  574. package/presets/mavis/android-kotlin/agents/debugger.md +25 -0
  575. package/presets/mavis/android-kotlin/agents/feature-developer.md +25 -0
  576. package/presets/mavis/android-kotlin/agents/instrumentation-test-generator.md +16 -0
  577. package/presets/mavis/android-kotlin/agents/instrumentation-test-healer.md +16 -0
  578. package/presets/mavis/android-kotlin/agents/instrumentation-test-planner.md +16 -0
  579. package/presets/mavis/android-kotlin/agents/migration-specialist.md +15 -0
  580. package/presets/mavis/android-kotlin/agents/mockup-reviewer.md +15 -0
  581. package/presets/mavis/android-kotlin/agents/openspec-author.md +15 -0
  582. package/presets/mavis/android-kotlin/agents/performance-auditor.md +15 -0
  583. package/presets/mavis/android-kotlin/agents/qa-tester.md +17 -0
  584. package/presets/mavis/android-kotlin/agents/security-reviewer.md +15 -0
  585. package/presets/mavis/android-kotlin/agents/solution-architect.md +15 -0
  586. package/presets/mavis/android-kotlin/agents/task-analyst.md +15 -0
  587. package/presets/mavis/android-kotlin/agents/task-router.md +15 -0
  588. package/presets/mavis/android-kotlin/agents/tech-writer.md +15 -0
  589. package/presets/mavis/android-kotlin/agents/unit-test-generator.md +16 -0
  590. package/presets/mavis/android-kotlin/agents/unit-test-healer.md +16 -0
  591. package/presets/mavis/android-kotlin/agents/unit-test-planner.md +16 -0
  592. package/presets/mavis/android-kotlin/commands/spec-start.md +2 -2
  593. package/presets/mavis/android-kotlin/commands/task.md +6 -6
  594. package/presets/mavis/android-kotlin/hooks/chain-team-phases.sh +32 -3
  595. package/presets/mavis/android-kotlin/rules/code-quality-and-refactoring.md +14 -0
  596. package/presets/mavis/android-kotlin/rules/code-review-mr.md +39 -0
  597. package/presets/mavis/android-kotlin/rules/compose-ui.md +2 -0
  598. package/presets/mavis/android-kotlin/rules/design-guidance.md +5 -0
  599. package/presets/mavis/android-kotlin/rules/mcp-usage.md +8 -0
  600. package/presets/mavis/android-kotlin/rules/mockup-review.md +4 -0
  601. package/presets/mavis/android-kotlin/rules/preset-layering.md +1 -1
  602. package/presets/mavis/android-kotlin/rules/preset-no-cross-stack-leakage.md +4 -0
  603. package/presets/mavis/android-kotlin/rules/preset-pr-checklist.md +1 -1
  604. package/presets/mavis/android-kotlin/rules/preset-token-budget.md +10 -10
  605. package/presets/mavis/android-kotlin/rules/product-specs-authoring.md +6 -0
  606. package/presets/mavis/android-kotlin/rules/product-specs.md +5 -0
  607. package/presets/mavis/android-kotlin/rules/ux-design.md +4 -0
  608. package/presets/mavis/android-kotlin/skills/debug-investigation/SKILL.md +39 -0
  609. package/presets/mavis/go/MAVIS.md +13 -0
  610. package/presets/mavis/go/adapter-map.json +1 -1
  611. package/presets/mavis/go/agents/api-contract-reviewer.md +17 -0
  612. package/presets/mavis/go/agents/build-verifier.md +18 -1
  613. package/presets/mavis/go/agents/ci-investigator.md +29 -0
  614. package/presets/mavis/go/agents/code-reviewer.md +16 -0
  615. package/presets/mavis/go/agents/codebase-analyzer.md +15 -0
  616. package/presets/mavis/go/agents/debugger.md +29 -0
  617. package/presets/mavis/go/agents/feature-developer.md +29 -0
  618. package/presets/mavis/go/agents/integration-test-generator.md +17 -0
  619. package/presets/mavis/go/agents/integration-test-healer.md +17 -0
  620. package/presets/mavis/go/agents/integration-test-planner.md +17 -0
  621. package/presets/mavis/go/agents/migration-specialist.md +15 -0
  622. package/presets/mavis/go/agents/openspec-author.md +15 -0
  623. package/presets/mavis/go/agents/performance-auditor.md +15 -0
  624. package/presets/mavis/go/agents/qa-tester.md +18 -0
  625. package/presets/mavis/go/agents/security-reviewer.md +15 -0
  626. package/presets/mavis/go/agents/solution-architect.md +15 -0
  627. package/presets/mavis/go/agents/task-analyst.md +15 -0
  628. package/presets/mavis/go/agents/task-router.md +15 -0
  629. package/presets/mavis/go/agents/tech-writer.md +15 -0
  630. package/presets/mavis/go/agents/unit-test-generator.md +16 -0
  631. package/presets/mavis/go/agents/unit-test-healer.md +16 -0
  632. package/presets/mavis/go/agents/unit-test-planner.md +16 -0
  633. package/presets/mavis/go/commands/spec-start.md +2 -2
  634. package/presets/mavis/go/commands/task.md +6 -6
  635. package/presets/mavis/go/hooks/chain-team-phases.sh +32 -3
  636. package/presets/mavis/go/rules/agent-team-intake.md +4 -0
  637. package/presets/mavis/go/rules/code-quality-and-refactoring.md +15 -0
  638. package/presets/mavis/go/rules/code-review-mr.md +7 -0
  639. package/presets/mavis/go/rules/design-guidance.md +5 -0
  640. package/presets/mavis/go/rules/mcp-usage.md +7 -0
  641. package/presets/mavis/go/rules/preset-layering.md +1 -1
  642. package/presets/mavis/go/rules/preset-pr-checklist.md +1 -1
  643. package/presets/mavis/go/rules/preset-token-budget.md +10 -10
  644. package/presets/mavis/go/rules/product-specs-authoring.md +6 -0
  645. package/presets/mavis/go/rules/product-specs.md +6 -0
  646. package/presets/mavis/go/skills/debug-investigation/SKILL.md +20 -0
  647. package/presets/mavis/ios-swift/MAVIS.md +13 -0
  648. package/presets/mavis/ios-swift/adapter-map.json +1 -1
  649. package/presets/mavis/ios-swift/agents/accessibility-reviewer.md +15 -0
  650. package/presets/mavis/ios-swift/agents/api-contract-reviewer.md +16 -0
  651. package/presets/mavis/ios-swift/agents/build-verifier.md +20 -3
  652. package/presets/mavis/ios-swift/agents/ci-investigator.md +24 -0
  653. package/presets/mavis/ios-swift/agents/code-reviewer.md +16 -0
  654. package/presets/mavis/ios-swift/agents/codebase-analyzer.md +15 -0
  655. package/presets/mavis/ios-swift/agents/debugger.md +24 -0
  656. package/presets/mavis/ios-swift/agents/feature-developer.md +24 -0
  657. package/presets/mavis/ios-swift/agents/migration-specialist.md +15 -0
  658. package/presets/mavis/ios-swift/agents/mockup-reviewer.md +15 -0
  659. package/presets/mavis/ios-swift/agents/openspec-author.md +15 -0
  660. package/presets/mavis/ios-swift/agents/performance-auditor.md +15 -0
  661. package/presets/mavis/ios-swift/agents/qa-tester.md +17 -0
  662. package/presets/mavis/ios-swift/agents/security-reviewer.md +15 -0
  663. package/presets/mavis/ios-swift/agents/solution-architect.md +15 -0
  664. package/presets/mavis/ios-swift/agents/task-analyst.md +15 -0
  665. package/presets/mavis/ios-swift/agents/task-router.md +15 -0
  666. package/presets/mavis/ios-swift/agents/tech-writer.md +15 -0
  667. package/presets/mavis/ios-swift/agents/unit-test-generator.md +16 -0
  668. package/presets/mavis/ios-swift/agents/unit-test-healer.md +16 -0
  669. package/presets/mavis/ios-swift/agents/unit-test-planner.md +16 -0
  670. package/presets/mavis/ios-swift/agents/xcuitest-test-generator.md +16 -0
  671. package/presets/mavis/ios-swift/agents/xcuitest-test-healer.md +16 -0
  672. package/presets/mavis/ios-swift/agents/xcuitest-test-planner.md +16 -0
  673. package/presets/mavis/ios-swift/commands/spec-start.md +2 -2
  674. package/presets/mavis/ios-swift/commands/task.md +6 -6
  675. package/presets/mavis/ios-swift/hooks/chain-team-phases.sh +32 -3
  676. package/presets/mavis/ios-swift/rules/code-quality-and-refactoring.md +14 -0
  677. package/presets/mavis/ios-swift/rules/code-review-mr.md +39 -0
  678. package/presets/mavis/ios-swift/rules/design-guidance.md +5 -0
  679. package/presets/mavis/ios-swift/rules/feature-delivery-workflow.md +66 -0
  680. package/presets/mavis/ios-swift/rules/mcp-usage.md +8 -0
  681. package/presets/mavis/ios-swift/rules/mockup-review.md +4 -0
  682. package/presets/mavis/ios-swift/rules/preset-layering.md +1 -1
  683. package/presets/mavis/ios-swift/rules/preset-pr-checklist.md +1 -1
  684. package/presets/mavis/ios-swift/rules/preset-token-budget.md +10 -10
  685. package/presets/mavis/ios-swift/rules/product-specs-authoring.md +6 -0
  686. package/presets/mavis/ios-swift/rules/product-specs.md +5 -0
  687. package/presets/mavis/ios-swift/rules/reference-features.md +49 -0
  688. package/presets/mavis/ios-swift/rules/swiftui-ui.md +7 -0
  689. package/presets/mavis/ios-swift/rules/ux-design.md +4 -0
  690. package/presets/mavis/ios-swift/skills/debug-investigation/SKILL.md +39 -0
  691. package/presets/mavis/java/MAVIS.md +13 -0
  692. package/presets/mavis/java/adapter-map.json +1 -1
  693. package/presets/mavis/java/agents/api-contract-reviewer.md +17 -0
  694. package/presets/mavis/java/agents/build-verifier.md +18 -1
  695. package/presets/mavis/java/agents/ci-investigator.md +29 -0
  696. package/presets/mavis/java/agents/code-reviewer.md +16 -0
  697. package/presets/mavis/java/agents/codebase-analyzer.md +15 -0
  698. package/presets/mavis/java/agents/debugger.md +29 -0
  699. package/presets/mavis/java/agents/feature-developer.md +29 -0
  700. package/presets/mavis/java/agents/integration-test-generator.md +17 -0
  701. package/presets/mavis/java/agents/integration-test-healer.md +17 -0
  702. package/presets/mavis/java/agents/integration-test-planner.md +17 -0
  703. package/presets/mavis/java/agents/migration-specialist.md +15 -0
  704. package/presets/mavis/java/agents/openspec-author.md +15 -0
  705. package/presets/mavis/java/agents/performance-auditor.md +15 -0
  706. package/presets/mavis/java/agents/qa-tester.md +18 -0
  707. package/presets/mavis/java/agents/security-reviewer.md +15 -0
  708. package/presets/mavis/java/agents/solution-architect.md +15 -0
  709. package/presets/mavis/java/agents/task-analyst.md +15 -0
  710. package/presets/mavis/java/agents/task-router.md +15 -0
  711. package/presets/mavis/java/agents/tech-writer.md +15 -0
  712. package/presets/mavis/java/agents/unit-test-generator.md +16 -0
  713. package/presets/mavis/java/agents/unit-test-healer.md +16 -0
  714. package/presets/mavis/java/agents/unit-test-planner.md +16 -0
  715. package/presets/mavis/java/commands/spec-start.md +2 -2
  716. package/presets/mavis/java/commands/task.md +6 -6
  717. package/presets/mavis/java/hooks/chain-team-phases.sh +32 -3
  718. package/presets/mavis/java/rules/agent-team-intake.md +4 -0
  719. package/presets/mavis/java/rules/code-quality-and-refactoring.md +15 -0
  720. package/presets/mavis/java/rules/code-review-mr.md +9 -0
  721. package/presets/mavis/java/rules/design-guidance.md +6 -0
  722. package/presets/mavis/java/rules/mcp-usage.md +6 -0
  723. package/presets/mavis/java/rules/preset-layering.md +1 -1
  724. package/presets/mavis/java/rules/preset-pr-checklist.md +1 -1
  725. package/presets/mavis/java/rules/preset-token-budget.md +10 -10
  726. package/presets/mavis/java/rules/product-specs-authoring.md +6 -0
  727. package/presets/mavis/java/rules/product-specs.md +6 -0
  728. package/presets/mavis/java/skills/debug-investigation/SKILL.md +20 -0
  729. package/presets/mavis/mcp-ts/MAVIS.md +13 -0
  730. package/presets/mavis/mcp-ts/adapter-map.json +1 -1
  731. package/presets/mavis/mcp-ts/agents/build-verifier.md +18 -1
  732. package/presets/mavis/mcp-ts/agents/feature-developer.md +22 -0
  733. package/presets/mavis/mcp-ts/agents/security-reviewer.md +15 -0
  734. package/presets/mavis/mcp-ts/agents/solution-architect.md +15 -0
  735. package/presets/mavis/mcp-ts/agents/task-analyst.md +15 -0
  736. package/presets/mavis/mcp-ts/agents/task-router.md +15 -0
  737. package/presets/mavis/mcp-ts/commands/spec-start.md +2 -2
  738. package/presets/mavis/mcp-ts/commands/task.md +6 -6
  739. package/presets/mavis/mcp-ts/hooks/chain-team-phases.sh +32 -3
  740. package/presets/mavis/mcp-ts/rules/agent-team-intake.md +5 -0
  741. package/presets/mavis/mcp-ts/rules/anti-sycophancy-discipline.md +4 -0
  742. package/presets/mavis/mcp-ts/rules/code-quality-and-refactoring.md +15 -0
  743. package/presets/mavis/mcp-ts/rules/code-review-mr.md +6 -0
  744. package/presets/mavis/mcp-ts/rules/design-guidance.md +5 -0
  745. package/presets/mavis/mcp-ts/rules/mcp-usage.md +7 -0
  746. package/presets/mavis/mcp-ts/rules/preset-layering.md +1 -1
  747. package/presets/mavis/mcp-ts/rules/preset-pr-checklist.md +1 -1
  748. package/presets/mavis/mcp-ts/rules/preset-token-budget.md +10 -10
  749. package/presets/mavis/mcp-ts/rules/product-specs-authoring.md +6 -0
  750. package/presets/mavis/mcp-ts/rules/product-specs.md +6 -0
  751. package/presets/mavis/mcp-ts/skills/debug-investigation/SKILL.md +15 -0
  752. package/presets/mavis/next/MAVIS.md +13 -0
  753. package/presets/mavis/next/adapter-map.json +57 -1
  754. package/presets/mavis/next/agents/accessibility-reviewer.md +17 -0
  755. package/presets/mavis/next/agents/api-contract-reviewer.md +19 -0
  756. package/presets/mavis/next/agents/build-verifier.md +19 -2
  757. package/presets/mavis/next/agents/ci-investigator.md +34 -0
  758. package/presets/mavis/next/agents/code-reviewer.md +18 -0
  759. package/presets/mavis/next/agents/codebase-analyzer.md +17 -0
  760. package/presets/mavis/next/agents/debugger.md +34 -0
  761. package/presets/mavis/next/agents/feature-developer.md +34 -0
  762. package/presets/mavis/next/agents/migration-specialist.md +17 -0
  763. package/presets/mavis/next/agents/mockup-reviewer.md +17 -0
  764. package/presets/mavis/next/agents/openspec-author.md +17 -0
  765. package/presets/mavis/next/agents/performance-auditor.md +17 -0
  766. package/presets/mavis/next/agents/playwright-test-generator.md +19 -0
  767. package/presets/mavis/next/agents/playwright-test-healer.md +19 -0
  768. package/presets/mavis/next/agents/playwright-test-planner.md +19 -0
  769. package/presets/mavis/next/agents/qa-tester.md +20 -0
  770. package/presets/mavis/next/agents/security-reviewer.md +17 -0
  771. package/presets/mavis/next/agents/solution-architect.md +17 -0
  772. package/presets/mavis/next/agents/task-analyst.md +17 -0
  773. package/presets/mavis/next/agents/task-router.md +17 -0
  774. package/presets/mavis/next/agents/tech-writer.md +17 -0
  775. package/presets/mavis/next/agents/unit-test-generator.md +18 -0
  776. package/presets/mavis/next/agents/unit-test-healer.md +18 -0
  777. package/presets/mavis/next/agents/unit-test-planner.md +18 -0
  778. package/presets/mavis/next/ai-local/rules-library/agent-artifacts-no-local-paths.md +38 -0
  779. package/presets/mavis/next/ai-local/rules-library/commit-hygiene.md +17 -0
  780. package/presets/mavis/next/ai-local/rules-library/mcp-required-for-ui-layout.md +41 -0
  781. package/presets/mavis/next/ai-local/rules-library/no-test-driven-behavior-change.md +14 -0
  782. package/presets/mavis/next/ai-local/rules-library/pre-pr-checklist.md +16 -0
  783. package/presets/mavis/next/ai-local/rules-library/router-pages.md +23 -0
  784. package/presets/mavis/next/ai-local/rules-library/single-source-copy-constants.md +16 -0
  785. package/presets/mavis/next/commands/spec-start.md +2 -2
  786. package/presets/mavis/next/commands/task.md +6 -6
  787. package/presets/mavis/next/hooks/chain-team-phases.sh +32 -3
  788. package/presets/mavis/next/rules/api-services.md +6 -4
  789. package/presets/mavis/next/rules/code-quality-and-refactoring.md +13 -0
  790. package/presets/mavis/next/rules/code-review-mr.md +13 -0
  791. package/presets/mavis/next/rules/design-guidance.md +5 -0
  792. package/presets/mavis/next/rules/feature-delivery-workflow.md +85 -0
  793. package/presets/mavis/next/rules/mcp-usage.md +9 -0
  794. package/presets/mavis/next/rules/mockup-review.md +4 -0
  795. package/presets/mavis/next/rules/next-app-core.md +2 -1
  796. package/presets/mavis/next/rules/preset-layering.md +1 -1
  797. package/presets/mavis/next/rules/preset-pr-checklist.md +1 -1
  798. package/presets/mavis/next/rules/preset-token-budget.md +10 -10
  799. package/presets/mavis/next/rules/product-specs-authoring.md +6 -0
  800. package/presets/mavis/next/rules/product-specs.md +6 -0
  801. package/presets/mavis/next/rules/react-ui.md +37 -1
  802. package/presets/mavis/next/rules/reference-features.md +36 -0
  803. package/presets/mavis/next/rules/store-rtk.md +6 -5
  804. package/presets/mavis/next/rules/tests-e2e-structure.md +15 -0
  805. package/presets/mavis/next/rules/tests-unit.md +33 -0
  806. package/presets/mavis/next/rules/ux-design.md +4 -0
  807. package/presets/mavis/next/skills/debug-investigation/SKILL.md +28 -0
  808. package/presets/mavis/nuxt/MAVIS.md +13 -0
  809. package/presets/mavis/nuxt/adapter-map.json +1 -1
  810. package/presets/mavis/nuxt/agents/accessibility-reviewer.md +17 -0
  811. package/presets/mavis/nuxt/agents/api-contract-reviewer.md +19 -0
  812. package/presets/mavis/nuxt/agents/build-verifier.md +19 -2
  813. package/presets/mavis/nuxt/agents/ci-investigator.md +34 -0
  814. package/presets/mavis/nuxt/agents/code-reviewer.md +18 -0
  815. package/presets/mavis/nuxt/agents/codebase-analyzer.md +17 -0
  816. package/presets/mavis/nuxt/agents/debugger.md +34 -0
  817. package/presets/mavis/nuxt/agents/feature-developer.md +34 -0
  818. package/presets/mavis/nuxt/agents/migration-specialist.md +17 -0
  819. package/presets/mavis/nuxt/agents/mockup-reviewer.md +17 -0
  820. package/presets/mavis/nuxt/agents/openspec-author.md +17 -0
  821. package/presets/mavis/nuxt/agents/performance-auditor.md +17 -0
  822. package/presets/mavis/nuxt/agents/playwright-test-generator.md +19 -0
  823. package/presets/mavis/nuxt/agents/playwright-test-healer.md +19 -0
  824. package/presets/mavis/nuxt/agents/playwright-test-planner.md +19 -0
  825. package/presets/mavis/nuxt/agents/qa-tester.md +20 -0
  826. package/presets/mavis/nuxt/agents/security-reviewer.md +17 -0
  827. package/presets/mavis/nuxt/agents/solution-architect.md +17 -0
  828. package/presets/mavis/nuxt/agents/task-analyst.md +17 -0
  829. package/presets/mavis/nuxt/agents/task-router.md +17 -0
  830. package/presets/mavis/nuxt/agents/tech-writer.md +17 -0
  831. package/presets/mavis/nuxt/agents/unit-test-generator.md +18 -0
  832. package/presets/mavis/nuxt/agents/unit-test-healer.md +18 -0
  833. package/presets/mavis/nuxt/agents/unit-test-planner.md +18 -0
  834. package/presets/mavis/nuxt/commands/spec-start.md +2 -2
  835. package/presets/mavis/nuxt/commands/task.md +6 -6
  836. package/presets/mavis/nuxt/hooks/chain-team-phases.sh +32 -3
  837. package/presets/mavis/nuxt/rules/code-quality-and-refactoring.md +13 -0
  838. package/presets/mavis/nuxt/rules/code-review-mr.md +13 -0
  839. package/presets/mavis/nuxt/rules/design-guidance.md +5 -0
  840. package/presets/mavis/nuxt/rules/feature-delivery-workflow.md +82 -0
  841. package/presets/mavis/nuxt/rules/mcp-usage.md +9 -0
  842. package/presets/mavis/nuxt/rules/mockup-review.md +4 -0
  843. package/presets/mavis/nuxt/rules/preset-layering.md +1 -1
  844. package/presets/mavis/nuxt/rules/preset-pr-checklist.md +1 -1
  845. package/presets/mavis/nuxt/rules/preset-token-budget.md +10 -10
  846. package/presets/mavis/nuxt/rules/product-specs-authoring.md +6 -0
  847. package/presets/mavis/nuxt/rules/product-specs.md +5 -0
  848. package/presets/mavis/nuxt/rules/reference-features.md +36 -0
  849. package/presets/mavis/nuxt/rules/tests-e2e-structure.md +16 -0
  850. package/presets/mavis/nuxt/rules/tests-unit.md +11 -0
  851. package/presets/mavis/nuxt/rules/ux-design.md +4 -0
  852. package/presets/mavis/nuxt/rules/vue-ui.md +7 -0
  853. package/presets/mavis/nuxt/skills/debug-investigation/SKILL.md +30 -0
  854. package/presets/mavis/php-hexagonal/MAVIS.md +13 -0
  855. package/presets/mavis/php-hexagonal/adapter-map.json +1 -1
  856. package/presets/mavis/php-hexagonal/agents/api-contract-reviewer.md +17 -0
  857. package/presets/mavis/php-hexagonal/agents/build-verifier.md +18 -1
  858. package/presets/mavis/php-hexagonal/agents/ci-investigator.md +29 -0
  859. package/presets/mavis/php-hexagonal/agents/code-reviewer.md +16 -0
  860. package/presets/mavis/php-hexagonal/agents/codebase-analyzer.md +15 -0
  861. package/presets/mavis/php-hexagonal/agents/debugger.md +29 -0
  862. package/presets/mavis/php-hexagonal/agents/feature-developer.md +29 -0
  863. package/presets/mavis/php-hexagonal/agents/integration-test-generator.md +17 -0
  864. package/presets/mavis/php-hexagonal/agents/integration-test-healer.md +17 -0
  865. package/presets/mavis/php-hexagonal/agents/integration-test-planner.md +17 -0
  866. package/presets/mavis/php-hexagonal/agents/migration-specialist.md +15 -0
  867. package/presets/mavis/php-hexagonal/agents/openspec-author.md +15 -0
  868. package/presets/mavis/php-hexagonal/agents/performance-auditor.md +15 -0
  869. package/presets/mavis/php-hexagonal/agents/qa-tester.md +18 -0
  870. package/presets/mavis/php-hexagonal/agents/security-reviewer.md +15 -0
  871. package/presets/mavis/php-hexagonal/agents/solution-architect.md +15 -0
  872. package/presets/mavis/php-hexagonal/agents/task-analyst.md +15 -0
  873. package/presets/mavis/php-hexagonal/agents/task-router.md +15 -0
  874. package/presets/mavis/php-hexagonal/agents/tech-writer.md +15 -0
  875. package/presets/mavis/php-hexagonal/agents/unit-test-generator.md +16 -0
  876. package/presets/mavis/php-hexagonal/agents/unit-test-healer.md +16 -0
  877. package/presets/mavis/php-hexagonal/agents/unit-test-planner.md +16 -0
  878. package/presets/mavis/php-hexagonal/commands/spec-start.md +2 -2
  879. package/presets/mavis/php-hexagonal/commands/task.md +6 -6
  880. package/presets/mavis/php-hexagonal/hooks/chain-team-phases.sh +32 -3
  881. package/presets/mavis/php-hexagonal/rules/agent-team-intake.md +4 -0
  882. package/presets/mavis/php-hexagonal/rules/code-quality-and-refactoring.md +15 -0
  883. package/presets/mavis/php-hexagonal/rules/code-review-mr.md +9 -0
  884. package/presets/mavis/php-hexagonal/rules/design-guidance.md +6 -0
  885. package/presets/mavis/php-hexagonal/rules/mcp-usage.md +6 -0
  886. package/presets/mavis/php-hexagonal/rules/preset-layering.md +1 -1
  887. package/presets/mavis/php-hexagonal/rules/preset-pr-checklist.md +1 -1
  888. package/presets/mavis/php-hexagonal/rules/preset-token-budget.md +10 -10
  889. package/presets/mavis/php-hexagonal/rules/product-specs-authoring.md +6 -0
  890. package/presets/mavis/php-hexagonal/rules/product-specs.md +6 -0
  891. package/presets/mavis/php-hexagonal/skills/debug-investigation/SKILL.md +20 -0
  892. package/presets/mavis/php-laravel/MAVIS.md +13 -0
  893. package/presets/mavis/php-laravel/adapter-map.json +1 -1
  894. package/presets/mavis/php-laravel/agents/api-contract-reviewer.md +18 -0
  895. package/presets/mavis/php-laravel/agents/build-verifier.md +18 -1
  896. package/presets/mavis/php-laravel/agents/ci-investigator.md +29 -0
  897. package/presets/mavis/php-laravel/agents/code-reviewer.md +16 -0
  898. package/presets/mavis/php-laravel/agents/codebase-analyzer.md +15 -0
  899. package/presets/mavis/php-laravel/agents/debugger.md +29 -0
  900. package/presets/mavis/php-laravel/agents/feature-developer.md +29 -0
  901. package/presets/mavis/php-laravel/agents/integration-test-generator.md +17 -0
  902. package/presets/mavis/php-laravel/agents/integration-test-healer.md +17 -0
  903. package/presets/mavis/php-laravel/agents/integration-test-planner.md +17 -0
  904. package/presets/mavis/php-laravel/agents/migration-specialist.md +15 -0
  905. package/presets/mavis/php-laravel/agents/openspec-author.md +15 -0
  906. package/presets/mavis/php-laravel/agents/performance-auditor.md +15 -0
  907. package/presets/mavis/php-laravel/agents/qa-tester.md +18 -0
  908. package/presets/mavis/php-laravel/agents/security-reviewer.md +15 -0
  909. package/presets/mavis/php-laravel/agents/solution-architect.md +15 -0
  910. package/presets/mavis/php-laravel/agents/task-analyst.md +15 -0
  911. package/presets/mavis/php-laravel/agents/task-router.md +15 -0
  912. package/presets/mavis/php-laravel/agents/tech-writer.md +15 -0
  913. package/presets/mavis/php-laravel/agents/unit-test-generator.md +16 -0
  914. package/presets/mavis/php-laravel/agents/unit-test-healer.md +16 -0
  915. package/presets/mavis/php-laravel/agents/unit-test-planner.md +16 -0
  916. package/presets/mavis/php-laravel/commands/spec-start.md +2 -2
  917. package/presets/mavis/php-laravel/commands/task.md +6 -6
  918. package/presets/mavis/php-laravel/hooks/chain-team-phases.sh +32 -3
  919. package/presets/mavis/php-laravel/rules/agent-team-intake.md +4 -0
  920. package/presets/mavis/php-laravel/rules/code-quality-and-refactoring.md +15 -0
  921. package/presets/mavis/php-laravel/rules/code-review-mr.md +10 -0
  922. package/presets/mavis/php-laravel/rules/design-guidance.md +6 -0
  923. package/presets/mavis/php-laravel/rules/mcp-usage.md +6 -0
  924. package/presets/mavis/php-laravel/rules/preset-layering.md +1 -1
  925. package/presets/mavis/php-laravel/rules/preset-pr-checklist.md +1 -1
  926. package/presets/mavis/php-laravel/rules/preset-token-budget.md +10 -10
  927. package/presets/mavis/php-laravel/rules/product-specs-authoring.md +6 -0
  928. package/presets/mavis/php-laravel/rules/product-specs.md +6 -0
  929. package/presets/mavis/php-laravel/skills/debug-investigation/SKILL.md +20 -0
  930. package/presets/mavis/svelte/MAVIS.md +13 -0
  931. package/presets/mavis/svelte/adapter-map.json +1 -1
  932. package/presets/mavis/svelte/agents/accessibility-reviewer.md +17 -0
  933. package/presets/mavis/svelte/agents/api-contract-reviewer.md +19 -0
  934. package/presets/mavis/svelte/agents/build-verifier.md +19 -2
  935. package/presets/mavis/svelte/agents/ci-investigator.md +34 -0
  936. package/presets/mavis/svelte/agents/code-reviewer.md +18 -0
  937. package/presets/mavis/svelte/agents/codebase-analyzer.md +17 -0
  938. package/presets/mavis/svelte/agents/debugger.md +34 -0
  939. package/presets/mavis/svelte/agents/feature-developer.md +34 -0
  940. package/presets/mavis/svelte/agents/migration-specialist.md +17 -0
  941. package/presets/mavis/svelte/agents/mockup-reviewer.md +17 -0
  942. package/presets/mavis/svelte/agents/openspec-author.md +17 -0
  943. package/presets/mavis/svelte/agents/performance-auditor.md +17 -0
  944. package/presets/mavis/svelte/agents/playwright-test-generator.md +19 -0
  945. package/presets/mavis/svelte/agents/playwright-test-healer.md +19 -0
  946. package/presets/mavis/svelte/agents/playwright-test-planner.md +19 -0
  947. package/presets/mavis/svelte/agents/qa-tester.md +20 -0
  948. package/presets/mavis/svelte/agents/security-reviewer.md +17 -0
  949. package/presets/mavis/svelte/agents/solution-architect.md +17 -0
  950. package/presets/mavis/svelte/agents/task-analyst.md +17 -0
  951. package/presets/mavis/svelte/agents/task-router.md +17 -0
  952. package/presets/mavis/svelte/agents/tech-writer.md +17 -0
  953. package/presets/mavis/svelte/agents/unit-test-generator.md +18 -0
  954. package/presets/mavis/svelte/agents/unit-test-healer.md +18 -0
  955. package/presets/mavis/svelte/agents/unit-test-planner.md +18 -0
  956. package/presets/mavis/svelte/commands/spec-start.md +2 -2
  957. package/presets/mavis/svelte/commands/task.md +6 -6
  958. package/presets/mavis/svelte/hooks/chain-team-phases.sh +32 -3
  959. package/presets/mavis/svelte/rules/code-quality-and-refactoring.md +13 -0
  960. package/presets/mavis/svelte/rules/code-review-mr.md +13 -0
  961. package/presets/mavis/svelte/rules/design-guidance.md +5 -0
  962. package/presets/mavis/svelte/rules/feature-delivery-workflow.md +54 -0
  963. package/presets/mavis/svelte/rules/mcp-usage.md +9 -0
  964. package/presets/mavis/svelte/rules/mockup-review.md +4 -0
  965. package/presets/mavis/svelte/rules/preset-layering.md +1 -1
  966. package/presets/mavis/svelte/rules/preset-pr-checklist.md +1 -1
  967. package/presets/mavis/svelte/rules/preset-token-budget.md +10 -10
  968. package/presets/mavis/svelte/rules/product-specs-authoring.md +6 -0
  969. package/presets/mavis/svelte/rules/product-specs.md +5 -0
  970. package/presets/mavis/svelte/rules/reference-features.md +37 -0
  971. package/presets/mavis/svelte/rules/svelte-ui.md +7 -0
  972. package/presets/mavis/svelte/rules/tests-e2e-structure.md +16 -0
  973. package/presets/mavis/svelte/rules/tests-unit.md +11 -0
  974. package/presets/mavis/svelte/rules/ux-design.md +4 -0
  975. package/presets/mavis/svelte/skills/debug-investigation/SKILL.md +30 -0
  976. package/presets/opencode/android-kotlin/OPENCODE.md +15 -1
  977. package/presets/opencode/android-kotlin/adapter-map.json +2 -2
  978. package/presets/opencode/android-kotlin/agents/accessibility-reviewer.md +15 -0
  979. package/presets/opencode/android-kotlin/agents/api-contract-reviewer.md +16 -0
  980. package/presets/opencode/android-kotlin/agents/build-verifier.md +19 -2
  981. package/presets/opencode/android-kotlin/agents/ci-investigator.md +25 -0
  982. package/presets/opencode/android-kotlin/agents/code-reviewer.md +16 -0
  983. package/presets/opencode/android-kotlin/agents/codebase-analyzer.md +15 -0
  984. package/presets/opencode/android-kotlin/agents/debugger.md +25 -0
  985. package/presets/opencode/android-kotlin/agents/feature-developer.md +25 -0
  986. package/presets/opencode/android-kotlin/agents/instrumentation-test-generator.md +16 -0
  987. package/presets/opencode/android-kotlin/agents/instrumentation-test-healer.md +16 -0
  988. package/presets/opencode/android-kotlin/agents/instrumentation-test-planner.md +16 -0
  989. package/presets/opencode/android-kotlin/agents/migration-specialist.md +15 -0
  990. package/presets/opencode/android-kotlin/agents/mockup-reviewer.md +15 -0
  991. package/presets/opencode/android-kotlin/agents/openspec-author.md +15 -0
  992. package/presets/opencode/android-kotlin/agents/performance-auditor.md +15 -0
  993. package/presets/opencode/android-kotlin/agents/qa-tester.md +17 -0
  994. package/presets/opencode/android-kotlin/agents/security-reviewer.md +15 -0
  995. package/presets/opencode/android-kotlin/agents/solution-architect.md +15 -0
  996. package/presets/opencode/android-kotlin/agents/task-analyst.md +15 -0
  997. package/presets/opencode/android-kotlin/agents/task-router.md +15 -0
  998. package/presets/opencode/android-kotlin/agents/tech-writer.md +15 -0
  999. package/presets/opencode/android-kotlin/agents/unit-test-generator.md +16 -0
  1000. package/presets/opencode/android-kotlin/agents/unit-test-healer.md +16 -0
  1001. package/presets/opencode/android-kotlin/agents/unit-test-planner.md +16 -0
  1002. package/presets/opencode/android-kotlin/commands/spec-start.md +1 -1
  1003. package/presets/opencode/android-kotlin/commands/task-continue.md +1 -1
  1004. package/presets/opencode/android-kotlin/commands/task.md +1 -1
  1005. package/presets/opencode/android-kotlin/commands/technical-retro.md +1 -1
  1006. package/presets/opencode/android-kotlin/hooks/chain-team-phases.sh +32 -3
  1007. package/presets/opencode/android-kotlin/opencode.json +14 -0
  1008. package/presets/opencode/android-kotlin/rules/README.md +7 -2
  1009. package/presets/opencode/android-kotlin/rules/code-quality-and-refactoring.md +14 -0
  1010. package/presets/opencode/android-kotlin/rules/code-review-mr.md +39 -0
  1011. package/presets/opencode/android-kotlin/rules/compose-ui.md +2 -0
  1012. package/presets/opencode/android-kotlin/rules/design-guidance.md +5 -0
  1013. package/presets/opencode/android-kotlin/rules/mcp-usage.md +8 -0
  1014. package/presets/opencode/android-kotlin/rules/mockup-review.md +4 -0
  1015. package/presets/opencode/android-kotlin/rules/preset-layering.md +1 -1
  1016. package/presets/opencode/android-kotlin/rules/preset-no-cross-stack-leakage.md +4 -0
  1017. package/presets/opencode/android-kotlin/rules/preset-pr-checklist.md +1 -1
  1018. package/presets/opencode/android-kotlin/rules/preset-token-budget.md +10 -10
  1019. package/presets/opencode/android-kotlin/rules/product-specs-authoring.md +6 -0
  1020. package/presets/opencode/android-kotlin/rules/product-specs.md +5 -0
  1021. package/presets/opencode/android-kotlin/rules/ux-design.md +4 -0
  1022. package/presets/opencode/android-kotlin/skills/ci-investigation/SKILL.md +1 -1
  1023. package/presets/opencode/android-kotlin/skills/code-review/SKILL.md +1 -1
  1024. package/presets/opencode/android-kotlin/skills/debug-investigation/SKILL.md +1 -1
  1025. package/presets/opencode/android-kotlin/skills/feature-delivery/SKILL.md +1 -1
  1026. package/presets/opencode/android-kotlin/skills/instrumentation-ui-e2e/SKILL.md +1 -1
  1027. package/presets/opencode/android-kotlin/skills/mockup-review/SKILL.md +1 -1
  1028. package/presets/opencode/android-kotlin/skills/spec-authoring/SKILL.md +1 -1
  1029. package/presets/opencode/android-kotlin/skills/spec-discovery/SKILL.md +1 -1
  1030. package/presets/opencode/android-kotlin/skills/technical-retro/SKILL.md +1 -1
  1031. package/presets/opencode/android-kotlin/skills/unit-testing/SKILL.md +1 -1
  1032. package/presets/opencode/android-kotlin/skills/ux-design/SKILL.md +1 -1
  1033. package/presets/opencode/android-kotlin/skills/write-adr/SKILL.md +1 -1
  1034. package/presets/opencode/go/OPENCODE.md +15 -1
  1035. package/presets/opencode/go/adapter-map.json +2 -2
  1036. package/presets/opencode/go/agents/api-contract-reviewer.md +17 -0
  1037. package/presets/opencode/go/agents/build-verifier.md +18 -1
  1038. package/presets/opencode/go/agents/ci-investigator.md +29 -0
  1039. package/presets/opencode/go/agents/code-reviewer.md +16 -0
  1040. package/presets/opencode/go/agents/codebase-analyzer.md +15 -0
  1041. package/presets/opencode/go/agents/debugger.md +29 -0
  1042. package/presets/opencode/go/agents/feature-developer.md +29 -0
  1043. package/presets/opencode/go/agents/integration-test-generator.md +17 -0
  1044. package/presets/opencode/go/agents/integration-test-healer.md +17 -0
  1045. package/presets/opencode/go/agents/integration-test-planner.md +17 -0
  1046. package/presets/opencode/go/agents/migration-specialist.md +15 -0
  1047. package/presets/opencode/go/agents/openspec-author.md +15 -0
  1048. package/presets/opencode/go/agents/performance-auditor.md +15 -0
  1049. package/presets/opencode/go/agents/qa-tester.md +18 -0
  1050. package/presets/opencode/go/agents/security-reviewer.md +15 -0
  1051. package/presets/opencode/go/agents/solution-architect.md +15 -0
  1052. package/presets/opencode/go/agents/task-analyst.md +15 -0
  1053. package/presets/opencode/go/agents/task-router.md +15 -0
  1054. package/presets/opencode/go/agents/tech-writer.md +15 -0
  1055. package/presets/opencode/go/agents/unit-test-generator.md +16 -0
  1056. package/presets/opencode/go/agents/unit-test-healer.md +16 -0
  1057. package/presets/opencode/go/agents/unit-test-planner.md +16 -0
  1058. package/presets/opencode/go/commands/spec-start.md +1 -1
  1059. package/presets/opencode/go/commands/task-continue.md +1 -1
  1060. package/presets/opencode/go/commands/task.md +1 -1
  1061. package/presets/opencode/go/commands/technical-retro.md +1 -1
  1062. package/presets/opencode/go/hooks/chain-team-phases.sh +32 -3
  1063. package/presets/opencode/go/opencode.json +14 -0
  1064. package/presets/opencode/go/rules/README.md +7 -2
  1065. package/presets/opencode/go/rules/agent-team-intake.md +4 -0
  1066. package/presets/opencode/go/rules/code-quality-and-refactoring.md +15 -0
  1067. package/presets/opencode/go/rules/code-review-mr.md +7 -0
  1068. package/presets/opencode/go/rules/design-guidance.md +5 -0
  1069. package/presets/opencode/go/rules/mcp-usage.md +7 -0
  1070. package/presets/opencode/go/rules/preset-layering.md +1 -1
  1071. package/presets/opencode/go/rules/preset-pr-checklist.md +1 -1
  1072. package/presets/opencode/go/rules/preset-token-budget.md +10 -10
  1073. package/presets/opencode/go/rules/product-specs-authoring.md +6 -0
  1074. package/presets/opencode/go/rules/product-specs.md +6 -0
  1075. package/presets/opencode/go/skills/ci-investigation/SKILL.md +1 -1
  1076. package/presets/opencode/go/skills/code-review/SKILL.md +1 -1
  1077. package/presets/opencode/go/skills/debug-investigation/SKILL.md +1 -1
  1078. package/presets/opencode/go/skills/feature-delivery/SKILL.md +1 -1
  1079. package/presets/opencode/go/skills/integration-testing/SKILL.md +1 -1
  1080. package/presets/opencode/go/skills/spec-authoring/SKILL.md +1 -1
  1081. package/presets/opencode/go/skills/spec-discovery/SKILL.md +1 -1
  1082. package/presets/opencode/go/skills/technical-retro/SKILL.md +1 -1
  1083. package/presets/opencode/go/skills/unit-testing/SKILL.md +1 -1
  1084. package/presets/opencode/go/skills/write-adr/SKILL.md +1 -1
  1085. package/presets/opencode/ios-swift/OPENCODE.md +15 -1
  1086. package/presets/opencode/ios-swift/adapter-map.json +2 -2
  1087. package/presets/opencode/ios-swift/agents/accessibility-reviewer.md +15 -0
  1088. package/presets/opencode/ios-swift/agents/api-contract-reviewer.md +16 -0
  1089. package/presets/opencode/ios-swift/agents/build-verifier.md +20 -3
  1090. package/presets/opencode/ios-swift/agents/ci-investigator.md +24 -0
  1091. package/presets/opencode/ios-swift/agents/code-reviewer.md +16 -0
  1092. package/presets/opencode/ios-swift/agents/codebase-analyzer.md +15 -0
  1093. package/presets/opencode/ios-swift/agents/debugger.md +24 -0
  1094. package/presets/opencode/ios-swift/agents/feature-developer.md +24 -0
  1095. package/presets/opencode/ios-swift/agents/migration-specialist.md +15 -0
  1096. package/presets/opencode/ios-swift/agents/mockup-reviewer.md +15 -0
  1097. package/presets/opencode/ios-swift/agents/openspec-author.md +15 -0
  1098. package/presets/opencode/ios-swift/agents/performance-auditor.md +15 -0
  1099. package/presets/opencode/ios-swift/agents/qa-tester.md +17 -0
  1100. package/presets/opencode/ios-swift/agents/security-reviewer.md +15 -0
  1101. package/presets/opencode/ios-swift/agents/solution-architect.md +15 -0
  1102. package/presets/opencode/ios-swift/agents/task-analyst.md +15 -0
  1103. package/presets/opencode/ios-swift/agents/task-router.md +15 -0
  1104. package/presets/opencode/ios-swift/agents/tech-writer.md +15 -0
  1105. package/presets/opencode/ios-swift/agents/unit-test-generator.md +16 -0
  1106. package/presets/opencode/ios-swift/agents/unit-test-healer.md +16 -0
  1107. package/presets/opencode/ios-swift/agents/unit-test-planner.md +16 -0
  1108. package/presets/opencode/ios-swift/agents/xcuitest-test-generator.md +16 -0
  1109. package/presets/opencode/ios-swift/agents/xcuitest-test-healer.md +16 -0
  1110. package/presets/opencode/ios-swift/agents/xcuitest-test-planner.md +16 -0
  1111. package/presets/opencode/ios-swift/commands/spec-start.md +1 -1
  1112. package/presets/opencode/ios-swift/commands/task-continue.md +1 -1
  1113. package/presets/opencode/ios-swift/commands/task.md +1 -1
  1114. package/presets/opencode/ios-swift/commands/technical-retro.md +1 -1
  1115. package/presets/opencode/ios-swift/hooks/chain-team-phases.sh +32 -3
  1116. package/presets/opencode/ios-swift/opencode.json +14 -0
  1117. package/presets/opencode/ios-swift/rules/README.md +7 -2
  1118. package/presets/opencode/ios-swift/rules/code-quality-and-refactoring.md +14 -0
  1119. package/presets/opencode/ios-swift/rules/code-review-mr.md +39 -0
  1120. package/presets/opencode/ios-swift/rules/design-guidance.md +5 -0
  1121. package/presets/opencode/ios-swift/rules/feature-delivery-workflow.md +66 -0
  1122. package/presets/opencode/ios-swift/rules/mcp-usage.md +8 -0
  1123. package/presets/opencode/ios-swift/rules/mockup-review.md +4 -0
  1124. package/presets/opencode/ios-swift/rules/preset-layering.md +1 -1
  1125. package/presets/opencode/ios-swift/rules/preset-pr-checklist.md +1 -1
  1126. package/presets/opencode/ios-swift/rules/preset-token-budget.md +10 -10
  1127. package/presets/opencode/ios-swift/rules/product-specs-authoring.md +6 -0
  1128. package/presets/opencode/ios-swift/rules/product-specs.md +5 -0
  1129. package/presets/opencode/ios-swift/rules/reference-features.md +49 -0
  1130. package/presets/opencode/ios-swift/rules/swiftui-ui.md +7 -0
  1131. package/presets/opencode/ios-swift/rules/ux-design.md +4 -0
  1132. package/presets/opencode/ios-swift/skills/ci-investigation/SKILL.md +1 -1
  1133. package/presets/opencode/ios-swift/skills/code-review/SKILL.md +1 -1
  1134. package/presets/opencode/ios-swift/skills/debug-investigation/SKILL.md +1 -1
  1135. package/presets/opencode/ios-swift/skills/feature-delivery/SKILL.md +1 -1
  1136. package/presets/opencode/ios-swift/skills/mockup-review/SKILL.md +1 -1
  1137. package/presets/opencode/ios-swift/skills/spec-authoring/SKILL.md +1 -1
  1138. package/presets/opencode/ios-swift/skills/spec-discovery/SKILL.md +1 -1
  1139. package/presets/opencode/ios-swift/skills/technical-retro/SKILL.md +1 -1
  1140. package/presets/opencode/ios-swift/skills/unit-testing/SKILL.md +1 -1
  1141. package/presets/opencode/ios-swift/skills/ux-design/SKILL.md +1 -1
  1142. package/presets/opencode/ios-swift/skills/write-adr/SKILL.md +1 -1
  1143. package/presets/opencode/ios-swift/skills/xcuitest-e2e/SKILL.md +1 -1
  1144. package/presets/opencode/java/OPENCODE.md +15 -1
  1145. package/presets/opencode/java/adapter-map.json +2 -2
  1146. package/presets/opencode/java/agents/api-contract-reviewer.md +17 -0
  1147. package/presets/opencode/java/agents/build-verifier.md +18 -1
  1148. package/presets/opencode/java/agents/ci-investigator.md +29 -0
  1149. package/presets/opencode/java/agents/code-reviewer.md +16 -0
  1150. package/presets/opencode/java/agents/codebase-analyzer.md +15 -0
  1151. package/presets/opencode/java/agents/debugger.md +29 -0
  1152. package/presets/opencode/java/agents/feature-developer.md +29 -0
  1153. package/presets/opencode/java/agents/integration-test-generator.md +17 -0
  1154. package/presets/opencode/java/agents/integration-test-healer.md +17 -0
  1155. package/presets/opencode/java/agents/integration-test-planner.md +17 -0
  1156. package/presets/opencode/java/agents/migration-specialist.md +15 -0
  1157. package/presets/opencode/java/agents/openspec-author.md +15 -0
  1158. package/presets/opencode/java/agents/performance-auditor.md +15 -0
  1159. package/presets/opencode/java/agents/qa-tester.md +18 -0
  1160. package/presets/opencode/java/agents/security-reviewer.md +15 -0
  1161. package/presets/opencode/java/agents/solution-architect.md +15 -0
  1162. package/presets/opencode/java/agents/task-analyst.md +15 -0
  1163. package/presets/opencode/java/agents/task-router.md +15 -0
  1164. package/presets/opencode/java/agents/tech-writer.md +15 -0
  1165. package/presets/opencode/java/agents/unit-test-generator.md +16 -0
  1166. package/presets/opencode/java/agents/unit-test-healer.md +16 -0
  1167. package/presets/opencode/java/agents/unit-test-planner.md +16 -0
  1168. package/presets/opencode/java/commands/spec-start.md +1 -1
  1169. package/presets/opencode/java/commands/task-continue.md +1 -1
  1170. package/presets/opencode/java/commands/task.md +1 -1
  1171. package/presets/opencode/java/commands/technical-retro.md +1 -1
  1172. package/presets/opencode/java/hooks/chain-team-phases.sh +32 -3
  1173. package/presets/opencode/java/opencode.json +14 -0
  1174. package/presets/opencode/java/rules/README.md +7 -2
  1175. package/presets/opencode/java/rules/agent-team-intake.md +4 -0
  1176. package/presets/opencode/java/rules/code-quality-and-refactoring.md +15 -0
  1177. package/presets/opencode/java/rules/code-review-mr.md +9 -0
  1178. package/presets/opencode/java/rules/design-guidance.md +6 -0
  1179. package/presets/opencode/java/rules/mcp-usage.md +6 -0
  1180. package/presets/opencode/java/rules/preset-layering.md +1 -1
  1181. package/presets/opencode/java/rules/preset-pr-checklist.md +1 -1
  1182. package/presets/opencode/java/rules/preset-token-budget.md +10 -10
  1183. package/presets/opencode/java/rules/product-specs-authoring.md +6 -0
  1184. package/presets/opencode/java/rules/product-specs.md +6 -0
  1185. package/presets/opencode/java/skills/ci-investigation/SKILL.md +1 -1
  1186. package/presets/opencode/java/skills/code-review/SKILL.md +1 -1
  1187. package/presets/opencode/java/skills/debug-investigation/SKILL.md +1 -1
  1188. package/presets/opencode/java/skills/feature-delivery/SKILL.md +1 -1
  1189. package/presets/opencode/java/skills/integration-testing/SKILL.md +1 -1
  1190. package/presets/opencode/java/skills/spec-authoring/SKILL.md +1 -1
  1191. package/presets/opencode/java/skills/spec-discovery/SKILL.md +1 -1
  1192. package/presets/opencode/java/skills/technical-retro/SKILL.md +1 -1
  1193. package/presets/opencode/java/skills/unit-testing/SKILL.md +1 -1
  1194. package/presets/opencode/java/skills/write-adr/SKILL.md +1 -1
  1195. package/presets/opencode/mcp-ts/OPENCODE.md +15 -1
  1196. package/presets/opencode/mcp-ts/adapter-map.json +2 -2
  1197. package/presets/opencode/mcp-ts/agents/build-verifier.md +18 -1
  1198. package/presets/opencode/mcp-ts/agents/feature-developer.md +22 -0
  1199. package/presets/opencode/mcp-ts/agents/security-reviewer.md +15 -0
  1200. package/presets/opencode/mcp-ts/agents/solution-architect.md +15 -0
  1201. package/presets/opencode/mcp-ts/agents/task-analyst.md +15 -0
  1202. package/presets/opencode/mcp-ts/agents/task-router.md +15 -0
  1203. package/presets/opencode/mcp-ts/commands/spec-start.md +1 -1
  1204. package/presets/opencode/mcp-ts/commands/task-continue.md +1 -1
  1205. package/presets/opencode/mcp-ts/commands/task.md +1 -1
  1206. package/presets/opencode/mcp-ts/commands/technical-retro.md +1 -1
  1207. package/presets/opencode/mcp-ts/hooks/chain-team-phases.sh +32 -3
  1208. package/presets/opencode/mcp-ts/opencode.json +14 -0
  1209. package/presets/opencode/mcp-ts/rules/README.md +7 -2
  1210. package/presets/opencode/mcp-ts/rules/agent-team-intake.md +5 -0
  1211. package/presets/opencode/mcp-ts/rules/anti-sycophancy-discipline.md +4 -0
  1212. package/presets/opencode/mcp-ts/rules/code-quality-and-refactoring.md +15 -0
  1213. package/presets/opencode/mcp-ts/rules/code-review-mr.md +6 -0
  1214. package/presets/opencode/mcp-ts/rules/design-guidance.md +5 -0
  1215. package/presets/opencode/mcp-ts/rules/mcp-usage.md +7 -0
  1216. package/presets/opencode/mcp-ts/rules/preset-layering.md +1 -1
  1217. package/presets/opencode/mcp-ts/rules/preset-pr-checklist.md +1 -1
  1218. package/presets/opencode/mcp-ts/rules/preset-token-budget.md +10 -10
  1219. package/presets/opencode/mcp-ts/rules/product-specs-authoring.md +6 -0
  1220. package/presets/opencode/mcp-ts/rules/product-specs.md +6 -0
  1221. package/presets/opencode/mcp-ts/skills/code-review/SKILL.md +1 -1
  1222. package/presets/opencode/mcp-ts/skills/debug-investigation/SKILL.md +1 -1
  1223. package/presets/opencode/mcp-ts/skills/feature-delivery/SKILL.md +1 -1
  1224. package/presets/opencode/mcp-ts/skills/spec-authoring/SKILL.md +1 -1
  1225. package/presets/opencode/mcp-ts/skills/spec-discovery/SKILL.md +1 -1
  1226. package/presets/opencode/mcp-ts/skills/unit-testing/SKILL.md +1 -1
  1227. package/presets/opencode/next/OPENCODE.md +15 -1
  1228. package/presets/opencode/next/adapter-map.json +58 -2
  1229. package/presets/opencode/next/agents/accessibility-reviewer.md +17 -0
  1230. package/presets/opencode/next/agents/api-contract-reviewer.md +19 -0
  1231. package/presets/opencode/next/agents/build-verifier.md +19 -2
  1232. package/presets/opencode/next/agents/ci-investigator.md +34 -0
  1233. package/presets/opencode/next/agents/code-reviewer.md +18 -0
  1234. package/presets/opencode/next/agents/codebase-analyzer.md +17 -0
  1235. package/presets/opencode/next/agents/debugger.md +34 -0
  1236. package/presets/opencode/next/agents/feature-developer.md +34 -0
  1237. package/presets/opencode/next/agents/migration-specialist.md +17 -0
  1238. package/presets/opencode/next/agents/mockup-reviewer.md +17 -0
  1239. package/presets/opencode/next/agents/openspec-author.md +17 -0
  1240. package/presets/opencode/next/agents/performance-auditor.md +17 -0
  1241. package/presets/opencode/next/agents/playwright-test-generator.md +19 -0
  1242. package/presets/opencode/next/agents/playwright-test-healer.md +19 -0
  1243. package/presets/opencode/next/agents/playwright-test-planner.md +19 -0
  1244. package/presets/opencode/next/agents/qa-tester.md +20 -0
  1245. package/presets/opencode/next/agents/security-reviewer.md +17 -0
  1246. package/presets/opencode/next/agents/solution-architect.md +17 -0
  1247. package/presets/opencode/next/agents/task-analyst.md +17 -0
  1248. package/presets/opencode/next/agents/task-router.md +17 -0
  1249. package/presets/opencode/next/agents/tech-writer.md +17 -0
  1250. package/presets/opencode/next/agents/unit-test-generator.md +18 -0
  1251. package/presets/opencode/next/agents/unit-test-healer.md +18 -0
  1252. package/presets/opencode/next/agents/unit-test-planner.md +18 -0
  1253. package/presets/opencode/next/ai-local/rules-library/agent-artifacts-no-local-paths.md +38 -0
  1254. package/presets/opencode/next/ai-local/rules-library/commit-hygiene.md +17 -0
  1255. package/presets/opencode/next/ai-local/rules-library/mcp-required-for-ui-layout.md +41 -0
  1256. package/presets/opencode/next/ai-local/rules-library/no-test-driven-behavior-change.md +14 -0
  1257. package/presets/opencode/next/ai-local/rules-library/pre-pr-checklist.md +16 -0
  1258. package/presets/opencode/next/ai-local/rules-library/router-pages.md +23 -0
  1259. package/presets/opencode/next/ai-local/rules-library/single-source-copy-constants.md +16 -0
  1260. package/presets/opencode/next/commands/spec-start.md +1 -1
  1261. package/presets/opencode/next/commands/task-continue.md +1 -1
  1262. package/presets/opencode/next/commands/task.md +1 -1
  1263. package/presets/opencode/next/commands/technical-retro.md +1 -1
  1264. package/presets/opencode/next/hooks/chain-team-phases.sh +32 -3
  1265. package/presets/opencode/next/opencode.json +19 -0
  1266. package/presets/opencode/next/rules/README.md +7 -2
  1267. package/presets/opencode/next/rules/api-services.md +6 -4
  1268. package/presets/opencode/next/rules/code-quality-and-refactoring.md +13 -0
  1269. package/presets/opencode/next/rules/code-review-mr.md +13 -0
  1270. package/presets/opencode/next/rules/design-guidance.md +5 -0
  1271. package/presets/opencode/next/rules/feature-delivery-workflow.md +85 -0
  1272. package/presets/opencode/next/rules/mcp-usage.md +9 -0
  1273. package/presets/opencode/next/rules/mockup-review.md +4 -0
  1274. package/presets/opencode/next/rules/next-app-core.md +2 -1
  1275. package/presets/opencode/next/rules/preset-layering.md +1 -1
  1276. package/presets/opencode/next/rules/preset-pr-checklist.md +1 -1
  1277. package/presets/opencode/next/rules/preset-token-budget.md +10 -10
  1278. package/presets/opencode/next/rules/product-specs-authoring.md +6 -0
  1279. package/presets/opencode/next/rules/product-specs.md +6 -0
  1280. package/presets/opencode/next/rules/react-ui.md +37 -1
  1281. package/presets/opencode/next/rules/reference-features.md +36 -0
  1282. package/presets/opencode/next/rules/store-rtk.md +6 -5
  1283. package/presets/opencode/next/rules/tests-e2e-structure.md +15 -0
  1284. package/presets/opencode/next/rules/tests-unit.md +33 -0
  1285. package/presets/opencode/next/rules/ux-design.md +4 -0
  1286. package/presets/opencode/next/skills/ci-investigation/SKILL.md +1 -1
  1287. package/presets/opencode/next/skills/code-review/SKILL.md +1 -1
  1288. package/presets/opencode/next/skills/debug-investigation/SKILL.md +1 -1
  1289. package/presets/opencode/next/skills/feature-delivery/SKILL.md +1 -1
  1290. package/presets/opencode/next/skills/mockup-review/SKILL.md +1 -1
  1291. package/presets/opencode/next/skills/playwright-e2e/SKILL.md +1 -1
  1292. package/presets/opencode/next/skills/react-performance/SKILL.md +1 -1
  1293. package/presets/opencode/next/skills/spec-authoring/SKILL.md +1 -1
  1294. package/presets/opencode/next/skills/spec-discovery/SKILL.md +1 -1
  1295. package/presets/opencode/next/skills/technical-retro/SKILL.md +1 -1
  1296. package/presets/opencode/next/skills/unit-testing/SKILL.md +1 -1
  1297. package/presets/opencode/next/skills/ux-design/SKILL.md +1 -1
  1298. package/presets/opencode/next/skills/write-adr/SKILL.md +1 -1
  1299. package/presets/opencode/nuxt/OPENCODE.md +15 -1
  1300. package/presets/opencode/nuxt/adapter-map.json +2 -2
  1301. package/presets/opencode/nuxt/agents/accessibility-reviewer.md +17 -0
  1302. package/presets/opencode/nuxt/agents/api-contract-reviewer.md +19 -0
  1303. package/presets/opencode/nuxt/agents/build-verifier.md +19 -2
  1304. package/presets/opencode/nuxt/agents/ci-investigator.md +34 -0
  1305. package/presets/opencode/nuxt/agents/code-reviewer.md +18 -0
  1306. package/presets/opencode/nuxt/agents/codebase-analyzer.md +17 -0
  1307. package/presets/opencode/nuxt/agents/debugger.md +34 -0
  1308. package/presets/opencode/nuxt/agents/feature-developer.md +34 -0
  1309. package/presets/opencode/nuxt/agents/migration-specialist.md +17 -0
  1310. package/presets/opencode/nuxt/agents/mockup-reviewer.md +17 -0
  1311. package/presets/opencode/nuxt/agents/openspec-author.md +17 -0
  1312. package/presets/opencode/nuxt/agents/performance-auditor.md +17 -0
  1313. package/presets/opencode/nuxt/agents/playwright-test-generator.md +19 -0
  1314. package/presets/opencode/nuxt/agents/playwright-test-healer.md +19 -0
  1315. package/presets/opencode/nuxt/agents/playwright-test-planner.md +19 -0
  1316. package/presets/opencode/nuxt/agents/qa-tester.md +20 -0
  1317. package/presets/opencode/nuxt/agents/security-reviewer.md +17 -0
  1318. package/presets/opencode/nuxt/agents/solution-architect.md +17 -0
  1319. package/presets/opencode/nuxt/agents/task-analyst.md +17 -0
  1320. package/presets/opencode/nuxt/agents/task-router.md +17 -0
  1321. package/presets/opencode/nuxt/agents/tech-writer.md +17 -0
  1322. package/presets/opencode/nuxt/agents/unit-test-generator.md +18 -0
  1323. package/presets/opencode/nuxt/agents/unit-test-healer.md +18 -0
  1324. package/presets/opencode/nuxt/agents/unit-test-planner.md +18 -0
  1325. package/presets/opencode/nuxt/commands/spec-start.md +1 -1
  1326. package/presets/opencode/nuxt/commands/task-continue.md +1 -1
  1327. package/presets/opencode/nuxt/commands/task.md +1 -1
  1328. package/presets/opencode/nuxt/commands/technical-retro.md +1 -1
  1329. package/presets/opencode/nuxt/hooks/chain-team-phases.sh +32 -3
  1330. package/presets/opencode/nuxt/opencode.json +19 -0
  1331. package/presets/opencode/nuxt/rules/README.md +7 -2
  1332. package/presets/opencode/nuxt/rules/code-quality-and-refactoring.md +13 -0
  1333. package/presets/opencode/nuxt/rules/code-review-mr.md +13 -0
  1334. package/presets/opencode/nuxt/rules/design-guidance.md +5 -0
  1335. package/presets/opencode/nuxt/rules/feature-delivery-workflow.md +82 -0
  1336. package/presets/opencode/nuxt/rules/mcp-usage.md +9 -0
  1337. package/presets/opencode/nuxt/rules/mockup-review.md +4 -0
  1338. package/presets/opencode/nuxt/rules/preset-layering.md +1 -1
  1339. package/presets/opencode/nuxt/rules/preset-pr-checklist.md +1 -1
  1340. package/presets/opencode/nuxt/rules/preset-token-budget.md +10 -10
  1341. package/presets/opencode/nuxt/rules/product-specs-authoring.md +6 -0
  1342. package/presets/opencode/nuxt/rules/product-specs.md +5 -0
  1343. package/presets/opencode/nuxt/rules/reference-features.md +36 -0
  1344. package/presets/opencode/nuxt/rules/tests-e2e-structure.md +16 -0
  1345. package/presets/opencode/nuxt/rules/tests-unit.md +11 -0
  1346. package/presets/opencode/nuxt/rules/ux-design.md +4 -0
  1347. package/presets/opencode/nuxt/rules/vue-ui.md +7 -0
  1348. package/presets/opencode/nuxt/skills/ci-investigation/SKILL.md +1 -1
  1349. package/presets/opencode/nuxt/skills/code-review/SKILL.md +1 -1
  1350. package/presets/opencode/nuxt/skills/debug-investigation/SKILL.md +1 -1
  1351. package/presets/opencode/nuxt/skills/feature-delivery/SKILL.md +1 -1
  1352. package/presets/opencode/nuxt/skills/mockup-review/SKILL.md +1 -1
  1353. package/presets/opencode/nuxt/skills/playwright-e2e/SKILL.md +1 -1
  1354. package/presets/opencode/nuxt/skills/spec-authoring/SKILL.md +1 -1
  1355. package/presets/opencode/nuxt/skills/spec-discovery/SKILL.md +1 -1
  1356. package/presets/opencode/nuxt/skills/technical-retro/SKILL.md +1 -1
  1357. package/presets/opencode/nuxt/skills/unit-testing/SKILL.md +1 -1
  1358. package/presets/opencode/nuxt/skills/ux-design/SKILL.md +1 -1
  1359. package/presets/opencode/nuxt/skills/vue-performance/SKILL.md +1 -1
  1360. package/presets/opencode/nuxt/skills/write-adr/SKILL.md +1 -1
  1361. package/presets/opencode/php-hexagonal/OPENCODE.md +15 -1
  1362. package/presets/opencode/php-hexagonal/adapter-map.json +2 -2
  1363. package/presets/opencode/php-hexagonal/agents/api-contract-reviewer.md +17 -0
  1364. package/presets/opencode/php-hexagonal/agents/build-verifier.md +18 -1
  1365. package/presets/opencode/php-hexagonal/agents/ci-investigator.md +29 -0
  1366. package/presets/opencode/php-hexagonal/agents/code-reviewer.md +16 -0
  1367. package/presets/opencode/php-hexagonal/agents/codebase-analyzer.md +15 -0
  1368. package/presets/opencode/php-hexagonal/agents/debugger.md +29 -0
  1369. package/presets/opencode/php-hexagonal/agents/feature-developer.md +29 -0
  1370. package/presets/opencode/php-hexagonal/agents/integration-test-generator.md +17 -0
  1371. package/presets/opencode/php-hexagonal/agents/integration-test-healer.md +17 -0
  1372. package/presets/opencode/php-hexagonal/agents/integration-test-planner.md +17 -0
  1373. package/presets/opencode/php-hexagonal/agents/migration-specialist.md +15 -0
  1374. package/presets/opencode/php-hexagonal/agents/openspec-author.md +15 -0
  1375. package/presets/opencode/php-hexagonal/agents/performance-auditor.md +15 -0
  1376. package/presets/opencode/php-hexagonal/agents/qa-tester.md +18 -0
  1377. package/presets/opencode/php-hexagonal/agents/security-reviewer.md +15 -0
  1378. package/presets/opencode/php-hexagonal/agents/solution-architect.md +15 -0
  1379. package/presets/opencode/php-hexagonal/agents/task-analyst.md +15 -0
  1380. package/presets/opencode/php-hexagonal/agents/task-router.md +15 -0
  1381. package/presets/opencode/php-hexagonal/agents/tech-writer.md +15 -0
  1382. package/presets/opencode/php-hexagonal/agents/unit-test-generator.md +16 -0
  1383. package/presets/opencode/php-hexagonal/agents/unit-test-healer.md +16 -0
  1384. package/presets/opencode/php-hexagonal/agents/unit-test-planner.md +16 -0
  1385. package/presets/opencode/php-hexagonal/commands/spec-start.md +1 -1
  1386. package/presets/opencode/php-hexagonal/commands/task-continue.md +1 -1
  1387. package/presets/opencode/php-hexagonal/commands/task.md +1 -1
  1388. package/presets/opencode/php-hexagonal/commands/technical-retro.md +1 -1
  1389. package/presets/opencode/php-hexagonal/hooks/chain-team-phases.sh +32 -3
  1390. package/presets/opencode/php-hexagonal/opencode.json +14 -0
  1391. package/presets/opencode/php-hexagonal/rules/README.md +7 -2
  1392. package/presets/opencode/php-hexagonal/rules/agent-team-intake.md +4 -0
  1393. package/presets/opencode/php-hexagonal/rules/code-quality-and-refactoring.md +15 -0
  1394. package/presets/opencode/php-hexagonal/rules/code-review-mr.md +9 -0
  1395. package/presets/opencode/php-hexagonal/rules/design-guidance.md +6 -0
  1396. package/presets/opencode/php-hexagonal/rules/mcp-usage.md +6 -0
  1397. package/presets/opencode/php-hexagonal/rules/preset-layering.md +1 -1
  1398. package/presets/opencode/php-hexagonal/rules/preset-pr-checklist.md +1 -1
  1399. package/presets/opencode/php-hexagonal/rules/preset-token-budget.md +10 -10
  1400. package/presets/opencode/php-hexagonal/rules/product-specs-authoring.md +6 -0
  1401. package/presets/opencode/php-hexagonal/rules/product-specs.md +6 -0
  1402. package/presets/opencode/php-hexagonal/skills/ci-investigation/SKILL.md +1 -1
  1403. package/presets/opencode/php-hexagonal/skills/code-review/SKILL.md +1 -1
  1404. package/presets/opencode/php-hexagonal/skills/debug-investigation/SKILL.md +1 -1
  1405. package/presets/opencode/php-hexagonal/skills/feature-delivery/SKILL.md +1 -1
  1406. package/presets/opencode/php-hexagonal/skills/integration-testing/SKILL.md +1 -1
  1407. package/presets/opencode/php-hexagonal/skills/spec-authoring/SKILL.md +1 -1
  1408. package/presets/opencode/php-hexagonal/skills/spec-discovery/SKILL.md +1 -1
  1409. package/presets/opencode/php-hexagonal/skills/technical-retro/SKILL.md +1 -1
  1410. package/presets/opencode/php-hexagonal/skills/unit-testing/SKILL.md +1 -1
  1411. package/presets/opencode/php-hexagonal/skills/write-adr/SKILL.md +1 -1
  1412. package/presets/opencode/php-laravel/OPENCODE.md +15 -1
  1413. package/presets/opencode/php-laravel/adapter-map.json +2 -2
  1414. package/presets/opencode/php-laravel/agents/api-contract-reviewer.md +18 -0
  1415. package/presets/opencode/php-laravel/agents/build-verifier.md +18 -1
  1416. package/presets/opencode/php-laravel/agents/ci-investigator.md +29 -0
  1417. package/presets/opencode/php-laravel/agents/code-reviewer.md +16 -0
  1418. package/presets/opencode/php-laravel/agents/codebase-analyzer.md +15 -0
  1419. package/presets/opencode/php-laravel/agents/debugger.md +29 -0
  1420. package/presets/opencode/php-laravel/agents/feature-developer.md +29 -0
  1421. package/presets/opencode/php-laravel/agents/integration-test-generator.md +17 -0
  1422. package/presets/opencode/php-laravel/agents/integration-test-healer.md +17 -0
  1423. package/presets/opencode/php-laravel/agents/integration-test-planner.md +17 -0
  1424. package/presets/opencode/php-laravel/agents/migration-specialist.md +15 -0
  1425. package/presets/opencode/php-laravel/agents/openspec-author.md +15 -0
  1426. package/presets/opencode/php-laravel/agents/performance-auditor.md +15 -0
  1427. package/presets/opencode/php-laravel/agents/qa-tester.md +18 -0
  1428. package/presets/opencode/php-laravel/agents/security-reviewer.md +15 -0
  1429. package/presets/opencode/php-laravel/agents/solution-architect.md +15 -0
  1430. package/presets/opencode/php-laravel/agents/task-analyst.md +15 -0
  1431. package/presets/opencode/php-laravel/agents/task-router.md +15 -0
  1432. package/presets/opencode/php-laravel/agents/tech-writer.md +15 -0
  1433. package/presets/opencode/php-laravel/agents/unit-test-generator.md +16 -0
  1434. package/presets/opencode/php-laravel/agents/unit-test-healer.md +16 -0
  1435. package/presets/opencode/php-laravel/agents/unit-test-planner.md +16 -0
  1436. package/presets/opencode/php-laravel/commands/spec-start.md +1 -1
  1437. package/presets/opencode/php-laravel/commands/task-continue.md +1 -1
  1438. package/presets/opencode/php-laravel/commands/task.md +1 -1
  1439. package/presets/opencode/php-laravel/commands/technical-retro.md +1 -1
  1440. package/presets/opencode/php-laravel/hooks/chain-team-phases.sh +32 -3
  1441. package/presets/opencode/php-laravel/opencode.json +14 -0
  1442. package/presets/opencode/php-laravel/rules/README.md +7 -2
  1443. package/presets/opencode/php-laravel/rules/agent-team-intake.md +4 -0
  1444. package/presets/opencode/php-laravel/rules/code-quality-and-refactoring.md +15 -0
  1445. package/presets/opencode/php-laravel/rules/code-review-mr.md +10 -0
  1446. package/presets/opencode/php-laravel/rules/design-guidance.md +6 -0
  1447. package/presets/opencode/php-laravel/rules/mcp-usage.md +6 -0
  1448. package/presets/opencode/php-laravel/rules/preset-layering.md +1 -1
  1449. package/presets/opencode/php-laravel/rules/preset-pr-checklist.md +1 -1
  1450. package/presets/opencode/php-laravel/rules/preset-token-budget.md +10 -10
  1451. package/presets/opencode/php-laravel/rules/product-specs-authoring.md +6 -0
  1452. package/presets/opencode/php-laravel/rules/product-specs.md +6 -0
  1453. package/presets/opencode/php-laravel/skills/ci-investigation/SKILL.md +1 -1
  1454. package/presets/opencode/php-laravel/skills/code-review/SKILL.md +1 -1
  1455. package/presets/opencode/php-laravel/skills/debug-investigation/SKILL.md +1 -1
  1456. package/presets/opencode/php-laravel/skills/feature-delivery/SKILL.md +1 -1
  1457. package/presets/opencode/php-laravel/skills/integration-testing/SKILL.md +1 -1
  1458. package/presets/opencode/php-laravel/skills/spec-authoring/SKILL.md +1 -1
  1459. package/presets/opencode/php-laravel/skills/spec-discovery/SKILL.md +1 -1
  1460. package/presets/opencode/php-laravel/skills/technical-retro/SKILL.md +1 -1
  1461. package/presets/opencode/php-laravel/skills/unit-testing/SKILL.md +1 -1
  1462. package/presets/opencode/php-laravel/skills/write-adr/SKILL.md +1 -1
  1463. package/presets/opencode/svelte/OPENCODE.md +15 -1
  1464. package/presets/opencode/svelte/adapter-map.json +2 -2
  1465. package/presets/opencode/svelte/agents/accessibility-reviewer.md +17 -0
  1466. package/presets/opencode/svelte/agents/api-contract-reviewer.md +19 -0
  1467. package/presets/opencode/svelte/agents/build-verifier.md +19 -2
  1468. package/presets/opencode/svelte/agents/ci-investigator.md +34 -0
  1469. package/presets/opencode/svelte/agents/code-reviewer.md +18 -0
  1470. package/presets/opencode/svelte/agents/codebase-analyzer.md +17 -0
  1471. package/presets/opencode/svelte/agents/debugger.md +34 -0
  1472. package/presets/opencode/svelte/agents/feature-developer.md +34 -0
  1473. package/presets/opencode/svelte/agents/migration-specialist.md +17 -0
  1474. package/presets/opencode/svelte/agents/mockup-reviewer.md +17 -0
  1475. package/presets/opencode/svelte/agents/openspec-author.md +17 -0
  1476. package/presets/opencode/svelte/agents/performance-auditor.md +17 -0
  1477. package/presets/opencode/svelte/agents/playwright-test-generator.md +19 -0
  1478. package/presets/opencode/svelte/agents/playwright-test-healer.md +19 -0
  1479. package/presets/opencode/svelte/agents/playwright-test-planner.md +19 -0
  1480. package/presets/opencode/svelte/agents/qa-tester.md +20 -0
  1481. package/presets/opencode/svelte/agents/security-reviewer.md +17 -0
  1482. package/presets/opencode/svelte/agents/solution-architect.md +17 -0
  1483. package/presets/opencode/svelte/agents/task-analyst.md +17 -0
  1484. package/presets/opencode/svelte/agents/task-router.md +17 -0
  1485. package/presets/opencode/svelte/agents/tech-writer.md +17 -0
  1486. package/presets/opencode/svelte/agents/unit-test-generator.md +18 -0
  1487. package/presets/opencode/svelte/agents/unit-test-healer.md +18 -0
  1488. package/presets/opencode/svelte/agents/unit-test-planner.md +18 -0
  1489. package/presets/opencode/svelte/commands/spec-start.md +1 -1
  1490. package/presets/opencode/svelte/commands/task-continue.md +1 -1
  1491. package/presets/opencode/svelte/commands/task.md +1 -1
  1492. package/presets/opencode/svelte/commands/technical-retro.md +1 -1
  1493. package/presets/opencode/svelte/hooks/chain-team-phases.sh +32 -3
  1494. package/presets/opencode/svelte/opencode.json +19 -0
  1495. package/presets/opencode/svelte/rules/README.md +7 -2
  1496. package/presets/opencode/svelte/rules/code-quality-and-refactoring.md +13 -0
  1497. package/presets/opencode/svelte/rules/code-review-mr.md +13 -0
  1498. package/presets/opencode/svelte/rules/design-guidance.md +5 -0
  1499. package/presets/opencode/svelte/rules/feature-delivery-workflow.md +54 -0
  1500. package/presets/opencode/svelte/rules/mcp-usage.md +9 -0
  1501. package/presets/opencode/svelte/rules/mockup-review.md +4 -0
  1502. package/presets/opencode/svelte/rules/preset-layering.md +1 -1
  1503. package/presets/opencode/svelte/rules/preset-pr-checklist.md +1 -1
  1504. package/presets/opencode/svelte/rules/preset-token-budget.md +10 -10
  1505. package/presets/opencode/svelte/rules/product-specs-authoring.md +6 -0
  1506. package/presets/opencode/svelte/rules/product-specs.md +5 -0
  1507. package/presets/opencode/svelte/rules/reference-features.md +37 -0
  1508. package/presets/opencode/svelte/rules/svelte-ui.md +7 -0
  1509. package/presets/opencode/svelte/rules/tests-e2e-structure.md +16 -0
  1510. package/presets/opencode/svelte/rules/tests-unit.md +11 -0
  1511. package/presets/opencode/svelte/rules/ux-design.md +4 -0
  1512. package/presets/opencode/svelte/skills/ci-investigation/SKILL.md +1 -1
  1513. package/presets/opencode/svelte/skills/code-review/SKILL.md +1 -1
  1514. package/presets/opencode/svelte/skills/debug-investigation/SKILL.md +1 -1
  1515. package/presets/opencode/svelte/skills/feature-delivery/SKILL.md +1 -1
  1516. package/presets/opencode/svelte/skills/mockup-review/SKILL.md +1 -1
  1517. package/presets/opencode/svelte/skills/playwright-e2e/SKILL.md +1 -1
  1518. package/presets/opencode/svelte/skills/spec-authoring/SKILL.md +1 -1
  1519. package/presets/opencode/svelte/skills/spec-discovery/SKILL.md +1 -1
  1520. package/presets/opencode/svelte/skills/svelte-performance/SKILL.md +1 -1
  1521. package/presets/opencode/svelte/skills/technical-retro/SKILL.md +1 -1
  1522. package/presets/opencode/svelte/skills/unit-testing/SKILL.md +1 -1
  1523. package/presets/opencode/svelte/skills/ux-design/SKILL.md +1 -1
  1524. package/presets/opencode/svelte/skills/write-adr/SKILL.md +1 -1
  1525. package/scripts/capture-cli-golden.mjs +8 -5
  1526. package/scripts/check-claude-agent-blocks.mjs +82 -0
  1527. package/scripts/check-frontmatter.mjs +83 -0
  1528. package/scripts/check-generated-drift.mjs +106 -0
  1529. package/scripts/check-mavis-token-budget.mjs +1 -1
  1530. package/scripts/check-opencode-token-budget.mjs +1 -1
  1531. package/scripts/check-preset-structure.sh +36 -0
  1532. package/scripts/check-preset-token-budget.sh +16 -17
  1533. package/scripts/check-shared-core-drift.sh +10 -5
  1534. package/scripts/close-agent-task-human-gate.mjs +6 -4
  1535. package/scripts/fixtures/cli-golden/claude/next.json +49 -42
  1536. package/scripts/fixtures/cli-golden/cursor/next.json +24 -17
  1537. package/scripts/fixtures/cli-golden/mavis/android-kotlin.json +42 -42
  1538. package/scripts/fixtures/cli-golden/mavis/go.json +37 -37
  1539. package/scripts/fixtures/cli-golden/mavis/ios-swift.json +43 -43
  1540. package/scripts/fixtures/cli-golden/mavis/java.json +37 -37
  1541. package/scripts/fixtures/cli-golden/mavis/mcp-ts.json +22 -22
  1542. package/scripts/fixtures/cli-golden/mavis/next.json +55 -48
  1543. package/scripts/fixtures/cli-golden/mavis/nuxt.json +45 -45
  1544. package/scripts/fixtures/cli-golden/mavis/php-hexagonal.json +37 -37
  1545. package/scripts/fixtures/cli-golden/mavis/php-laravel.json +37 -37
  1546. package/scripts/fixtures/cli-golden/mavis/svelte.json +45 -45
  1547. package/scripts/fixtures/cli-golden/opencode/android-kotlin.json +57 -57
  1548. package/scripts/fixtures/cli-golden/opencode/go.json +50 -50
  1549. package/scripts/fixtures/cli-golden/opencode/ios-swift.json +58 -58
  1550. package/scripts/fixtures/cli-golden/opencode/java.json +50 -50
  1551. package/scripts/fixtures/cli-golden/opencode/mcp-ts.json +31 -31
  1552. package/scripts/fixtures/cli-golden/opencode/next.json +71 -64
  1553. package/scripts/fixtures/cli-golden/opencode/nuxt.json +61 -61
  1554. package/scripts/fixtures/cli-golden/opencode/php-hexagonal.json +50 -50
  1555. package/scripts/fixtures/cli-golden/opencode/php-laravel.json +50 -50
  1556. package/scripts/fixtures/cli-golden/opencode/svelte.json +61 -61
  1557. package/scripts/inject-claude-agent-rules-block.mjs +83 -0
  1558. package/scripts/lib/generate-adapter-common.mjs +193 -0
  1559. package/scripts/lib/generate-mavis-adapter.mjs +65 -19
  1560. package/scripts/lib/generate-opencode-adapter.mjs +87 -15
  1561. package/scripts/lib/stack-platform-profiles.mjs +321 -1
  1562. package/scripts/sync-claude-harness-wiring.mjs +56 -0
  1563. package/scripts/sync-claude-settings.mjs +56 -0
  1564. package/scripts/test-agent-task-metrics-hooks.mjs +5 -5
  1565. package/scripts/test-chain-team-phases-coverage.mjs +176 -1
  1566. package/scripts/test-cli-init-clean.mjs +165 -34
  1567. package/scripts/test-cli-mcp-merge.mjs +54 -0
  1568. package/scripts/test-mavis-context-budget.mjs +1 -1
  1569. package/scripts/test-opencode-context-budget.mjs +1 -1
@@ -0,0 +1,56 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Generate (and keep fresh) `presets/claude/<stack>/settings.json` from the
4
+ * stack profile's `bashPermission`. Claude Code's settings.json uses
5
+ * `permissions.deny` / `permissions.ask` (glob patterns). We map:
6
+ * - `<perm>`: "deny" → `permissions.deny`
7
+ * - `<perm>`: "ask" → `permissions.ask`
8
+ * (`allow` entries are ignored since they are not needed for the harness.)
9
+ *
10
+ * Idempotent: rewrites every stack. Claude presets are hand-maintained, so
11
+ * this script keeps them aligned with the StackProfile in
12
+ * `stack-platform-profiles.mjs` — run after editing `bashPermission` there.
13
+ *
14
+ * Usage: node scripts/sync-claude-settings.mjs
15
+ */
16
+ import fs from 'node:fs';
17
+ import path from 'node:path';
18
+ import { fileURLToPath } from 'node:url';
19
+ import { loadReleasedStacks } from './lib/generate-adapter-common.mjs';
20
+ import { getStackProfile } from './lib/stack-platform-profiles.mjs';
21
+
22
+ const scriptDirectory = path.dirname(fileURLToPath(import.meta.url));
23
+ const packageRoot = path.join(scriptDirectory, '..');
24
+ const presetsRoot = path.join(packageRoot, 'presets');
25
+
26
+ function buildClaudePermissions(bashPermission) {
27
+ const deny = [];
28
+ const ask = [];
29
+ for (const [pattern, action] of Object.entries(bashPermission || {})) {
30
+ if (pattern === '*') continue;
31
+ if (action === 'deny') deny.push(`Bash(${pattern})`);
32
+ else if (action === 'ask') ask.push(`Bash(${pattern})`);
33
+ }
34
+ return { deny: deny.sort(), ask: ask.sort() };
35
+ }
36
+
37
+ function sync(stack) {
38
+ const profile = getStackProfile(stack);
39
+ const permissions = buildClaudePermissions(profile.bashPermission);
40
+ const settings = {
41
+ $schema: 'https://json.schemastore.org/claude-code-settings.json',
42
+ permissions,
43
+ };
44
+ const dest = path.join(presetsRoot, 'claude', stack, 'settings.json');
45
+ fs.mkdirSync(path.dirname(dest), { recursive: true });
46
+ fs.writeFileSync(dest, `${JSON.stringify(settings, null, 2)}\n`);
47
+ console.log(`claude/${stack}: wrote ${path.relative(packageRoot, dest)}`);
48
+ }
49
+
50
+ function main() {
51
+ for (const stack of loadReleasedStacks(presetsRoot, 'opencode')) {
52
+ sync(stack);
53
+ }
54
+ }
55
+
56
+ main();
@@ -994,12 +994,12 @@ for (const hook of hooks) {
994
994
  const elapsed = Date.now() - releaseAt;
995
995
  assert.equal(exitCode, 0, `${hook}: hook did not exit 0 after lock release (stderr=${stderr.slice(0, 400)})`);
996
996
 
997
- // The hook's waitForMetricsLock busy-waits on EEXIST in 10 ms slices; with a
998
- // 60 ms hold the child should have been blocked for >= holdMs and run to
999
- // completion in well under the 2 s ceiling. Both assertions guard against
1000
- // regressions to the fake Atomics.wait impl (which never blocked).
997
+ // The hook's waitForMetricsLock busy-waits on EEXIST in 10 ms slices. The
998
+ // "still alive while held" assertion above proves the lock actually blocked;
999
+ // this bound only catches a permanently stuck implementation. It is generous
1000
+ // on purpose: bash + node startup under loaded CI regularly exceeds 1.5 s.
1001
1001
  assert.ok(elapsed >= 1, `${hook}: hook finished suspiciously fast after lock release (${elapsed} ms)`);
1002
- assert.ok(elapsed < 1500, `${hook}: hook took ${elapsed} ms after lock release — lock impl may be stuck`);
1002
+ assert.ok(elapsed < 10000, `${hook}: hook took ${elapsed} ms after lock release — lock impl may be stuck`);
1003
1003
  const ledger = readJson(metricsPath);
1004
1004
  const finished = ledger.events.find(
1005
1005
  (event) => event.type === 'attempt_finished' && event.attemptId === attemptId,
@@ -515,4 +515,179 @@ for (const hook of hooks) {
515
515
  }
516
516
  }
517
517
 
518
- console.log(`Verified openspec-author handoff, qa-tester handoff, pipeline misparse blocking, legacy fallback, writeStatus durability, and stale attemptId rejection in ${hooks.length} hooks.`);
518
+ // ---------------------------------------------------------------------------
519
+ // Test 7 — end_human_gate idempotency (H2): a second/retried end_human_gate
520
+ // must be a no-op. It must not activate the step after the one already resumed.
521
+ // ---------------------------------------------------------------------------
522
+ for (const hook of hooks) {
523
+ const root = fs.mkdtempSync(path.join(packageDirectory, '.gate-idempotent-'));
524
+ try {
525
+ const platform = platformFor(hook);
526
+ const runId = 'gate-idempotent-run';
527
+ const { taskDirectory } = writeTask(
528
+ root,
529
+ hook,
530
+ 'gate-idempotent',
531
+ {
532
+ intent: 'feature',
533
+ profile: 'standard',
534
+ steps: [
535
+ { agent: 'task-analyst', label: 'Analyze' },
536
+ { agent: 'feature-developer', label: 'Develop' },
537
+ { agent: 'build-verifier', label: 'Verify' },
538
+ ],
539
+ humanGates: ['after:task-analyst'],
540
+ },
541
+ {
542
+ slug: 'gate-idempotent',
543
+ intent: 'feature',
544
+ pipelineIndex: 0,
545
+ currentAgent: 'task-analyst',
546
+ phase: 'human_gate',
547
+ state: 'awaiting_approval',
548
+ awaitingHumanGate: true,
549
+ activeHumanGateEventId: `${runId}:gate`,
550
+ activeAttempts: {},
551
+ metricsRunId: runId,
552
+ },
553
+ {
554
+ schemaVersion: 1,
555
+ task: { runId, slug: 'gate-idempotent', preset: 'ai-rules', stack: 'test', platform, intent: 'feature', profile: 'standard' },
556
+ events: [{ eventId: `${runId}:task_started`, type: 'task_started', at: todayIso }],
557
+ },
558
+ );
559
+ invokeHook(hook, root, undefined, { action: 'end_human_gate', activateNext: true });
560
+ const afterFirst = readJson(path.join(taskDirectory, 'status.json'));
561
+ assert.equal(afterFirst.pipelineIndex, 1, `${hook}: end_human_gate did not resume the next step`);
562
+ assert.equal(afterFirst.currentAgent, 'feature-developer', `${hook}: end_human_gate resumed the wrong agent`);
563
+ // Duplicate call: no open gate anymore, so it must not advance again.
564
+ invokeHook(hook, root, undefined, { action: 'end_human_gate', activateNext: true });
565
+ const afterSecond = readJson(path.join(taskDirectory, 'status.json'));
566
+ assert.equal(afterSecond.pipelineIndex, 1, `${hook}: duplicate end_human_gate skipped a pipeline step`);
567
+ assert.equal(afterSecond.currentAgent, 'feature-developer', `${hook}: duplicate end_human_gate changed the active agent`);
568
+ } finally {
569
+ fs.rmSync(root, { recursive: true, force: true });
570
+ }
571
+ }
572
+
573
+ // ---------------------------------------------------------------------------
574
+ // Test 8 — terminal human gate (H3): closing a gate that follows the final
575
+ // step must complete the pipeline, not leave it in_progress forever.
576
+ // ---------------------------------------------------------------------------
577
+ for (const hook of hooks) {
578
+ const root = fs.mkdtempSync(path.join(packageDirectory, '.gate-terminal-'));
579
+ try {
580
+ const platform = platformFor(hook);
581
+ const runId = 'gate-terminal-run';
582
+ const { taskDirectory } = writeTask(
583
+ root,
584
+ hook,
585
+ 'gate-terminal',
586
+ {
587
+ intent: 'feature',
588
+ profile: 'standard',
589
+ steps: [
590
+ { agent: 'task-analyst', label: 'Analyze' },
591
+ { agent: 'feature-developer', label: 'Develop' },
592
+ ],
593
+ humanGates: ['after:feature-developer'],
594
+ },
595
+ {
596
+ slug: 'gate-terminal',
597
+ intent: 'feature',
598
+ pipelineIndex: 1,
599
+ currentAgent: 'feature-developer',
600
+ phase: 'human_gate',
601
+ state: 'awaiting_approval',
602
+ awaitingHumanGate: true,
603
+ activeHumanGateEventId: `${runId}:gate`,
604
+ activeAttempts: {},
605
+ metricsRunId: runId,
606
+ },
607
+ {
608
+ schemaVersion: 1,
609
+ task: { runId, slug: 'gate-terminal', preset: 'ai-rules', stack: 'test', platform, intent: 'feature', profile: 'standard' },
610
+ events: [{ eventId: `${runId}:task_started`, type: 'task_started', at: todayIso }],
611
+ },
612
+ );
613
+ invokeHook(hook, root, undefined, { action: 'end_human_gate', activateNext: true });
614
+ const status = readJson(path.join(taskDirectory, 'status.json'));
615
+ assert.equal(status.state, 'completed', `${hook}: terminal gate did not complete the pipeline (got: ${status.state})`);
616
+ assert.equal(status.phase, 'done', `${hook}: terminal gate did not reach phase=done`);
617
+ const completed = readJson(path.join(taskDirectory, 'metrics.json')).events.filter(
618
+ (event) => event.type === 'task_completed',
619
+ );
620
+ assert.equal(completed.length, 1, `${hook}: terminal gate did not emit task_completed`);
621
+ } finally {
622
+ fs.rmSync(root, { recursive: true, force: true });
623
+ }
624
+ }
625
+
626
+ // ---------------------------------------------------------------------------
627
+ // Test 9 — stale lock recovery (H4): a lock file left by a killed process
628
+ // (mtime far in the past) must be reclaimed instead of failing the hook.
629
+ // ---------------------------------------------------------------------------
630
+ for (const hook of hooks) {
631
+ const root = fs.mkdtempSync(path.join(packageDirectory, '.stale-lock-'));
632
+ try {
633
+ const platform = platformFor(hook);
634
+ const runId = 'stale-lock-run';
635
+ const attemptId = `${runId}:step-0:feature-developer:attempt-1`;
636
+ const { taskDirectory } = writeTask(
637
+ root,
638
+ hook,
639
+ 'stale-lock',
640
+ { intent: 'feature', steps: [{ agent: 'feature-developer' }] },
641
+ {
642
+ slug: 'stale-lock',
643
+ intent: 'feature',
644
+ pipelineIndex: 0,
645
+ currentAgent: 'feature-developer',
646
+ phase: 'executing',
647
+ state: 'completed',
648
+ activeAttempts: {
649
+ [attemptId]: { agent: 'feature-developer', stepIndex: 0, attempt: 1, startedAt: todayIso, parallelGroupId: null },
650
+ },
651
+ metricsRunId: runId,
652
+ },
653
+ {
654
+ schemaVersion: 1,
655
+ task: { runId, slug: 'stale-lock', preset: 'ai-rules', stack: 'test', platform, intent: 'feature', profile: 'standard' },
656
+ events: [
657
+ { eventId: `${runId}:task_started`, type: 'task_started', at: todayIso },
658
+ { eventId: `${runId}:start`, type: 'attempt_started', attemptId, agent: 'feature-developer', stepIndex: 0, attempt: 1, at: todayIso },
659
+ ],
660
+ },
661
+ );
662
+ const lockPath = path.join(taskDirectory, 'metrics.json.lock');
663
+ fs.writeFileSync(lockPath, '');
664
+ const ancient = Date.now() / 1000 - 3600;
665
+ fs.utimesSync(lockPath, ancient, ancient);
666
+ const raw = invokeHook(hook, root, attemptId);
667
+ assert.ok(raw.length > 0, `${hook}: stale lock was not reclaimed (no output)`);
668
+ assert.equal(fs.existsSync(lockPath), false, `${hook}: stale lock was not cleaned up`);
669
+ } finally {
670
+ fs.rmSync(root, { recursive: true, force: true });
671
+ }
672
+ }
673
+
674
+ // ---------------------------------------------------------------------------
675
+ // Test 10 — slug traversal (H6): a slug escaping tasks/ must be rejected
676
+ // without writing status.json outside the task tree.
677
+ // ---------------------------------------------------------------------------
678
+ for (const hook of hooks) {
679
+ const root = fs.mkdtempSync(path.join(packageDirectory, '.slug-traversal-'));
680
+ try {
681
+ const teamRoot = path.join(root, '.ai.local', 'team');
682
+ fs.mkdirSync(teamRoot, { recursive: true });
683
+ writeJson(path.join(teamRoot, 'active-task.json'), { slug: '../../evil' });
684
+ const raw = invokeHook(hook, root, undefined, {});
685
+ assert.deepEqual(JSON.parse(raw), {}, `${hook}: traversal slug was not rejected`);
686
+ assert.equal(fs.existsSync(path.join(root, '.ai.local', 'evil')), false, `${hook}: traversal slug wrote outside tasks/`);
687
+ assert.equal(fs.existsSync(path.join(root, 'evil')), false, `${hook}: traversal slug escaped the repo`);
688
+ } finally {
689
+ fs.rmSync(root, { recursive: true, force: true });
690
+ }
691
+ }
692
+
693
+ console.log(`Verified openspec-author handoff, qa-tester handoff, pipeline misparse blocking, legacy fallback, writeStatus durability, stale attemptId rejection, end_human_gate idempotency, terminal-gate completion, stale-lock recovery, and slug-traversal rejection in ${hooks.length} hooks.`);
@@ -58,9 +58,15 @@ function assertGolden(tool, preset) {
58
58
  runInit(cli, tmp, tool, preset);
59
59
  const expected = readJson(path.join(goldenRoot, tool, `${preset}.json`));
60
60
  const actual = snapshotInstall(tmp);
61
- if (tool === 'mavis') {
62
- delete actual['.mavis/.ai-rules-install.json'];
63
- delete expected.files['.mavis/.ai-rules-install.json'];
61
+ const manifestKey = {
62
+ cursor: '.cursor/.ai-rules-install.json',
63
+ claude: '.claude/.ai-rules-install.json',
64
+ mavis: '.mavis/.ai-rules-install.json',
65
+ opencode: '.opencode/.ai-rules-install.json',
66
+ }[tool];
67
+ if (manifestKey) {
68
+ delete actual[manifestKey];
69
+ delete expected.files[manifestKey];
64
70
  }
65
71
  assert.deepEqual(actual, expected.files, `${tool}/${preset} golden drifted`);
66
72
  } finally {
@@ -226,18 +232,13 @@ runInit(cli, mavisGoldenDir, 'mavis', 'next');
226
232
  const mavisFiles = snapshotInstall(mavisGoldenDir);
227
233
  delete mavisFiles['.mavis/.ai-rules-install.json'];
228
234
  const mavisGoldenPath = path.join(goldenRoot, 'mavis', 'next.json');
229
- if (!fs.existsSync(mavisGoldenPath)) {
230
- writeJson(mavisGoldenPath, {
231
- schemaVersion: 1,
232
- tool: 'mavis',
233
- preset: 'next',
234
- files: mavisFiles,
235
- });
236
- } else {
237
- const expectedMavis = readJson(mavisGoldenPath);
238
- delete expectedMavis.files['.mavis/.ai-rules-install.json'];
239
- assert.deepEqual(mavisFiles, expectedMavis.files, 'mavis/next golden drifted');
240
- }
235
+ assert.ok(
236
+ fs.existsSync(mavisGoldenPath),
237
+ 'mavis/next golden missing — capture it with scripts/capture-cli-golden.mjs',
238
+ );
239
+ const expectedMavis = readJson(mavisGoldenPath);
240
+ delete expectedMavis.files['.mavis/.ai-rules-install.json'];
241
+ assert.deepEqual(mavisFiles, expectedMavis.files, 'mavis/next golden drifted');
241
242
 
242
243
  const ocFresh = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-opencode-fresh-'));
243
244
  const ocInitOut = execFileSync(
@@ -331,18 +332,13 @@ runInit(cli, ocGoldenDir, 'opencode', 'next');
331
332
  const ocFiles = snapshotInstall(ocGoldenDir);
332
333
  delete ocFiles['.opencode/.ai-rules-install.json'];
333
334
  const ocGoldenPath = path.join(goldenRoot, 'opencode', 'next.json');
334
- if (!fs.existsSync(ocGoldenPath)) {
335
- writeJson(ocGoldenPath, {
336
- schemaVersion: 1,
337
- tool: 'opencode',
338
- preset: 'next',
339
- files: ocFiles,
340
- });
341
- } else {
342
- const expectedOc = readJson(ocGoldenPath);
343
- delete expectedOc.files['.opencode/.ai-rules-install.json'];
344
- assert.deepEqual(ocFiles, expectedOc.files, 'opencode/next golden drifted');
345
- }
335
+ assert.ok(
336
+ fs.existsSync(ocGoldenPath),
337
+ 'opencode/next golden missing — capture it with scripts/capture-cli-golden.mjs',
338
+ );
339
+ const expectedOc = readJson(ocGoldenPath);
340
+ delete expectedOc.files['.opencode/.ai-rules-install.json'];
341
+ assert.deepEqual(ocFiles, expectedOc.files, 'opencode/next golden drifted');
346
342
 
347
343
  const canonicalRepoAgents = fs.readFileSync(
348
344
  path.join(packageDirectory, 'presets', 'cursor', 'next', 'REPO_AGENTS.md'),
@@ -363,13 +359,13 @@ function ensureGolden(tool, preset, manifestRel) {
363
359
  const files = snapshotInstall(tmp);
364
360
  delete files[manifestRel];
365
361
  const goldenPath = path.join(goldenRoot, tool, `${preset}.json`);
366
- if (!fs.existsSync(goldenPath)) {
367
- writeJson(goldenPath, { schemaVersion: 1, tool, preset, files });
368
- } else {
369
- const expected = readJson(goldenPath);
370
- delete expected.files[manifestRel];
371
- assert.deepEqual(files, expected.files, `${tool}/${preset} golden drifted`);
372
- }
362
+ assert.ok(
363
+ fs.existsSync(goldenPath),
364
+ `${tool}/${preset} golden missing — capture it with scripts/capture-cli-golden.mjs`,
365
+ );
366
+ const expected = readJson(goldenPath);
367
+ delete expected.files[manifestRel];
368
+ assert.deepEqual(files, expected.files, `${tool}/${preset} golden drifted`);
373
369
  } finally {
374
370
  fs.rmSync(tmp, { recursive: true, force: true });
375
371
  }
@@ -618,6 +614,130 @@ assert.equal(
618
614
  'migration must not write the pointer README outside --cwd',
619
615
  );
620
616
 
617
+ // --- CLI ownership + path-safety regressions ----------------------------
618
+ // init writes an ownership manifest for cursor/claude (like mavis/opencode).
619
+ const ownedClean = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-owned-clean-'));
620
+ runInit(cli, ownedClean, 'cursor', 'next');
621
+ const cursorManifest = readJson(path.join(ownedClean, '.cursor', '.ai-rules-install.json'));
622
+ assert.equal(cursorManifest.platform, 'cursor');
623
+ assert.ok(cursorManifest.managedFiles['.cursor/rules/next-app-core.mdc']);
624
+ assert.ok(cursorManifest.managedFiles['AGENTS.md']);
625
+ assert.ok(cursorManifest.shippedMcpServerIds.includes('context7'));
626
+
627
+ // A consumer file under .cursor/ and a modified shared AGENTS.md survive clean.
628
+ fs.writeFileSync(path.join(ownedClean, '.cursor', 'rules', 'mine.mdc'), '# mine\n');
629
+ fs.writeFileSync(path.join(ownedClean, 'AGENTS.md'), '# consumer agents\n');
630
+ runClean(ownedClean, 'cursor');
631
+ assert.equal(
632
+ fs.existsSync(path.join(ownedClean, '.cursor', 'rules', 'mine.mdc')),
633
+ true,
634
+ 'consumer rule must survive clean cursor',
635
+ );
636
+ assert.equal(
637
+ fs.readFileSync(path.join(ownedClean, 'AGENTS.md'), 'utf8'),
638
+ '# consumer agents\n',
639
+ 'modified shared AGENTS.md must survive clean cursor',
640
+ );
641
+
642
+ // clean without an install manifest is fail-safe: it deletes nothing.
643
+ const noManifest = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-no-manifest-'));
644
+ fs.mkdirSync(path.join(noManifest, '.cursor', 'rules'), { recursive: true });
645
+ fs.writeFileSync(path.join(noManifest, '.cursor', 'rules', 'mine.mdc'), '# mine\n');
646
+ const noManifestClean = runCli(noManifest, ['clean', 'cursor']);
647
+ assert.equal(noManifestClean.status, 1);
648
+ assert.equal(
649
+ fs.existsSync(path.join(noManifest, '.cursor', 'rules', 'mine.mdc')),
650
+ true,
651
+ 'clean cursor must not delete consumer files when no manifest exists',
652
+ );
653
+
654
+ // A manifest entry that escapes cwd is ignored, never followed.
655
+ const traversal = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-traversal-'));
656
+ fs.writeFileSync(path.join(traversal, 'victim.txt'), 'victim\n');
657
+ const victimHash = sha256File(path.join(traversal, 'victim.txt'));
658
+ fs.mkdirSync(path.join(traversal, '.mavis'), { recursive: true });
659
+ fs.writeFileSync(
660
+ path.join(traversal, '.mavis', '.ai-rules-install.json'),
661
+ `${JSON.stringify({
662
+ schemaVersion: 1,
663
+ platform: 'mavis',
664
+ preset: 'next',
665
+ managedFiles: { '../victim.txt': victimHash },
666
+ managedDirectories: ['../'],
667
+ })}\n`,
668
+ );
669
+ const traversalClean = runCli(traversal, ['clean', 'mavis']);
670
+ assert.equal(traversalClean.status, 0);
671
+ assert.equal(
672
+ fs.existsSync(path.join(traversal, 'victim.txt')),
673
+ true,
674
+ 'path-traversal manifest entry must not delete outside cwd',
675
+ );
676
+
677
+ // A symlinked destination root is refused instead of written through.
678
+ const symlinkInit = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-symlink-init-'));
679
+ const symlinkTarget = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-symlink-target-'));
680
+ fs.symlinkSync(symlinkTarget, path.join(symlinkInit, '.ai.local'), 'dir');
681
+ const symlinkResult = runCli(symlinkInit, ['init', 'cursor', '--preset', 'next']);
682
+ assert.equal(symlinkResult.status, 1);
683
+ assert.equal(
684
+ fs.existsSync(path.join(symlinkTarget, 'team')),
685
+ false,
686
+ 'init must not write .ai.local/team through a symlinked .ai.local',
687
+ );
688
+ const mavisLink = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-mavis-link-'));
689
+ const mavisTarget = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-mavis-link-target-'));
690
+ fs.symlinkSync(mavisTarget, path.join(mavisLink, '.mavis'), 'dir');
691
+ const mavisLinkResult = runCli(mavisLink, ['init', 'mavis', '--preset', 'next']);
692
+ assert.equal(mavisLinkResult.status, 1);
693
+ assert.equal(
694
+ fs.existsSync(path.join(mavisTarget, 'AGENTS.md')),
695
+ false,
696
+ 'init mavis must not write through a symlinked .mavis',
697
+ );
698
+
699
+ // A failed re-init must not roll back pre-existing consumer directories.
700
+ const rollbackReinit = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-rollback-reinit-'));
701
+ runInit(cli, rollbackReinit, 'cursor', 'next');
702
+ fs.writeFileSync(path.join(rollbackReinit, '.cursor', 'rules', 'mine.mdc'), '# mine\n');
703
+ fs.rmSync(path.join(rollbackReinit, '.cursor', 'hooks.json'), { force: true });
704
+ fs.mkdirSync(path.join(rollbackReinit, '.cursor', 'hooks.json'));
705
+ const reinit = runCli(rollbackReinit, ['init', 'cursor', '--preset', 'next']);
706
+ assert.equal(reinit.status, 1);
707
+ assert.equal(
708
+ fs.existsSync(path.join(rollbackReinit, '.cursor', 'rules', 'mine.mdc')),
709
+ true,
710
+ 'failed re-init rollback must not delete pre-existing consumer files',
711
+ );
712
+
713
+ // `--preset ""` is a missing value, not a silent fall back to the default.
714
+ const emptyPreset = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-empty-preset-'));
715
+ const emptyPresetResult = runCli(emptyPreset, ['init', 'cursor', '--preset', '']);
716
+ assert.equal(emptyPresetResult.status, 1);
717
+ assert.match(emptyPresetResult.stderr, /Missing value for --preset/);
718
+
719
+ // Unknown flags are rejected.
720
+ const unknownFlag = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-unknown-flag-'));
721
+ const unknownFlagResult = runCli(unknownFlag, ['init', 'cursor', '--preset', 'next', '--bogus']);
722
+ assert.equal(unknownFlagResult.status, 1);
723
+ assert.match(unknownFlagResult.stderr, /Unknown option: --bogus/);
724
+
725
+ // Consumer MCP servers survive clean cursor (only shipped keys are stripped).
726
+ const mcpExtra = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-mcp-extra-'));
727
+ runInit(cli, mcpExtra, 'cursor', 'next');
728
+ const mcpExtraPath = path.join(mcpExtra, '.cursor', 'mcp.json');
729
+ const mcpExtraJson = readJson(mcpExtraPath);
730
+ mcpExtraJson.mcpServers.myPrivate = { command: 'my-server' };
731
+ fs.writeFileSync(mcpExtraPath, `${JSON.stringify(mcpExtraJson, null, 2)}\n`);
732
+ runClean(mcpExtra, 'cursor');
733
+ const mcpAfter = readJson(mcpExtraPath);
734
+ assert.ok(mcpAfter.mcpServers.myPrivate, 'consumer MCP server must survive clean cursor');
735
+ assert.equal(
736
+ Object.hasOwn(mcpAfter.mcpServers, 'context7'),
737
+ false,
738
+ 'shipped MCP server must be stripped by clean cursor',
739
+ );
740
+
621
741
  const multiClean = runCli(multiDir, ['clean', 'multi']);
622
742
  assert.equal(multiClean.status, 1);
623
743
  assert.match(`${multiClean.stderr}${multiClean.stdout}`, /clean multi is not supported/);
@@ -655,6 +775,17 @@ for (const dir of [
655
775
  collision,
656
776
  symlinked,
657
777
  outsideDir,
778
+ ownedClean,
779
+ noManifest,
780
+ traversal,
781
+ symlinkInit,
782
+ symlinkTarget,
783
+ mavisLink,
784
+ mavisTarget,
785
+ rollbackReinit,
786
+ emptyPreset,
787
+ unknownFlag,
788
+ mcpExtra,
658
789
  ...lastInitDirs,
659
790
  ]) {
660
791
  fs.rmSync(dir, { recursive: true, force: true });
@@ -154,6 +154,60 @@ try {
154
154
  assert.equal(fs.existsSync(path.join(mavisDir, '.minimax')), false);
155
155
  fs.rmSync(mavisDir, { recursive: true, force: true });
156
156
 
157
+ // OpenCode re-init unions preset instruction paths and fills missing bash keys.
158
+ const freshOc = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-oc-fresh-'));
159
+ init(freshOc, 'opencode', 'next');
160
+ const freshOcJson = readJson(path.join(freshOc, 'opencode.json'));
161
+ assert.ok(Array.isArray(freshOcJson.instructions), 'fresh opencode.json should have instructions');
162
+ assert.ok(freshOcJson.instructions.includes('.opencode/AGENTS.md'));
163
+ assert.ok(freshOcJson.permission, 'fresh opencode.json should have permission');
164
+ assert.ok(freshOcJson.permission.bash, 'fresh opencode.json should have permission.bash');
165
+ assert.equal(freshOcJson.permission.bash['git commit *'], 'deny');
166
+ assert.equal(freshOcJson.permission.bash['git push *'], 'deny');
167
+ assert.equal(freshOcJson.permission.bash['npx jest*'], 'deny');
168
+ const presetInstructions = freshOcJson.instructions.slice();
169
+ const presetBash = { ...freshOcJson.permission.bash };
170
+ fs.rmSync(freshOc, { recursive: true, force: true });
171
+
172
+ const repeatOc = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-oc-repeat-'));
173
+ init(repeatOc, 'opencode', 'next');
174
+ const consumerInstructions = ['.opencode/AGENTS.md', 'CONSUMER-RULE.md'];
175
+ const consumerBash = { '*': 'allow', 'git push *': 'allow', 'rm -rf /': 'deny' };
176
+ writeJson(path.join(repeatOc, 'opencode.json'), {
177
+ $schema: 'https://opencode.ai/config.json',
178
+ instructions: consumerInstructions,
179
+ permission: { bash: consumerBash },
180
+ mcp: { context7: { type: 'local', command: ['npx', '-y', '@upstash/context7-mcp@4.0.2'] } },
181
+ customNote: true,
182
+ });
183
+ init(repeatOc, 'opencode', 'next');
184
+ const preserved = readJson(path.join(repeatOc, 'opencode.json'));
185
+ assert.deepEqual(
186
+ preserved.instructions,
187
+ [...consumerInstructions, ...presetInstructions.filter((item) => !consumerInstructions.includes(item))],
188
+ 'preset instruction paths are unioned; consumer extras stay first',
189
+ );
190
+ assert.equal(preserved.permission.bash['git push *'], 'allow', 'consumer bash override wins');
191
+ assert.equal(preserved.permission.bash['rm -rf /'], 'deny', 'consumer extra bash key stays');
192
+ assert.equal(preserved.permission.bash['git commit *'], presetBash['git commit *'], 'missing preset bash key is filled');
193
+ assert.equal(preserved.customNote, true, 'consumer custom keys preserved');
194
+ fs.rmSync(repeatOc, { recursive: true, force: true });
195
+
196
+ const emptyOc = fs.mkdtempSync(path.join(os.tmpdir(), 'ai-rules-oc-empty-'));
197
+ init(emptyOc, 'opencode', 'next');
198
+ writeJson(path.join(emptyOc, 'opencode.json'), {
199
+ $schema: 'https://opencode.ai/config.json',
200
+ instructions: [],
201
+ permission: {},
202
+ customNote: true,
203
+ });
204
+ init(emptyOc, 'opencode', 'next');
205
+ const filled = readJson(path.join(emptyOc, 'opencode.json'));
206
+ assert.deepEqual(filled.instructions, presetInstructions, 'empty instructions receive the preset list');
207
+ assert.deepEqual(filled.permission.bash, presetBash, 'missing bash object receives the preset map');
208
+ assert.equal(filled.customNote, true);
209
+ fs.rmSync(emptyOc, { recursive: true, force: true });
210
+
157
211
  console.log('test-cli-mcp-merge: ok');
158
212
  } finally {
159
213
  fs.rmSync(tmp, { recursive: true, force: true });
@@ -11,7 +11,7 @@ import { getStackProfile } from './lib/stack-platform-profiles.mjs';
11
11
 
12
12
  const scriptDirectory = path.dirname(fileURLToPath(import.meta.url));
13
13
  const presetsRoot = path.join(scriptDirectory, '..', 'presets');
14
- const LINE_CAP = 170;
14
+ const LINE_CAP = 200;
15
15
  const PLATFORM_SENTINELS = ['.mavis/AGENTS.md', 'status.json', '~/.minimax'];
16
16
 
17
17
  function nonemptyLines(text) {
@@ -10,7 +10,7 @@ import { getStackProfile } from './lib/stack-platform-profiles.mjs';
10
10
 
11
11
  const scriptDirectory = path.dirname(fileURLToPath(import.meta.url));
12
12
  const presetsRoot = path.join(scriptDirectory, '..', 'presets');
13
- const LINE_CAP = 170;
13
+ const LINE_CAP = 200;
14
14
  const PLATFORM_SENTINELS = ['.opencode/AGENTS.md', 'status.json'];
15
15
 
16
16
  function nonemptyLines(text) {