@bonesofspring/ai-rules 0.2.13 → 0.2.15

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 (908) hide show
  1. package/CHANGELOG.md +36 -1
  2. package/README.md +6 -2
  3. package/bin/cli.js +4 -0
  4. package/package.json +2 -1
  5. package/presets/_shared/README.md +1 -1
  6. package/presets/_shared/core/agent-team/agent-team-intake.md +2 -2
  7. package/presets/_shared/core/agent-team/agent-team-orchestrator.md +4 -4
  8. package/presets/_shared/core/architecture/feature-delivery-workflow.md +27 -27
  9. package/presets/_shared/core/architecture/reference-features.template.md +23 -23
  10. package/presets/_shared/core/meta/preset-layering.md +12 -12
  11. package/presets/_shared/core/meta/preset-no-cross-stack-leakage.md +16 -2
  12. package/presets/_shared/core/meta/preset-pr-checklist.md +6 -6
  13. package/presets/_shared/core/meta/preset-token-budget.md +3 -3
  14. package/presets/_shared/core/meta/preset-twin-sync.md +4 -0
  15. package/presets/_shared/core/quality/code-quality-and-refactoring.md +19 -19
  16. package/presets/_shared/core/quality/design-guidance.md +54 -54
  17. package/presets/_shared/core/review/code-review-mr.md +4 -4
  18. package/presets/_shared/core/review/technical-retro.md +3 -3
  19. package/presets/claude/go/MCP.md +7 -7
  20. package/presets/claude/go/README.md +3 -3
  21. package/presets/claude/go/agents/README.md +2 -2
  22. package/presets/claude/go/agents/build-verifier.md +1 -1
  23. package/presets/claude/go/agents/task-router.md +13 -13
  24. package/presets/claude/go/commands/README.md +8 -8
  25. package/presets/claude/go/commands/feature-continue.md +21 -21
  26. package/presets/claude/go/commands/feature-start.md +16 -16
  27. package/presets/claude/go/commands/task-continue.md +14 -14
  28. package/presets/claude/go/commands/task.md +32 -32
  29. package/presets/claude/go/commands/technical-retro.md +38 -38
  30. package/presets/claude/go/rules/architecture/boundaries.md +10 -10
  31. package/presets/claude/go/rules/stack/README.md +1 -1
  32. package/presets/claude/go/rules/stack/go-app-core.md +11 -11
  33. package/presets/claude/go/rules/tooling-and-review/README.md +1 -1
  34. package/presets/claude/go/rules/tooling-and-review/agent-team-intake.md +2 -2
  35. package/presets/claude/go/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  36. package/presets/claude/go/rules/tooling-and-review/code-quality.md +21 -20
  37. package/presets/claude/go/rules/tooling-and-review/code-review.md +4 -4
  38. package/presets/claude/go/rules/tooling-and-review/design-guidance.md +54 -54
  39. package/presets/claude/go/rules/tooling-and-review/post-change-test.md +1 -1
  40. package/presets/claude/go/rules/tooling-and-review/preset-layering.md +12 -12
  41. package/presets/claude/go/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  42. package/presets/claude/go/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  43. package/presets/claude/go/rules/tooling-and-review/preset-token-budget.md +3 -3
  44. package/presets/claude/go/rules/tooling-and-review/preset-twin-sync.md +4 -0
  45. package/presets/claude/go/rules/tooling-and-review/technical-retro.md +3 -3
  46. package/presets/claude/go/team/README.md +1 -1
  47. package/presets/claude/ios-swift/CLAUDE.md +16 -16
  48. package/presets/claude/ios-swift/MCP.md +10 -8
  49. package/presets/claude/ios-swift/README.md +8 -8
  50. package/presets/claude/ios-swift/agents/README.md +11 -11
  51. package/presets/claude/ios-swift/agents/build-verifier.md +2 -2
  52. package/presets/claude/ios-swift/agents/feature-developer.md +1 -1
  53. package/presets/claude/ios-swift/agents/task-analyst.md +1 -1
  54. package/presets/claude/ios-swift/agents/task-router.md +18 -18
  55. package/presets/claude/ios-swift/commands/README.md +48 -10
  56. package/presets/claude/ios-swift/commands/feature-continue.md +9 -41
  57. package/presets/claude/ios-swift/commands/feature-start.md +19 -16
  58. package/presets/claude/ios-swift/commands/task-continue.md +14 -14
  59. package/presets/claude/ios-swift/commands/task.md +33 -33
  60. package/presets/claude/ios-swift/commands/technical-retro.md +61 -38
  61. package/presets/claude/ios-swift/rules/README.md +7 -7
  62. package/presets/claude/ios-swift/rules/api-and-data/README.md +1 -1
  63. package/presets/claude/ios-swift/rules/api-and-data/networking.md +31 -31
  64. package/presets/claude/ios-swift/rules/api-and-data/persistence.md +13 -13
  65. package/presets/claude/ios-swift/rules/architecture/README.md +1 -1
  66. package/presets/claude/ios-swift/rules/architecture/boundaries.md +20 -20
  67. package/presets/claude/ios-swift/rules/architecture/feature-delivery.md +31 -30
  68. package/presets/claude/ios-swift/rules/architecture/module-public-api.md +11 -11
  69. package/presets/claude/ios-swift/rules/architecture/reference-features.md +25 -22
  70. package/presets/claude/ios-swift/rules/stack/README.md +1 -1
  71. package/presets/claude/ios-swift/rules/stack/ios-app-core.md +10 -10
  72. package/presets/claude/ios-swift/rules/stack/swift-conventions.md +17 -17
  73. package/presets/claude/ios-swift/rules/testing/README.md +1 -1
  74. package/presets/claude/ios-swift/rules/testing/ui.md +27 -27
  75. package/presets/claude/ios-swift/rules/testing/unit.md +25 -25
  76. package/presets/claude/ios-swift/rules/tooling-and-review/README.md +5 -2
  77. package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-intake.md +2 -2
  78. package/presets/claude/ios-swift/rules/tooling-and-review/agent-team-orchestrator.md +51 -21
  79. package/presets/claude/ios-swift/rules/tooling-and-review/code-quality.md +25 -24
  80. package/presets/claude/ios-swift/rules/tooling-and-review/code-review.md +40 -39
  81. package/presets/claude/ios-swift/rules/tooling-and-review/design-guidance.md +54 -54
  82. package/presets/claude/ios-swift/rules/tooling-and-review/post-change-build.md +18 -18
  83. package/presets/claude/ios-swift/rules/tooling-and-review/preset-layering.md +12 -12
  84. package/presets/claude/ios-swift/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  85. package/presets/claude/ios-swift/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  86. package/presets/claude/ios-swift/rules/tooling-and-review/preset-token-budget.md +3 -3
  87. package/presets/claude/ios-swift/rules/tooling-and-review/preset-twin-sync.md +4 -0
  88. package/presets/claude/ios-swift/rules/tooling-and-review/security-ios.md +14 -14
  89. package/presets/claude/ios-swift/rules/tooling-and-review/technical-retro.md +4 -4
  90. package/presets/claude/ios-swift/rules/tooling-and-review/xcode-tooling.md +11 -11
  91. package/presets/claude/ios-swift/rules/ui-and-accessibility/README.md +1 -1
  92. package/presets/claude/ios-swift/rules/ui-and-accessibility/navigation.md +13 -13
  93. package/presets/claude/ios-swift/rules/ui-and-accessibility/swiftui.md +39 -39
  94. package/presets/claude/ios-swift/rules/ui-and-accessibility/viewmodels.md +24 -24
  95. package/presets/claude/ios-swift/skills/README.md +3 -3
  96. package/presets/claude/ios-swift/team/README.md +6 -2
  97. package/presets/claude/java/MCP.md +5 -5
  98. package/presets/claude/java/agents/README.md +2 -2
  99. package/presets/claude/java/agents/build-verifier.md +1 -1
  100. package/presets/claude/java/agents/task-router.md +13 -13
  101. package/presets/claude/java/commands/README.md +8 -8
  102. package/presets/claude/java/commands/feature-continue.md +21 -21
  103. package/presets/claude/java/commands/feature-start.md +16 -16
  104. package/presets/claude/java/commands/task-continue.md +14 -14
  105. package/presets/claude/java/commands/task.md +32 -32
  106. package/presets/claude/java/commands/technical-retro.md +38 -38
  107. package/presets/claude/java/rules/architecture/boundaries.md +10 -10
  108. package/presets/claude/java/rules/stack/README.md +1 -1
  109. package/presets/claude/java/rules/stack/java-app-core.md +9 -9
  110. package/presets/claude/java/rules/tooling-and-review/README.md +1 -1
  111. package/presets/claude/java/rules/tooling-and-review/agent-team-intake.md +2 -2
  112. package/presets/claude/java/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  113. package/presets/claude/java/rules/tooling-and-review/code-quality.md +21 -20
  114. package/presets/claude/java/rules/tooling-and-review/code-review.md +5 -4
  115. package/presets/claude/java/rules/tooling-and-review/design-guidance.md +55 -54
  116. package/presets/claude/java/rules/tooling-and-review/post-change-test.md +1 -1
  117. package/presets/claude/java/rules/tooling-and-review/preset-layering.md +12 -12
  118. package/presets/claude/java/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  119. package/presets/claude/java/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  120. package/presets/claude/java/rules/tooling-and-review/preset-token-budget.md +3 -3
  121. package/presets/claude/java/rules/tooling-and-review/preset-twin-sync.md +4 -0
  122. package/presets/claude/java/rules/tooling-and-review/technical-retro.md +3 -3
  123. package/presets/claude/java/team/README.md +1 -1
  124. package/presets/claude/mcp-ts/MCP.md +5 -5
  125. package/presets/claude/mcp-ts/agents/build-verifier.md +1 -1
  126. package/presets/claude/mcp-ts/agents/task-router.md +7 -7
  127. package/presets/claude/mcp-ts/commands/README.md +1 -1
  128. package/presets/claude/mcp-ts/commands/feature-continue.md +8 -8
  129. package/presets/claude/mcp-ts/commands/feature-start.md +17 -17
  130. package/presets/claude/mcp-ts/commands/task-continue.md +14 -14
  131. package/presets/claude/mcp-ts/commands/task.md +32 -32
  132. package/presets/claude/mcp-ts/commands/technical-retro.md +54 -54
  133. package/presets/claude/mcp-ts/rules/architecture/mcp-server-boundaries.md +2 -2
  134. package/presets/claude/mcp-ts/rules/stack/mcp-ts-app-core.md +9 -9
  135. package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-intake.md +3 -3
  136. package/presets/claude/mcp-ts/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  137. package/presets/claude/mcp-ts/rules/tooling-and-review/code-quality.md +21 -20
  138. package/presets/claude/mcp-ts/rules/tooling-and-review/code-review.md +5 -4
  139. package/presets/claude/mcp-ts/rules/tooling-and-review/design-guidance.md +55 -54
  140. package/presets/claude/mcp-ts/rules/tooling-and-review/post-change-test.md +1 -1
  141. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-layering.md +12 -12
  142. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  143. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  144. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-token-budget.md +3 -3
  145. package/presets/claude/mcp-ts/rules/tooling-and-review/preset-twin-sync.md +4 -0
  146. package/presets/claude/mcp-ts/rules/tooling-and-review/technical-retro.md +3 -3
  147. package/presets/claude/next/CLAUDE.md +17 -17
  148. package/presets/claude/next/MCP.md +8 -8
  149. package/presets/claude/next/README.md +16 -16
  150. package/presets/claude/next/agents/README.md +19 -19
  151. package/presets/claude/next/agents/build-verifier.md +3 -3
  152. package/presets/claude/next/agents/feature-developer.md +1 -1
  153. package/presets/claude/next/agents/task-analyst.md +1 -1
  154. package/presets/claude/next/agents/task-router.md +16 -16
  155. package/presets/claude/next/commands/README.md +9 -9
  156. package/presets/claude/next/commands/feature-continue.md +21 -21
  157. package/presets/claude/next/commands/feature-start.md +16 -16
  158. package/presets/claude/next/commands/task-continue.md +14 -14
  159. package/presets/claude/next/commands/task.md +33 -33
  160. package/presets/claude/next/commands/technical-retro.md +38 -38
  161. package/presets/claude/next/rules/README.md +12 -12
  162. package/presets/claude/next/rules/api-and-data/README.md +6 -6
  163. package/presets/claude/next/rules/api-and-data/api-services.md +42 -42
  164. package/presets/claude/next/rules/api-and-data/http-client.md +22 -21
  165. package/presets/claude/next/rules/api-and-data/store-rtk.md +60 -60
  166. package/presets/claude/next/rules/architecture/README.md +8 -8
  167. package/presets/claude/next/rules/architecture/architecture-boundaries-ui.md +6 -6
  168. package/presets/claude/next/rules/architecture/architecture-boundaries.md +44 -44
  169. package/presets/claude/next/rules/architecture/feature-delivery-workflow.md +39 -39
  170. package/presets/claude/next/rules/architecture/layer-barrel-exports.md +30 -29
  171. package/presets/claude/next/rules/architecture/public-imports.md +13 -13
  172. package/presets/claude/next/rules/architecture/reference-features.md +16 -16
  173. package/presets/claude/next/rules/stack/README.md +9 -9
  174. package/presets/claude/next/rules/stack/arrow-functions.md +7 -7
  175. package/presets/claude/next/rules/stack/navigation-router-ui.md +6 -6
  176. package/presets/claude/next/rules/stack/navigation-router.md +37 -37
  177. package/presets/claude/next/rules/stack/next-app-core.md +17 -17
  178. package/presets/claude/next/rules/stack/next-app-router.md +17 -17
  179. package/presets/claude/next/rules/stack/no-type-assertion.md +28 -28
  180. package/presets/claude/next/rules/stack/types-jsdoc.md +31 -20
  181. package/presets/claude/next/rules/testing/README.md +5 -5
  182. package/presets/claude/next/rules/testing/playwright-agents.md +1 -1
  183. package/presets/claude/next/rules/testing/tests-e2e-structure.md +48 -47
  184. package/presets/claude/next/rules/testing/tests-unit.md +50 -51
  185. package/presets/claude/next/rules/tooling-and-review/README.md +9 -9
  186. package/presets/claude/next/rules/tooling-and-review/agent-team-intake.md +2 -2
  187. package/presets/claude/next/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  188. package/presets/claude/next/rules/tooling-and-review/code-quality.md +25 -24
  189. package/presets/claude/next/rules/tooling-and-review/code-review-mr.md +4 -4
  190. package/presets/claude/next/rules/tooling-and-review/design-guidance.md +54 -54
  191. package/presets/claude/next/rules/tooling-and-review/package-manager.md +7 -7
  192. package/presets/claude/next/rules/tooling-and-review/post-change-lint.md +22 -22
  193. package/presets/claude/next/rules/tooling-and-review/preset-layering.md +12 -12
  194. package/presets/claude/next/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  195. package/presets/claude/next/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  196. package/presets/claude/next/rules/tooling-and-review/preset-token-budget.md +3 -3
  197. package/presets/claude/next/rules/tooling-and-review/preset-twin-sync.md +4 -0
  198. package/presets/claude/next/rules/tooling-and-review/technical-retro.md +4 -4
  199. package/presets/claude/next/rules/ui-and-accessibility/README.md +7 -7
  200. package/presets/claude/next/rules/ui-and-accessibility/css-property-order.md +3 -3
  201. package/presets/claude/next/rules/ui-and-accessibility/no-props-spread.md +18 -18
  202. package/presets/claude/next/rules/ui-and-accessibility/react-a11y-coding.md +20 -20
  203. package/presets/claude/next/rules/ui-and-accessibility/react-ui.md +63 -63
  204. package/presets/claude/next/skills/README.md +4 -4
  205. package/presets/claude/next/skills/feature-delivery/SKILL.md +1 -1
  206. package/presets/claude/next/team/README.md +2 -2
  207. package/presets/claude/nuxt/CLAUDE.md +39 -0
  208. package/presets/claude/nuxt/MCP.md +16 -0
  209. package/presets/claude/nuxt/README.md +39 -0
  210. package/presets/claude/nuxt/REPO_AGENTS.md +49 -0
  211. package/presets/claude/nuxt/agents/README.md +206 -0
  212. package/presets/claude/nuxt/agents/accessibility-reviewer.md +59 -0
  213. package/presets/claude/nuxt/agents/api-contract-reviewer.md +63 -0
  214. package/presets/claude/nuxt/agents/build-verifier.md +89 -0
  215. package/presets/claude/nuxt/agents/ci-investigator.md +60 -0
  216. package/presets/claude/nuxt/agents/code-reviewer.md +62 -0
  217. package/presets/claude/nuxt/agents/codebase-analyzer.md +28 -0
  218. package/presets/claude/nuxt/agents/debugger.md +65 -0
  219. package/presets/claude/nuxt/agents/feature-developer.md +59 -0
  220. package/presets/claude/nuxt/agents/migration-specialist.md +67 -0
  221. package/presets/claude/nuxt/agents/performance-auditor.md +66 -0
  222. package/presets/claude/nuxt/agents/playwright-test-generator.md +75 -0
  223. package/presets/claude/nuxt/agents/playwright-test-healer.md +61 -0
  224. package/presets/claude/nuxt/agents/playwright-test-planner.md +67 -0
  225. package/presets/claude/nuxt/agents/qa-tester.md +54 -0
  226. package/presets/claude/nuxt/agents/security-reviewer.md +60 -0
  227. package/presets/claude/nuxt/agents/solution-architect.md +68 -0
  228. package/presets/claude/nuxt/agents/task-analyst.md +109 -0
  229. package/presets/claude/nuxt/agents/task-router.md +140 -0
  230. package/presets/claude/nuxt/agents/tech-writer.md +54 -0
  231. package/presets/claude/nuxt/agents/unit-test-generator.md +37 -0
  232. package/presets/claude/nuxt/agents/unit-test-healer.md +38 -0
  233. package/presets/claude/nuxt/agents/unit-test-planner.md +60 -0
  234. package/presets/claude/nuxt/commands/README.md +51 -0
  235. package/presets/claude/nuxt/commands/feature-continue.md +19 -0
  236. package/presets/claude/nuxt/commands/feature-start.md +33 -0
  237. package/presets/claude/nuxt/commands/task-continue.md +50 -0
  238. package/presets/claude/nuxt/commands/task.md +56 -0
  239. package/presets/claude/nuxt/commands/technical-retro.md +85 -0
  240. package/presets/claude/nuxt/hooks/README.md +14 -0
  241. package/presets/claude/nuxt/hooks/chain-team-phases.sh +723 -0
  242. package/presets/claude/nuxt/hooks/examples/README.md +18 -0
  243. package/presets/claude/nuxt/hooks/examples/format-edited.example.sh +11 -0
  244. package/presets/claude/nuxt/hooks/examples/secret-guard.example.sh +10 -0
  245. package/presets/claude/nuxt/hooks/examples/test-on-save.example.sh +8 -0
  246. package/presets/claude/nuxt/hooks/guard-shell-command.sh +77 -0
  247. package/presets/claude/nuxt/mcp.json +20 -0
  248. package/presets/claude/nuxt/rules/README.md +90 -0
  249. package/presets/claude/nuxt/rules/anti-hallucination/vue-nuxt-anti-hallucination.md +72 -0
  250. package/presets/claude/nuxt/rules/api-and-data/README.md +9 -0
  251. package/presets/claude/nuxt/rules/api-and-data/api-services.md +77 -0
  252. package/presets/claude/nuxt/rules/api-and-data/http-client.md +16 -0
  253. package/presets/claude/nuxt/rules/api-and-data/store-pinia.md +68 -0
  254. package/presets/claude/nuxt/rules/architecture/README.md +12 -0
  255. package/presets/claude/nuxt/rules/architecture/architecture-boundaries-ui.md +16 -0
  256. package/presets/claude/nuxt/rules/architecture/architecture-boundaries.md +99 -0
  257. package/presets/claude/nuxt/rules/architecture/feature-delivery-workflow.md +89 -0
  258. package/presets/claude/nuxt/rules/architecture/layer-barrel-exports.md +72 -0
  259. package/presets/claude/nuxt/rules/architecture/public-imports.md +61 -0
  260. package/presets/claude/nuxt/rules/architecture/reference-features.md +50 -0
  261. package/presets/claude/nuxt/rules/stack/README.md +12 -0
  262. package/presets/claude/nuxt/rules/stack/navigation-router-ui.md +14 -0
  263. package/presets/claude/nuxt/rules/stack/navigation-router.md +59 -0
  264. package/presets/claude/nuxt/rules/stack/no-type-assertion.md +62 -0
  265. package/presets/claude/nuxt/rules/stack/nuxt-app-core.md +44 -0
  266. package/presets/claude/nuxt/rules/stack/nuxt-pages-routing.md +39 -0
  267. package/presets/claude/nuxt/rules/stack/script-setup-conventions.md +12 -0
  268. package/presets/claude/nuxt/rules/stack/types-jsdoc.md +41 -0
  269. package/presets/claude/nuxt/rules/testing/README.md +11 -0
  270. package/presets/claude/nuxt/rules/testing/playwright-agents.md +78 -0
  271. package/presets/claude/nuxt/rules/testing/tests-e2e-structure.md +49 -0
  272. package/presets/claude/nuxt/rules/testing/tests-unit.md +75 -0
  273. package/presets/claude/nuxt/rules/tooling-and-review/README.md +15 -0
  274. package/presets/claude/nuxt/rules/tooling-and-review/agent-team-intake.md +16 -0
  275. package/presets/claude/nuxt/rules/tooling-and-review/agent-team-orchestrator.md +192 -0
  276. package/presets/claude/nuxt/rules/tooling-and-review/anti-sycophancy-discipline.md +34 -0
  277. package/presets/claude/nuxt/rules/tooling-and-review/code-quality.md +51 -0
  278. package/presets/claude/nuxt/rules/tooling-and-review/code-review-mr.md +64 -0
  279. package/presets/claude/nuxt/rules/tooling-and-review/design-guidance.md +115 -0
  280. package/presets/claude/nuxt/rules/tooling-and-review/package-manager.md +17 -0
  281. package/presets/claude/nuxt/rules/tooling-and-review/post-change-lint.md +44 -0
  282. package/presets/claude/nuxt/rules/tooling-and-review/preset-layering.md +32 -0
  283. package/presets/claude/nuxt/rules/tooling-and-review/preset-no-cross-stack-leakage.md +79 -0
  284. package/presets/claude/nuxt/rules/tooling-and-review/preset-pr-checklist.md +35 -0
  285. package/presets/claude/nuxt/rules/tooling-and-review/preset-token-budget.md +38 -0
  286. package/presets/claude/nuxt/rules/tooling-and-review/preset-twin-sync.md +50 -0
  287. package/presets/claude/nuxt/rules/tooling-and-review/security-nuxt.md +37 -0
  288. package/presets/claude/nuxt/rules/tooling-and-review/technical-retro.md +16 -0
  289. package/presets/claude/nuxt/rules/ui-and-accessibility/README.md +12 -0
  290. package/presets/claude/nuxt/rules/ui-and-accessibility/css-property-order.md +11 -0
  291. package/presets/claude/nuxt/rules/ui-and-accessibility/no-v-bind-spread.md +12 -0
  292. package/presets/claude/nuxt/rules/ui-and-accessibility/vue-a11y-coding.md +16 -0
  293. package/presets/claude/nuxt/rules/ui-and-accessibility/vue-ui.md +35 -0
  294. package/presets/claude/nuxt/skills/README.md +17 -0
  295. package/presets/claude/nuxt/skills/ci-investigation/SKILL.md +36 -0
  296. package/presets/claude/nuxt/skills/code-review/SKILL.md +38 -0
  297. package/presets/claude/nuxt/skills/debug-investigation/SKILL.md +32 -0
  298. package/presets/claude/nuxt/skills/feature-delivery/SKILL.md +34 -0
  299. package/presets/claude/nuxt/skills/playwright-e2e/SKILL.md +37 -0
  300. package/presets/claude/nuxt/skills/technical-retro/SKILL.md +54 -0
  301. package/presets/claude/nuxt/skills/unit-testing/SKILL.md +32 -0
  302. package/presets/claude/nuxt/skills/vue-performance/SKILL.md +53 -0
  303. package/presets/claude/nuxt/skills/write-adr/SKILL.md +41 -0
  304. package/presets/claude/nuxt/team/README.md +140 -0
  305. package/presets/claude/nuxt/team/conventions.md +21 -0
  306. package/presets/claude/nuxt/team/fixtures/artifact-manifest.example.json +61 -0
  307. package/presets/claude/nuxt/team/fixtures/bugfix-standard.json +25 -0
  308. package/presets/claude/nuxt/team/fixtures/feature-full.json +28 -0
  309. package/presets/claude/nuxt/team/fixtures/feature-light.json +27 -0
  310. package/presets/claude/nuxt/team/tasks/.gitkeep +1 -0
  311. package/presets/claude/php-hexagonal/MCP.md +7 -7
  312. package/presets/claude/php-hexagonal/agents/README.md +3 -3
  313. package/presets/claude/php-hexagonal/agents/build-verifier.md +1 -1
  314. package/presets/claude/php-hexagonal/agents/task-router.md +12 -12
  315. package/presets/claude/php-hexagonal/commands/README.md +9 -9
  316. package/presets/claude/php-hexagonal/commands/feature-continue.md +21 -21
  317. package/presets/claude/php-hexagonal/commands/feature-start.md +16 -16
  318. package/presets/claude/php-hexagonal/commands/task-continue.md +14 -14
  319. package/presets/claude/php-hexagonal/commands/task.md +32 -32
  320. package/presets/claude/php-hexagonal/commands/technical-retro.md +38 -38
  321. package/presets/claude/php-hexagonal/rules/architecture/boundaries.md +11 -10
  322. package/presets/claude/php-hexagonal/rules/stack/README.md +1 -1
  323. package/presets/claude/php-hexagonal/rules/stack/php-app-core.md +11 -10
  324. package/presets/claude/php-hexagonal/rules/tooling-and-review/README.md +1 -1
  325. package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-intake.md +2 -2
  326. package/presets/claude/php-hexagonal/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  327. package/presets/claude/php-hexagonal/rules/tooling-and-review/code-quality.md +21 -21
  328. package/presets/claude/php-hexagonal/rules/tooling-and-review/code-review.md +4 -4
  329. package/presets/claude/php-hexagonal/rules/tooling-and-review/design-guidance.md +54 -54
  330. package/presets/claude/php-hexagonal/rules/tooling-and-review/post-change-test.md +1 -1
  331. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-layering.md +12 -12
  332. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-no-cross-stack-leakage.md +16 -2
  333. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-pr-checklist.md +6 -6
  334. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-token-budget.md +3 -3
  335. package/presets/claude/php-hexagonal/rules/tooling-and-review/preset-twin-sync.md +4 -0
  336. package/presets/claude/php-hexagonal/rules/tooling-and-review/technical-retro.md +3 -3
  337. package/presets/claude/php-hexagonal/team/README.md +1 -1
  338. package/presets/claude/php-laravel/agents/README.md +3 -3
  339. package/presets/claude/php-laravel/agents/build-verifier.md +1 -1
  340. package/presets/claude/php-laravel/agents/task-router.md +14 -14
  341. package/presets/claude/php-laravel/commands/README.md +9 -9
  342. package/presets/claude/php-laravel/commands/feature-continue.md +21 -21
  343. package/presets/claude/php-laravel/commands/feature-start.md +16 -16
  344. package/presets/claude/php-laravel/commands/task-continue.md +14 -14
  345. package/presets/claude/php-laravel/commands/task.md +32 -32
  346. package/presets/claude/php-laravel/commands/technical-retro.md +38 -38
  347. package/presets/claude/php-laravel/rules/api-and-data/events-listeners.md +1 -1
  348. package/presets/claude/php-laravel/rules/architecture/boundaries.md +11 -11
  349. package/presets/claude/php-laravel/rules/stack/laravel-app-core.md +8 -8
  350. package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-intake.md +3 -2
  351. package/presets/claude/php-laravel/rules/tooling-and-review/agent-team-orchestrator.md +4 -4
  352. package/presets/claude/php-laravel/rules/tooling-and-review/code-quality.md +21 -20
  353. package/presets/claude/php-laravel/rules/tooling-and-review/code-review.md +4 -5
  354. package/presets/claude/php-laravel/rules/tooling-and-review/design-guidance.md +54 -54
  355. package/presets/claude/php-laravel/rules/tooling-and-review/post-change-test.md +1 -1
  356. package/presets/claude/php-laravel/rules/tooling-and-review/preset-layering.md +13 -12
  357. package/presets/claude/php-laravel/rules/tooling-and-review/preset-no-cross-stack-leakage.md +17 -2
  358. package/presets/claude/php-laravel/rules/tooling-and-review/preset-pr-checklist.md +7 -6
  359. package/presets/claude/php-laravel/rules/tooling-and-review/preset-token-budget.md +4 -3
  360. package/presets/claude/php-laravel/rules/tooling-and-review/preset-twin-sync.md +5 -0
  361. package/presets/claude/php-laravel/rules/tooling-and-review/technical-retro.md +4 -3
  362. package/presets/claude/php-laravel/team/README.md +1 -1
  363. package/presets/claude/svelte/CLAUDE.md +39 -0
  364. package/presets/claude/svelte/MCP.md +16 -0
  365. package/presets/claude/svelte/README.md +13 -0
  366. package/presets/claude/svelte/REPO_AGENTS.md +49 -0
  367. package/presets/claude/svelte/agents/README.md +206 -0
  368. package/presets/claude/svelte/agents/accessibility-reviewer.md +59 -0
  369. package/presets/claude/svelte/agents/api-contract-reviewer.md +63 -0
  370. package/presets/claude/svelte/agents/build-verifier.md +89 -0
  371. package/presets/claude/svelte/agents/ci-investigator.md +60 -0
  372. package/presets/claude/svelte/agents/code-reviewer.md +62 -0
  373. package/presets/claude/svelte/agents/codebase-analyzer.md +28 -0
  374. package/presets/claude/svelte/agents/debugger.md +65 -0
  375. package/presets/claude/svelte/agents/feature-developer.md +59 -0
  376. package/presets/claude/svelte/agents/migration-specialist.md +67 -0
  377. package/presets/claude/svelte/agents/performance-auditor.md +66 -0
  378. package/presets/claude/svelte/agents/playwright-test-generator.md +75 -0
  379. package/presets/claude/svelte/agents/playwright-test-healer.md +61 -0
  380. package/presets/claude/svelte/agents/playwright-test-planner.md +67 -0
  381. package/presets/claude/svelte/agents/qa-tester.md +54 -0
  382. package/presets/claude/svelte/agents/security-reviewer.md +60 -0
  383. package/presets/claude/svelte/agents/solution-architect.md +68 -0
  384. package/presets/claude/svelte/agents/task-analyst.md +109 -0
  385. package/presets/claude/svelte/agents/task-router.md +141 -0
  386. package/presets/claude/svelte/agents/tech-writer.md +54 -0
  387. package/presets/claude/svelte/agents/unit-test-generator.md +37 -0
  388. package/presets/claude/svelte/agents/unit-test-healer.md +38 -0
  389. package/presets/claude/svelte/agents/unit-test-planner.md +60 -0
  390. package/presets/claude/svelte/commands/README.md +51 -0
  391. package/presets/claude/svelte/commands/feature-continue.md +19 -0
  392. package/presets/claude/svelte/commands/feature-start.md +33 -0
  393. package/presets/claude/svelte/commands/task-continue.md +50 -0
  394. package/presets/claude/svelte/commands/task.md +56 -0
  395. package/presets/claude/svelte/commands/technical-retro.md +85 -0
  396. package/presets/claude/svelte/hooks/README.md +14 -0
  397. package/presets/claude/svelte/hooks/chain-team-phases.sh +723 -0
  398. package/presets/claude/svelte/hooks/examples/README.md +18 -0
  399. package/presets/claude/svelte/hooks/examples/format-edited.example.sh +13 -0
  400. package/presets/claude/svelte/hooks/examples/secret-guard.example.sh +10 -0
  401. package/presets/claude/svelte/hooks/examples/test-on-save.example.sh +14 -0
  402. package/presets/claude/svelte/hooks/guard-shell-command.sh +77 -0
  403. package/presets/claude/svelte/mcp.json +20 -0
  404. package/presets/claude/svelte/rules/README.md +90 -0
  405. package/presets/claude/svelte/rules/anti-hallucination/svelte-sveltekit-anti-hallucination.md +71 -0
  406. package/presets/claude/svelte/rules/api-and-data/README.md +9 -0
  407. package/presets/claude/svelte/rules/api-and-data/api-services.md +45 -0
  408. package/presets/claude/svelte/rules/api-and-data/http-client.md +17 -0
  409. package/presets/claude/svelte/rules/api-and-data/store-svelte.md +67 -0
  410. package/presets/claude/svelte/rules/architecture/README.md +12 -0
  411. package/presets/claude/svelte/rules/architecture/architecture-boundaries-ui.md +16 -0
  412. package/presets/claude/svelte/rules/architecture/architecture-boundaries.md +65 -0
  413. package/presets/claude/svelte/rules/architecture/feature-delivery-workflow.md +61 -0
  414. package/presets/claude/svelte/rules/architecture/layer-barrel-exports.md +73 -0
  415. package/presets/claude/svelte/rules/architecture/public-imports.md +43 -0
  416. package/presets/claude/svelte/rules/architecture/reference-features.md +50 -0
  417. package/presets/claude/svelte/rules/stack/README.md +12 -0
  418. package/presets/claude/svelte/rules/stack/navigation-router-ui.md +26 -0
  419. package/presets/claude/svelte/rules/stack/navigation-router.md +41 -0
  420. package/presets/claude/svelte/rules/stack/no-type-assertion.md +59 -0
  421. package/presets/claude/svelte/rules/stack/svelte-app-core.md +44 -0
  422. package/presets/claude/svelte/rules/stack/svelte-script-conventions.md +33 -0
  423. package/presets/claude/svelte/rules/stack/sveltekit-routing.md +40 -0
  424. package/presets/claude/svelte/rules/stack/types-jsdoc.md +42 -0
  425. package/presets/claude/svelte/rules/testing/README.md +11 -0
  426. package/presets/claude/svelte/rules/testing/playwright-agents.md +80 -0
  427. package/presets/claude/svelte/rules/testing/tests-e2e-structure.md +50 -0
  428. package/presets/claude/svelte/rules/testing/tests-unit.md +40 -0
  429. package/presets/claude/svelte/rules/tooling-and-review/README.md +15 -0
  430. package/presets/claude/svelte/rules/tooling-and-review/agent-team-intake.md +17 -0
  431. package/presets/claude/svelte/rules/tooling-and-review/agent-team-orchestrator.md +193 -0
  432. package/presets/claude/svelte/rules/tooling-and-review/anti-sycophancy-discipline.md +29 -0
  433. package/presets/claude/svelte/rules/tooling-and-review/code-quality.md +51 -0
  434. package/presets/claude/svelte/rules/tooling-and-review/code-review-mr.md +64 -0
  435. package/presets/claude/svelte/rules/tooling-and-review/design-guidance.md +110 -0
  436. package/presets/claude/svelte/rules/tooling-and-review/package-manager.md +17 -0
  437. package/presets/claude/svelte/rules/tooling-and-review/post-change-lint.md +44 -0
  438. package/presets/claude/svelte/rules/tooling-and-review/preset-layering.md +35 -0
  439. package/presets/claude/svelte/rules/tooling-and-review/preset-no-cross-stack-leakage.md +82 -0
  440. package/presets/claude/svelte/rules/tooling-and-review/preset-pr-checklist.md +38 -0
  441. package/presets/claude/svelte/rules/tooling-and-review/preset-token-budget.md +40 -0
  442. package/presets/claude/svelte/rules/tooling-and-review/preset-twin-sync.md +53 -0
  443. package/presets/claude/svelte/rules/tooling-and-review/security-sveltekit.md +41 -0
  444. package/presets/claude/svelte/rules/tooling-and-review/technical-retro.md +17 -0
  445. package/presets/claude/svelte/rules/ui-and-accessibility/README.md +12 -0
  446. package/presets/claude/svelte/rules/ui-and-accessibility/css-property-order.md +12 -0
  447. package/presets/claude/svelte/rules/ui-and-accessibility/no-rest-props-spread.md +32 -0
  448. package/presets/claude/svelte/rules/ui-and-accessibility/svelte-a11y-coding.md +28 -0
  449. package/presets/claude/svelte/rules/ui-and-accessibility/svelte-ui.md +38 -0
  450. package/presets/claude/svelte/skills/README.md +17 -0
  451. package/presets/claude/svelte/skills/ci-investigation/SKILL.md +36 -0
  452. package/presets/claude/svelte/skills/code-review/SKILL.md +38 -0
  453. package/presets/claude/svelte/skills/debug-investigation/SKILL.md +32 -0
  454. package/presets/claude/svelte/skills/feature-delivery/SKILL.md +34 -0
  455. package/presets/claude/svelte/skills/playwright-e2e/SKILL.md +37 -0
  456. package/presets/claude/svelte/skills/svelte-performance/SKILL.md +52 -0
  457. package/presets/claude/svelte/skills/technical-retro/SKILL.md +54 -0
  458. package/presets/claude/svelte/skills/unit-testing/SKILL.md +32 -0
  459. package/presets/claude/svelte/skills/write-adr/SKILL.md +41 -0
  460. package/presets/claude/svelte/team/README.md +140 -0
  461. package/presets/claude/svelte/team/conventions.md +21 -0
  462. package/presets/claude/svelte/team/fixtures/artifact-manifest.example.json +61 -0
  463. package/presets/claude/svelte/team/fixtures/bugfix-standard.json +25 -0
  464. package/presets/claude/svelte/team/fixtures/feature-full.json +28 -0
  465. package/presets/claude/svelte/team/fixtures/feature-light.json +27 -0
  466. package/presets/claude/svelte/team/tasks/.gitkeep +1 -0
  467. package/presets/cursor/go/AGENTS.md +10 -10
  468. package/presets/cursor/go/MCP.md +7 -7
  469. package/presets/cursor/go/README.md +4 -4
  470. package/presets/cursor/go/agents/README.md +3 -3
  471. package/presets/cursor/go/agents/build-verifier.md +1 -1
  472. package/presets/cursor/go/agents/task-router.md +13 -13
  473. package/presets/cursor/go/commands/README.md +23 -23
  474. package/presets/cursor/go/commands/feature-continue.md +8 -8
  475. package/presets/cursor/go/commands/feature-start.md +17 -17
  476. package/presets/cursor/go/commands/task-continue.md +14 -14
  477. package/presets/cursor/go/commands/task.md +32 -32
  478. package/presets/cursor/go/commands/technical-retro.md +49 -49
  479. package/presets/cursor/go/rules/README.md +3 -3
  480. package/presets/cursor/go/rules/agent-team-intake.mdc +2 -2
  481. package/presets/cursor/go/rules/agent-team-orchestrator.mdc +4 -4
  482. package/presets/cursor/go/rules/architecture-boundaries.mdc +10 -10
  483. package/presets/cursor/go/rules/code-quality-and-refactoring.mdc +21 -20
  484. package/presets/cursor/go/rules/code-review-mr.mdc +4 -4
  485. package/presets/cursor/go/rules/design-guidance.mdc +54 -54
  486. package/presets/cursor/go/rules/go-app-core.mdc +11 -11
  487. package/presets/cursor/go/rules/post-change-test.mdc +1 -1
  488. package/presets/cursor/go/rules/preset-layering.mdc +12 -12
  489. package/presets/cursor/go/rules/preset-no-cross-stack-leakage.mdc +16 -2
  490. package/presets/cursor/go/rules/preset-pr-checklist.mdc +6 -6
  491. package/presets/cursor/go/rules/preset-token-budget.mdc +3 -3
  492. package/presets/cursor/go/rules/preset-twin-sync.mdc +4 -0
  493. package/presets/cursor/go/rules/technical-retro.mdc +3 -3
  494. package/presets/cursor/go/team/README.md +1 -1
  495. package/presets/cursor/ios-swift/AGENTS.md +20 -20
  496. package/presets/cursor/ios-swift/MCP.md +8 -8
  497. package/presets/cursor/ios-swift/README.md +9 -9
  498. package/presets/cursor/ios-swift/agents/README.md +7 -7
  499. package/presets/cursor/ios-swift/agents/build-verifier.md +2 -2
  500. package/presets/cursor/ios-swift/agents/feature-developer.md +1 -1
  501. package/presets/cursor/ios-swift/agents/task-analyst.md +1 -1
  502. package/presets/cursor/ios-swift/agents/task-router.md +16 -16
  503. package/presets/cursor/ios-swift/commands/README.md +23 -23
  504. package/presets/cursor/ios-swift/commands/feature-continue.md +8 -8
  505. package/presets/cursor/ios-swift/commands/feature-start.md +17 -17
  506. package/presets/cursor/ios-swift/commands/task-continue.md +14 -14
  507. package/presets/cursor/ios-swift/commands/task.md +33 -33
  508. package/presets/cursor/ios-swift/commands/technical-retro.md +50 -50
  509. package/presets/cursor/ios-swift/rules/README.md +23 -23
  510. package/presets/cursor/ios-swift/rules/agent-team-intake.mdc +2 -2
  511. package/presets/cursor/ios-swift/rules/agent-team-orchestrator.mdc +2 -2
  512. package/presets/cursor/ios-swift/rules/architecture-boundaries.mdc +20 -20
  513. package/presets/cursor/ios-swift/rules/code-quality-and-refactoring.mdc +25 -24
  514. package/presets/cursor/ios-swift/rules/code-review-mr.mdc +40 -40
  515. package/presets/cursor/ios-swift/rules/design-guidance.mdc +54 -54
  516. package/presets/cursor/ios-swift/rules/feature-delivery-workflow.mdc +30 -30
  517. package/presets/cursor/ios-swift/rules/ios-app-core.mdc +10 -10
  518. package/presets/cursor/ios-swift/rules/module-public-api.mdc +11 -11
  519. package/presets/cursor/ios-swift/rules/navigation-coordinators.mdc +13 -13
  520. package/presets/cursor/ios-swift/rules/networking-services.mdc +31 -31
  521. package/presets/cursor/ios-swift/rules/persistence-data.mdc +13 -13
  522. package/presets/cursor/ios-swift/rules/post-change-build.mdc +18 -18
  523. package/presets/cursor/ios-swift/rules/preset-layering.mdc +12 -12
  524. package/presets/cursor/ios-swift/rules/preset-no-cross-stack-leakage.mdc +16 -2
  525. package/presets/cursor/ios-swift/rules/preset-pr-checklist.mdc +6 -6
  526. package/presets/cursor/ios-swift/rules/preset-token-budget.mdc +3 -3
  527. package/presets/cursor/ios-swift/rules/preset-twin-sync.mdc +4 -0
  528. package/presets/cursor/ios-swift/rules/reference-features.mdc +22 -22
  529. package/presets/cursor/ios-swift/rules/security-ios.mdc +14 -14
  530. package/presets/cursor/ios-swift/rules/state-and-viewmodels.mdc +24 -24
  531. package/presets/cursor/ios-swift/rules/swift-conventions.mdc +17 -17
  532. package/presets/cursor/ios-swift/rules/swiftui-ui.mdc +39 -39
  533. package/presets/cursor/ios-swift/rules/technical-retro.mdc +4 -4
  534. package/presets/cursor/ios-swift/rules/tests-ui.mdc +27 -26
  535. package/presets/cursor/ios-swift/rules/tests-unit.mdc +25 -25
  536. package/presets/cursor/ios-swift/rules/xcode-tooling.mdc +11 -11
  537. package/presets/cursor/ios-swift/skills/README.md +3 -3
  538. package/presets/cursor/ios-swift/team/README.md +1 -1
  539. package/presets/cursor/java/AGENTS.md +10 -10
  540. package/presets/cursor/java/MCP.md +6 -6
  541. package/presets/cursor/java/agents/README.md +3 -3
  542. package/presets/cursor/java/agents/build-verifier.md +1 -1
  543. package/presets/cursor/java/agents/task-router.md +13 -13
  544. package/presets/cursor/java/commands/README.md +23 -23
  545. package/presets/cursor/java/commands/feature-continue.md +8 -8
  546. package/presets/cursor/java/commands/feature-start.md +17 -17
  547. package/presets/cursor/java/commands/task-continue.md +14 -14
  548. package/presets/cursor/java/commands/task.md +32 -32
  549. package/presets/cursor/java/commands/technical-retro.md +49 -49
  550. package/presets/cursor/java/rules/README.md +2 -2
  551. package/presets/cursor/java/rules/agent-team-intake.mdc +2 -2
  552. package/presets/cursor/java/rules/agent-team-orchestrator.mdc +4 -4
  553. package/presets/cursor/java/rules/architecture-boundaries.mdc +10 -10
  554. package/presets/cursor/java/rules/code-quality-and-refactoring.mdc +21 -20
  555. package/presets/cursor/java/rules/code-review-mr.mdc +4 -4
  556. package/presets/cursor/java/rules/design-guidance.mdc +54 -54
  557. package/presets/cursor/java/rules/java-app-core.mdc +9 -9
  558. package/presets/cursor/java/rules/post-change-test.mdc +1 -1
  559. package/presets/cursor/java/rules/preset-layering.mdc +12 -12
  560. package/presets/cursor/java/rules/preset-no-cross-stack-leakage.mdc +16 -2
  561. package/presets/cursor/java/rules/preset-pr-checklist.mdc +6 -6
  562. package/presets/cursor/java/rules/preset-token-budget.mdc +3 -3
  563. package/presets/cursor/java/rules/preset-twin-sync.mdc +4 -0
  564. package/presets/cursor/java/rules/technical-retro.mdc +3 -3
  565. package/presets/cursor/java/team/README.md +1 -1
  566. package/presets/cursor/mcp-ts/AGENTS.md +6 -6
  567. package/presets/cursor/mcp-ts/MCP.md +5 -5
  568. package/presets/cursor/mcp-ts/agents/build-verifier.md +1 -1
  569. package/presets/cursor/mcp-ts/agents/task-router.md +7 -7
  570. package/presets/cursor/mcp-ts/commands/README.md +1 -1
  571. package/presets/cursor/mcp-ts/commands/feature-continue.md +8 -8
  572. package/presets/cursor/mcp-ts/commands/feature-start.md +17 -17
  573. package/presets/cursor/mcp-ts/commands/task-continue.md +14 -14
  574. package/presets/cursor/mcp-ts/commands/task.md +32 -32
  575. package/presets/cursor/mcp-ts/commands/technical-retro.md +50 -50
  576. package/presets/cursor/mcp-ts/rules/README.md +1 -1
  577. package/presets/cursor/mcp-ts/rules/agent-team-intake.mdc +3 -3
  578. package/presets/cursor/mcp-ts/rules/agent-team-orchestrator.mdc +4 -4
  579. package/presets/cursor/mcp-ts/rules/code-quality-and-refactoring.mdc +21 -20
  580. package/presets/cursor/mcp-ts/rules/code-review-mr.mdc +5 -4
  581. package/presets/cursor/mcp-ts/rules/design-guidance.mdc +55 -54
  582. package/presets/cursor/mcp-ts/rules/mcp-server-boundaries.mdc +2 -2
  583. package/presets/cursor/mcp-ts/rules/mcp-ts-app-core.mdc +9 -9
  584. package/presets/cursor/mcp-ts/rules/post-change-test.mdc +1 -1
  585. package/presets/cursor/mcp-ts/rules/preset-layering.mdc +12 -12
  586. package/presets/cursor/mcp-ts/rules/preset-no-cross-stack-leakage.mdc +16 -2
  587. package/presets/cursor/mcp-ts/rules/preset-pr-checklist.mdc +6 -6
  588. package/presets/cursor/mcp-ts/rules/preset-token-budget.mdc +3 -3
  589. package/presets/cursor/mcp-ts/rules/preset-twin-sync.mdc +4 -0
  590. package/presets/cursor/mcp-ts/rules/technical-retro.mdc +3 -3
  591. package/presets/cursor/next/AGENTS.md +15 -15
  592. package/presets/cursor/next/MCP.md +9 -9
  593. package/presets/cursor/next/README.md +9 -9
  594. package/presets/cursor/next/agents/README.md +22 -22
  595. package/presets/cursor/next/agents/build-verifier.md +3 -3
  596. package/presets/cursor/next/agents/feature-developer.md +1 -1
  597. package/presets/cursor/next/agents/task-analyst.md +1 -1
  598. package/presets/cursor/next/agents/task-router.md +16 -16
  599. package/presets/cursor/next/commands/README.md +22 -22
  600. package/presets/cursor/next/commands/feature-continue.md +8 -8
  601. package/presets/cursor/next/commands/feature-start.md +17 -17
  602. package/presets/cursor/next/commands/task-continue.md +14 -14
  603. package/presets/cursor/next/commands/task.md +33 -33
  604. package/presets/cursor/next/commands/technical-retro.md +49 -49
  605. package/presets/cursor/next/rules/README.md +52 -52
  606. package/presets/cursor/next/rules/agent-team-intake.mdc +2 -2
  607. package/presets/cursor/next/rules/agent-team-orchestrator.mdc +4 -4
  608. package/presets/cursor/next/rules/api-services.mdc +43 -43
  609. package/presets/cursor/next/rules/architecture-boundaries-ui.mdc +7 -7
  610. package/presets/cursor/next/rules/architecture-boundaries.mdc +45 -45
  611. package/presets/cursor/next/rules/arrow-functions.mdc +8 -8
  612. package/presets/cursor/next/rules/code-quality-and-refactoring.mdc +25 -24
  613. package/presets/cursor/next/rules/code-review-mr.mdc +5 -5
  614. package/presets/cursor/next/rules/css-property-order-stylelint.mdc +4 -4
  615. package/presets/cursor/next/rules/design-guidance.mdc +54 -54
  616. package/presets/cursor/next/rules/feature-delivery-workflow.mdc +43 -43
  617. package/presets/cursor/next/rules/http-client.mdc +23 -22
  618. package/presets/cursor/next/rules/layer-barrel-exports.mdc +31 -30
  619. package/presets/cursor/next/rules/navigation-router-stack.mdc +37 -37
  620. package/presets/cursor/next/rules/navigation-router-ui.mdc +7 -7
  621. package/presets/cursor/next/rules/next-app-core.mdc +16 -16
  622. package/presets/cursor/next/rules/next-app-router.mdc +17 -17
  623. package/presets/cursor/next/rules/no-props-spread.mdc +20 -20
  624. package/presets/cursor/next/rules/no-type-assertion-as-import-export.mdc +29 -29
  625. package/presets/cursor/next/rules/package-manager.mdc +8 -8
  626. package/presets/cursor/next/rules/post-change-lint.mdc +22 -22
  627. package/presets/cursor/next/rules/preset-layering.mdc +12 -12
  628. package/presets/cursor/next/rules/preset-no-cross-stack-leakage.mdc +16 -2
  629. package/presets/cursor/next/rules/preset-pr-checklist.mdc +6 -6
  630. package/presets/cursor/next/rules/preset-token-budget.mdc +3 -3
  631. package/presets/cursor/next/rules/preset-twin-sync.mdc +4 -0
  632. package/presets/cursor/next/rules/public-imports.mdc +14 -14
  633. package/presets/cursor/next/rules/react-a11y-coding.mdc +21 -21
  634. package/presets/cursor/next/rules/react-ui.mdc +66 -66
  635. package/presets/cursor/next/rules/reference-features.mdc +17 -17
  636. package/presets/cursor/next/rules/store-rtk.mdc +60 -60
  637. package/presets/cursor/next/rules/technical-retro.mdc +4 -4
  638. package/presets/cursor/next/rules/tests-e2e-structure.mdc +46 -46
  639. package/presets/cursor/next/rules/tests-unit.mdc +51 -52
  640. package/presets/cursor/next/rules/types-jsdoc.mdc +29 -22
  641. package/presets/cursor/next/skills/feature-delivery/SKILL.md +1 -1
  642. package/presets/cursor/next/team/README.md +2 -2
  643. package/presets/cursor/nuxt/AGENTS.md +39 -0
  644. package/presets/cursor/nuxt/BUGBOT.md +14 -0
  645. package/presets/cursor/nuxt/MCP.md +16 -0
  646. package/presets/cursor/nuxt/README.md +47 -0
  647. package/presets/cursor/nuxt/REPO_AGENTS.md +49 -0
  648. package/presets/cursor/nuxt/agents/README.md +206 -0
  649. package/presets/cursor/nuxt/agents/accessibility-reviewer.md +60 -0
  650. package/presets/cursor/nuxt/agents/api-contract-reviewer.md +64 -0
  651. package/presets/cursor/nuxt/agents/build-verifier.md +90 -0
  652. package/presets/cursor/nuxt/agents/ci-investigator.md +61 -0
  653. package/presets/cursor/nuxt/agents/code-reviewer.md +63 -0
  654. package/presets/cursor/nuxt/agents/codebase-analyzer.md +28 -0
  655. package/presets/cursor/nuxt/agents/debugger.md +66 -0
  656. package/presets/cursor/nuxt/agents/feature-developer.md +60 -0
  657. package/presets/cursor/nuxt/agents/migration-specialist.md +68 -0
  658. package/presets/cursor/nuxt/agents/performance-auditor.md +67 -0
  659. package/presets/cursor/nuxt/agents/playwright-test-generator.md +27 -0
  660. package/presets/cursor/nuxt/agents/playwright-test-healer.md +27 -0
  661. package/presets/cursor/nuxt/agents/playwright-test-planner.md +28 -0
  662. package/presets/cursor/nuxt/agents/qa-tester.md +55 -0
  663. package/presets/cursor/nuxt/agents/security-reviewer.md +61 -0
  664. package/presets/cursor/nuxt/agents/solution-architect.md +69 -0
  665. package/presets/cursor/nuxt/agents/task-analyst.md +110 -0
  666. package/presets/cursor/nuxt/agents/task-router.md +141 -0
  667. package/presets/cursor/nuxt/agents/tech-writer.md +55 -0
  668. package/presets/cursor/nuxt/agents/unit-test-generator.md +38 -0
  669. package/presets/cursor/nuxt/agents/unit-test-healer.md +39 -0
  670. package/presets/cursor/nuxt/agents/unit-test-planner.md +61 -0
  671. package/presets/cursor/nuxt/commands/README.md +51 -0
  672. package/presets/cursor/nuxt/commands/feature-continue.md +19 -0
  673. package/presets/cursor/nuxt/commands/feature-start.md +33 -0
  674. package/presets/cursor/nuxt/commands/task-continue.md +50 -0
  675. package/presets/cursor/nuxt/commands/task.md +56 -0
  676. package/presets/cursor/nuxt/commands/technical-retro.md +85 -0
  677. package/presets/cursor/nuxt/hooks/README.md +12 -0
  678. package/presets/cursor/nuxt/hooks/chain-team-phases.sh +727 -0
  679. package/presets/cursor/nuxt/hooks/examples/README.md +18 -0
  680. package/presets/cursor/nuxt/hooks/examples/format-edited.example.sh +11 -0
  681. package/presets/cursor/nuxt/hooks/examples/secret-guard.example.sh +10 -0
  682. package/presets/cursor/nuxt/hooks/examples/test-on-save.example.sh +8 -0
  683. package/presets/cursor/nuxt/hooks/guard-shell-command.sh +77 -0
  684. package/presets/cursor/nuxt/hooks.json +17 -0
  685. package/presets/cursor/nuxt/mcp.json +19 -0
  686. package/presets/cursor/nuxt/rules/README.md +108 -0
  687. package/presets/cursor/nuxt/rules/agent-team-intake.mdc +16 -0
  688. package/presets/cursor/nuxt/rules/agent-team-orchestrator.mdc +192 -0
  689. package/presets/cursor/nuxt/rules/anti-sycophancy-discipline.mdc +30 -0
  690. package/presets/cursor/nuxt/rules/api-services.mdc +79 -0
  691. package/presets/cursor/nuxt/rules/architecture-boundaries-ui.mdc +15 -0
  692. package/presets/cursor/nuxt/rules/architecture-boundaries.mdc +97 -0
  693. package/presets/cursor/nuxt/rules/code-quality-and-refactoring.mdc +52 -0
  694. package/presets/cursor/nuxt/rules/code-review-mr.mdc +58 -0
  695. package/presets/cursor/nuxt/rules/css-property-order-stylelint.mdc +12 -0
  696. package/presets/cursor/nuxt/rules/design-guidance.mdc +111 -0
  697. package/presets/cursor/nuxt/rules/feature-delivery-workflow.mdc +83 -0
  698. package/presets/cursor/nuxt/rules/http-client.mdc +15 -0
  699. package/presets/cursor/nuxt/rules/layer-barrel-exports.mdc +74 -0
  700. package/presets/cursor/nuxt/rules/navigation-router-stack.mdc +61 -0
  701. package/presets/cursor/nuxt/rules/navigation-router-ui.mdc +16 -0
  702. package/presets/cursor/nuxt/rules/no-type-assertion-as-import-export.mdc +60 -0
  703. package/presets/cursor/nuxt/rules/no-v-bind-spread.mdc +13 -0
  704. package/presets/cursor/nuxt/rules/nuxt-app-core.mdc +45 -0
  705. package/presets/cursor/nuxt/rules/nuxt-pages-routing.mdc +37 -0
  706. package/presets/cursor/nuxt/rules/package-manager.mdc +18 -0
  707. package/presets/cursor/nuxt/rules/playwright-agents.mdc +80 -0
  708. package/presets/cursor/nuxt/rules/post-change-lint.mdc +42 -0
  709. package/presets/cursor/nuxt/rules/preset-layering.mdc +36 -0
  710. package/presets/cursor/nuxt/rules/preset-no-cross-stack-leakage.mdc +83 -0
  711. package/presets/cursor/nuxt/rules/preset-pr-checklist.mdc +39 -0
  712. package/presets/cursor/nuxt/rules/preset-token-budget.mdc +41 -0
  713. package/presets/cursor/nuxt/rules/preset-twin-sync.mdc +54 -0
  714. package/presets/cursor/nuxt/rules/public-imports.mdc +62 -0
  715. package/presets/cursor/nuxt/rules/reference-features.mdc +49 -0
  716. package/presets/cursor/nuxt/rules/script-setup-conventions.mdc +13 -0
  717. package/presets/cursor/nuxt/rules/security-nuxt.mdc +34 -0
  718. package/presets/cursor/nuxt/rules/store-pinia.mdc +68 -0
  719. package/presets/cursor/nuxt/rules/technical-retro.mdc +16 -0
  720. package/presets/cursor/nuxt/rules/tests-e2e-structure.mdc +50 -0
  721. package/presets/cursor/nuxt/rules/tests-unit.mdc +77 -0
  722. package/presets/cursor/nuxt/rules/types-jsdoc.mdc +42 -0
  723. package/presets/cursor/nuxt/rules/vue-a11y-coding.mdc +15 -0
  724. package/presets/cursor/nuxt/rules/vue-nuxt-anti-hallucination.mdc +68 -0
  725. package/presets/cursor/nuxt/rules/vue-ui.mdc +33 -0
  726. package/presets/cursor/nuxt/skills/README.md +17 -0
  727. package/presets/cursor/nuxt/skills/ci-investigation/SKILL.md +36 -0
  728. package/presets/cursor/nuxt/skills/code-review/SKILL.md +38 -0
  729. package/presets/cursor/nuxt/skills/debug-investigation/SKILL.md +32 -0
  730. package/presets/cursor/nuxt/skills/feature-delivery/SKILL.md +34 -0
  731. package/presets/cursor/nuxt/skills/playwright-e2e/SKILL.md +37 -0
  732. package/presets/cursor/nuxt/skills/technical-retro/SKILL.md +54 -0
  733. package/presets/cursor/nuxt/skills/unit-testing/SKILL.md +32 -0
  734. package/presets/cursor/nuxt/skills/vue-performance/SKILL.md +53 -0
  735. package/presets/cursor/nuxt/skills/write-adr/SKILL.md +41 -0
  736. package/presets/cursor/nuxt/team/README.md +140 -0
  737. package/presets/cursor/nuxt/team/conventions.md +21 -0
  738. package/presets/cursor/nuxt/team/fixtures/artifact-manifest.example.json +61 -0
  739. package/presets/cursor/nuxt/team/fixtures/bugfix-standard.json +25 -0
  740. package/presets/cursor/nuxt/team/fixtures/feature-full.json +28 -0
  741. package/presets/cursor/nuxt/team/fixtures/feature-light.json +27 -0
  742. package/presets/cursor/nuxt/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
  743. package/presets/cursor/nuxt/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
  744. package/presets/cursor/nuxt/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
  745. package/presets/cursor/nuxt/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
  746. package/presets/cursor/nuxt/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
  747. package/presets/cursor/nuxt/team/fixtures/metrics.example.json +54 -0
  748. package/presets/cursor/nuxt/team/tasks/.gitkeep +0 -0
  749. package/presets/cursor/php-hexagonal/AGENTS.md +11 -11
  750. package/presets/cursor/php-hexagonal/MCP.md +7 -7
  751. package/presets/cursor/php-hexagonal/agents/README.md +4 -4
  752. package/presets/cursor/php-hexagonal/agents/build-verifier.md +1 -1
  753. package/presets/cursor/php-hexagonal/agents/task-router.md +12 -12
  754. package/presets/cursor/php-hexagonal/commands/README.md +25 -25
  755. package/presets/cursor/php-hexagonal/commands/feature-continue.md +8 -8
  756. package/presets/cursor/php-hexagonal/commands/feature-start.md +17 -17
  757. package/presets/cursor/php-hexagonal/commands/task-continue.md +14 -14
  758. package/presets/cursor/php-hexagonal/commands/task.md +32 -32
  759. package/presets/cursor/php-hexagonal/commands/technical-retro.md +49 -49
  760. package/presets/cursor/php-hexagonal/rules/README.md +2 -2
  761. package/presets/cursor/php-hexagonal/rules/agent-team-intake.mdc +2 -2
  762. package/presets/cursor/php-hexagonal/rules/agent-team-orchestrator.mdc +4 -4
  763. package/presets/cursor/php-hexagonal/rules/architecture-boundaries.mdc +10 -10
  764. package/presets/cursor/php-hexagonal/rules/code-quality-and-refactoring.mdc +20 -20
  765. package/presets/cursor/php-hexagonal/rules/code-review-mr.mdc +4 -4
  766. package/presets/cursor/php-hexagonal/rules/design-guidance.mdc +54 -54
  767. package/presets/cursor/php-hexagonal/rules/php-app-core.mdc +10 -10
  768. package/presets/cursor/php-hexagonal/rules/post-change-test.mdc +1 -1
  769. package/presets/cursor/php-hexagonal/rules/preset-layering.mdc +12 -12
  770. package/presets/cursor/php-hexagonal/rules/preset-no-cross-stack-leakage.mdc +16 -2
  771. package/presets/cursor/php-hexagonal/rules/preset-pr-checklist.mdc +6 -6
  772. package/presets/cursor/php-hexagonal/rules/preset-token-budget.mdc +3 -3
  773. package/presets/cursor/php-hexagonal/rules/preset-twin-sync.mdc +4 -0
  774. package/presets/cursor/php-hexagonal/rules/technical-retro.mdc +3 -3
  775. package/presets/cursor/php-hexagonal/team/README.md +1 -1
  776. package/presets/cursor/php-laravel/AGENTS.md +10 -10
  777. package/presets/cursor/php-laravel/agents/README.md +4 -4
  778. package/presets/cursor/php-laravel/agents/build-verifier.md +1 -1
  779. package/presets/cursor/php-laravel/agents/task-router.md +14 -14
  780. package/presets/cursor/php-laravel/commands/README.md +25 -25
  781. package/presets/cursor/php-laravel/commands/feature-continue.md +8 -8
  782. package/presets/cursor/php-laravel/commands/feature-start.md +17 -17
  783. package/presets/cursor/php-laravel/commands/task-continue.md +14 -14
  784. package/presets/cursor/php-laravel/commands/task.md +32 -32
  785. package/presets/cursor/php-laravel/commands/technical-retro.md +50 -50
  786. package/presets/cursor/php-laravel/rules/README.md +2 -2
  787. package/presets/cursor/php-laravel/rules/agent-team-intake.mdc +2 -2
  788. package/presets/cursor/php-laravel/rules/agent-team-orchestrator.mdc +4 -4
  789. package/presets/cursor/php-laravel/rules/architecture-boundaries.mdc +11 -11
  790. package/presets/cursor/php-laravel/rules/code-quality-and-refactoring.mdc +20 -20
  791. package/presets/cursor/php-laravel/rules/code-review-mr.mdc +4 -5
  792. package/presets/cursor/php-laravel/rules/design-guidance.mdc +54 -54
  793. package/presets/cursor/php-laravel/rules/events-listeners.mdc +1 -1
  794. package/presets/cursor/php-laravel/rules/laravel-app-core.mdc +8 -8
  795. package/presets/cursor/php-laravel/rules/post-change-test.mdc +1 -1
  796. package/presets/cursor/php-laravel/rules/preset-layering.mdc +12 -12
  797. package/presets/cursor/php-laravel/rules/preset-no-cross-stack-leakage.mdc +16 -2
  798. package/presets/cursor/php-laravel/rules/preset-pr-checklist.mdc +6 -6
  799. package/presets/cursor/php-laravel/rules/preset-token-budget.mdc +3 -3
  800. package/presets/cursor/php-laravel/rules/preset-twin-sync.mdc +4 -0
  801. package/presets/cursor/php-laravel/rules/technical-retro.mdc +3 -3
  802. package/presets/cursor/php-laravel/team/README.md +1 -1
  803. package/presets/cursor/svelte/AGENTS.md +39 -0
  804. package/presets/cursor/svelte/BUGBOT.md +14 -0
  805. package/presets/cursor/svelte/MCP.md +16 -0
  806. package/presets/cursor/svelte/README.md +47 -0
  807. package/presets/cursor/svelte/REPO_AGENTS.md +49 -0
  808. package/presets/cursor/svelte/agents/README.md +206 -0
  809. package/presets/cursor/svelte/agents/accessibility-reviewer.md +60 -0
  810. package/presets/cursor/svelte/agents/api-contract-reviewer.md +64 -0
  811. package/presets/cursor/svelte/agents/build-verifier.md +90 -0
  812. package/presets/cursor/svelte/agents/ci-investigator.md +61 -0
  813. package/presets/cursor/svelte/agents/code-reviewer.md +63 -0
  814. package/presets/cursor/svelte/agents/codebase-analyzer.md +28 -0
  815. package/presets/cursor/svelte/agents/debugger.md +66 -0
  816. package/presets/cursor/svelte/agents/feature-developer.md +60 -0
  817. package/presets/cursor/svelte/agents/migration-specialist.md +68 -0
  818. package/presets/cursor/svelte/agents/performance-auditor.md +67 -0
  819. package/presets/cursor/svelte/agents/playwright-test-generator.md +27 -0
  820. package/presets/cursor/svelte/agents/playwright-test-healer.md +27 -0
  821. package/presets/cursor/svelte/agents/playwright-test-planner.md +28 -0
  822. package/presets/cursor/svelte/agents/qa-tester.md +55 -0
  823. package/presets/cursor/svelte/agents/security-reviewer.md +61 -0
  824. package/presets/cursor/svelte/agents/solution-architect.md +69 -0
  825. package/presets/cursor/svelte/agents/task-analyst.md +110 -0
  826. package/presets/cursor/svelte/agents/task-router.md +141 -0
  827. package/presets/cursor/svelte/agents/tech-writer.md +55 -0
  828. package/presets/cursor/svelte/agents/unit-test-generator.md +38 -0
  829. package/presets/cursor/svelte/agents/unit-test-healer.md +39 -0
  830. package/presets/cursor/svelte/agents/unit-test-planner.md +61 -0
  831. package/presets/cursor/svelte/commands/README.md +51 -0
  832. package/presets/cursor/svelte/commands/feature-continue.md +19 -0
  833. package/presets/cursor/svelte/commands/feature-start.md +33 -0
  834. package/presets/cursor/svelte/commands/task-continue.md +50 -0
  835. package/presets/cursor/svelte/commands/task.md +56 -0
  836. package/presets/cursor/svelte/commands/technical-retro.md +85 -0
  837. package/presets/cursor/svelte/hooks/README.md +12 -0
  838. package/presets/cursor/svelte/hooks/chain-team-phases.sh +727 -0
  839. package/presets/cursor/svelte/hooks/examples/README.md +18 -0
  840. package/presets/cursor/svelte/hooks/examples/format-edited.example.sh +13 -0
  841. package/presets/cursor/svelte/hooks/examples/secret-guard.example.sh +10 -0
  842. package/presets/cursor/svelte/hooks/examples/test-on-save.example.sh +14 -0
  843. package/presets/cursor/svelte/hooks/guard-shell-command.sh +77 -0
  844. package/presets/cursor/svelte/hooks.json +17 -0
  845. package/presets/cursor/svelte/mcp.json +19 -0
  846. package/presets/cursor/svelte/rules/README.md +86 -0
  847. package/presets/cursor/svelte/rules/agent-team-intake.mdc +16 -0
  848. package/presets/cursor/svelte/rules/agent-team-orchestrator.mdc +192 -0
  849. package/presets/cursor/svelte/rules/anti-sycophancy-discipline.mdc +30 -0
  850. package/presets/cursor/svelte/rules/api-services.mdc +46 -0
  851. package/presets/cursor/svelte/rules/architecture-boundaries-ui.mdc +15 -0
  852. package/presets/cursor/svelte/rules/architecture-boundaries.mdc +61 -0
  853. package/presets/cursor/svelte/rules/code-quality-and-refactoring.mdc +52 -0
  854. package/presets/cursor/svelte/rules/code-review-mr.mdc +58 -0
  855. package/presets/cursor/svelte/rules/css-property-order-stylelint.mdc +12 -0
  856. package/presets/cursor/svelte/rules/design-guidance.mdc +111 -0
  857. package/presets/cursor/svelte/rules/feature-delivery-workflow.mdc +55 -0
  858. package/presets/cursor/svelte/rules/http-client.mdc +16 -0
  859. package/presets/cursor/svelte/rules/layer-barrel-exports.mdc +74 -0
  860. package/presets/cursor/svelte/rules/navigation-router-stack.mdc +40 -0
  861. package/presets/cursor/svelte/rules/navigation-router-ui.mdc +25 -0
  862. package/presets/cursor/svelte/rules/no-rest-props-spread.mdc +32 -0
  863. package/presets/cursor/svelte/rules/no-type-assertion-as-import-export.mdc +60 -0
  864. package/presets/cursor/svelte/rules/package-manager.mdc +18 -0
  865. package/presets/cursor/svelte/rules/playwright-agents.mdc +80 -0
  866. package/presets/cursor/svelte/rules/post-change-lint.mdc +42 -0
  867. package/presets/cursor/svelte/rules/preset-layering.mdc +36 -0
  868. package/presets/cursor/svelte/rules/preset-no-cross-stack-leakage.mdc +83 -0
  869. package/presets/cursor/svelte/rules/preset-pr-checklist.mdc +39 -0
  870. package/presets/cursor/svelte/rules/preset-token-budget.mdc +41 -0
  871. package/presets/cursor/svelte/rules/preset-twin-sync.mdc +54 -0
  872. package/presets/cursor/svelte/rules/public-imports.mdc +45 -0
  873. package/presets/cursor/svelte/rules/reference-features.mdc +51 -0
  874. package/presets/cursor/svelte/rules/security-sveltekit.mdc +38 -0
  875. package/presets/cursor/svelte/rules/store-svelte.mdc +66 -0
  876. package/presets/cursor/svelte/rules/svelte-a11y-coding.mdc +27 -0
  877. package/presets/cursor/svelte/rules/svelte-app-core.mdc +45 -0
  878. package/presets/cursor/svelte/rules/svelte-script-conventions.mdc +33 -0
  879. package/presets/cursor/svelte/rules/svelte-sveltekit-anti-hallucination.mdc +69 -0
  880. package/presets/cursor/svelte/rules/svelte-ui.mdc +37 -0
  881. package/presets/cursor/svelte/rules/sveltekit-routing.mdc +39 -0
  882. package/presets/cursor/svelte/rules/technical-retro.mdc +16 -0
  883. package/presets/cursor/svelte/rules/tests-e2e-structure.mdc +50 -0
  884. package/presets/cursor/svelte/rules/tests-unit.mdc +42 -0
  885. package/presets/cursor/svelte/rules/types-jsdoc.mdc +42 -0
  886. package/presets/cursor/svelte/skills/README.md +17 -0
  887. package/presets/cursor/svelte/skills/ci-investigation/SKILL.md +36 -0
  888. package/presets/cursor/svelte/skills/code-review/SKILL.md +38 -0
  889. package/presets/cursor/svelte/skills/debug-investigation/SKILL.md +32 -0
  890. package/presets/cursor/svelte/skills/feature-delivery/SKILL.md +34 -0
  891. package/presets/cursor/svelte/skills/playwright-e2e/SKILL.md +37 -0
  892. package/presets/cursor/svelte/skills/svelte-performance/SKILL.md +52 -0
  893. package/presets/cursor/svelte/skills/technical-retro/SKILL.md +54 -0
  894. package/presets/cursor/svelte/skills/unit-testing/SKILL.md +32 -0
  895. package/presets/cursor/svelte/skills/write-adr/SKILL.md +41 -0
  896. package/presets/cursor/svelte/team/README.md +140 -0
  897. package/presets/cursor/svelte/team/conventions.md +21 -0
  898. package/presets/cursor/svelte/team/fixtures/artifact-manifest.example.json +61 -0
  899. package/presets/cursor/svelte/team/fixtures/bugfix-standard.json +25 -0
  900. package/presets/cursor/svelte/team/fixtures/feature-full.json +28 -0
  901. package/presets/cursor/svelte/team/fixtures/feature-light.json +27 -0
  902. package/presets/cursor/svelte/team/fixtures/metrics-scenarios/tasks/human-gate/metrics.json +69 -0
  903. package/presets/cursor/svelte/team/fixtures/metrics-scenarios/tasks/missing-ledger/status.json +5 -0
  904. package/presets/cursor/svelte/team/fixtures/metrics-scenarios/tasks/parallel-receipts/metrics.json +79 -0
  905. package/presets/cursor/svelte/team/fixtures/metrics-scenarios/tasks/serial-retry/metrics.json +124 -0
  906. package/presets/cursor/svelte/team/fixtures/metrics-scenarios/tasks/validation-failed/metrics.json +124 -0
  907. package/presets/cursor/svelte/team/fixtures/metrics.example.json +54 -0
  908. package/presets/cursor/svelte/team/tasks/.gitkeep +0 -0
@@ -0,0 +1,73 @@
1
+ ---
2
+ description: Two-level barrel exports for layers with a regulated public API
3
+ paths:
4
+ - **/index.ts
5
+ ---
6
+
7
+ # Barrel exports for layers with a public API
8
+
9
+ ## When to apply
10
+
11
+ For **any layer** (directory, package, bounded context) that has:
12
+
13
+ - a **root barrel** — single import point for external consumers;
14
+ - deep imports into the layer **forbidden** from outside (ESLint `no-restricted-imports`, `public-imports.mdc` rules).
15
+
16
+ Example alias/entry points across projects: `@/api`, `@/types`, `@/core`, `@/store`, `packages/foo`.
17
+
18
+ ## Two barrel levels
19
+
20
+ 1. **Local** — `index.ts` of a module/feature inside the layer.
21
+ 2. **Root public API** — layer barrel (e.g. `src/<layer>/index.ts`).
22
+
23
+ **Inside** the layer — relative imports and paths between submodules. **Outside** — only the root barrel and **explicitly allowed** secondary entry points (if fixed in project rules, e.g. `@/types/enums`).
24
+
25
+ ## What to re-export outward
26
+
27
+ Only symbols that **must be available** to layer consumers: public functions/services/facades, contract types, constants and helpers needed by other layers or tests.
28
+
29
+ **Do not re-export:** internal adapters, mappers, transport details, intermediate objects used to assemble a facade inside the layer.
30
+
31
+ Grouping in the root barrel — **per repository convention** (orient on neighboring modules of the same layer).
32
+
33
+ ## Agent checklist (required)
34
+
35
+ When adding or substantially extending a **module inside a regulated layer**:
36
+
37
+ 1. Identify the layer, its **root barrel**, and extra entry points (`public-imports.mdc`).
38
+ 2. Create/update the **local** `index.ts` — public symbols only.
39
+ 3. If the layer has a **facade/aggregator** (`*ApiService.ts`, `rootReducer`, …) — wire the module there.
40
+ 4. Add a **re-export** of new public symbols in the layer’s **root barrel**.
41
+ 5. **Verify:** grep for the symbol name or path `./<Module>` in the root barrel; no deep imports from outside the layer.
42
+
43
+ The module is **not ready** until the checklist passes.
44
+
45
+ ## How to find regulated layers in the repository
46
+
47
+ 1. `public-imports.mdc` rules in `.claude/rules/`.
48
+ 2. ESLint `no-restricted-imports` — `@/<layer>/*` patterns with barrel exception.
49
+ 3. `architecture-boundaries.mdc`, project README.
50
+
51
+ ## In this repository
52
+
53
+ | Layer | Root barrel | Import rule |
54
+ |-------|-------------|-------------|
55
+ | API | `api/index.ts` | `public-imports.mdc` |
56
+ | Types | `types/index.ts` | `public-imports.mdc` (+ `@/types/enums`) |
57
+ | Core | `core/index.ts` | ESLint: `@/core/index` |
58
+
59
+ Two-level illustration (API): local `services/.../<Feature>/index.ts` → facade `*ApiService.ts` → `api/index.ts`.
60
+ ## Incorrect
61
+
62
+ ```ts
63
+ // api/index.ts — leaking internals
64
+ export { mapCardResponse } from './services/CardsApi/cardResponseMappers'
65
+ export { rawCardsClient } from './clients/rawCardsClient'
66
+ ```
67
+
68
+ ## Correct
69
+
70
+ ```ts
71
+ // api/index.ts — public facade only
72
+ export { cardsApi } from './services/CardsApi'
73
+ ```
@@ -0,0 +1,43 @@
1
+ ---
2
+ description: Import domain types and API only through public barrels ($lib/types, $lib/api)
3
+ paths:
4
+ - src/lib/components/**/*
5
+ - src/lib/stores/**/*
6
+ - src/lib/**/*
7
+ - src/routes/**/*
8
+ - src/lib/types/**/*
9
+ - src/lib/api/**/*
10
+ ---
11
+
12
+ # Public imports (`$lib/types`, `$lib/api`)
13
+
14
+ Preferred alias: **`$lib`**. Accept **`@/`** if consumer vite/tsconfig maps it. Respect `$app/*` / `$env/*` — do not invent modules.
15
+
16
+ ## `$lib/types` (or `@/types`)
17
+
18
+ - Public types API — barrel `src/lib/types/index.ts`; outside the layer — only `$lib/types` / `@/types`.
19
+ - Forbidden to bypass the barrel via deep imports of internal type files (except a project enum convention if present).
20
+ - Inside `src/lib/types/**` — relative imports.
21
+
22
+ ```typescript
23
+ // ✅
24
+ import type { TUserProfile } from '$lib/types'
25
+
26
+ // ❌
27
+ import type { TUserProfile } from '$lib/types/User.types'
28
+ ```
29
+
30
+ ## `$lib/api` (or `@/api`)
31
+
32
+ - Public API — barrel `src/lib/api/index.ts`. Outside `src/lib/api/**` — only `$lib/api` / `@/api`.
33
+ - Inside the layer — relative imports and `$lib/api/services/**` / `$lib/clients/**` as neighbors do.
34
+
35
+ ```typescript
36
+ // ✅
37
+ import { ordersApi } from '$lib/api'
38
+
39
+ // ❌
40
+ import { ordersApi } from '$lib/api/services/orders/orders.service'
41
+ ```
42
+
43
+ New public symbols — re-export in the barrel per **`layer-barrel-exports`**.
@@ -0,0 +1,50 @@
1
+ ---
2
+ description: Repository reference features — mirror their structure when implementing new work. Fill in paths after init in the target repo.
3
+ paths:
4
+ - src/lib/components/**/*
5
+ - src/lib/stores/**/*
6
+ - src/lib/api/**/*
7
+ - src/lib/types/**/*
8
+ - src/routes/**/*
9
+ ---
10
+
11
+ <!-- shared-core: architecture/reference-features.template.md -->
12
+
13
+ # Reference features
14
+
15
+ ## Stack notes
16
+
17
+ Before implementing, find a feature of the same type and **mirror its structure**; do not invent a new file organization.
18
+
19
+ Taxonomy / shared core: [`presets/_shared/README.md`](../../../../_shared/README.md) · [Preset contribution guide](../../../../docs/PRESET-CONTRIBUTION.md).
20
+
21
+ ## Reference table
22
+
23
+ Replace **TBD** with real paths after team agreement (or on `ai-rules init` in the target repo):
24
+
25
+ | Layer | Reference | What to copy |
26
+ |-------|-----------|--------------|
27
+ | UI route / page | **TBD** `src/routes/<example>/` | `+page.svelte`, `+page.ts`, layout nesting |
28
+ | UI component | **TBD** `src/lib/components/<Example>/` | `.svelte`, styles, barrel |
29
+ | Store | **TBD** `src/lib/stores/<example>.ts` | writable/derived or runes module, actions |
30
+ | API service | **TBD** `src/lib/api/services/<example>/` | service, mappers, barrel |
31
+ | Types module | **TBD** `src/lib/types/<example>/` | domain types, JSDoc, barrel export |
32
+ | Unit tests | **TBD** next to the reference mapper/service | `*.spec.ts`, describe/it naming |
33
+ | E2E area | **TBD** `tests/e2e/<Area>/` | `*.cases.md`, page objects, `_shared/` |
34
+
35
+ ## How to use
36
+
37
+ 1. Identify affected layers from `decomposition.md` or the task.
38
+ 2. Open the reference from the table (after paths are filled in).
39
+ 3. Mirror naming, file order, import patterns, and tests.
40
+ 4. If there is no reference — pick the **closest** existing feature in the same layer and record the choice in the handoff.
41
+
42
+ ## Living conventions
43
+
44
+ Post-init gotchas / patterns / decisions: **`.claude/team/conventions.md`** (and the twin tool path if both Cursor and Claude are installed). Consumer-owned; not always-on. See root `AGENTS.md` § Living conventions.
45
+
46
+ ## Related rules
47
+
48
+ - `code-quality-and-refactoring.mdc` — repeat patterns; no deep-import.
49
+ - `feature-delivery-workflow.mdc` — layer order.
50
+ - skill `feature-delivery` — end-to-end scenario.
@@ -0,0 +1,12 @@
1
+ # Stack (SvelteKit, Svelte 5, TypeScript)
2
+
3
+ Framework- and language-level rules.
4
+
5
+ | File | Contents | Loading |
6
+ |------|----------|---------|
7
+ | `svelte-app-core.md` | Stack, `src/routes/**` / `src/lib/**` structure, layers | session start |
8
+ | `svelte-script-conventions.md` | `<script lang="ts">` conventions | `paths: **/*.{svelte,ts}` |
9
+ | `no-type-assertion.md` | Limit `as` on module boundaries | on-demand |
10
+ | `navigation-router-ui.md` | Navigation in UI components (slim) | `paths: src/routes/**,src/hooks.server.ts,src/lib/components/**` |
11
+ | `navigation-router.md` | Full navigation stack audit (SvelteKit file-based routing) | `paths: src/routes/**,src/hooks.server.ts,svelte.config.*` |
12
+ | `types-jsdoc.md` | JSDoc in `types` | `paths: types/**/*.ts` |
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: SvelteKit link patterns in UI — a href, active state, prefetch
3
+ paths:
4
+ - src/lib/components/**/*
5
+ - src/routes/**/*
6
+ ---
7
+
8
+ # Navigation (UI)
9
+
10
+ - Prefer native **`<a href="…">`** (and design-system Link wrappers that render anchors).
11
+ - Active state: follow repo pattern (`page.url`, `$app/state` / `$app/stores` as version allows — verify).
12
+ - Prefetch: use Kit data-sveltekit-* attributes / patterns already in the repo — do not invent.
13
+ - Do not use `next/link`, `<NuxtLink>`, or `RouterLink` as defaults in this preset.
14
+ - Programmatic navigation from UI handlers → `goto` (`navigation-router-stack`).
15
+
16
+ ## Incorrect
17
+
18
+ ```svelte
19
+ <a on:click|preventDefault={() => location.href = '/x'}>Go</a>
20
+ ```
21
+
22
+ ## Correct
23
+
24
+ ```svelte
25
+ <a href="/x">Go</a>
26
+ ```
@@ -0,0 +1,41 @@
1
+ ---
2
+ description: SvelteKit navigation APIs — $app/navigation, goto, invalidate
3
+ paths:
4
+ - src/routes/**/*
5
+ - svelte.config.*
6
+ ---
7
+
8
+ # Navigation (stack)
9
+
10
+ For this preset the canon is **SvelteKit** (`svelte-app-core`, `sveltekit-routing`).
11
+
12
+ ## Check in the repo
13
+
14
+ 1. `package.json` workspace with `svelte.config.*` — `@sveltejs/kit` / `svelte` majors.
15
+ 2. How neighbors already navigate: `goto`, `invalidate`, `beforeNavigate`, `<a href>`, wrappers.
16
+ 3. Do not mix in Next (`next/navigation`) or Nuxt (`navigateTo`, `<NuxtLink>`) by default.
17
+
18
+ ## API
19
+
20
+ | Need | Prefer |
21
+ |------|--------|
22
+ | Programmatic navigate | `goto` from `$app/navigation` |
23
+ | Refresh load data | `invalidate` / `invalidateAll` |
24
+ | Guards | `beforeNavigate` / `afterNavigate` |
25
+ | Links in UI | see `navigation-router-ui` |
26
+
27
+ Verify exports against installed `@sveltejs/kit` — mark `// VERIFY` if unsure (`svelte-sveltekit-anti-hallucination`).
28
+
29
+ ## Incorrect
30
+
31
+ ```ts
32
+ import { useRouter } from 'next/navigation'
33
+ await navigateTo('/items')
34
+ ```
35
+
36
+ ## Correct
37
+
38
+ ```ts
39
+ import { goto } from '$app/navigation'
40
+ await goto('/items')
41
+ ```
@@ -0,0 +1,59 @@
1
+ ---
2
+ description: Avoid type assertions via as at module boundaries (import/export)
3
+ paths:
4
+ - api/**/*
5
+ - src/lib/stores/**/*
6
+ - types/**/*
7
+ ---
8
+
9
+ # Do not use `as` for type assertion on export and import (except necessary cases)
10
+
11
+ ## What this is about
12
+
13
+ This is about TypeScript **type assertion**: expressions like `value as Type`.
14
+
15
+ **Not covered by this rule** (not assertion — module syntax):
16
+
17
+ - rename on export: `export { foo as bar }`, `export { default as Baz } from '...'`;
18
+ - rename on import: `import { foo as bar } from '...'`;
19
+ - `import type { Foo as Bar }` — type alias in a type import.
20
+
21
+ ## Requirement
22
+
23
+ - On the **public module boundary** (what is **exported** from a file / barrel, and what is immediately **assigned from imported symbols** with a forced cast) **do not use** `as Type` to “force-fit” types when normal typing would work.
24
+
25
+ ## Prefer instead of `as`
26
+
27
+ - an explicit annotation: `const x: T = ...` / `function f(): T`;
28
+ - **generics** on functions and classes;
29
+ - **`satisfies`** (when you need to check compatibility without narrowing to `any`);
30
+ - narrowing **`unknown`** after checks (type guards, `zod`, etc.);
31
+ - fixing **source types/DTOs/mappers**, not an assertion on the way out.
32
+
33
+ ## When `as` is allowed
34
+
35
+ - interaction with **untyped** or incorrectly typed external modules where there is no reasonable alternative;
36
+ - narrow spots after **validation**, if a type guard still cannot be expressed without noise (prefer guard/`satisfies` anyway);
37
+ - **`as const`** — when literal types are needed and wide inference breaks the contract (a separate mechanism; use on purpose, not as a substitute for API typing).
38
+ - a **`catch (error)`** block after HTTP via the shared client: prefer narrowing with **`instanceof`** on the **transport error class** from `@/types` (which one — follow the existing implementation) and work with the narrowed type; bare **`as` to the same type** — only if `instanceof` is unavailable (different throw source) and deliberately.
39
+
40
+ ## Examples
41
+
42
+ ```typescript
43
+ // ❌ Bad: assertion on exported API
44
+ export const config = loadRaw() as AppConfig
45
+
46
+ // ✅ Better: annotation + check or mapper
47
+ export const config: AppConfig = mapToAppConfig(loadRaw())
48
+
49
+ // ❌ Bad: immediately after import we “break” the type
50
+ import { getData } from './api'
51
+ export const data = getData() as MyDto[]
52
+
53
+ // ✅ Better: type getData / wrap with a type-safe function
54
+ ```
55
+
56
+ ## Agent requirement
57
+
58
+ On review and code generation **do not add** new `as Type` on exported entities and on the import → export chain without clear need; when possible fix the type contract at the source.
59
+ - In slices and services when handling API errors, first consider **`instanceof`** on the transport error class from `@/types` following existing code (`http-client.mdc`, `store-svelte.mdc`).
@@ -0,0 +1,44 @@
1
+ ---
2
+ description: Core principles, stack, and architecture for a SvelteKit app (preset)
3
+ ---
4
+
5
+ # Stack and environment
6
+
7
+ Concrete versions — **from `package.json` and configs in the target repository**. Preset frame: SvelteKit, Svelte 5 (primary), TypeScript; runner/e2e/mocks/UI/APM — as established in the repo.
8
+
9
+ # Project structure
10
+
11
+ | Path | Purpose |
12
+ |------|---------|
13
+ | `src/routes/**` | Routes, layouts, load, form actions (`+page`, `+layout`, `+server`) |
14
+ | `src/lib/components/**` | UI components (`.svelte`) |
15
+ | `src/lib/**` | Facades / utils (no Vue-style `composables/` tree) |
16
+ | `src/lib/stores/**` | Svelte stores + shared runes modules |
17
+ | `src/lib/api/**` | Client services + mappers (barrel) |
18
+ | `src/lib/clients/**` | HTTP (`fetch` wrapper) |
19
+ | `src/hooks.server.ts` / `src/hooks.client.ts` | App hooks |
20
+ | `src/lib/types/**` | Domain types (barrel) |
21
+ | `tests/e2e/**` | Playwright e2e |
22
+
23
+ **Aliases:** prefer `$lib`; respect `$app/*` / `$env/*` (do not invent symbols); accept `@/` if configured. Scripts cwd — **SvelteKit root** (where `svelte.config.*` lives), not a Next-style `app/` wrapper.
24
+
25
+ # Architectural layers
26
+
27
+ | Layer | Directory | Details |
28
+ |-------|-----------|---------|
29
+ | UI | `src/routes/**`, `src/lib/components/**` | `svelte-ui`, `architecture-boundaries-ui` |
30
+ | Facades | `src/lib/**` | thin orchestration; no raw HTTP |
31
+ | Store | `src/lib/stores/**` | `store-svelte` — writable/derived/readable + runes |
32
+ | API | `src/lib/api/**` | `api-services`, `http-client` |
33
+ | HTTP | `src/lib/clients/**` | wrap `fetch` |
34
+ | Server | `+server.ts`, hooks | `security-sveltekit`; not a substitute for `src/lib/api/**` |
35
+ | Types | `src/lib/types/**` | `public-imports`, `types-jsdoc` |
36
+
37
+ Boundaries — **`architecture-boundaries`**. Imports `$lib/types`, `$lib/api` (or `@/…` if aliased) — **`public-imports`**. **Forbidden:** RTK / Pinia / stems `store-rtk` / `store-pinia`, React/RSC, Vue/Nuxt defaults, paths `app/src/**` / `pages/**` / `composables/**` as canon.
38
+
39
+ # Agent work
40
+
41
+ - Architecture and imports: `architecture-boundaries`, `public-imports`
42
+ - Features: `feature-delivery-workflow` + skill `feature-delivery`
43
+ - After edits: **invoke** `post-change-lint` (requestable); package manager: `package-manager`
44
+ - Copy neighbor patterns; prefer `unknown` over `any`
@@ -0,0 +1,33 @@
1
+ ---
2
+ description: Svelte script conventions — lang=ts, runes primary, follow neighbors
3
+ paths:
4
+ - "**/*.{svelte,ts}"
5
+ ---
6
+
7
+ # Svelte script conventions
8
+
9
+ - In `.svelte`: prefer `<script lang="ts">` (or project dual-script pattern if neighbors use it).
10
+ - **Svelte 5 primary:** `$state` / `$derived` / `$effect` / `$props` / snippets for new code.
11
+ - **Legacy secondary:** `svelte/store` writable/derived when neighbors use them — do not rewrite unrelated modules to runes in a drive-by.
12
+ - Keep `<script>` focused: UI bindings + thin orchestration; HTTP only via `$lib/api` / store actions.
13
+ - Prefer `unknown` over `any`; narrow before use.
14
+ - Do not invent Options-API / Vue `<script setup>` patterns in this preset.
15
+ - Arrow vs function: follow local neighbors; no blanket rewrite.
16
+
17
+ ## Incorrect
18
+
19
+ ```svelte
20
+ <script>
21
+ // no lang=ts in a TS codebase; Vue setup APIs
22
+ import { ref } from 'vue'
23
+ const count = ref(0)
24
+ </script>
25
+ ```
26
+
27
+ ## Correct
28
+
29
+ ```svelte
30
+ <script lang="ts">
31
+ let count = $state(0)
32
+ </script>
33
+ ```
@@ -0,0 +1,40 @@
1
+ ---
2
+ description: SvelteKit file-based routing, layouts, load, form actions
3
+ paths:
4
+ - src/routes/**/*
5
+ - svelte.config.*
6
+ ---
7
+
8
+ # SvelteKit routing
9
+
10
+ Canonical layout: **SvelteKit `src/`** — `src/routes/**`.
11
+ Flat (no-`src/`) layouts exist; **do not** default globs/examples to them or to Next `app/src/**` / Nuxt `pages/**`.
12
+
13
+ ## Routing
14
+
15
+ - File-based routes: `+page.svelte`, `+layout.svelte`, `+error.svelte`.
16
+ - Load: `+page.ts` / `+page.server.ts` / `+layout.ts` / `+layout.server.ts` — verify signatures against installed `@sveltejs/kit`.
17
+ - Form actions in `+page.server.ts`; progressive enhancement via `$app/forms` `enhance` when used in repo.
18
+ - API / BFF: `+server.ts`; app hooks in `src/hooks.server.ts` / `src/hooks.client.ts` — see `security-sveltekit`.
19
+ - Navigation: `<a href>`, `goto`, `invalidate`, `beforeNavigate`, `$app/navigation` — not `next/navigation`, not `navigateTo` / `<NuxtLink>`.
20
+
21
+ ## Data on pages
22
+
23
+ - Prefer `$lib/api` services + mappers for domain mapping; `load` may use event `fetch` for same-origin SSR cookie forwarding.
24
+ - Client orchestration via `store-svelte` (stores / runes).
25
+ - Secrets only via `$env/static/private` / server modules — never `$env/static/private` in client components.
26
+
27
+ ## Incorrect
28
+
29
+ ```ts
30
+ import { useRouter } from 'next/navigation'
31
+ import { navigateTo } from '#app'
32
+ ```
33
+
34
+ ## Correct
35
+
36
+ ```ts
37
+ import { goto } from '$app/navigation'
38
+
39
+ await goto('/items')
40
+ ```
@@ -0,0 +1,42 @@
1
+ ---
2
+ description: JSDoc style for domain and transport types under types
3
+ paths:
4
+ - src/lib/types/**/*.ts
5
+ ---
6
+
7
+ # Type documentation in `types`
8
+
9
+ When adding or substantially changing types in this layer **follow the JSDoc style already used in the repository** (see examples: `User.types.ts`, `Common.types.ts`, `ServerValidation.types.ts`, `TreatmentPlan/*.types.ts`).
10
+
11
+ ## Language and form
12
+
13
+ - Comment text — **in Russian**, short and to the point: what the type or field means in the domain or API contract.
14
+ - **Do not rely** on tags like `@param`, `@returns`, `@see`, `@deprecated` for type descriptions — they are **not used** in this layer; plain `/** … */` text is enough.
15
+
16
+ ## Exported `type` / `interface`
17
+
18
+ - Immediately **before the declaration** — a `/** … */` block.
19
+ - If you need to explain data source, constraints, or non-obvious bits — a **second paragraph** in the same block (blank line between paragraphs in JSDoc).
20
+ - For **nested** objects in the same file, each such type gets its own block above its declaration.
21
+
22
+ ## Fields
23
+
24
+ - Every **public** property — a **one-line** `/** … */` on the line immediately **above** the field.
25
+ - If a field **does not come from the backend “as is”** but is computed or enriched on the frontend (mapper, selector, UI) — start the description with the **`[computed]`** prefix (as in `TUserProfile`, treatment-plan types).
26
+ - For data formats, state that **in the text**: e.g. date `YYYY-MM-DD`, example display string in quotes.
27
+
28
+ ## Classes and other declarations
29
+
30
+ - For **classes** (e.g. transport errors), when changing the public API — a short block above the class and **comments on public fields** by the same rules as interface properties.
31
+
32
+ ## `enum`
33
+
34
+ - In `enums.ts` historically often **without JSDoc** on each member; for new enums a short description **above the enum itself** is OK if purpose is not obvious from the name. UI labels — as usual, via `*Names` objects next to the enum.
35
+
36
+ ## Agent practice
37
+
38
+ - When adding a new type or field, **do not leave** new public fields unexplained if the meaning is not 100% equal to the name.
39
+ - When editing a file that already has such comments, **keep the same style**, do not mix with English or “tag-style” blocks.
40
+ - Do not inflate comments: one–two phrases per type, one line per field — normal; exception — a truly complex domain caveat.
41
+
42
+ See also imports and barrel: `public-imports.mdc`.
@@ -0,0 +1,11 @@
1
+ # Testing
2
+
3
+ Unit, e2e, Playwright agents.
4
+
5
+ | File | Contents | Loading |
6
+ |------|----------|---------|
7
+ | `playwright-agents.md` | Planner / generator / healer — e2e structure | session start |
8
+ | `tests-unit.md` | Unit/integration; titles in Russian (locale convention) | `paths: **/*.spec.*`, `*.test.*` |
9
+ | `tests-e2e-structure.md` | `*.cases.md`, page objects, data-testid | `paths: tests/e2e/**` |
10
+
11
+ See also `.claude/agents/playwright-test-*.md` after `ai-rules init`.
@@ -0,0 +1,80 @@
1
+ ---
2
+ description: Playwright Agents (planner/generator/healer) configuration for e2e structure in tests/e2e
3
+ paths:
4
+ - tests/e2e/**/*
5
+ ---
6
+
7
+ # Playwright Agents in this project
8
+
9
+ In this repository, Playwright Agents (planner, generator, healer) **must follow the existing e2e structure**:
10
+
11
+ - **Test directory**: `tests/e2e`
12
+ - **Test plans (specs)**: `*.cases.md` files under `tests/e2e/**`
13
+ - **Executable tests**: `*.spec.ts` files under `tests/e2e/**`
14
+ - **Seed test**: `tests/e2e/seed.spec.ts`
15
+
16
+ Do **not** introduce separate top-level `specs/` and `tests/` folders for real test coverage. Those may be used only as temporary sandboxes if explicitly requested.
17
+
18
+ ## Planner (test plans)
19
+
20
+ When acting as a **Planner** (or working with the Playwright planner agent):
21
+
22
+ - **Treat `*.cases.md` as the canonical test plan files**, equivalent to Playwright's `specs/*.md`.
23
+ - **Location**:
24
+ - For a feature/domain, use the corresponding `*.cases.md` file under `tests/e2e`, e.g.:
25
+ - `tests/e2e/OrderHistory/order-history.cases.md`
26
+ - `tests/e2e/BillingReport/invoice-list.cases.md`
27
+ - **Content requirements**:
28
+ - Group scenarios by feature and subfeature using headings.
29
+ - For each scenario include:
30
+ - clear title,
31
+ - preconditions,
32
+ - ordered steps,
33
+ - expected results.
34
+ - Write in concise business language, but precise enough for automatic test generation.
35
+ - **Seed**:
36
+ - Assume environment is prepared by `tests/e2e/seed.spec.ts` (login, baseURL, mocks, etc.).
37
+
38
+ When asked to "generate a test plan" for a feature, **create or update the appropriate `*.cases.md` file in `tests/e2e/**`**, not in a separate `specs/` folder.
39
+
40
+ ## Generator (tests from plans)
41
+
42
+ When acting as a **Generator** (or working with the Playwright generator agent):
43
+
44
+ - **Source of truth for scenarios**:
45
+ - Use the relevant `*.cases.md` file under `tests/e2e/**` as the test plan.
46
+ - **Target for tests**:
47
+ - Generate or update `*.spec.ts` files under the same folder, e.g.:
48
+ - plan: `tests/e2e/OrderHistory/order-history.cases.md`
49
+ - tests: `tests/e2e/OrderHistory/order-history.spec.ts` (or additional `*.spec.ts` in that folder if needed).
50
+ - **Structure**:
51
+ - Use `test.describe` to group by top-level plan sections (feature / user flow).
52
+ - Use `test(...)` titles that match scenario names from the plan.
53
+ - Prefer Page Object and fluent interfaces that already exist in this project, for example:
54
+ - `tests/e2e/OrderHistory/OrderHistoryPage.ts`
55
+ - shared helpers under `tests/e2e/_shared/`.
56
+ - **Seed**:
57
+ - If a seed test is needed, use `tests/e2e/seed.spec.ts` as the reference for environment setup.
58
+
59
+ Do **not** generate Playwright tests into a separate `tests/` folder by default. Keep all e2e tests under `tests/e2e/**` to respect project conventions.
60
+
61
+ ## Healer (fixing tests)
62
+
63
+ When acting as a **Healer** (or working with the Playwright healer agent):
64
+
65
+ - Operate only on `*.spec.ts` files under `tests/e2e/**`.
66
+ - Use `*.cases.md` in the same folder as **documentation of the intended behavior**:
67
+ - Do not weaken or change business assertions in tests in a way that conflicts with the corresponding `*.cases.md`.
68
+ - Prefer updating locators, waits, and flow details to match the UI while keeping the scenario semantics intact.
69
+ - When multiple specs are involved, prioritize:
70
+ - the spec file in the same folder as the failing test,
71
+ - then shared utilities in `tests/e2e/_shared/`.
72
+
73
+ Healer should keep tests aligned with the existing test plans (`*.cases.md`) and with the page objects and helpers already used in the project.
74
+
75
+
76
+ ## Stack notes (SvelteKit)
77
+
78
+ - E2E root: `tests/e2e/`.
79
+ - Default baseURL: `http://localhost:5173`.
80
+ - Prefer Playwright `webServer` → `vite dev` or `vite build && vite preview`.
@@ -0,0 +1,50 @@
1
+ ---
2
+ description: Structure of e2e tests and plans (Playwright)
3
+ paths:
4
+ - tests/e2e/**/*
5
+ ---
6
+
7
+ # E2E structure in the project
8
+
9
+ - E2E folder: `tests/e2e/**`.
10
+ - Scenario plans:
11
+ - `*.cases.md` files — **canonical source of scenarios**.
12
+ - Tests:
13
+ - `*.spec.ts` files — Playwright scenario implementation.
14
+ - Shared utilities and abstractions:
15
+ - `tests/e2e/_shared/**` — constants, fluent interfaces, helpers.
16
+
17
+ # Principles
18
+
19
+ - Every scenario from `*.cases.md` must have a matching test (or set of tests).
20
+ - **Do not** weaken assertions in tests if that contradicts business expectations from the plans.
21
+ - Prefer:
22
+ - page objects (e.g. `OrderHistoryPage.ts`);
23
+ - shared helpers from `_shared`.
24
+
25
+ # E2E test naming
26
+
27
+ - Language:
28
+ - all `test` / `it` names, `describe` blocks, and steps in `*.cases.md` must be formulated **in Russian**, describing behavior and the expected result. <!-- i18n-keep: E5 -->
29
+ - E2E title format (`test(...)` / `it(...)`):
30
+ - before the scenario description, put a **numbered prefix** in the form: `PREFIX-XXX Scenario description`.
31
+ - `PREFIX` — abbreviation from the **first letters of the words** of the entity under test, written in **Latin uppercase**.
32
+ - example: `OrderHistory` → `OH`, `BillingReport` → `BR`.
33
+ - `XXX` — sequential test number **with three digits and leading zeros**: `001`, `002`, `010`, `123`, etc.
34
+ - full e2e title example:
35
+ - `test('OH-001 Отображается список заказов', async ({ page }) => { ... })` <!-- i18n-keep: E5 -->
36
+ - within one entity (`PREFIX`), test numbers must form a **consistent sequence** without duplicate numbers.
37
+
38
+ # data-testid for e2e
39
+
40
+ - **Selector priority:** `data-testid` for stable elements; `getByRole` and `getByLabel` for forms and accessible elements.
41
+ - **Naming:** scheme `{parent}__{element}` (e.g. `history-page__title`, `history-page__recognition-banner__attach-files-button`).
42
+ - **Where to add:** on page root containers and key interactive elements (buttons, links, fields) that page objects target.
43
+ - **When UI changes:** update data-testid in components and matching selectors in page objects; align with `*.cases.md`.
44
+
45
+ # Agent requirement
46
+
47
+ When adding/changing e2e tests:
48
+ - First look at the matching `*.cases.md` and sync scenario names.
49
+ - Place specs next to plans in the same directory.
50
+ - Reuse shared page objects and helpers; do not copy selectors into every test.
@@ -0,0 +1,40 @@
1
+ ---
2
+ description: Unit tests — Vitest + Testing Library Svelte; colocated *.spec.ts
3
+ paths:
4
+ - "**/*.{spec,test}.ts"
5
+ ---
6
+
7
+ # Shared testing rules
8
+
9
+ - **File names:** new tests — **`*.spec.ts`**. Do not rename existing `*.test.ts` without a task.
10
+ - **Runner:** Vitest (or as in the project). Components — **`@testing-library/svelte`** (not `@vue/test-utils`, not React Testing Library as default).
11
+ - Assert **behavior**, not internals.
12
+ - **`describe` / `it` naming:** formulate titles **in Russian**, each sentence capitalized (as with ESLint `jest/valid-title` if enabled). <!-- i18n-keep: E5 -->
13
+
14
+ ```typescript
15
+ // ✅
16
+ it('Возвращает пустой список. Пользователь не авторизован', () => {}) // <!-- i18n-keep: E5 -->
17
+
18
+ // ❌
19
+ it('Returns empty list when user is guest', () => {})
20
+ ```
21
+
22
+ # Components
23
+
24
+ - `render` from `@testing-library/svelte`.
25
+ - Interactions: `userEvent` from `@testing-library/user-event` when that is the repo convention.
26
+
27
+ # Isolation
28
+
29
+ - Mock `$lib/api` / stores per neighbor patterns.
30
+ - Do not mock the feature’s public contract without need.
31
+
32
+ # HTTP / mappers
33
+
34
+ - Changes to the shared HTTP client — behavior tests next to `src/lib/clients/**`.
35
+ - DTO→domain mappers — unit tests for edge cases.
36
+
37
+ # Placement
38
+
39
+ - UI: neighboring `*.spec.ts` (no required `__tests__/` inside the component).
40
+ - Other modules — as neighbors do.