@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,18 @@
1
+ # Hooks cookbook (examples)
2
+
3
+ Optional scripts under `hooks/examples/`. **Not** referenced from default `hooks.json` (only `guard-shell-command.sh` + `chain-team-phases.sh`).
4
+
5
+ | Script | Purpose |
6
+ |--------|---------|
7
+ | `secret-guard.example.sh` | Fail if staged diff looks like secrets |
8
+ | `format-edited.example.sh` | Stack formatter / linter on edited files |
9
+ | `test-on-save.example.sh` | Scoped tests for the stack |
10
+
11
+ ## Wiring (Cursor)
12
+
13
+ 1. Copy an example into `hooks/` (drop `.example` suffix), e.g. `cp hooks/examples/secret-guard.example.sh hooks/secret-guard.sh`.
14
+ 2. `chmod +x hooks/secret-guard.sh`.
15
+ 3. Add a hook entry in `.cursor/hooks.json` (e.g. `beforeShellExecution` or `afterFileEdit` — see Cursor hooks docs).
16
+ 4. Keep cookbook scripts **out** of the default preset `hooks.json` when contributing back upstream.
17
+
18
+ Stack: **svelte** — recipes must stay stack-safe (no cross-stack lint/test commands).
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/env bash
2
+ # Optional: format/lint edited JS/TS/Svelte at SvelteKit project root after save.
3
+ # NOT in default hooks.json. Cwd: directory with svelte.config.* (not Next-style app/).
4
+ set -euo pipefail
5
+ ROOT="${CURSOR_PROJECT_DIR:-.}"
6
+ cd "$ROOT" 2>/dev/null || exit 0
7
+ [[ -f svelte.config.js || -f svelte.config.ts || -f svelte.config.mjs ]] || exit 0
8
+ # Prefer project scripts; adjust names to match package.json (see package-manager).
9
+ yarn lint --fix 2>/dev/null \
10
+ || yarn eslint --fix . 2>/dev/null \
11
+ || yarn check 2>/dev/null \
12
+ || true
13
+ exit 0
@@ -0,0 +1,10 @@
1
+ #!/usr/bin/env bash
2
+ # Optional cookbook: block committing likely secrets in staged diffs.
3
+ # NOT wired in default hooks.json — copy to hooks/ and register manually.
4
+ set -euo pipefail
5
+ PATTERN='(AKIA[0-9A-Z]{16}|-----BEGIN (RSA |OPENSSH )?PRIVATE KEY-----|api[_-]?key\s*[:=]\s*['\''\"][^'\''\"]{12,})'
6
+ if git diff --cached -U0 2>/dev/null | grep -Eiq "$PATTERN"; then
7
+ echo "secret-guard: possible secret in staged diff — review before commit" >&2
8
+ exit 1
9
+ fi
10
+ exit 0
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env bash
2
+ # Optional: scoped unit tests / check at SvelteKit project root.
3
+ # NOT in default hooks.json. No Playwright here.
4
+ # Cwd: directory with svelte.config.* (not Next-style app/).
5
+ set -euo pipefail
6
+ ROOT="${CURSOR_PROJECT_DIR:-.}"
7
+ cd "$ROOT" 2>/dev/null || exit 0
8
+ [[ -f svelte.config.js || -f svelte.config.ts || -f svelte.config.mjs ]] || exit 0
9
+ # Prefer Vitest related/run; fall back to package `test` / `check` (see package-manager).
10
+ yarn vitest related --run --passWithNoTests 2>/dev/null \
11
+ || yarn test --run --passWithNoTests 2>/dev/null \
12
+ || yarn check 2>/dev/null \
13
+ || true
14
+ exit 0
@@ -0,0 +1,77 @@
1
+ #!/usr/bin/env bash
2
+ # Lightweight shell guard for Claude projects using this preset.
3
+
4
+ set -euo pipefail
5
+
6
+ input=$(cat)
7
+
8
+ INPUT="$input" node <<'NODE'
9
+ const fs = require('fs');
10
+
11
+ const raw = process.env.INPUT || '';
12
+ let event;
13
+ try {
14
+ event = JSON.parse(raw);
15
+ } catch {
16
+ process.stdout.write('{ "permission": "allow" }');
17
+ process.exit(0);
18
+ }
19
+
20
+ const command = String(event.command || event.input?.command || '');
21
+ if (!command.trim()) {
22
+ process.stdout.write('{ "permission": "allow" }');
23
+ process.exit(0);
24
+ }
25
+
26
+ function out(permission, userMessage, agentMessage) {
27
+ process.stdout.write(JSON.stringify({
28
+ permission,
29
+ user_message: userMessage,
30
+ agent_message: agentMessage || userMessage,
31
+ }));
32
+ }
33
+
34
+ const dangerousGit = /\bgit\s+(reset\s+--hard|clean\s+-[^\n]*f|push\s+--force|push\s+-f|checkout\s+--\s+)/;
35
+ if (dangerousGit.test(command)) {
36
+ out(
37
+ 'ask',
38
+ 'This command looks destructive for git state. Review it before continuing.',
39
+ 'A project hook flagged a destructive git command. Ask the user before running it.',
40
+ );
41
+ process.exit(0);
42
+ }
43
+
44
+ const managerByFile = [
45
+ ['yarn.lock', 'yarn'],
46
+ ['pnpm-lock.yaml', 'pnpm'],
47
+ ['package-lock.json', 'npm'],
48
+ ].find(([file]) => fs.existsSync(file));
49
+
50
+ let expected = managerByFile?.[1];
51
+ if (!expected && fs.existsSync('package.json')) {
52
+ try {
53
+ const pkg = JSON.parse(fs.readFileSync('package.json', 'utf8'));
54
+ const pm = typeof pkg.packageManager === 'string' ? pkg.packageManager : '';
55
+ expected = pm.split('@')[0] || undefined;
56
+ } catch {
57
+ // Ignore invalid package.json in the hook; the agent can diagnose it later.
58
+ }
59
+ }
60
+
61
+ if (!expected) {
62
+ process.stdout.write('{ "permission": "allow" }');
63
+ process.exit(0);
64
+ }
65
+
66
+ const used = command.match(/(^|[;&|]\s*)(npm|yarn|pnpm)\s+/)?.[2];
67
+ if (used && used !== expected) {
68
+ out(
69
+ 'ask',
70
+ `This repository appears to use ${expected}, but the command uses ${used}. Confirm before continuing.`,
71
+ `Use ${expected} for package scripts and installs unless the user explicitly approves ${used}.`,
72
+ );
73
+ process.exit(0);
74
+ }
75
+
76
+ process.stdout.write('{ "permission": "allow" }');
77
+ NODE
@@ -0,0 +1,20 @@
1
+ {
2
+ "mcpServers": {
3
+ "context7": {
4
+ "command": "npx",
5
+ "args": ["-y", "@upstash/context7-mcp"]
6
+ },
7
+ "playwright-test": {
8
+ "command": "npx",
9
+ "args": ["-y", "@playwright/mcp@latest"]
10
+ },
11
+ "chrome-devtools": {
12
+ "command": "npx",
13
+ "args": ["-y", "chrome-devtools-mcp@latest"]
14
+ },
15
+ "figma": {
16
+ "type": "http",
17
+ "url": "https://mcp.figma.com/mcp"
18
+ }
19
+ }
20
+ }
@@ -0,0 +1,90 @@
1
+ # `.claude/rules` (preset svelte)
2
+
3
+ In Claude Code all `.md` under `rules/` are **discovered recursively**. Bodies are **derived** from Cursor SoT; indexes are not a second SoT.
4
+
5
+ ## SoT sync
6
+
7
+ | Principle | Detail |
8
+ |-----------|--------|
9
+ | **SoT** | `presets/cursor/svelte/rules/*.mdc` — edit here first |
10
+ | **Derive** | Claude topic `.md` = body + `paths:` (from Cursor `globs:` / requestable triggers) |
11
+ | **Drop** | Cursor-only keys (`alwaysApply`); keep short `description` |
12
+ | **Checklist** | change Cursor → update Claude twin **same PR** (**FAIL** if missing — includes `svelte`; see `preset-twin-sync` / build-verifier) |
13
+ | **Shared core** | `presets/_shared/core/**` — see `<!-- shared-core: … -->` markers; taxonomy in `_shared/README.md` |
14
+
15
+ ## Loading strategy
16
+
17
+ - **Session start (no `paths:`):** exactly **3** — `svelte-app-core`, `package-manager`, `code-quality`
18
+ - **On-demand (`paths:` or via commands):** `post-change-lint`, `security-sveltekit`, architecture, UI, tests, `svelte-sveltekit-anti-hallucination`, **preset-*** meta, …
19
+ - **Skills:** `feature-delivery`, `svelte-performance`, `code-review`, …
20
+
21
+ ## Cursor → Claude mapping
22
+
23
+ | Cursor `.mdc` (SoT) | Claude topic |
24
+ |---------------------|--------------|
25
+ | `svelte-app-core.mdc` | `stack/svelte-app-core.md` |
26
+ | `package-manager.mdc` | `tooling-and-review/package-manager.md` |
27
+ | `code-quality-and-refactoring.mdc` | `tooling-and-review/code-quality.md` |
28
+ | `anti-sycophancy-discipline.mdc` | `tooling-and-review/anti-sycophancy-discipline.md` |
29
+ | `svelte-sveltekit-anti-hallucination.mdc` | `anti-hallucination/svelte-sveltekit-anti-hallucination.md` |
30
+ | `design-guidance.mdc` | `tooling-and-review/design-guidance.md` |
31
+ | `sveltekit-routing.mdc` | `stack/sveltekit-routing.md` |
32
+ | `svelte-script-conventions.mdc` | `stack/svelte-script-conventions.md` |
33
+ | `types-jsdoc.mdc` | `stack/types-jsdoc.md` |
34
+ | `no-type-assertion-as-import-export.mdc` | `stack/no-type-assertion.md` |
35
+ | `navigation-router-stack.mdc` | `stack/navigation-router.md` |
36
+ | `navigation-router-ui.mdc` | `stack/navigation-router-ui.md` |
37
+ | `architecture-boundaries.mdc` | `architecture/architecture-boundaries.md` |
38
+ | `architecture-boundaries-ui.mdc` | `architecture/architecture-boundaries-ui.md` |
39
+ | `feature-delivery-workflow.mdc` | `architecture/feature-delivery-workflow.md` |
40
+ | `reference-features.mdc` | `architecture/reference-features.md` |
41
+ | `public-imports.mdc` | `architecture/public-imports.md` |
42
+ | `layer-barrel-exports.mdc` | `architecture/layer-barrel-exports.md` |
43
+ | `api-services.mdc` | `api-and-data/api-services.md` |
44
+ | `http-client.mdc` | `api-and-data/http-client.md` |
45
+ | `store-svelte.mdc` | `api-and-data/store-svelte.md` |
46
+ | `svelte-ui.mdc` | `ui-and-accessibility/svelte-ui.md` |
47
+ | `svelte-a11y-coding.mdc` | `ui-and-accessibility/svelte-a11y-coding.md` |
48
+ | `no-rest-props-spread.mdc` | `ui-and-accessibility/no-rest-props-spread.md` |
49
+ | `css-property-order-stylelint.mdc` | `ui-and-accessibility/css-property-order.md` |
50
+ | `tests-unit.mdc` | `testing/tests-unit.md` |
51
+ | `tests-e2e-structure.mdc` | `testing/tests-e2e-structure.md` |
52
+ | `playwright-agents.mdc` | `testing/playwright-agents.md` |
53
+ | `post-change-lint.mdc` | `tooling-and-review/post-change-lint.md` |
54
+ | `code-review-mr.mdc` | `tooling-and-review/code-review-mr.md` |
55
+ | `security-sveltekit.mdc` | `tooling-and-review/security-sveltekit.md` |
56
+ | `agent-team-intake.mdc` | `tooling-and-review/agent-team-intake.md` |
57
+ | `agent-team-orchestrator.mdc` | `tooling-and-review/agent-team-orchestrator.md` |
58
+ | `technical-retro.mdc` | `tooling-and-review/technical-retro.md` |
59
+ | `preset-layering.mdc` | `tooling-and-review/preset-layering.md` |
60
+ | `preset-twin-sync.mdc` | `tooling-and-review/preset-twin-sync.md` |
61
+ | `preset-token-budget.mdc` | `tooling-and-review/preset-token-budget.md` |
62
+ | `preset-pr-checklist.mdc` | `tooling-and-review/preset-pr-checklist.md` |
63
+ | `preset-no-cross-stack-leakage.mdc` | `tooling-and-review/preset-no-cross-stack-leakage.md` |
64
+
65
+ ## Core → stack mapping
66
+
67
+ | Shared core | Cursor adapter | Notes |
68
+ |-------------|----------------|-------|
69
+ | `quality/code-quality-and-refactoring.md` | `code-quality-and-refactoring.mdc` / `code-quality.md` | + Stack notes (ESLint/Svelte/CSS) |
70
+ | `quality/anti-sycophancy-discipline.md` | `anti-sycophancy-discipline.mdc` | requestable |
71
+ | `quality/design-guidance.md` | `design-guidance.mdc` | requestable |
72
+ | `agent-team/agent-team-orchestrator.md` | `agent-team-orchestrator.mdc` | Roles in Stack notes |
73
+ | `agent-team/agent-team-intake.md` | `agent-team-intake.mdc` | thin alias |
74
+ | `architecture/feature-delivery-workflow.md` | `feature-delivery-workflow.mdc` | SvelteKit layer checklist |
75
+ | `architecture/reference-features.template.md` | `reference-features.mdc` | path table |
76
+ | `review/code-review-mr.md` | `code-review-mr.mdc` | SvelteKit checklist refs |
77
+ | `review/technical-retro.md` | `technical-retro.mdc` | thin alias |
78
+ | `meta/preset-*.md` | `preset-*.mdc` | author globs only |
79
+
80
+ ## Folders
81
+
82
+ | Folder | Contents |
83
+ |--------|----------|
84
+ | `stack/` | app-core, routing, script conventions, types |
85
+ | `architecture/` | boundaries, public imports, feature delivery |
86
+ | `api-and-data/` | store-svelte, http-client, api-services |
87
+ | `ui-and-accessibility/` | svelte-ui, a11y, rest-props, css order |
88
+ | `testing/` | unit, e2e, playwright agents |
89
+ | `tooling-and-review/` | lint, security, agent-team, preset meta |
90
+ | `anti-hallucination/` | svelte-sveltekit-anti-hallucination |
@@ -0,0 +1,71 @@
1
+ ---
2
+ description: Svelte/SvelteKit anti-hallucination banlist — phantom imports, load/server APIs, stores/runes
3
+ paths:
4
+ - "**/*.{svelte,ts,js}"
5
+ - src/routes/**/*
6
+ - src/lib/**/*
7
+ ---
8
+
9
+ # Svelte / SvelteKit anti-hallucination
10
+
11
+ These rows **OVERRIDE** generation for the listed patterns. Before inventing an import, load helper, or store API: verify against `package.json` (installed majors), `svelte.config.*`, and sibling files. If unsure, mark `// VERIFY: lib.symbol @ version` and surface the uncertainty — do not silently stub.
12
+
13
+ ## 1. Phantom `$app/*` / Kit modules
14
+
15
+ | ❌ Avoid | ✅ Prefer |
16
+ |---------|----------|
17
+ | Invented `$app/foo`, `$app/router`, `$app/auth` | Real `$app/navigation`, `$app/stores`, `$app/forms`, `$app/environment`, `$app/paths`, `$app/state` **for installed major** |
18
+ | Importing Next `next/navigation` / `next/link` | `$app/navigation`, `<a href>` |
19
+ | `navigateTo`, `<NuxtLink>`, `#imports` auto-import phantoms | Kit APIs + explicit imports that exist in repo |
20
+ | Invented `@sveltejs/kit` helpers not in docs/lockfile | Documented Kit exports for installed version |
21
+
22
+ ## 2. Load / page data signatures
23
+
24
+ | ❌ Avoid | ✅ Prefer |
25
+ |---------|----------|
26
+ | Invented `PageLoad` / `LayoutServerLoad` shapes from blogs | Types from `./$types` generated for the route; match siblings |
27
+ | Returning random keys without `data` contract | Follow existing `+page(.server).ts` return shapes |
28
+ | Calling React `getServerSideProps` / Nuxt `useAsyncData` in Kit | `load` / form actions / `$lib/api` |
29
+
30
+ ## 3. Form actions / enhance
31
+
32
+ | ❌ Avoid | ✅ Prefer |
33
+ |---------|----------|
34
+ | Phantom `enhance` option bags siblings never use | `$app/forms` `enhance` patterns from neighbors + Kit docs |
35
+ | Invented `fail` / `redirect` import paths | `@sveltejs/kit` exports verified for major |
36
+ | Posting secrets from client form without server action | `+page.server.ts` actions + `$env` discipline |
37
+
38
+ ## 4. `$env/*` misuse
39
+
40
+ | ❌ Avoid | ✅ Prefer |
41
+ |---------|----------|
42
+ | `$env/static/private` / private dynamic env in `.svelte` client | Private env only in `.server.ts` / hooks / `+server.ts` |
43
+ | Invented `$env/secret` | `$env/static/public`, `$env/static/private`, `$env/dynamic/*` as documented |
44
+
45
+ ## 5. Runes vs stores
46
+
47
+ | ❌ Avoid | ✅ Prefer |
48
+ |---------|----------|
49
+ | `import { $state } from 'svelte/store'` (wrong) | Runes are language/runtime — follow Svelte 5 docs / neighbors |
50
+ | Pinia `defineStore` / RTK `createSlice` | `store-svelte` — writable/derived/readable or runes modules |
51
+ | Invented `createRuneStore` helpers | Patterns already in `src/lib/stores/**` |
52
+
53
+ ## 6. Cross-stack APIs (banned as defaults)
54
+
55
+ | ❌ Avoid | ✅ Prefer |
56
+ |---------|----------|
57
+ | React hooks (`useEffect`, `useState` from `react`) | Svelte reactivity / runes / stores |
58
+ | RSC / `next/navigation` / `next/image` | Kit routes + `$app/*` |
59
+ | Vue/Nuxt: `ref`, `defineStore`, `useFetch`, `navigateTo` | Svelte / Kit equivalents above |
60
+
61
+ ## 7. Paths / gates / spreads
62
+
63
+ | ❌ Avoid | ✅ Prefer |
64
+ |---------|----------|
65
+ | E2E under `app/__tests__/e2e` | `tests/e2e/**` |
66
+ | Required script named `typecheck` / `type-check` | Package script **`check`** (`svelte-kit sync && svelte-check`) |
67
+ | Unlimited `{...props}` / `$$restProps` as default | Explicit props (`no-rest-props-spread`) |
68
+ | Server-only modules imported into client components | Keep private env / Node APIs in `.server.ts` |
69
+ | Vue-style auto-import of missing symbols | Explicit `$lib` / `$app` imports that exist |
70
+
71
+ When a row conflicts with a verified sibling pattern in this repo, **the sibling wins** — update this banlist in a preset PR rather than inventing a third path.
@@ -0,0 +1,9 @@
1
+ # API and data
2
+
3
+ HTTP transport, services, Svelte stores/runes store.
4
+
5
+ | File | Contents | `paths:` |
6
+ |------|----------|----------|
7
+ | `http-client.md` | Shared HTTP client, errors, link to store | `src/lib/clients/**`, `src/lib/clients/**` |
8
+ | `api-services.md` | Services, mappers, DTO → domain | `api/services/**` |
9
+ | `store-svelte.md` | Svelte stores/runes, actions, typing | `src/lib/stores/**` |
@@ -0,0 +1,45 @@
1
+ ---
2
+ description: Conventions for API services and mappers (SvelteKit $lib/api)
3
+ paths:
4
+ - src/lib/api/**/*.ts
5
+ ---
6
+
7
+ # Role of the API layer
8
+
9
+ - Encapsulate HTTP via clients in `src/lib/clients/**` (`http-client`), URLs, headers, DTOs.
10
+ - Provide UI and store a **stable domain interface** — functions with domain types from `$lib/types` + DTO↔domain mappers.
11
+ - May call relative `+server.ts` routes (`/api/...`) for BFF — still through services, not from `.svelte`.
12
+
13
+ # Structure
14
+
15
+ - Service directories under `src/lib/api/services/**` (or the neighbor scheme).
16
+ - Outside the layer — only barrel `src/lib/api/index.ts` (`public-imports`, `layer-barrel-exports`).
17
+
18
+ # Mappers
19
+
20
+ - Pure functions; UI/store see domain models, not raw DTOs.
21
+ - Do not call `fetch` directly in the service body — only through the client / `event.fetch` patterns documented in the repo.
22
+
23
+ # Errors
24
+
25
+ - Do not swallow errors; throw unified / Result-like forms as in the project.
26
+ - APM — centrally in the client, not in every method.
27
+
28
+ # Incorrect / Correct
29
+
30
+ ```ts
31
+ // ❌ DTO leak
32
+ export const getCard = async (id: string) => {
33
+ const data = await cardsClient.get(`/cards/${id}`)
34
+ return data
35
+ }
36
+
37
+ // ✅
38
+ import type { TCard } from '$lib/types'
39
+ import { mapCardResponse } from './cardResponseMappers'
40
+
41
+ export const getCard = async (id: string): Promise<TCard> => {
42
+ const data = await cardsClient.get(`/cards/${id}`)
43
+ return mapCardResponse(data)
44
+ }
45
+ ```
@@ -0,0 +1,17 @@
1
+ ---
2
+ description: HTTP client wrapper for SvelteKit — fetch, one stack, error contracts
3
+ paths:
4
+ - src/lib/clients/**/*.ts
5
+ - src/lib/api/**/*.ts
6
+ ---
7
+
8
+ # HTTP client
9
+
10
+ - One HTTP stack for the app: wrap **`fetch`** (or the shared client already in `src/lib/clients/**`).
11
+ - Do not mix ad-hoc `axios`/`ky` in features if a shared client exists.
12
+ - Services in `src/lib/api/**` call the wrapper — UI/stores do not own transport.
13
+ - In `load` / form actions, prefer the provided `event.fetch` for same-origin SSR cookie forwarding when calling own endpoints.
14
+ - Map responses to domain models in services/mappers before stores/runes.
15
+ - Errors: use project transport error types from `$lib/types`; narrow with `instanceof` when available.
16
+ - Base URL / auth: from `$env/*` / existing client factories — do not hardcode secrets.
17
+ - Calling relative `/api/*` (`+server.ts` BFF) from the client is fine when that is the repo pattern — still through services.
@@ -0,0 +1,67 @@
1
+ ---
2
+ description: Svelte stores and runes — client state (SvelteKit)
3
+ paths:
4
+ - src/lib/stores/**/*.ts
5
+ - src/lib/stores/**/*.js
6
+ - **/*.svelte.ts
7
+ ---
8
+
9
+ # Shared principles
10
+
11
+ - **Primary (Svelte 5):** runes in `.svelte` / `.svelte.ts` — `$state`, `$derived`, `$effect`, `$props`, `$bindable` as applicable.
12
+ - **Secondary (legacy / shared):** `writable` / `derived` / `readable` from `svelte/store` when neighbors do so or for shared state outside runes — “follow neighbors”.
13
+ - Store / shared modules hold **domain models**, not raw DTOs.
14
+ - DTO → domain mapping — in `src/lib/api/**` (or server mappers) **before** writing to store/runes.
15
+ - UI-only flags may stay local in the component (`$state`) if that is the repo convention.
16
+
17
+ # Forbidden in this preset
18
+
19
+ - RTK / Redux: `createSlice`, `createAsyncThunk`, RTK Query, `useDispatch` / `useSelector`, stem `store-rtk`.
20
+ - Pinia / Vuex: `defineStore`, stem `store-pinia`.
21
+ - Raw `fetch` from the store bypassing `$lib/api` services (except narrow documented repo exceptions).
22
+ - Importing `$state` / runes from invented packages — only Svelte runtime / documented APIs for the installed major.
23
+
24
+ # Structure
25
+
26
+ - Domain module — file under `src/lib/stores/**` (e.g. `src/lib/stores/profile.ts` or `profile.svelte.ts`).
27
+ - Export explicit store factories / rune modules; names as neighbors use.
28
+ - Actions / functions call services from `$lib/api` (`public-imports`).
29
+
30
+ # Async
31
+
32
+ ```ts
33
+ // Incorrect — raw HTTP + DTO in state
34
+ import { writable } from 'svelte/store'
35
+ export const profile = writable(null)
36
+ export async function loadProfile() {
37
+ profile.set(await fetch('/api/profile').then((r) => r.json()))
38
+ }
39
+
40
+ // Correct
41
+ import { writable } from 'svelte/store'
42
+ import { profileApi } from '$lib/api'
43
+ import type { Profile } from '$lib/types'
44
+
45
+ export const profile = writable<Profile | null>(null)
46
+
47
+ export async function loadProfile() {
48
+ profile.set(await profileApi.getProfile())
49
+ }
50
+ ```
51
+
52
+ # Typing and errors
53
+
54
+ - Domain types from `$lib/types` (or `@/types` if aliased).
55
+ - Transport errors — contracts from types / the accepted client class (`http-client`).
56
+ - In UI: `$profile` / subscribe / `$derived` — follow neighbors.
57
+
58
+ # Testing
59
+
60
+ - Cover important stores / rune modules (init, transitions, actions with mocked API).
61
+ - Unit: Vitest; mock `$lib/api` services.
62
+
63
+ # Agent requirement
64
+
65
+ - Do not put HTTP/transport in components.
66
+ - Strictly type state/actions.
67
+ - Follow the style of neighboring stores / runes modules.
@@ -0,0 +1,12 @@
1
+ # Architecture rules
2
+
3
+ | File | Purpose |
4
+ |------|---------|
5
+ | `public-imports.md` | Imports `@/types`, `@/types/enums`, `@/api` (outside `src/lib/api/**`) |
6
+ | `architecture-boundaries-ui.md` | Slim UI boundaries when editing components |
7
+ | `architecture-boundaries.md` | Full UI / store / API map (api, store, types, lib) |
8
+ | `layer-barrel-exports.md` | Two-level barrels for layers with a public API |
9
+ | `feature-delivery-workflow.md` | End-to-end checklist for a new feature |
10
+ | `reference-features.md` | Reference paths for UI/store/API/types |
11
+
12
+ Deprecated stubs `types-public-imports.md` / `api-public-imports.md` **removed** — use `public-imports.md`.
@@ -0,0 +1,16 @@
1
+ ---
2
+ description: UI layer boundaries — slim rule for component edits (without the full store/API map)
3
+ paths:
4
+ - src/lib/components/**/*
5
+ - src/routes/**/*
6
+ ---
7
+
8
+ # UI layer boundaries (slim)
9
+
10
+ - **Imports:** `src/lib/components/**`, facades under `src/lib/**`, `src/lib/stores/**` (public), types from `$lib/types` / `@/types`, API — only `$lib/api` / `@/api` (`public-imports`).
11
+ - **Forbidden:** direct HTTP client (`fetch` outside `src/lib/clients`); knowing DTOs — domain types only.
12
+ - **State:** write scenarios — via `store-svelte` (stores / runes); narrow direct `$lib/api` reads — only as in neighboring features.
13
+ - **Organization:** `$lib` / `@/`; no deep imports into other features; public API only.
14
+ - **Barrel:** when adding public symbols — re-export per `layer-barrel-exports`.
15
+
16
+ Full layer map: **`architecture-boundaries`** — when editing `src/lib/api`, `src/lib/stores`, `src/lib/types`, `src/lib/clients`.
@@ -0,0 +1,65 @@
1
+ ---
2
+ description: Architectural boundaries and import rules (SvelteKit)
3
+ paths:
4
+ - src/lib/api/**/*
5
+ - src/lib/stores/**/*
6
+ - src/lib/types/**/*
7
+ - src/lib/clients/**/*
8
+ - src/lib/components/**/*
9
+ - src/routes/**/*
10
+ ---
11
+
12
+ # Boundaries between layers
13
+
14
+ ```text
15
+ src/routes (+page/+layout) / src/lib/components
16
+ → src/lib facades (optional)
17
+ → src/lib/stores ──→ src/lib/api (services barrel)
18
+ ↘︎ src/lib/types
19
+ → src/lib/api (read-only / narrow cases) ──→ src/lib/clients (fetch)
20
+ +server.ts / hooks.server.ts ──→ types / shared pure utils
21
+ ```
22
+
23
+ - **UI (`src/routes/**`, `src/lib/components/**`)**:
24
+ - May import: components, facades, `src/lib/stores/**` (public), types from `$lib/types` / `@/types`, API — **only** from `$lib/api` / `@/api` (`public-imports`).
25
+ - Must not: call the HTTP client directly; know backend DTOs.
26
+ - **Store (`src/lib/stores/**`)** — `store-svelte`:
27
+ - May import: other stores (public), `$lib/api`, `$lib/types`.
28
+ - Must not: depend on UI; reach `src/lib/clients` bypassing services.
29
+ - **API (`src/lib/api/**`)**:
30
+ - Services + mappers; HTTP via `src/lib/clients/**`.
31
+ - Must not: pull UI or store.
32
+ - **Server (`+server.ts`, hooks)**:
33
+ - Edge/BFF; secrets via `$env/static/private`; do not replace `src/lib/api/**` domain services.
34
+
35
+ ## UI and API access
36
+
37
+ - Scenarios that change server state — via store actions / rune modules.
38
+ - Direct `$lib/api` calls from UI — only narrow read-only cases that do not duplicate a store scenario.
39
+ - Facades under `src/lib/**` — thin orchestration (not Vue `composables/`).
40
+
41
+ ## Import rules
42
+
43
+ - Between layers — `$lib/…` (preferred) or `@/…` if configured; respect `$app/*` / `$env/*` without phantoms.
44
+ - Inside a feature — relative without climbing above the feature root.
45
+ - Outside a layer — public barrels only (`layer-barrel-exports`, `public-imports`).
46
+
47
+ ## Forbidden as defaults
48
+
49
+ - RTK / Pinia / Vuex; stems `store-rtk` / `store-pinia`.
50
+ - Next `app/src/**`, Nuxt `pages/**` / `composables/**` as canon.
51
+
52
+ ## Incorrect
53
+
54
+ ```ts
55
+ import { httpClient } from '$lib/clients/http'
56
+ // UI / page calling transport directly
57
+ await httpClient.get('/orders')
58
+ ```
59
+
60
+ ## Correct
61
+
62
+ ```ts
63
+ import { loadOrders } from '$lib/stores/orders'
64
+ await loadOrders()
65
+ ```
@@ -0,0 +1,61 @@
1
+ ---
2
+ description: End-to-end checklist for a new feature and the “layer → Cursor rule” matrix. Use when implementing features via feature-developer or feature-delivery skill.
3
+ paths:
4
+ - src/routes/**/*
5
+ - src/lib/components/**/*
6
+ - src/lib/stores/**/*
7
+ - api/**/*
8
+ - src/lib/**/*
9
+ - types/**/*
10
+ ---
11
+
12
+ <!-- shared-core: architecture/feature-delivery-workflow.md -->
13
+
14
+ # Feature delivery (end-to-end order)
15
+
16
+ ## Stack notes
17
+
18
+ Typical feature with backend data and shared state. Layer details — `architecture-boundaries.mdc`, `svelte-app-core.mdc`.
19
+
20
+ Canonical paths: `src/routes/**`, `src/lib/{components,stores,api,clients,types}/**`, `tests/e2e/**`. Aliases: `$lib` preferred; `@/` if configured. State: `store-svelte` (runes primary; legacy stores secondary).
21
+
22
+ ## Checklist (work order)
23
+
24
+ 1. **Domain types** — `src/lib/types/**`, barrel (`public-imports`, `layer-barrel-exports`); JSDoc — `types-jsdoc`.
25
+ 2. **API contract** — DTOs where the repo uses them; domain types in `$lib/types`.
26
+ 3. **Mappers** — DTO → domain in `*responseMappers.ts` (`api-services`).
27
+ 4. **Services** — clients `src/lib/clients/**`, barrel `$lib/api` (`api-services`, `http-client`). No `fetch` from UI/store.
28
+ 5. **State** — `src/lib/stores/**` / runes (`store-svelte`); actions → `$lib/api`. **Not** RTK / Pinia.
29
+ 6. **UI** — `src/routes/**`, `src/lib/components/**`; data via store / facades / `load`.
30
+ 7. **Unit** — colocated `*.spec.ts` (Vitest + Testing Library Svelte).
31
+ 8. **E2E** — `tests/e2e/<Area>/<plan>.cases.md` + `*.spec.ts`.
32
+ 9. **Gate** — `post-change-lint`: `lint:js`, `lint:css`, `check`.
33
+
34
+ ## Partial scenarios
35
+
36
+ | Task | Minimum |
37
+ |------|---------|
38
+ | API + types only | Types, service, mappers, `$lib/api` barrel; unit for mapper. |
39
+ | Store only | Store/runes actions on `$lib/api`. |
40
+ | UI only | Store/`load` data; no HTTP/DTO. |
41
+ | E2E only | `*.cases.md` + spec; page object. |
42
+
43
+ ## Anti-patterns
44
+
45
+ - DTO in UI or untyped store.
46
+ - HTTP from a component / store bypassing the service.
47
+ - Deep-import `$lib/api/services/**` from UI/store.
48
+ - `{...props}` / `$$restProps` without discipline — `no-rest-props-spread`.
49
+ - RTK / Pinia / Vue / Nuxt APIs as defaults.
50
+ - Load `design-guidance` when assessing structure / smells.
51
+
52
+ ## Zone → rules matrix
53
+
54
+ | Zone | Rules |
55
+ |------|-------|
56
+ | `src/lib/clients/**` | `http-client`, `tests-unit` |
57
+ | `src/lib/api/**` | `api-services`, `layer-barrel-exports`, `http-client` |
58
+ | `src/lib/stores/**` | `store-svelte`, `architecture-boundaries`, `public-imports` |
59
+ | `src/lib/components/**`, `src/routes/**` | `svelte-ui`, `no-rest-props-spread`, `public-imports` |
60
+ | `src/lib/types/**` | `public-imports`, `types-jsdoc`, `layer-barrel-exports` |
61
+ | `tests/e2e/**` | `tests-e2e-structure`, `playwright-agents` |