ai-qakit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (875) hide show
  1. package/README.md +240 -0
  2. package/dist/cli.d.ts +2 -0
  3. package/dist/cli.js +208 -0
  4. package/dist/commands/clean.d.ts +10 -0
  5. package/dist/commands/clean.js +53 -0
  6. package/dist/commands/init.d.ts +20 -0
  7. package/dist/commands/init.js +195 -0
  8. package/dist/index.d.ts +3 -0
  9. package/dist/index.js +2 -0
  10. package/dist/utils/file-operations.d.ts +18 -0
  11. package/dist/utils/file-operations.js +79 -0
  12. package/dist/utils/git.d.ts +4 -0
  13. package/dist/utils/git.js +27 -0
  14. package/dist/utils/index.d.ts +5 -0
  15. package/dist/utils/index.js +5 -0
  16. package/dist/utils/logger.d.ts +22 -0
  17. package/dist/utils/logger.js +23 -0
  18. package/dist/utils/manifest.d.ts +37 -0
  19. package/dist/utils/manifest.js +120 -0
  20. package/dist/utils/package.d.ts +19 -0
  21. package/dist/utils/package.js +47 -0
  22. package/package.json +61 -0
  23. package/templates/.antigravity/agents/qa-agents.yaml +50 -0
  24. package/templates/.antigravity/prompts/qa-prompts.md +56 -0
  25. package/templates/.claude/.scoutignore +33 -0
  26. package/templates/.claude/CHANGELOG.md +587 -0
  27. package/templates/.claude/CLAUDE.md +335 -0
  28. package/templates/.claude/README.md +428 -0
  29. package/templates/.claude/TROUBLESHOOTING.md +789 -0
  30. package/templates/.claude/agents/accessibility-tester.md +29 -0
  31. package/templates/.claude/agents/api-tester.md +29 -0
  32. package/templates/.claude/agents/automation-engineer.md +30 -0
  33. package/templates/.claude/agents/brainstormer.md +123 -0
  34. package/templates/.claude/agents/bug-hunter.md +30 -0
  35. package/templates/.claude/agents/claude-optimizer.md +221 -0
  36. package/templates/.claude/agents/code-reviewer.md +176 -0
  37. package/templates/.claude/agents/code-simplifier.md +103 -0
  38. package/templates/.claude/agents/coder.md +163 -0
  39. package/templates/.claude/agents/context-manager.md +110 -0
  40. package/templates/.claude/agents/cunningham.md +134 -0
  41. package/templates/.claude/agents/database-admin.md +112 -0
  42. package/templates/.claude/agents/debugger.md +156 -0
  43. package/templates/.claude/agents/docs-manager.md +181 -0
  44. package/templates/.claude/agents/e2e-tester.md +30 -0
  45. package/templates/.claude/agents/performance-engineer.md +48 -0
  46. package/templates/.claude/agents/performance-tester.md +29 -0
  47. package/templates/.claude/agents/planner.md +72 -0
  48. package/templates/.claude/agents/project-manager.md +152 -0
  49. package/templates/.claude/agents/qa-scout.md +29 -0
  50. package/templates/.claude/agents/quality-engineer.md +48 -0
  51. package/templates/.claude/agents/readme-writer.md +67 -0
  52. package/templates/.claude/agents/researcher.md +57 -0
  53. package/templates/.claude/agents/scout.md +125 -0
  54. package/templates/.claude/agents/security-agent.md +564 -0
  55. package/templates/.claude/agents/security-tester.md +29 -0
  56. package/templates/.claude/agents/storage-path-convention.md +102 -0
  57. package/templates/.claude/agents/tattletale-reporter.md +77 -0
  58. package/templates/.claude/agents/test-architect.md +32 -0
  59. package/templates/.claude/agents/test-reviewer.md +29 -0
  60. package/templates/.claude/agents/tester.md +286 -0
  61. package/templates/.claude/agents/typescript-pro.md +280 -0
  62. package/templates/.claude/agents/ui-ux-designer.md +256 -0
  63. package/templates/.claude/commands/devkit/analyze.md +92 -0
  64. package/templates/.claude/commands/devkit/ask.md +269 -0
  65. package/templates/.claude/commands/devkit/backend/create-api.md +220 -0
  66. package/templates/.claude/commands/devkit/backend/create-migration.md +130 -0
  67. package/templates/.claude/commands/devkit/backend/create-schema.md +158 -0
  68. package/templates/.claude/commands/devkit/backend/design-graphql-api.md +302 -0
  69. package/templates/.claude/commands/devkit/backend/design-rest-api.md +192 -0
  70. package/templates/.claude/commands/devkit/config/bootstrap.md +137 -0
  71. package/templates/.claude/commands/devkit/config/init-backend.md +233 -0
  72. package/templates/.claude/commands/devkit/config/init-frontend.md +911 -0
  73. package/templates/.claude/commands/devkit/create-test.md +165 -0
  74. package/templates/.claude/commands/devkit/debug.md +481 -0
  75. package/templates/.claude/commands/devkit/docs/capture-knowledge.md +424 -0
  76. package/templates/.claude/commands/devkit/docs/init.md +203 -0
  77. package/templates/.claude/commands/devkit/docs/summarize.md +33 -0
  78. package/templates/.claude/commands/devkit/docs/update.md +207 -0
  79. package/templates/.claude/commands/devkit/fix/fast.md +22 -0
  80. package/templates/.claude/commands/devkit/fix/hard.md +44 -0
  81. package/templates/.claude/commands/devkit/fix.md +16 -0
  82. package/templates/.claude/commands/devkit/frontend/create-api-integration.md +507 -0
  83. package/templates/.claude/commands/devkit/frontend/create-component.md +461 -0
  84. package/templates/.claude/commands/devkit/frontend/create-form.md +804 -0
  85. package/templates/.claude/commands/devkit/frontend/create-page.md +484 -0
  86. package/templates/.claude/commands/devkit/frontend/create-storybook.md +899 -0
  87. package/templates/.claude/commands/devkit/frontend/create-table.md +1035 -0
  88. package/templates/.claude/commands/devkit/help.md +148 -0
  89. package/templates/.claude/commands/devkit/refactor.md +510 -0
  90. package/templates/.claude/commands/devkit/research.md +394 -0
  91. package/templates/.claude/commands/devkit/review/code.md +349 -0
  92. package/templates/.claude/commands/devkit/review/codebase.md +51 -0
  93. package/templates/.claude/commands/devkit/scout.md +312 -0
  94. package/templates/.claude/commands/devkit/skill/add.md +29 -0
  95. package/templates/.claude/commands/devkit/skill/create.md +22 -0
  96. package/templates/.claude/commands/devkit/skill/optimize.md +34 -0
  97. package/templates/.claude/commands/devkit/solve.md +364 -0
  98. package/templates/.claude/commands/devkit/spec/brainstorm.md +309 -0
  99. package/templates/.claude/commands/devkit/spec/capture-requirement.md +202 -0
  100. package/templates/.claude/commands/devkit/spec/cook.md +157 -0
  101. package/templates/.claude/commands/devkit/spec/deep-capture-requirement.md +393 -0
  102. package/templates/.claude/commands/devkit/spec/implement.md +350 -0
  103. package/templates/.claude/commands/devkit/spec/plan.md +269 -0
  104. package/templates/.claude/commands/devkit/spec/task.md +156 -0
  105. package/templates/.claude/commands/devkit/spec/test.md +259 -0
  106. package/templates/.claude/commands/devkit/spec/update-plan.md +263 -0
  107. package/templates/.claude/commands/devkit/spec/update-requirement.md +239 -0
  108. package/templates/.claude/commands/devkit/spec-lite/do.md +280 -0
  109. package/templates/.claude/commands/devkit/spec-lite/plan.md +236 -0
  110. package/templates/.claude/commands/devkit/spec-lite/task.md +141 -0
  111. package/templates/.claude/commands/devkit/spec-lite/test.md +171 -0
  112. package/templates/.claude/commands/devkit/spec-lite/update-plan.md +154 -0
  113. package/templates/.claude/commands/qakit/a11y/audit.md +38 -0
  114. package/templates/.claude/commands/qakit/a11y/fix.md +22 -0
  115. package/templates/.claude/commands/qakit/analyze/full.md +459 -0
  116. package/templates/.claude/commands/qakit/analyze/quick.md +84 -0
  117. package/templates/.claude/commands/qakit/api/analyze.md +34 -0
  118. package/templates/.claude/commands/qakit/api/contract.md +22 -0
  119. package/templates/.claude/commands/qakit/api/generate.md +20 -0
  120. package/templates/.claude/commands/qakit/api/run.md +16 -0
  121. package/templates/.claude/commands/qakit/ask.md +57 -0
  122. package/templates/.claude/commands/qakit/automation/fix-flaky.md +233 -0
  123. package/templates/.claude/commands/qakit/automation/health-check.md +192 -0
  124. package/templates/.claude/commands/qakit/automation/maintenance.md +311 -0
  125. package/templates/.claude/commands/qakit/automation/scaffold-playwright.md +689 -0
  126. package/templates/.claude/commands/qakit/automation/scaffold-webdriverio.md +802 -0
  127. package/templates/.claude/commands/qakit/automation/scaffold.md +447 -0
  128. package/templates/.claude/commands/qakit/automation/update-deps.md +219 -0
  129. package/templates/.claude/commands/qakit/bug/investigate.md +96 -0
  130. package/templates/.claude/commands/qakit/bug/report.md +147 -0
  131. package/templates/.claude/commands/qakit/bug/reproduce.md +101 -0
  132. package/templates/.claude/commands/qakit/bug/triage.md +101 -0
  133. package/templates/.claude/commands/qakit/bug/verify.md +106 -0
  134. package/templates/.claude/commands/qakit/config/init-qa.md +107 -0
  135. package/templates/.claude/commands/qakit/confluence/fetch.md +192 -0
  136. package/templates/.claude/commands/qakit/confluence/search.md +201 -0
  137. package/templates/.claude/commands/qakit/docs/capture-test-knowledge.md +451 -0
  138. package/templates/.claude/commands/qakit/docs/update-changelog.md +207 -0
  139. package/templates/.claude/commands/qakit/docs/update-readme.md +296 -0
  140. package/templates/.claude/commands/qakit/e2e/generate.md +18 -0
  141. package/templates/.claude/commands/qakit/e2e/page-object.md +37 -0
  142. package/templates/.claude/commands/qakit/e2e/run.md +17 -0
  143. package/templates/.claude/commands/qakit/e2e/scenario.md +20 -0
  144. package/templates/.claude/commands/qakit/feature/create.md +178 -0
  145. package/templates/.claude/commands/qakit/feature/enrich-api.md +352 -0
  146. package/templates/.claude/commands/qakit/feature/enrich-tests.md +243 -0
  147. package/templates/.claude/commands/qakit/feature/enrich-ui.md +217 -0
  148. package/templates/.claude/commands/qakit/feature/enrich.md +246 -0
  149. package/templates/.claude/commands/qakit/feature/from-jira.md +184 -0
  150. package/templates/.claude/commands/qakit/feature/update.md +136 -0
  151. package/templates/.claude/commands/qakit/help.md +98 -0
  152. package/templates/.claude/commands/qakit/jira/analyze.md +329 -0
  153. package/templates/.claude/commands/qakit/jira/create-tests.md +319 -0
  154. package/templates/.claude/commands/qakit/kb/add-design.md +258 -0
  155. package/templates/.claude/commands/qakit/kb/capture.md +325 -0
  156. package/templates/.claude/commands/qakit/kb/clean.md +157 -0
  157. package/templates/.claude/commands/qakit/kb/dedupe.md +281 -0
  158. package/templates/.claude/commands/qakit/kb/init.md +234 -0
  159. package/templates/.claude/commands/qakit/kb/link.md +124 -0
  160. package/templates/.claude/commands/qakit/kb/list.md +185 -0
  161. package/templates/.claude/commands/qakit/kb/resolve.md +234 -0
  162. package/templates/.claude/commands/qakit/kb/search.md +202 -0
  163. package/templates/.claude/commands/qakit/kb/sync-confluence.md +474 -0
  164. package/templates/.claude/commands/qakit/metrics/coverage.md +46 -0
  165. package/templates/.claude/commands/qakit/metrics/dashboard.md +62 -0
  166. package/templates/.claude/commands/qakit/metrics/trends.md +42 -0
  167. package/templates/.claude/commands/qakit/perf/analyze.md +31 -0
  168. package/templates/.claude/commands/qakit/perf/plan.md +18 -0
  169. package/templates/.claude/commands/qakit/perf/run.md +17 -0
  170. package/templates/.claude/commands/qakit/perf/script.md +38 -0
  171. package/templates/.claude/commands/qakit/rca/analyze.md +166 -0
  172. package/templates/.claude/commands/qakit/regression/analyze.md +36 -0
  173. package/templates/.claude/commands/qakit/regression/report.md +30 -0
  174. package/templates/.claude/commands/qakit/regression/run.md +17 -0
  175. package/templates/.claude/commands/qakit/regression/select.md +34 -0
  176. package/templates/.claude/commands/qakit/research/deep.md +328 -0
  177. package/templates/.claude/commands/qakit/review/coverage.md +116 -0
  178. package/templates/.claude/commands/qakit/review/quality-gate.md +126 -0
  179. package/templates/.claude/commands/qakit/review/test-code.md +320 -0
  180. package/templates/.claude/commands/qakit/review/test-review.md +109 -0
  181. package/templates/.claude/commands/qakit/scout.md +195 -0
  182. package/templates/.claude/commands/qakit/setup/confluence.md +140 -0
  183. package/templates/.claude/commands/qakit/setup/jira.md +154 -0
  184. package/templates/.claude/commands/qakit/spec/analyze.md +46 -0
  185. package/templates/.claude/commands/qakit/spec/cook.md +344 -0
  186. package/templates/.claude/commands/qakit/spec/execute.md +38 -0
  187. package/templates/.claude/commands/qakit/spec/plan.md +46 -0
  188. package/templates/.claude/commands/qakit/spec/report.md +40 -0
  189. package/templates/.claude/commands/qakit/spec/task.md +40 -0
  190. package/templates/.claude/commands/qakit/test/create-test-case.md +151 -0
  191. package/templates/.claude/commands/qakit/test/create-test-suite.md +84 -0
  192. package/templates/.claude/commands/qakit/test/generate-api-tests.md +82 -0
  193. package/templates/.claude/commands/qakit/test/generate-data.md +114 -0
  194. package/templates/.claude/commands/qakit/test/generate-e2e.md +99 -0
  195. package/templates/.claude/commands/qakit/test/generate-ui-tests.md +97 -0
  196. package/templates/.claude/commands/qakit/testmo/report.md +22 -0
  197. package/templates/.claude/commands/qakit/testmo/sync.md +31 -0
  198. package/templates/.claude/doc-templates/bug-report-template.md +247 -0
  199. package/templates/.claude/doc-templates/code-standards.md +486 -0
  200. package/templates/.claude/doc-templates/codebase-summary.md +426 -0
  201. package/templates/.claude/doc-templates/development-rules.md +553 -0
  202. package/templates/.claude/doc-templates/feature-spec-template.md +167 -0
  203. package/templates/.claude/doc-templates/performance-report-template.md +49 -0
  204. package/templates/.claude/doc-templates/project-overview-pdr.md +494 -0
  205. package/templates/.claude/doc-templates/quality-report-template.md +44 -0
  206. package/templates/.claude/doc-templates/regression-report-template.md +41 -0
  207. package/templates/.claude/doc-templates/system-architecture.md +615 -0
  208. package/templates/.claude/doc-templates/technical-documents.md +127 -0
  209. package/templates/.claude/doc-templates/test-case-template.md +198 -0
  210. package/templates/.claude/doc-templates/test-plan-template.md +366 -0
  211. package/templates/.claude/doc-templates/test-summary-report.md +401 -0
  212. package/templates/.claude/hooks/dev-rules-reminder.cjs +101 -0
  213. package/templates/.claude/hooks/dev-rules-reminder.js +96 -0
  214. package/templates/.claude/hooks/executable_force-agent-skills-eval.sh +38 -0
  215. package/templates/.claude/hooks/scout-block/scout-block.ps1 +92 -0
  216. package/templates/.claude/hooks/scout-block/scout-block.sh +119 -0
  217. package/templates/.claude/hooks/scout-block.cjs +100 -0
  218. package/templates/.claude/hooks/scout-block.js +104 -0
  219. package/templates/.claude/repomix.config.json +34 -0
  220. package/templates/.claude/rules/01-core-principles.md +81 -0
  221. package/templates/.claude/rules/02-naming-and-constants.md +115 -0
  222. package/templates/.claude/rules/03-function-design.md +167 -0
  223. package/templates/.claude/rules/04-error-handling.md +83 -0
  224. package/templates/.claude/rules/05-testing.md +86 -0
  225. package/templates/.claude/rules/06-code-quality.md +107 -0
  226. package/templates/.claude/rules/07-architecture.md +105 -0
  227. package/templates/.claude/rules/08-performance-security.md +93 -0
  228. package/templates/.claude/rules/index.md +77 -0
  229. package/templates/.claude/scripts/README.md +153 -0
  230. package/templates/.claude/scripts/commands_data.yaml +336 -0
  231. package/templates/.claude/scripts/generate_catalogs.py +163 -0
  232. package/templates/.claude/scripts/helper.py +723 -0
  233. package/templates/.claude/scripts/scan_commands.py +101 -0
  234. package/templates/.claude/scripts/scan_skills.py +187 -0
  235. package/templates/.claude/scripts/skills_data.yaml +348 -0
  236. package/templates/.claude/settings.json +54 -0
  237. package/templates/.claude/settings.local.README.md +650 -0
  238. package/templates/.claude/settings.local.json +41 -0
  239. package/templates/.claude/setup/dependencies/setup-claude-mem.ps1 +534 -0
  240. package/templates/.claude/setup/dependencies/setup-claude-mem.sh +477 -0
  241. package/templates/.claude/setup/dependencies/setup-mcp-servers.ps1 +562 -0
  242. package/templates/.claude/setup/dependencies/setup-mcp-servers.sh +511 -0
  243. package/templates/.claude/setup/jira-env.example.sh +22 -0
  244. package/templates/.claude/setup/setup.ps1 +240 -0
  245. package/templates/.claude/setup/setup.sh +222 -0
  246. package/templates/.claude/skills/accessibility-testing/SKILL.md +34 -0
  247. package/templates/.claude/skills/aesthetic/SKILL.md +121 -0
  248. package/templates/.claude/skills/aesthetic/assets/design-guideline-template.md +163 -0
  249. package/templates/.claude/skills/aesthetic/assets/design-story-template.md +135 -0
  250. package/templates/.claude/skills/aesthetic/references/design-principles.md +62 -0
  251. package/templates/.claude/skills/aesthetic/references/design-resources.md +75 -0
  252. package/templates/.claude/skills/aesthetic/references/micro-interactions.md +53 -0
  253. package/templates/.claude/skills/aesthetic/references/storytelling-design.md +50 -0
  254. package/templates/.claude/skills/aesthetic/skill-creator/LICENSE.txt +202 -0
  255. package/templates/.claude/skills/aesthetic/skill-creator/SKILL.md +266 -0
  256. package/templates/.claude/skills/aesthetic/skill-creator/scripts/init_skill.py +303 -0
  257. package/templates/.claude/skills/aesthetic/skill-creator/scripts/package_skill.py +110 -0
  258. package/templates/.claude/skills/aesthetic/skill-creator/scripts/quick_validate.py +65 -0
  259. package/templates/.claude/skills/agent_skills_spec.md +51 -0
  260. package/templates/.claude/skills/ai-multimodal/.env.example +185 -0
  261. package/templates/.claude/skills/ai-multimodal/SKILL.md +69 -0
  262. package/templates/.claude/skills/ai-multimodal/references/audio-processing.md +386 -0
  263. package/templates/.claude/skills/ai-multimodal/references/image-generation.md +722 -0
  264. package/templates/.claude/skills/ai-multimodal/references/video-analysis.md +515 -0
  265. package/templates/.claude/skills/ai-multimodal/references/video-generation.md +457 -0
  266. package/templates/.claude/skills/ai-multimodal/references/vision-understanding.md +492 -0
  267. package/templates/.claude/skills/ai-multimodal/scripts/check_setup.py +299 -0
  268. package/templates/.claude/skills/ai-multimodal/scripts/document_converter.py +395 -0
  269. package/templates/.claude/skills/ai-multimodal/scripts/gemini_batch_process.py +1067 -0
  270. package/templates/.claude/skills/ai-multimodal/scripts/media_optimizer.py +506 -0
  271. package/templates/.claude/skills/ai-multimodal/scripts/requirements.txt +26 -0
  272. package/templates/.claude/skills/ai-multimodal/scripts/tests/requirements.txt +20 -0
  273. package/templates/.claude/skills/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
  274. package/templates/.claude/skills/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
  275. package/templates/.claude/skills/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
  276. package/templates/.claude/skills/api-design-principles/SKILL.md +527 -0
  277. package/templates/.claude/skills/api-design-principles/assets/api-design-checklist.md +136 -0
  278. package/templates/.claude/skills/api-design-principles/assets/rest-api-template.py +165 -0
  279. package/templates/.claude/skills/api-design-principles/references/graphql-schema-design.md +566 -0
  280. package/templates/.claude/skills/api-design-principles/references/rest-best-practices.md +385 -0
  281. package/templates/.claude/skills/api-testing/SKILL.md +24 -0
  282. package/templates/.claude/skills/backend-development/SKILL.md +95 -0
  283. package/templates/.claude/skills/backend-development/references/backend-api-design.md +495 -0
  284. package/templates/.claude/skills/backend-development/references/backend-architecture.md +454 -0
  285. package/templates/.claude/skills/backend-development/references/backend-code-quality.md +659 -0
  286. package/templates/.claude/skills/backend-development/references/backend-debugging.md +904 -0
  287. package/templates/.claude/skills/backend-development/references/backend-devops.md +494 -0
  288. package/templates/.claude/skills/backend-development/references/backend-mindset.md +387 -0
  289. package/templates/.claude/skills/backend-development/references/backend-performance.md +397 -0
  290. package/templates/.claude/skills/backend-development/references/backend-security.md +290 -0
  291. package/templates/.claude/skills/backend-development/references/backend-technologies.md +256 -0
  292. package/templates/.claude/skills/backend-development/references/backend-testing.md +429 -0
  293. package/templates/.claude/skills/bug-investigation/SKILL.md +24 -0
  294. package/templates/.claude/skills/chrome-devtools/SKILL.md +472 -0
  295. package/templates/.claude/skills/chrome-devtools/references/cdp-domains.md +694 -0
  296. package/templates/.claude/skills/chrome-devtools/references/performance-guide.md +940 -0
  297. package/templates/.claude/skills/chrome-devtools/references/puppeteer-reference.md +953 -0
  298. package/templates/.claude/skills/chrome-devtools/scripts/README.md +228 -0
  299. package/templates/.claude/skills/chrome-devtools/scripts/__tests__/selector.test.js +210 -0
  300. package/templates/.claude/skills/chrome-devtools/scripts/aria-snapshot.js +362 -0
  301. package/templates/.claude/skills/chrome-devtools/scripts/click.js +83 -0
  302. package/templates/.claude/skills/chrome-devtools/scripts/console.js +79 -0
  303. package/templates/.claude/skills/chrome-devtools/scripts/evaluate.js +53 -0
  304. package/templates/.claude/skills/chrome-devtools/scripts/fill.js +76 -0
  305. package/templates/.claude/skills/chrome-devtools/scripts/install-deps.sh +181 -0
  306. package/templates/.claude/skills/chrome-devtools/scripts/install.sh +83 -0
  307. package/templates/.claude/skills/chrome-devtools/scripts/lib/browser.js +217 -0
  308. package/templates/.claude/skills/chrome-devtools/scripts/lib/selector.js +178 -0
  309. package/templates/.claude/skills/chrome-devtools/scripts/navigate.js +54 -0
  310. package/templates/.claude/skills/chrome-devtools/scripts/network.js +106 -0
  311. package/templates/.claude/skills/chrome-devtools/scripts/package.json +16 -0
  312. package/templates/.claude/skills/chrome-devtools/scripts/performance.js +149 -0
  313. package/templates/.claude/skills/chrome-devtools/scripts/screenshot.js +194 -0
  314. package/templates/.claude/skills/chrome-devtools/scripts/select-ref.js +131 -0
  315. package/templates/.claude/skills/chrome-devtools/scripts/snapshot.js +135 -0
  316. package/templates/.claude/skills/claude-code-analyzer/SKILL.md +299 -0
  317. package/templates/.claude/skills/claude-code-analyzer/references/best-practices.md +290 -0
  318. package/templates/.claude/skills/claude-code-analyzer/scripts/analyze-claude-md.sh +239 -0
  319. package/templates/.claude/skills/claude-code-analyzer/scripts/analyze.sh +274 -0
  320. package/templates/.claude/skills/claude-code-analyzer/scripts/fetch-features.sh +69 -0
  321. package/templates/.claude/skills/claude-code-analyzer/scripts/github-discovery.sh +178 -0
  322. package/templates/.claude/skills/code-review/SKILL.md +155 -0
  323. package/templates/.claude/skills/code-review/references/code-review-reception.md +209 -0
  324. package/templates/.claude/skills/code-review/references/human-code-review-practices.md +370 -0
  325. package/templates/.claude/skills/code-review/references/requesting-code-review.md +105 -0
  326. package/templates/.claude/skills/code-review/references/verification-before-completion.md +139 -0
  327. package/templates/.claude/skills/command-development/README.md +272 -0
  328. package/templates/.claude/skills/command-development/SKILL.md +834 -0
  329. package/templates/.claude/skills/command-development/examples/plugin-commands.md +557 -0
  330. package/templates/.claude/skills/command-development/examples/simple-commands.md +504 -0
  331. package/templates/.claude/skills/command-development/references/advanced-workflows.md +722 -0
  332. package/templates/.claude/skills/command-development/references/documentation-patterns.md +739 -0
  333. package/templates/.claude/skills/command-development/references/frontmatter-reference.md +463 -0
  334. package/templates/.claude/skills/command-development/references/interactive-commands.md +920 -0
  335. package/templates/.claude/skills/command-development/references/marketplace-considerations.md +904 -0
  336. package/templates/.claude/skills/command-development/references/plugin-features-reference.md +609 -0
  337. package/templates/.claude/skills/command-development/references/testing-strategies.md +702 -0
  338. package/templates/.claude/skills/confluence-integration/confluence-integration.md +260 -0
  339. package/templates/.claude/skills/databases/SKILL.md +232 -0
  340. package/templates/.claude/skills/databases/references/mongodb-aggregation.md +447 -0
  341. package/templates/.claude/skills/databases/references/mongodb-atlas.md +465 -0
  342. package/templates/.claude/skills/databases/references/mongodb-crud.md +408 -0
  343. package/templates/.claude/skills/databases/references/mongodb-indexing.md +442 -0
  344. package/templates/.claude/skills/databases/references/postgresql-administration.md +594 -0
  345. package/templates/.claude/skills/databases/references/postgresql-performance.md +527 -0
  346. package/templates/.claude/skills/databases/references/postgresql-psql-cli.md +467 -0
  347. package/templates/.claude/skills/databases/references/postgresql-queries.md +475 -0
  348. package/templates/.claude/skills/databases/scripts/db_backup.py +502 -0
  349. package/templates/.claude/skills/databases/scripts/db_migrate.py +414 -0
  350. package/templates/.claude/skills/databases/scripts/db_performance_check.py +444 -0
  351. package/templates/.claude/skills/databases/scripts/dot_coverage +0 -0
  352. package/templates/.claude/skills/databases/scripts/requirements.txt +20 -0
  353. package/templates/.claude/skills/databases/scripts/tests/coverage-db.json +1 -0
  354. package/templates/.claude/skills/databases/scripts/tests/requirements.txt +4 -0
  355. package/templates/.claude/skills/databases/scripts/tests/test_db_backup.py +340 -0
  356. package/templates/.claude/skills/databases/scripts/tests/test_db_migrate.py +277 -0
  357. package/templates/.claude/skills/databases/scripts/tests/test_db_performance_check.py +370 -0
  358. package/templates/.claude/skills/debugging/SKILL.md +84 -0
  359. package/templates/.claude/skills/debugging/references/defense-in-depth.md +124 -0
  360. package/templates/.claude/skills/debugging/references/root-cause-tracing.md +122 -0
  361. package/templates/.claude/skills/debugging/references/systematic-debugging.md +102 -0
  362. package/templates/.claude/skills/debugging/references/verification.md +123 -0
  363. package/templates/.claude/skills/debugging/scripts/find-polluter.sh +63 -0
  364. package/templates/.claude/skills/debugging/scripts/find-polluter.test.md +102 -0
  365. package/templates/.claude/skills/docs-discovery/COMPARISON.md +313 -0
  366. package/templates/.claude/skills/docs-discovery/README.md +53 -0
  367. package/templates/.claude/skills/docs-discovery/REFACTORING_SUMMARY.md +144 -0
  368. package/templates/.claude/skills/docs-discovery/SKILL.md +64 -0
  369. package/templates/.claude/skills/docs-discovery/archive/dot_env.example +15 -0
  370. package/templates/.claude/skills/docs-discovery/archive/package.json +24 -0
  371. package/templates/.claude/skills/docs-discovery/archive/references/advanced.md +79 -0
  372. package/templates/.claude/skills/docs-discovery/archive/references/context7-patterns.md +68 -0
  373. package/templates/.claude/skills/docs-discovery/archive/references/errors.md +68 -0
  374. package/templates/.claude/skills/docs-discovery/archive/scripts/analyze-llms-txt.js +211 -0
  375. package/templates/.claude/skills/docs-discovery/archive/scripts/detect-topic.js +172 -0
  376. package/templates/.claude/skills/docs-discovery/archive/scripts/fetch-docs.js +213 -0
  377. package/templates/.claude/skills/docs-discovery/archive/scripts/tests/run-tests.js +72 -0
  378. package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-analyze-llms.js +119 -0
  379. package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-detect-topic.js +112 -0
  380. package/templates/.claude/skills/docs-discovery/archive/scripts/tests/test-fetch-docs.js +84 -0
  381. package/templates/.claude/skills/docs-discovery/archive/scripts/utils/env-loader.js +94 -0
  382. package/templates/.claude/skills/docs-discovery/archive/workflows/library-search.md +87 -0
  383. package/templates/.claude/skills/docs-discovery/archive/workflows/repo-analysis.md +91 -0
  384. package/templates/.claude/skills/docs-discovery/archive/workflows/topic-search.md +77 -0
  385. package/templates/.claude/skills/docs-seeker/.env.example +15 -0
  386. package/templates/.claude/skills/docs-seeker/SKILL.md +97 -0
  387. package/templates/.claude/skills/docs-seeker/package.json +24 -0
  388. package/templates/.claude/skills/docs-seeker/references/advanced.md +79 -0
  389. package/templates/.claude/skills/docs-seeker/references/context7-patterns.md +68 -0
  390. package/templates/.claude/skills/docs-seeker/references/errors.md +68 -0
  391. package/templates/.claude/skills/docs-seeker/scripts/analyze-llms-txt.js +211 -0
  392. package/templates/.claude/skills/docs-seeker/scripts/detect-topic.js +172 -0
  393. package/templates/.claude/skills/docs-seeker/scripts/fetch-docs.js +213 -0
  394. package/templates/.claude/skills/docs-seeker/scripts/tests/run-tests.js +72 -0
  395. package/templates/.claude/skills/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
  396. package/templates/.claude/skills/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
  397. package/templates/.claude/skills/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
  398. package/templates/.claude/skills/docs-seeker/scripts/utils/env-loader.js +94 -0
  399. package/templates/.claude/skills/docs-seeker/workflows/library-search.md +87 -0
  400. package/templates/.claude/skills/docs-seeker/workflows/repo-analysis.md +91 -0
  401. package/templates/.claude/skills/docs-seeker/workflows/topic-search.md +77 -0
  402. package/templates/.claude/skills/document-skills/docx/LICENSE.txt +30 -0
  403. package/templates/.claude/skills/document-skills/docx/SKILL.md +197 -0
  404. package/templates/.claude/skills/document-skills/docx/docx-js.md +350 -0
  405. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  406. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  407. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  408. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  409. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  410. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  411. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  412. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  413. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  414. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  415. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  416. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  417. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  418. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  419. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  420. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  421. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  422. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  423. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  424. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  425. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  426. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  427. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  428. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  429. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  430. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  431. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  432. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  433. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  434. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  435. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  436. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/mce/mc.xsd +75 -0
  437. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  438. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  439. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  440. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  441. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  442. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  443. package/templates/.claude/skills/document-skills/docx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  444. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/pack.py +159 -0
  445. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/unpack.py +29 -0
  446. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validate.py +69 -0
  447. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/__init__.py +15 -0
  448. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/base.py +951 -0
  449. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/docx.py +274 -0
  450. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/pptx.py +315 -0
  451. package/templates/.claude/skills/document-skills/docx/ooxml/scripts/validation/redlining.py +279 -0
  452. package/templates/.claude/skills/document-skills/docx/ooxml.md +610 -0
  453. package/templates/.claude/skills/document-skills/docx/scripts/__init__.py +1 -0
  454. package/templates/.claude/skills/document-skills/docx/scripts/document.py +1276 -0
  455. package/templates/.claude/skills/document-skills/docx/scripts/templates/comments.xml +3 -0
  456. package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsExtended.xml +3 -0
  457. package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsExtensible.xml +3 -0
  458. package/templates/.claude/skills/document-skills/docx/scripts/templates/commentsIds.xml +3 -0
  459. package/templates/.claude/skills/document-skills/docx/scripts/templates/people.xml +3 -0
  460. package/templates/.claude/skills/document-skills/docx/scripts/utilities.py +374 -0
  461. package/templates/.claude/skills/document-skills/pdf/LICENSE.txt +30 -0
  462. package/templates/.claude/skills/document-skills/pdf/SKILL.md +294 -0
  463. package/templates/.claude/skills/document-skills/pdf/forms.md +205 -0
  464. package/templates/.claude/skills/document-skills/pdf/reference.md +612 -0
  465. package/templates/.claude/skills/document-skills/pdf/scripts/check_bounding_boxes.py +70 -0
  466. package/templates/.claude/skills/document-skills/pdf/scripts/check_bounding_boxes_test.py +226 -0
  467. package/templates/.claude/skills/document-skills/pdf/scripts/check_fillable_fields.py +12 -0
  468. package/templates/.claude/skills/document-skills/pdf/scripts/convert_pdf_to_images.py +35 -0
  469. package/templates/.claude/skills/document-skills/pdf/scripts/create_validation_image.py +41 -0
  470. package/templates/.claude/skills/document-skills/pdf/scripts/extract_form_field_info.py +152 -0
  471. package/templates/.claude/skills/document-skills/pdf/scripts/fill_fillable_fields.py +114 -0
  472. package/templates/.claude/skills/document-skills/pdf/scripts/fill_pdf_form_with_annotations.py +108 -0
  473. package/templates/.claude/skills/document-skills/pptx/LICENSE.txt +30 -0
  474. package/templates/.claude/skills/document-skills/pptx/SKILL.md +484 -0
  475. package/templates/.claude/skills/document-skills/pptx/html2pptx.md +625 -0
  476. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
  477. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
  478. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
  479. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
  480. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
  481. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
  482. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
  483. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
  484. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
  485. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
  486. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
  487. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
  488. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
  489. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
  490. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
  491. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
  492. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
  493. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
  494. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
  495. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
  496. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
  497. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
  498. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
  499. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
  500. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
  501. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
  502. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
  503. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
  504. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
  505. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
  506. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
  507. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/mce/mc.xsd +75 -0
  508. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2010.xsd +560 -0
  509. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2012.xsd +67 -0
  510. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-2018.xsd +14 -0
  511. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cex-2018.xsd +20 -0
  512. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-cid-2016.xsd +13 -0
  513. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
  514. package/templates/.claude/skills/document-skills/pptx/ooxml/schemas/microsoft/wml-symex-2015.xsd +8 -0
  515. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/pack.py +159 -0
  516. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/unpack.py +29 -0
  517. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validate.py +69 -0
  518. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/__init__.py +15 -0
  519. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/base.py +951 -0
  520. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/docx.py +274 -0
  521. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/pptx.py +315 -0
  522. package/templates/.claude/skills/document-skills/pptx/ooxml/scripts/validation/redlining.py +279 -0
  523. package/templates/.claude/skills/document-skills/pptx/ooxml.md +427 -0
  524. package/templates/.claude/skills/document-skills/pptx/scripts/html2pptx.js +979 -0
  525. package/templates/.claude/skills/document-skills/pptx/scripts/inventory.py +1020 -0
  526. package/templates/.claude/skills/document-skills/pptx/scripts/rearrange.py +231 -0
  527. package/templates/.claude/skills/document-skills/pptx/scripts/replace.py +385 -0
  528. package/templates/.claude/skills/document-skills/pptx/scripts/thumbnail.py +450 -0
  529. package/templates/.claude/skills/document-skills/xlsx/LICENSE.txt +30 -0
  530. package/templates/.claude/skills/document-skills/xlsx/SKILL.md +289 -0
  531. package/templates/.claude/skills/document-skills/xlsx/recalc.py +178 -0
  532. package/templates/.claude/skills/frontend-development/SKILL.md +208 -0
  533. package/templates/.claude/skills/frontend-development/references/accessibility.md +720 -0
  534. package/templates/.claude/skills/frontend-development/references/data-fetching.md +412 -0
  535. package/templates/.claude/skills/frontend-development/references/forms.md +809 -0
  536. package/templates/.claude/skills/frontend-development/references/fsd-architecture.md +442 -0
  537. package/templates/.claude/skills/frontend-development/references/graphql-apollo.md +731 -0
  538. package/templates/.claude/skills/frontend-development/references/performance.md +417 -0
  539. package/templates/.claude/skills/frontend-development/references/react-patterns.md +451 -0
  540. package/templates/.claude/skills/frontend-development/references/routing.md +436 -0
  541. package/templates/.claude/skills/frontend-development/references/state-management.md +510 -0
  542. package/templates/.claude/skills/frontend-development/references/tailwind-css.md +397 -0
  543. package/templates/.claude/skills/frontend-development/references/testing.md +630 -0
  544. package/templates/.claude/skills/frontend-development/references/typescript-standards.md +363 -0
  545. package/templates/.claude/skills/frontend-development/references/ui-libraries.md +586 -0
  546. package/templates/.claude/skills/infra-engineer/SKILL.md +642 -0
  547. package/templates/.claude/skills/infra-engineer/dot_env.example +76 -0
  548. package/templates/.claude/skills/infra-engineer/references/aws-overview.md +171 -0
  549. package/templates/.claude/skills/infra-engineer/references/browser-rendering.md +305 -0
  550. package/templates/.claude/skills/infra-engineer/references/cicd-github-actions.md +439 -0
  551. package/templates/.claude/skills/infra-engineer/references/cloudflare-d1-kv.md +123 -0
  552. package/templates/.claude/skills/infra-engineer/references/cloudflare-platform.md +271 -0
  553. package/templates/.claude/skills/infra-engineer/references/cloudflare-r2-storage.md +280 -0
  554. package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-advanced.md +312 -0
  555. package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-apis.md +309 -0
  556. package/templates/.claude/skills/infra-engineer/references/cloudflare-workers-basics.md +418 -0
  557. package/templates/.claude/skills/infra-engineer/references/devsecops-basics.md +361 -0
  558. package/templates/.claude/skills/infra-engineer/references/docker-basics.md +297 -0
  559. package/templates/.claude/skills/infra-engineer/references/docker-compose.md +292 -0
  560. package/templates/.claude/skills/infra-engineer/references/finops-basics.md +278 -0
  561. package/templates/.claude/skills/infra-engineer/references/gcloud-platform.md +297 -0
  562. package/templates/.claude/skills/infra-engineer/references/gcloud-services.md +304 -0
  563. package/templates/.claude/skills/infra-engineer/references/kubernetes-basics.md +295 -0
  564. package/templates/.claude/skills/infra-engineer/scripts/cloudflare_deploy.py +269 -0
  565. package/templates/.claude/skills/infra-engineer/scripts/docker_optimize.py +320 -0
  566. package/templates/.claude/skills/infra-engineer/scripts/requirements.txt +20 -0
  567. package/templates/.claude/skills/infra-engineer/scripts/tests/requirements.txt +3 -0
  568. package/templates/.claude/skills/infra-engineer/scripts/tests/test_cloudflare_deploy.py +285 -0
  569. package/templates/.claude/skills/infra-engineer/scripts/tests/test_docker_optimize.py +436 -0
  570. package/templates/.claude/skills/javascript-pro/SKILL.md +96 -0
  571. package/templates/.claude/skills/javascript-pro/references/async-patterns.md +96 -0
  572. package/templates/.claude/skills/javascript-pro/references/best-practices.md +98 -0
  573. package/templates/.claude/skills/javascript-pro/references/design-patterns.md +100 -0
  574. package/templates/.claude/skills/javascript-pro/references/error-handling.md +100 -0
  575. package/templates/.claude/skills/javascript-pro/references/functional-patterns.md +93 -0
  576. package/templates/.claude/skills/javascript-pro/references/modern-syntax.md +100 -0
  577. package/templates/.claude/skills/javascript-pro/references/performance.md +98 -0
  578. package/templates/.claude/skills/jira-integration/adf-parser.md +338 -0
  579. package/templates/.claude/skills/jira-integration/jira-integration.md +353 -0
  580. package/templates/.claude/skills/knowledge-base/knowledge-base.md +212 -0
  581. package/templates/.claude/skills/mobile-development/SKILL.md +212 -0
  582. package/templates/.claude/skills/mobile-development/references/mobile-android.md +604 -0
  583. package/templates/.claude/skills/mobile-development/references/mobile-best-practices.md +545 -0
  584. package/templates/.claude/skills/mobile-development/references/mobile-debugging.md +1089 -0
  585. package/templates/.claude/skills/mobile-development/references/mobile-frameworks.md +465 -0
  586. package/templates/.claude/skills/mobile-development/references/mobile-ios.md +496 -0
  587. package/templates/.claude/skills/mobile-development/references/mobile-mindset.md +544 -0
  588. package/templates/.claude/skills/mobile-testing/SKILL.md +24 -0
  589. package/templates/.claude/skills/performance-testing/SKILL.md +30 -0
  590. package/templates/.claude/skills/planning/SKILL.md +143 -0
  591. package/templates/.claude/skills/planning/references/codebase-understanding.md +62 -0
  592. package/templates/.claude/skills/planning/references/output-standards.md +87 -0
  593. package/templates/.claude/skills/planning/references/plan-organization.md +137 -0
  594. package/templates/.claude/skills/planning/references/research-phase.md +47 -0
  595. package/templates/.claude/skills/planning/references/solution-design.md +63 -0
  596. package/templates/.claude/skills/playwright/SKILL.md +303 -0
  597. package/templates/.claude/skills/playwright/examples/auth.fixture.ts +172 -0
  598. package/templates/.claude/skills/playwright/examples/login.page.ts +232 -0
  599. package/templates/.claude/skills/playwright/references/config.md +391 -0
  600. package/templates/.claude/skills/problem-solving/SKILL.md +96 -0
  601. package/templates/.claude/skills/problem-solving/references/attribution.md +69 -0
  602. package/templates/.claude/skills/problem-solving/references/collision-zone-thinking.md +79 -0
  603. package/templates/.claude/skills/problem-solving/references/inversion-exercise.md +91 -0
  604. package/templates/.claude/skills/problem-solving/references/meta-pattern-recognition.md +87 -0
  605. package/templates/.claude/skills/problem-solving/references/scale-game.md +95 -0
  606. package/templates/.claude/skills/problem-solving/references/simplification-cascades.md +80 -0
  607. package/templates/.claude/skills/problem-solving/references/when-stuck.md +72 -0
  608. package/templates/.claude/skills/prompt-enhancer/SKILL.md +380 -0
  609. package/templates/.claude/skills/python-pro/SKILL.md +59 -0
  610. package/templates/.claude/skills/python-pro/references/async-patterns.md +96 -0
  611. package/templates/.claude/skills/python-pro/references/error-handling.md +84 -0
  612. package/templates/.claude/skills/python-pro/references/performance.md +71 -0
  613. package/templates/.claude/skills/python-pro/references/project-setup.md +78 -0
  614. package/templates/.claude/skills/python-pro/references/security.md +73 -0
  615. package/templates/.claude/skills/python-pro/references/testing.md +90 -0
  616. package/templates/.claude/skills/python-pro/references/type-system.md +88 -0
  617. package/templates/.claude/skills/qa-standards/SKILL.md +176 -0
  618. package/templates/.claude/skills/qa-standards/references/naming-conventions.md +262 -0
  619. package/templates/.claude/skills/quality-metrics/SKILL.md +27 -0
  620. package/templates/.claude/skills/repomix/SKILL.md +247 -0
  621. package/templates/.claude/skills/repomix/references/configuration.md +211 -0
  622. package/templates/.claude/skills/repomix/references/usage-patterns.md +232 -0
  623. package/templates/.claude/skills/repomix/scripts/README.md +179 -0
  624. package/templates/.claude/skills/repomix/scripts/repomix_batch.py +455 -0
  625. package/templates/.claude/skills/repomix/scripts/repos.example.json +15 -0
  626. package/templates/.claude/skills/repomix/scripts/requirements.txt +15 -0
  627. package/templates/.claude/skills/repomix/scripts/tests/test_repomix_batch.py +531 -0
  628. package/templates/.claude/skills/research/SKILL.md +168 -0
  629. package/templates/.claude/skills/sequential-thinking/.env.example +8 -0
  630. package/templates/.claude/skills/sequential-thinking/README.md +183 -0
  631. package/templates/.claude/skills/sequential-thinking/SKILL.md +94 -0
  632. package/templates/.claude/skills/sequential-thinking/package.json +31 -0
  633. package/templates/.claude/skills/sequential-thinking/references/advanced-strategies.md +79 -0
  634. package/templates/.claude/skills/sequential-thinking/references/advanced-techniques.md +76 -0
  635. package/templates/.claude/skills/sequential-thinking/references/core-patterns.md +95 -0
  636. package/templates/.claude/skills/sequential-thinking/references/examples-api.md +88 -0
  637. package/templates/.claude/skills/sequential-thinking/references/examples-architecture.md +94 -0
  638. package/templates/.claude/skills/sequential-thinking/references/examples-debug.md +90 -0
  639. package/templates/.claude/skills/sequential-thinking/scripts/format-thought.js +159 -0
  640. package/templates/.claude/skills/sequential-thinking/scripts/process-thought.js +236 -0
  641. package/templates/.claude/skills/sequential-thinking/tests/format-thought.test.js +133 -0
  642. package/templates/.claude/skills/sequential-thinking/tests/process-thought.test.js +215 -0
  643. package/templates/.claude/skills/test-automation/SKILL.md +93 -0
  644. package/templates/.claude/skills/test-automation/examples/page-object.ts +44 -0
  645. package/templates/.claude/skills/test-automation/references/frameworks.md +96 -0
  646. package/templates/.claude/skills/test-data-management/SKILL.md +24 -0
  647. package/templates/.claude/skills/test-design/SKILL.md +25 -0
  648. package/templates/.claude/skills/typescript-pro/SKILL.md +84 -0
  649. package/templates/.claude/skills/typescript-pro/references/advanced-patterns.md +100 -0
  650. package/templates/.claude/skills/typescript-pro/references/best-practices.md +96 -0
  651. package/templates/.claude/skills/typescript-pro/references/conditional-types.md +85 -0
  652. package/templates/.claude/skills/typescript-pro/references/generics.md +97 -0
  653. package/templates/.claude/skills/typescript-pro/references/mapped-types.md +99 -0
  654. package/templates/.claude/skills/typescript-pro/references/template-literals.md +85 -0
  655. package/templates/.claude/skills/typescript-pro/references/type-inference.md +94 -0
  656. package/templates/.claude/skills/typescript-pro/references/utility-types.md +96 -0
  657. package/templates/.claude/skills/ui-testing/SKILL.md +24 -0
  658. package/templates/.claude/skills/ui-ux-pro-max/SKILL.md +229 -0
  659. package/templates/.claude/skills/ui-ux-pro-max/data/charts.csv +26 -0
  660. package/templates/.claude/skills/ui-ux-pro-max/data/colors.csv +97 -0
  661. package/templates/.claude/skills/ui-ux-pro-max/data/landing.csv +31 -0
  662. package/templates/.claude/skills/ui-ux-pro-max/data/products.csv +97 -0
  663. package/templates/.claude/skills/ui-ux-pro-max/data/prompts.csv +24 -0
  664. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  665. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  666. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  667. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  668. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  669. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  670. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  671. package/templates/.claude/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  672. package/templates/.claude/skills/ui-ux-pro-max/data/styles.csv +59 -0
  673. package/templates/.claude/skills/ui-ux-pro-max/data/typography.csv +58 -0
  674. package/templates/.claude/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  675. package/templates/.claude/skills/ui-ux-pro-max/scripts/core.py +236 -0
  676. package/templates/.claude/skills/ui-ux-pro-max/scripts/search.py +61 -0
  677. package/templates/.claude/skills/webdriverio/SKILL.md +433 -0
  678. package/templates/.claude/skills/webdriverio/examples/mobile.page.ts +369 -0
  679. package/templates/.claude/skills/webdriverio/references/capabilities.md +377 -0
  680. package/templates/.claude/statusline.cjs +105 -0
  681. package/templates/.claude/statusline.ps1 +187 -0
  682. package/templates/.claude/statusline.sh +161 -0
  683. package/templates/.claude/workflows/api-testing-workflow.md +36 -0
  684. package/templates/.claude/workflows/bug-investigation-workflow.md +42 -0
  685. package/templates/.claude/workflows/development-rules.md +366 -0
  686. package/templates/.claude/workflows/documentation-management.md +128 -0
  687. package/templates/.claude/workflows/e2e-testing-workflow.md +36 -0
  688. package/templates/.claude/workflows/orchestration-protocol.md +16 -0
  689. package/templates/.claude/workflows/performance-testing-workflow.md +42 -0
  690. package/templates/.claude/workflows/primary-workflow.md +45 -0
  691. package/templates/.claude/workflows/qa-primary-workflow.md +48 -0
  692. package/templates/.claude/workflows/qa-rules.md +42 -0
  693. package/templates/.claude/workflows/regression-testing-workflow.md +36 -0
  694. package/templates/.claude/workflows/test-driven-qa-workflow.md +37 -0
  695. package/templates/.codex/config.toml.template +29 -0
  696. package/templates/.codex/prompts/qa-commands.md +32 -0
  697. package/templates/.codex/prompts/test-generation.md +29 -0
  698. package/templates/.cursor/CHANGELOG.md +540 -0
  699. package/templates/.cursor/README.md +261 -0
  700. package/templates/.cursor/commands/devkit/ask.md +71 -0
  701. package/templates/.cursor/commands/devkit/backend/create-api.md +207 -0
  702. package/templates/.cursor/commands/devkit/backend/create-migration.md +169 -0
  703. package/templates/.cursor/commands/devkit/backend/create-schema.md +183 -0
  704. package/templates/.cursor/commands/devkit/backend/design-graphql-api.md +287 -0
  705. package/templates/.cursor/commands/devkit/backend/design-rest-api.md +219 -0
  706. package/templates/.cursor/commands/devkit/config/init-backend.md +219 -0
  707. package/templates/.cursor/commands/devkit/config/init-frontend.md +114 -0
  708. package/templates/.cursor/commands/devkit/create-api-integration.md +196 -0
  709. package/templates/.cursor/commands/devkit/create-component.md +104 -0
  710. package/templates/.cursor/commands/devkit/create-form.md +189 -0
  711. package/templates/.cursor/commands/devkit/create-page.md +111 -0
  712. package/templates/.cursor/commands/devkit/create-storybook.md +235 -0
  713. package/templates/.cursor/commands/devkit/create-table.md +251 -0
  714. package/templates/.cursor/commands/devkit/create-test.md +174 -0
  715. package/templates/.cursor/commands/devkit/debug.md +192 -0
  716. package/templates/.cursor/commands/devkit/docs/capture-knowledge.md +252 -0
  717. package/templates/.cursor/commands/devkit/docs/init.md +153 -0
  718. package/templates/.cursor/commands/devkit/docs/summarize.md +82 -0
  719. package/templates/.cursor/commands/devkit/docs/update.md +174 -0
  720. package/templates/.cursor/commands/devkit/fix.md +24 -0
  721. package/templates/.cursor/commands/devkit/help.md +148 -0
  722. package/templates/.cursor/commands/devkit/refactor.md +476 -0
  723. package/templates/.cursor/commands/devkit/research.md +135 -0
  724. package/templates/.cursor/commands/devkit/review/code.md +297 -0
  725. package/templates/.cursor/commands/devkit/review/codebase.md +37 -0
  726. package/templates/.cursor/commands/devkit/scout.md +103 -0
  727. package/templates/.cursor/commands/devkit/solve.md +355 -0
  728. package/templates/.cursor/commands/devkit/spec/brainstorm.md +184 -0
  729. package/templates/.cursor/commands/devkit/spec/capture-requirement.md +164 -0
  730. package/templates/.cursor/commands/devkit/spec/cook.md +101 -0
  731. package/templates/.cursor/commands/devkit/spec/deep-capture-requirement.md +149 -0
  732. package/templates/.cursor/commands/devkit/spec/implement.md +354 -0
  733. package/templates/.cursor/commands/devkit/spec/plan.md +317 -0
  734. package/templates/.cursor/commands/devkit/spec/task.md +150 -0
  735. package/templates/.cursor/commands/devkit/spec/test.md +203 -0
  736. package/templates/.cursor/commands/devkit/spec/update-plan.md +234 -0
  737. package/templates/.cursor/commands/devkit/spec/update-requirement.md +222 -0
  738. package/templates/.cursor/commands/devkit/spec-lite/do.md +154 -0
  739. package/templates/.cursor/commands/devkit/spec-lite/plan.md +197 -0
  740. package/templates/.cursor/commands/devkit/spec-lite/task.md +138 -0
  741. package/templates/.cursor/commands/devkit/spec-lite/test.md +129 -0
  742. package/templates/.cursor/commands/devkit/spec-lite/update-plan.md +133 -0
  743. package/templates/.cursor/commands/devkit/ui-ux-pro-max.md +226 -0
  744. package/templates/.cursor/doc-templates/code-standards.md +486 -0
  745. package/templates/.cursor/doc-templates/codebase-summary.md +426 -0
  746. package/templates/.cursor/doc-templates/development-rules.md +553 -0
  747. package/templates/.cursor/doc-templates/project-overview-pdr.md +494 -0
  748. package/templates/.cursor/doc-templates/system-architecture.md +615 -0
  749. package/templates/.cursor/doc-templates/technical-documents.md +127 -0
  750. package/templates/.cursor/repomix.config.json +34 -0
  751. package/templates/.cursor/rules/backend-development/backend-development.mdc +94 -0
  752. package/templates/.cursor/rules/backend-development/references/backend-api-design.md +495 -0
  753. package/templates/.cursor/rules/backend-development/references/backend-architecture.md +454 -0
  754. package/templates/.cursor/rules/backend-development/references/backend-code-quality.md +659 -0
  755. package/templates/.cursor/rules/backend-development/references/backend-debugging.md +904 -0
  756. package/templates/.cursor/rules/backend-development/references/backend-devops.md +494 -0
  757. package/templates/.cursor/rules/backend-development/references/backend-mindset.md +387 -0
  758. package/templates/.cursor/rules/backend-development/references/backend-performance.md +397 -0
  759. package/templates/.cursor/rules/backend-development/references/backend-security.md +290 -0
  760. package/templates/.cursor/rules/backend-development/references/backend-technologies.md +256 -0
  761. package/templates/.cursor/rules/backend-development/references/backend-testing.md +429 -0
  762. package/templates/.cursor/rules/brainstormer.mdc +147 -0
  763. package/templates/.cursor/rules/code-optimizer.mdc +132 -0
  764. package/templates/.cursor/rules/code-review/code-revew.mdc +144 -0
  765. package/templates/.cursor/rules/code-review/references/code-review-reception.md +209 -0
  766. package/templates/.cursor/rules/code-review/references/requesting-code-review.md +105 -0
  767. package/templates/.cursor/rules/code-review/references/verification-before-completion.md +139 -0
  768. package/templates/.cursor/rules/code-reviewer.mdc +85 -0
  769. package/templates/.cursor/rules/code-simplifier.mdc +121 -0
  770. package/templates/.cursor/rules/coder.mdc +86 -0
  771. package/templates/.cursor/rules/community-rules.mdc +38 -0
  772. package/templates/.cursor/rules/cunningham.mdc +114 -0
  773. package/templates/.cursor/rules/debugger.mdc +108 -0
  774. package/templates/.cursor/rules/development-rules.mdc +208 -0
  775. package/templates/.cursor/rules/docs-manager.mdc +121 -0
  776. package/templates/.cursor/rules/docs-seeker/docs-seeker.mdc +57 -0
  777. package/templates/.cursor/rules/docs-seeker/references/advanced.md +80 -0
  778. package/templates/.cursor/rules/docs-seeker/references/context7-patterns.md +69 -0
  779. package/templates/.cursor/rules/docs-seeker/references/errors.md +69 -0
  780. package/templates/.cursor/rules/docs-seeker/scripts/analyze-llms-txt.js +211 -0
  781. package/templates/.cursor/rules/docs-seeker/scripts/detect-topic.js +172 -0
  782. package/templates/.cursor/rules/docs-seeker/scripts/fetch-docs.js +213 -0
  783. package/templates/.cursor/rules/docs-seeker/scripts/tests/run-tests.js +72 -0
  784. package/templates/.cursor/rules/docs-seeker/scripts/tests/test-analyze-llms.js +119 -0
  785. package/templates/.cursor/rules/docs-seeker/scripts/tests/test-detect-topic.js +112 -0
  786. package/templates/.cursor/rules/docs-seeker/scripts/tests/test-fetch-docs.js +84 -0
  787. package/templates/.cursor/rules/docs-seeker/scripts/utils/env-loader.js +94 -0
  788. package/templates/.cursor/rules/docs-seeker/workflows/library-search.md +88 -0
  789. package/templates/.cursor/rules/docs-seeker/workflows/repo-analysis.md +92 -0
  790. package/templates/.cursor/rules/docs-seeker/workflows/topic-search.md +78 -0
  791. package/templates/.cursor/rules/frontend-development/frontend-development.mdc +131 -0
  792. package/templates/.cursor/rules/frontend-development/references/accessibility.md +719 -0
  793. package/templates/.cursor/rules/frontend-development/references/data-fetching.md +412 -0
  794. package/templates/.cursor/rules/frontend-development/references/forms.md +808 -0
  795. package/templates/.cursor/rules/frontend-development/references/fsd-architecture.md +442 -0
  796. package/templates/.cursor/rules/frontend-development/references/graphql-apollo.md +730 -0
  797. package/templates/.cursor/rules/frontend-development/references/performance.md +417 -0
  798. package/templates/.cursor/rules/frontend-development/references/react-patterns.md +451 -0
  799. package/templates/.cursor/rules/frontend-development/references/routing.md +436 -0
  800. package/templates/.cursor/rules/frontend-development/references/state-management.md +511 -0
  801. package/templates/.cursor/rules/frontend-development/references/tailwind-css.md +398 -0
  802. package/templates/.cursor/rules/frontend-development/references/testing.md +629 -0
  803. package/templates/.cursor/rules/frontend-development/references/typescript-standards.md +364 -0
  804. package/templates/.cursor/rules/frontend-development/references/ui-libraries.md +587 -0
  805. package/templates/.cursor/rules/javascript-pro/javascript-pro.mdc +98 -0
  806. package/templates/.cursor/rules/javascript-pro/references/async-patterns.md +96 -0
  807. package/templates/.cursor/rules/javascript-pro/references/best-practices.md +98 -0
  808. package/templates/.cursor/rules/javascript-pro/references/design-patterns.md +100 -0
  809. package/templates/.cursor/rules/javascript-pro/references/error-handling.md +100 -0
  810. package/templates/.cursor/rules/javascript-pro/references/functional-patterns.md +93 -0
  811. package/templates/.cursor/rules/javascript-pro/references/modern-syntax.md +100 -0
  812. package/templates/.cursor/rules/javascript-pro/references/performance.md +98 -0
  813. package/templates/.cursor/rules/planner.mdc +87 -0
  814. package/templates/.cursor/rules/problem-solving/problem-solving.mdc +96 -0
  815. package/templates/.cursor/rules/problem-solving/references/attribution.md +69 -0
  816. package/templates/.cursor/rules/problem-solving/references/collision-zone-thinking.md +79 -0
  817. package/templates/.cursor/rules/problem-solving/references/inversion-exercise.md +91 -0
  818. package/templates/.cursor/rules/problem-solving/references/meta-pattern-recognition.md +87 -0
  819. package/templates/.cursor/rules/problem-solving/references/scale-game.md +95 -0
  820. package/templates/.cursor/rules/problem-solving/references/simplification-cascades.md +80 -0
  821. package/templates/.cursor/rules/problem-solving/references/when-stuck.md +72 -0
  822. package/templates/.cursor/rules/project-manager.mdc +116 -0
  823. package/templates/.cursor/rules/project-profile.mdc +54 -0
  824. package/templates/.cursor/rules/python-pro/python-pro.mdc +83 -0
  825. package/templates/.cursor/rules/python-pro/references/async-patterns.md +96 -0
  826. package/templates/.cursor/rules/python-pro/references/error-handling.md +84 -0
  827. package/templates/.cursor/rules/python-pro/references/performance.md +71 -0
  828. package/templates/.cursor/rules/python-pro/references/project-setup.md +78 -0
  829. package/templates/.cursor/rules/python-pro/references/security.md +73 -0
  830. package/templates/.cursor/rules/python-pro/references/testing.md +90 -0
  831. package/templates/.cursor/rules/python-pro/references/type-system.md +88 -0
  832. package/templates/.cursor/rules/qa-api-testing.mdc +25 -0
  833. package/templates/.cursor/rules/qa-automation.mdc +28 -0
  834. package/templates/.cursor/rules/qa-testing.mdc +28 -0
  835. package/templates/.cursor/rules/repomix/references/configuration.md +211 -0
  836. package/templates/.cursor/rules/repomix/references/usage-patterns.md +232 -0
  837. package/templates/.cursor/rules/repomix/repomix.mdc +248 -0
  838. package/templates/.cursor/rules/repomix/scripts/README.md +179 -0
  839. package/templates/.cursor/rules/repomix/scripts/repomix_batch.py +455 -0
  840. package/templates/.cursor/rules/repomix/scripts/repos.example.json +15 -0
  841. package/templates/.cursor/rules/repomix/scripts/requirements.txt +15 -0
  842. package/templates/.cursor/rules/repomix/scripts/tests/test_repomix_batch.py +531 -0
  843. package/templates/.cursor/rules/research/research.mdc +111 -0
  844. package/templates/.cursor/rules/researcher.mdc +54 -0
  845. package/templates/.cursor/rules/scout.mdc +105 -0
  846. package/templates/.cursor/rules/security-agent.mdc +122 -0
  847. package/templates/.cursor/rules/security.mdc +90 -0
  848. package/templates/.cursor/rules/sequential-thinking/references/advanced-strategies.md +80 -0
  849. package/templates/.cursor/rules/sequential-thinking/references/advanced-techniques.md +77 -0
  850. package/templates/.cursor/rules/sequential-thinking/references/core-patterns.md +96 -0
  851. package/templates/.cursor/rules/sequential-thinking/references/examples-api.md +89 -0
  852. package/templates/.cursor/rules/sequential-thinking/references/examples-architecture.md +95 -0
  853. package/templates/.cursor/rules/sequential-thinking/references/examples-debug.md +91 -0
  854. package/templates/.cursor/rules/sequential-thinking/scripts/format-thought.js +159 -0
  855. package/templates/.cursor/rules/sequential-thinking/scripts/process-thought.js +236 -0
  856. package/templates/.cursor/rules/sequential-thinking/sequential-thinking.mdc +86 -0
  857. package/templates/.cursor/rules/tattletale-reporter.mdc +64 -0
  858. package/templates/.cursor/rules/tester.mdc +221 -0
  859. package/templates/.cursor/rules/testing.mdc +215 -0
  860. package/templates/.cursor/rules/typescript-pro/references/advanced-patterns.md +100 -0
  861. package/templates/.cursor/rules/typescript-pro/references/best-practices.md +96 -0
  862. package/templates/.cursor/rules/typescript-pro/references/conditional-types.md +85 -0
  863. package/templates/.cursor/rules/typescript-pro/references/generics.md +97 -0
  864. package/templates/.cursor/rules/typescript-pro/references/mapped-types.md +99 -0
  865. package/templates/.cursor/rules/typescript-pro/references/template-literals.md +85 -0
  866. package/templates/.cursor/rules/typescript-pro/references/type-inference.md +94 -0
  867. package/templates/.cursor/rules/typescript-pro/references/utility-types.md +96 -0
  868. package/templates/.cursor/rules/typescript-pro/typescript-pro.mdc +101 -0
  869. package/templates/.cursor/rules/typescript-pro.mdc +129 -0
  870. package/templates/.cursor/rules/ui-ux-designer.mdc +117 -0
  871. package/templates/.cursor/scripts/helper.py +723 -0
  872. package/templates/.cursor/settings.json +5 -0
  873. package/templates/.kiro/steering/qa-standards.md +84 -0
  874. package/templates/.kiro/steering/test-patterns.md +62 -0
  875. package/templates/.kiro/steering/tool-integration.md +73 -0
@@ -0,0 +1,64 @@
1
+ ---
2
+ description: Skeptical code quality inspector who questions everything and demands proof
3
+ globs:
4
+ - "**/*.ts"
5
+ - "**/*.tsx"
6
+ - "**/*.js"
7
+ - "**/*.jsx"
8
+ - "**/*.py"
9
+ ---
10
+
11
+ # Tattletale Reporter
12
+
13
+ You are a SKEPTICAL and CRITICAL code quality inspector who questions EVERYTHING.
14
+
15
+ ## Core Behavior
16
+
17
+ **NEVER ACCEPT "IT WORKS" WITHOUT PROOF**:
18
+ - If code "builds", demand to see build logs
19
+ - If "tests pass", demand to see test output
20
+ - If "fixed", demand to see verification
21
+ - Call out unverified claims
22
+
23
+ **CATCH SHORTCUTS**:
24
+ - Identify skipped instructions
25
+ - Point out simplified implementations
26
+ - Flag "temporary" solutions
27
+ - Notice bypassed patterns
28
+
29
+ **DEMAND VERIFICATION**:
30
+ - Fix issues one by one
31
+ - Check logs after EACH fix
32
+ - Require proof at every step
33
+ - Don't move on until resolved
34
+
35
+ ## Reporting Format
36
+
37
+ ```
38
+ FAILURES:
39
+ - What was claimed vs what happened
40
+
41
+ SKIPPED STEPS:
42
+ - Instructions that were ignored
43
+
44
+ UNVERIFIED CLAIMS:
45
+ - Statements without proof
46
+
47
+ INCOMPLETE WORK:
48
+ - Tasks marked done but not finished
49
+
50
+ VIOLATIONS:
51
+ - Project rules that were broken
52
+ ```
53
+
54
+ ## Questions to Ask
55
+
56
+ - "Did you actually run that command?"
57
+ - "Show me the exact output"
58
+ - "Why didn't you check the logs?"
59
+ - "You skipped step X - go back"
60
+ - "That's a workaround, not a solution"
61
+
62
+ ## Motto
63
+
64
+ "Show me the logs or it didn't happen."
@@ -0,0 +1,221 @@
1
+ ---
2
+ description: Testing specialist for comprehensive test coverage
3
+ globs:
4
+ - "**/*.test.ts"
5
+ - "**/*.test.tsx"
6
+ - "**/*.spec.ts"
7
+ - "**/*.spec.tsx"
8
+ - "**/*.test.js"
9
+ - "**/*.test.py"
10
+ - "**/test_*.py"
11
+ ---
12
+
13
+ # Tester
14
+
15
+ Testing specialist focused on comprehensive, real test coverage.
16
+
17
+ **CRITICAL MANDATE:** When tests fail, you MUST fix them until ALL tests pass. Do NOT just report failures - your job is to achieve 100% passing tests.
18
+
19
+ ## Core Rules
20
+
21
+ 🔴 **NO FAKE DATA** - Tests must use real scenarios
22
+ 🔴 **NO MOCKS** (unless external services)
23
+ 🔴 **NO CHEATS** - No tricks to pass tests
24
+ 🔴 **NO SHORTCUTS** - Cover all cases
25
+ 🔴 **FIX FAILURES** - Fix failing tests, don't just report them
26
+
27
+ ## Test Types
28
+
29
+ ### Unit Tests
30
+ - Test single functions/methods
31
+ - Isolate from dependencies
32
+ - Fast execution
33
+ - High coverage
34
+
35
+ ### Integration Tests
36
+ - Test component interactions
37
+ - Database operations
38
+ - API endpoints
39
+ - Service communication
40
+
41
+ ### E2E Tests
42
+ - User flows
43
+ - Critical paths
44
+ - Cross-browser (if applicable)
45
+
46
+ ## Test Structure
47
+
48
+ ```typescript
49
+ describe('[Component/Function]', () => {
50
+ describe('[Method/Scenario]', () => {
51
+ it('should [expected behavior]', () => {
52
+ // Arrange
53
+ const input = createTestData();
54
+
55
+ // Act
56
+ const result = functionUnderTest(input);
57
+
58
+ // Assert
59
+ expect(result).toEqual(expected);
60
+ });
61
+ });
62
+ });
63
+ ```
64
+
65
+ ## Coverage Goals
66
+
67
+ | Type | Target |
68
+ |------|--------|
69
+ | Lines | 100% |
70
+ | Branches | 100% |
71
+ | Functions | 100% |
72
+ | Statements | 100% |
73
+
74
+ **Target 100% coverage.** Only accept less with explicit user approval.
75
+
76
+ ## Test Checklist
77
+
78
+ - [ ] Happy path covered
79
+ - [ ] Edge cases tested
80
+ - [ ] Error scenarios handled
81
+ - [ ] Boundary conditions checked
82
+ - [ ] No hardcoded test data
83
+ - [ ] Tests are deterministic
84
+ - [ ] Tests are independent
85
+ - [ ] Tests run fast
86
+
87
+ ## Handling Hung or Slow Runs
88
+
89
+ - Run with explicit timeouts: Jest `--testTimeout=60000`, Vitest `--test-timeout=60000`.
90
+ - Avoid watch mode for CI runs (`CI=1` or `--watch=false`).
91
+ - If a run shows no output for ~60s, stop it, keep the partial log, and rerun with `--runInBand` and limited workers (e.g., `--maxWorkers=50%`) to find the culprit.
92
+ - Record the slow test file/title and address it before proceeding.
93
+ - If a test fails or times out, fix the root cause immediately and rerun until the suite is fully green; do not move on with failing tests.
94
+
95
+ ## Fix Loop (CRITICAL)
96
+
97
+ When tests fail, follow this loop until ALL tests pass:
98
+
99
+ ### 1. Analyze Failure
100
+ ```
101
+ For each failing test:
102
+ ├── Read the error message completely
103
+ ├── Identify failure type:
104
+ │ ├── Assertion failure → check expected vs actual
105
+ │ ├── Runtime error → check stack trace
106
+ │ ├── Timeout → check async handling
107
+ │ └── Import/dependency → check module resolution
108
+ └── Locate the root cause in source or test code
109
+ ```
110
+
111
+ ### 2. Determine Fix Strategy
112
+ - **Test bug**: Fix the test code (wrong assertion, bad setup, missing cleanup)
113
+ - **Implementation bug**: Fix the source code (the test found a real bug)
114
+ - **Environment issue**: Fix setup (missing mocks for externals, config issues)
115
+ - **Flaky test**: Add proper waits, isolate state, ensure determinism
116
+
117
+ ### 3. Apply Fix
118
+ - Make the minimal change to fix the issue
119
+ - Don't disable or skip the test
120
+ - Don't weaken assertions to make them pass
121
+ - Don't add broad try-catch to hide errors
122
+
123
+ ### 4. Re-run & Verify
124
+ ```bash
125
+ # Run the specific failing test first
126
+ npm test -- --testNamePattern="[exact test name]"
127
+
128
+ # If it passes, run the full suite
129
+ npm test
130
+ ```
131
+
132
+ ### 5. Repeat Until Done
133
+ - If new failures appear, add them to the fix queue
134
+ - Continue until: **0 failures, 0 errors, all tests green**
135
+
136
+ **NEVER:**
137
+ - Leave tests failing and move on
138
+ - Comment out failing tests
139
+ - Skip tests with `.skip`
140
+ - Just report failures without fixing
141
+
142
+ ## Per-File Testing Mode (CRITICAL)
143
+
144
+ When given a **specific file** to test, follow per-file workflow:
145
+
146
+ ### Per-File Workflow
147
+
148
+ ```
149
+ FOR each source file:
150
+ 1. CHECK: Does test file exist?
151
+ - Look for: [file].test.ts, [file].spec.ts, __tests__/[file].test.ts
152
+
153
+ 2. IF test file EXISTS:
154
+ a. Run existing tests for THIS FILE ONLY
155
+ b. IF tests FAIL → Fix them first (use Fix Loop)
156
+ c. Check coverage for THIS FILE ONLY
157
+
158
+ 3. ANALYZE coverage gap:
159
+ - List uncovered lines/branches
160
+ - Identify functions without tests
161
+
162
+ 4. CREATE tests until 100%:
163
+ WHILE file_coverage < 100%:
164
+ a. Write tests for uncovered code
165
+ b. Run tests - fix any failures
166
+ c. Re-check coverage for THIS FILE
167
+ END WHILE
168
+
169
+ 5. OUTPUT: "✓ [filename]: 100% coverage - [N] tests"
170
+ END FOR
171
+ ```
172
+
173
+ ### Per-File Coverage Commands
174
+
175
+ **JavaScript/TypeScript:**
176
+ ```bash
177
+ # Jest - single file
178
+ npm test -- --coverage --collectCoverageFrom='src/path/to/file.ts' file.test.ts
179
+
180
+ # Vitest - single file
181
+ npx vitest run --coverage.include='src/path/to/file.ts' file.test.ts
182
+ ```
183
+
184
+ **Python:**
185
+ ```bash
186
+ pytest --cov=path/to/module --cov-report=term-missing tests/test_file.py
187
+ ```
188
+
189
+ ### Per-File Output Format
190
+
191
+ ```
192
+ FILE: [source-path]
193
+ TEST FILE: [test-path] (created/existing)
194
+ COVERAGE: 100%
195
+ TESTS: [N] created/fixed
196
+ RESULT: ✓ Complete
197
+ ```
198
+
199
+ ---
200
+
201
+ ## What to Test
202
+
203
+ ✓ Business logic
204
+ ✓ Data transformations
205
+ ✓ Error handling
206
+ ✓ Edge cases
207
+ ✓ Input validation
208
+ ✓ API contracts
209
+
210
+ ## What NOT to Test
211
+
212
+ ✗ Framework internals
213
+ ✗ External libraries
214
+ ✗ Simple getters/setters
215
+ ✗ Configuration constants
216
+ ✗ Test files (`*.test.ts`, `*.spec.ts`)
217
+ ✗ Type definitions (`*.d.ts`)
218
+ ✗ Config files (`*.config.*`)
219
+ ✗ Index/barrel files (`index.ts`)
220
+ ✗ Migration files
221
+ ✗ Generated files
@@ -0,0 +1,215 @@
1
+ ---
2
+ description: Testing patterns and best practices
3
+ globs:
4
+ - "**/*.test.ts"
5
+ - "**/*.test.tsx"
6
+ - "**/*.spec.ts"
7
+ - "**/*.spec.tsx"
8
+ - "**/__tests__/**"
9
+ - "**/test/**"
10
+ - "**/tests/**"
11
+ - "**/jest.config.*"
12
+ - "**/vitest.config.*"
13
+ alwaysApply: false
14
+ ---
15
+
16
+ # Testing Rules
17
+
18
+ Expert testing architect for comprehensive test coverage.
19
+
20
+ ## Test Structure (AAA Pattern)
21
+
22
+ ```typescript
23
+ describe('UserService', () => {
24
+ describe('create', () => {
25
+ it('should create user with valid data', async () => {
26
+ // Arrange
27
+ const userData = { email: 'test@example.com', name: 'Test' }
28
+ const mockRepo = { save: vi.fn().mockResolvedValue({ id: 1, ...userData }) }
29
+
30
+ // Act
31
+ const result = await userService.create(userData)
32
+
33
+ // Assert
34
+ expect(result).toEqual({ id: 1, ...userData })
35
+ expect(mockRepo.save).toHaveBeenCalledWith(userData)
36
+ })
37
+
38
+ it('should throw error when email exists', async () => {
39
+ // Arrange
40
+ const userData = { email: 'existing@example.com', name: 'Test' }
41
+ mockRepo.findByEmail.mockResolvedValue({ id: 1 })
42
+
43
+ // Act & Assert
44
+ await expect(userService.create(userData)).rejects.toThrow('Email exists')
45
+ })
46
+ })
47
+ })
48
+ ```
49
+
50
+ ## Naming Conventions
51
+
52
+ ```typescript
53
+ // Pattern: should [expected behavior] when [condition]
54
+ it('should return null when user not found', () => {})
55
+ it('should throw ValidationError when email is invalid', () => {})
56
+ it('should update user when given valid data', () => {})
57
+ it('should call repository save method once', () => {})
58
+ ```
59
+
60
+ ## Mocking Patterns
61
+
62
+ ### Jest/Vitest Mocks
63
+ ```typescript
64
+ // Mock modules
65
+ vi.mock('../services/email.service', () => ({
66
+ sendEmail: vi.fn().mockResolvedValue(true),
67
+ }))
68
+
69
+ // Mock implementations
70
+ const mockUserRepository = {
71
+ find: vi.fn(),
72
+ findOne: vi.fn(),
73
+ save: vi.fn(),
74
+ delete: vi.fn(),
75
+ }
76
+
77
+ // Spy on methods
78
+ const saveSpy = vi.spyOn(userRepository, 'save')
79
+ expect(saveSpy).toHaveBeenCalledTimes(1)
80
+ ```
81
+
82
+ ### Mock Reset
83
+ ```typescript
84
+ beforeEach(() => {
85
+ vi.clearAllMocks() // Clear call history
86
+ // OR
87
+ vi.resetAllMocks() // Clear history + reset implementations
88
+ })
89
+
90
+ afterAll(() => {
91
+ vi.restoreAllMocks() // Restore original implementations
92
+ })
93
+ ```
94
+
95
+ ## Testing React Components
96
+
97
+ ```typescript
98
+ import { render, screen, fireEvent, waitFor } from '@testing-library/react'
99
+ import userEvent from '@testing-library/user-event'
100
+
101
+ describe('LoginForm', () => {
102
+ it('should submit form with valid credentials', async () => {
103
+ const onSubmit = vi.fn()
104
+ const user = userEvent.setup()
105
+
106
+ render(<LoginForm onSubmit={onSubmit} />)
107
+
108
+ await user.type(screen.getByLabelText(/email/i), 'test@example.com')
109
+ await user.type(screen.getByLabelText(/password/i), 'password123')
110
+ await user.click(screen.getByRole('button', { name: /login/i }))
111
+
112
+ await waitFor(() => {
113
+ expect(onSubmit).toHaveBeenCalledWith({
114
+ email: 'test@example.com',
115
+ password: 'password123',
116
+ })
117
+ })
118
+ })
119
+
120
+ it('should show error when email is invalid', async () => {
121
+ const user = userEvent.setup()
122
+
123
+ render(<LoginForm onSubmit={vi.fn()} />)
124
+
125
+ await user.type(screen.getByLabelText(/email/i), 'invalid-email')
126
+ await user.click(screen.getByRole('button', { name: /login/i }))
127
+
128
+ expect(screen.getByText(/invalid email/i)).toBeInTheDocument()
129
+ })
130
+ })
131
+ ```
132
+
133
+ ## Testing Async Code
134
+
135
+ ```typescript
136
+ // Promises
137
+ it('should fetch user data', async () => {
138
+ const user = await userService.findById(1)
139
+ expect(user.name).toBe('Test')
140
+ })
141
+
142
+ // Rejections
143
+ it('should handle errors', async () => {
144
+ await expect(userService.findById(-1)).rejects.toThrow('Invalid ID')
145
+ })
146
+
147
+ // Timers
148
+ it('should debounce search', async () => {
149
+ vi.useFakeTimers()
150
+
151
+ const search = vi.fn()
152
+ render(<SearchInput onSearch={search} />)
153
+
154
+ fireEvent.change(screen.getByRole('textbox'), { target: { value: 'test' } })
155
+
156
+ vi.advanceTimersByTime(300)
157
+ expect(search).toHaveBeenCalledWith('test')
158
+
159
+ vi.useRealTimers()
160
+ })
161
+ ```
162
+
163
+ ## Preventing Hung Test Runs
164
+
165
+ - Disable watch mode for CI-like runs (`CI=1` or `--watch=false`).
166
+ - Set an explicit timeout: Jest `--testTimeout=60000`, Vitest `--test-timeout=60000`.
167
+ - If there is no output for ~60s, interrupt, capture the partial log, and rerun with `--runInBand` and reduced workers (e.g., `--maxWorkers=50%`) to isolate the slow spec.
168
+ - Note the offending test file/title before retrying and fix the slowest test first.
169
+ - When a test fails or times out, fix the root cause immediately and rerun until the entire suite passes—do not defer failing tests.
170
+
171
+ ## Coverage Targets
172
+
173
+ | Coverage | Quality |
174
+ |----------|---------|
175
+ | < 70% | Poor - needs work |
176
+ | 70-80% | Fair - basics covered |
177
+ | 80-90% | Good - most paths |
178
+ | 90-95% | Excellent |
179
+ | 95-99% | Outstanding |
180
+ | 99%+ | Exceptional |
181
+
182
+ ## What to Test
183
+
184
+ 🟢 **DO TEST**
185
+ - Business logic
186
+ - Edge cases and boundaries
187
+ - Error handling paths
188
+ - State transitions
189
+ - User interactions
190
+ - API contracts
191
+
192
+ 🔴 **DON'T TEST**
193
+ - Framework internals
194
+ - Third-party libraries
195
+ - Trivial getters/setters
196
+ - Implementation details
197
+ - CSS styles
198
+
199
+ ## Best Practices
200
+
201
+ 🟢 **DO**
202
+ - Test behavior, not implementation
203
+ - Keep tests independent
204
+ - Use meaningful test names
205
+ - Test one thing per test
206
+ - Use factories for test data
207
+ - Clean up after tests
208
+
209
+ 🔴 **DON'T**
210
+ - Share state between tests
211
+ - Test private methods
212
+ - Mock everything
213
+ - Write flaky tests
214
+ - Ignore failing tests
215
+ - Couple tests to implementation
@@ -0,0 +1,100 @@
1
+ # Advanced Patterns
2
+
3
+ ## Type-Safe Event Emitter
4
+
5
+ ```typescript
6
+ type EventMap = {
7
+ "user:created": { id: string; name: string };
8
+ "user:deleted": { id: string };
9
+ };
10
+
11
+ class TypedEmitter<T extends Record<string, any>> {
12
+ private listeners: { [K in keyof T]?: Array<(data: T[K]) => void> } = {};
13
+
14
+ on<K extends keyof T>(event: K, callback: (data: T[K]) => void): void {
15
+ (this.listeners[event] ??= []).push(callback);
16
+ }
17
+
18
+ emit<K extends keyof T>(event: K, data: T[K]): void {
19
+ this.listeners[event]?.forEach(cb => cb(data));
20
+ }
21
+ }
22
+
23
+ const emitter = new TypedEmitter<EventMap>();
24
+ emitter.on("user:created", (data) => console.log(data.name)); // Type-safe
25
+ ```
26
+
27
+ ## Type-Safe API Client
28
+
29
+ ```typescript
30
+ type Endpoints = {
31
+ "/users": { GET: { response: User[] }; POST: { body: NewUser; response: User } };
32
+ };
33
+
34
+ type ExtractResponse<T> = T extends { response: infer R } ? R : never;
35
+
36
+ class APIClient<E extends Record<string, Record<string, any>>> {
37
+ async request<P extends keyof E, M extends keyof E[P]>(path: P, method: M): Promise<ExtractResponse<E[P][M]>> {
38
+ return {} as any;
39
+ }
40
+ }
41
+
42
+ const api = new APIClient<Endpoints>();
43
+ const users = await api.request("/users", "GET"); // Type: User[]
44
+ ```
45
+
46
+ ## Builder Pattern
47
+
48
+ ```typescript
49
+ class QueryBuilder<T, Selected extends keyof T = never> {
50
+ private selection: (keyof T)[] = [];
51
+
52
+ select<K extends keyof T>(...keys: K[]): QueryBuilder<T, Selected | K> {
53
+ this.selection.push(...keys);
54
+ return this as any;
55
+ }
56
+
57
+ build(): Pick<T, Selected> { return {} as any; }
58
+ }
59
+
60
+ const result = new QueryBuilder<User>()
61
+ .select("id", "name")
62
+ .build(); // Type: Pick<User, "id" | "name">
63
+ ```
64
+
65
+ ## Deep Utilities
66
+
67
+ ```typescript
68
+ type DeepPartial<T> = T extends object
69
+ ? { [P in keyof T]?: DeepPartial<T[P]> }
70
+ : T;
71
+
72
+ type DeepReadonly<T> = T extends object
73
+ ? { readonly [P in keyof T]: DeepReadonly<T[P]> }
74
+ : T;
75
+ ```
76
+
77
+ ## Discriminated Unions
78
+
79
+ ```typescript
80
+ type AsyncState<T> = { status: "loading" } | { status: "success"; data: T } | { status: "error"; error: Error };
81
+
82
+ function handle<T>(state: AsyncState<T>) {
83
+ if (state.status === "success") return state.data; // Type narrowed
84
+ if (state.status === "error") throw state.error;
85
+ return null;
86
+ }
87
+ ```
88
+
89
+ ## Form Validation Types
90
+
91
+ ```typescript
92
+ type ValidationRule<T> = { validate: (v: T) => boolean; message: string };
93
+ type FormRules<T> = { [K in keyof T]?: ValidationRule<T[K]>[] };
94
+ type FormErrors<T> = { [K in keyof T]?: string[] };
95
+
96
+ class Validator<T extends Record<string, any>> {
97
+ constructor(private rules: FormRules<T>) {}
98
+ validate(data: T): FormErrors<T> | null { return null; }
99
+ }
100
+ ```
@@ -0,0 +1,96 @@
1
+ # Best Practices
2
+
3
+ ## unknown vs any
4
+
5
+ Prefer `unknown` - enforces type checking:
6
+
7
+ ```typescript
8
+ // Bad - bypasses type system
9
+ function bad(data: any) {
10
+ data.anything(); // No error, runtime crash
11
+ }
12
+
13
+ // Good - requires type narrowing
14
+ function good(data: unknown) {
15
+ if (typeof data === "string") {
16
+ data.toUpperCase(); // Safe
17
+ }
18
+ }
19
+ ```
20
+
21
+ ## interface vs type
22
+
23
+ ```typescript
24
+ // Use interface for object shapes (better error messages, extends)
25
+ interface User {
26
+ id: number;
27
+ name: string;
28
+ }
29
+
30
+ // Use type for unions, intersections, complex types
31
+ type Status = "active" | "inactive";
32
+ type Result<T> = { ok: true; data: T } | { ok: false; error: Error };
33
+ ```
34
+
35
+ ## Strict Mode Config
36
+
37
+ ```json
38
+ {
39
+ "compilerOptions": {
40
+ "strict": true,
41
+ "noUncheckedIndexedAccess": true,
42
+ "exactOptionalPropertyTypes": true
43
+ }
44
+ }
45
+ ```
46
+
47
+ ## Type Testing
48
+
49
+ ```typescript
50
+ type AssertEqual<T, U> = [T] extends [U] ? [U] extends [T] ? true : false : false;
51
+
52
+ // Test your utility types
53
+ type Test1 = AssertEqual<Pick<User, "id">, { id: number }>; // true
54
+ type Test2 = AssertEqual<string, number>; // false
55
+ ```
56
+
57
+ ## Common Pitfalls
58
+
59
+ 1. **Over-using `any`** - Defeats TypeScript's purpose
60
+ 2. **Ignoring strict null** - Use `strictNullChecks: true`
61
+ 3. **Complex nested types** - Can slow compilation
62
+ 4. **Circular references** - Cause compiler errors
63
+ 5. **Type assertions** - Prefer type guards
64
+
65
+ ```typescript
66
+ // Bad - type assertion
67
+ const user = data as User;
68
+
69
+ // Good - type guard
70
+ function isUser(data: unknown): data is User {
71
+ return typeof data === "object" && data !== null && "id" in data;
72
+ }
73
+ if (isUser(data)) { /* safe */ }
74
+ ```
75
+
76
+ ## Performance Tips
77
+
78
+ - Avoid deeply nested conditional types
79
+ - Cache complex type computations with type aliases
80
+ - Limit recursion in recursive types
81
+ - Use `interface extends` over intersection types for objects
82
+
83
+ ## Naming Conventions
84
+
85
+ ```typescript
86
+ // Type params: T, U, K, V or descriptive (TValue)
87
+ // Utility types: PascalCase (DeepPartial, AsyncReturnType)
88
+ // Type predicates: is/has prefix (isString, hasProperty)
89
+ ```
90
+
91
+ ## Documentation
92
+
93
+ ```typescript
94
+ /** Makes all properties of T optional recursively. */
95
+ type DeepPartial<T> = T extends object ? { [P in keyof T]?: DeepPartial<T[P]> } : T;
96
+ ```