agent-skill-kit 3.9.135

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 (615) hide show
  1. package/.agent/global.d.ts +80 -0
  2. package/.agent/rules/GEMINI.md +210 -0
  3. package/.agent/rules/autopilot.md +287 -0
  4. package/.agent/rules/code-rules.md +227 -0
  5. package/.agent/scripts/audit_workflows.ts +23 -0
  6. package/.agent/scripts/auto_preview.ts +170 -0
  7. package/.agent/scripts/checklist.ts +180 -0
  8. package/.agent/scripts/compile-agents.ts +237 -0
  9. package/.agent/scripts/fix_skills.ts +49 -0
  10. package/.agent/scripts/session_manager.ts +222 -0
  11. package/.agent/scripts/skill-audit.ts +255 -0
  12. package/.agent/scripts/sync_workflows.ts +54 -0
  13. package/.agent/scripts/utils/colors.ts +58 -0
  14. package/.agent/scripts/utils/process-manager.ts +131 -0
  15. package/.agent/scripts/utils/reporter.ts +192 -0
  16. package/.agent/scripts/utils/runner.ts +128 -0
  17. package/.agent/scripts/verify_all.ts +243 -0
  18. package/.agent/scripts/version-sync.ts +256 -0
  19. package/.agent/skills/SKILL_INDEX.md +129 -0
  20. package/.agent/skills/agent-browser/AGENTS.md +728 -0
  21. package/.agent/skills/agent-browser/SKILL.md +193 -0
  22. package/.agent/skills/agent-browser/rules/_sections.md +15 -0
  23. package/.agent/skills/agent-browser/rules/_template.md +32 -0
  24. package/.agent/skills/agent-browser/rules/engineering-spec.md +528 -0
  25. package/.agent/skills/agent-browser/scripts/browser_cli.ts +52 -0
  26. package/.agent/skills/agent-browser/scripts/session_manager.ts +166 -0
  27. package/.agent/skills/ai-artist/AGENTS.md +1082 -0
  28. package/.agent/skills/ai-artist/SKILL.md +186 -0
  29. package/.agent/skills/ai-artist/rules/_sections.md +30 -0
  30. package/.agent/skills/ai-artist/rules/_template.md +32 -0
  31. package/.agent/skills/ai-artist/rules/domain-code.md +118 -0
  32. package/.agent/skills/ai-artist/rules/domain-marketing.md +105 -0
  33. package/.agent/skills/ai-artist/rules/engineering-spec.md +519 -0
  34. package/.agent/skills/ai-artist/rules/image-prompts.md +195 -0
  35. package/.agent/skills/ai-artist/rules/model-syntax.md +115 -0
  36. package/.agent/skills/ai-artist/scripts/prompt_compiler.ts +72 -0
  37. package/.agent/skills/ai-artist/templates/image-core.txt +1 -0
  38. package/.agent/skills/ai-artist/templates/llm-core.txt +6 -0
  39. package/.agent/skills/api-architect/AGENTS.md +1896 -0
  40. package/.agent/skills/api-architect/SKILL.md +173 -0
  41. package/.agent/skills/api-architect/rules/_sections.md +35 -0
  42. package/.agent/skills/api-architect/rules/_template.md +32 -0
  43. package/.agent/skills/api-architect/rules/api-style.md +115 -0
  44. package/.agent/skills/api-architect/rules/auth.md +134 -0
  45. package/.agent/skills/api-architect/rules/documentation.md +131 -0
  46. package/.agent/skills/api-architect/rules/engineering-spec.md +505 -0
  47. package/.agent/skills/api-architect/rules/graphql.md +154 -0
  48. package/.agent/skills/api-architect/rules/rate-limiting.md +76 -0
  49. package/.agent/skills/api-architect/rules/response.md +138 -0
  50. package/.agent/skills/api-architect/rules/rest.md +113 -0
  51. package/.agent/skills/api-architect/rules/security-testing.md +146 -0
  52. package/.agent/skills/api-architect/rules/trpc.md +129 -0
  53. package/.agent/skills/api-architect/rules/versioning.md +100 -0
  54. package/.agent/skills/api-architect/scripts/api_validator.ts +413 -0
  55. package/.agent/skills/auth-patterns/AGENTS.md +1830 -0
  56. package/.agent/skills/auth-patterns/SKILL.md +163 -0
  57. package/.agent/skills/auth-patterns/rules/_sections.md +30 -0
  58. package/.agent/skills/auth-patterns/rules/_template.md +32 -0
  59. package/.agent/skills/auth-patterns/rules/engineering-spec.md +515 -0
  60. package/.agent/skills/auth-patterns/rules/jwt-deep.md +196 -0
  61. package/.agent/skills/auth-patterns/rules/mfa.md +174 -0
  62. package/.agent/skills/auth-patterns/rules/oauth2.md +134 -0
  63. package/.agent/skills/auth-patterns/rules/passkey.md +243 -0
  64. package/.agent/skills/auth-patterns/rules/rbac-abac.md +206 -0
  65. package/.agent/skills/auth-patterns/rules/session.md +183 -0
  66. package/.agent/skills/auth-patterns/scripts/auth_validator.ts +121 -0
  67. package/.agent/skills/chrome-devtools/AGENTS.md +952 -0
  68. package/.agent/skills/chrome-devtools/SKILL.md +160 -0
  69. package/.agent/skills/chrome-devtools/rules/_sections.md +25 -0
  70. package/.agent/skills/chrome-devtools/rules/_template.md +32 -0
  71. package/.agent/skills/chrome-devtools/rules/aria-snapshot.md +95 -0
  72. package/.agent/skills/chrome-devtools/rules/engineering-spec.md +510 -0
  73. package/.agent/skills/chrome-devtools/rules/scripts-guide.md +174 -0
  74. package/.agent/skills/chrome-devtools/scripts/aria-snapshot.ts +3 -0
  75. package/.agent/skills/chrome-devtools/scripts/click.ts +3 -0
  76. package/.agent/skills/chrome-devtools/scripts/console.ts +3 -0
  77. package/.agent/skills/chrome-devtools/scripts/core_cli.ts +79 -0
  78. package/.agent/skills/chrome-devtools/scripts/evaluate.ts +3 -0
  79. package/.agent/skills/chrome-devtools/scripts/fill.ts +3 -0
  80. package/.agent/skills/chrome-devtools/scripts/navigate.ts +3 -0
  81. package/.agent/skills/chrome-devtools/scripts/network.ts +3 -0
  82. package/.agent/skills/chrome-devtools/scripts/performance.ts +3 -0
  83. package/.agent/skills/chrome-devtools/scripts/screenshot.ts +3 -0
  84. package/.agent/skills/chrome-devtools/scripts/select-ref.ts +3 -0
  85. package/.agent/skills/cicd-pipeline/AGENTS.md +809 -0
  86. package/.agent/skills/cicd-pipeline/SKILL.md +164 -0
  87. package/.agent/skills/cicd-pipeline/rules/_sections.md +15 -0
  88. package/.agent/skills/cicd-pipeline/rules/_template.md +32 -0
  89. package/.agent/skills/cicd-pipeline/rules/engineering-spec.md +477 -0
  90. package/.agent/skills/cicd-pipeline/scripts/flag-manager.ts +253 -0
  91. package/.agent/skills/cicd-pipeline/scripts/pipeline_validator.ts +133 -0
  92. package/.agent/skills/code-constitution/AGENTS.md +597 -0
  93. package/.agent/skills/code-constitution/CHANGELOG.md +216 -0
  94. package/.agent/skills/code-constitution/SKILL.md +191 -0
  95. package/.agent/skills/code-constitution/VERSION +3 -0
  96. package/.agent/skills/code-constitution/examples/violation-backend-mutation/after.tsx +59 -0
  97. package/.agent/skills/code-constitution/examples/violation-backend-mutation/before.tsx +42 -0
  98. package/.agent/skills/code-constitution/examples/violation-backend-mutation/explanation.md +91 -0
  99. package/.agent/skills/code-constitution/examples/violation-chart-injection/after.tsx +99 -0
  100. package/.agent/skills/code-constitution/examples/violation-chart-injection/before.tsx +57 -0
  101. package/.agent/skills/code-constitution/examples/violation-chart-injection/explanation.md +120 -0
  102. package/.agent/skills/code-constitution/knowledge/lessons-learned.yaml +3 -0
  103. package/.agent/skills/code-constitution/metadata/precedence.yaml +117 -0
  104. package/.agent/skills/code-constitution/metadata/scope-map.yaml +156 -0
  105. package/.agent/skills/code-constitution/proposals/v1.1-change-proposal-template.md +201 -0
  106. package/.agent/skills/code-constitution/resources/AUTHORITY_MODEL.md +115 -0
  107. package/.agent/skills/code-constitution/resources/ENFORCEMENT_GUIDE.md +246 -0
  108. package/.agent/skills/code-constitution/resources/LOAD_ORDER.md +86 -0
  109. package/.agent/skills/code-constitution/rules/_sections.md +15 -0
  110. package/.agent/skills/code-constitution/rules/_template.md +32 -0
  111. package/.agent/skills/code-constitution/rules/constitution/master-constitution.md +210 -0
  112. package/.agent/skills/code-constitution/rules/doctrines/architecture/architecture-doctrine.md +188 -0
  113. package/.agent/skills/code-constitution/rules/doctrines/backend/backend-data-engine-doctrine.md +218 -0
  114. package/.agent/skills/code-constitution/rules/doctrines/commercial/commercial-guardrails-doctrine.md +196 -0
  115. package/.agent/skills/code-constitution/rules/doctrines/data/data-integrity-doctrine.md +202 -0
  116. package/.agent/skills/code-constitution/rules/doctrines/frontend/frontend-mobile-doctrine.md +169 -0
  117. package/.agent/skills/code-constitution/rules/doctrines/frontend/interaction-patterns-doctrine.md +176 -0
  118. package/.agent/skills/code-constitution/rules/doctrines/learning/learning-engine-doctrine.md +192 -0
  119. package/.agent/skills/code-constitution/rules/doctrines/performance/performance-doctrine.md +180 -0
  120. package/.agent/skills/code-constitution/rules/doctrines/review/code-review-doctrine.md +174 -0
  121. package/.agent/skills/code-constitution/rules/enforcement/agents/agent-enforcement-protocol.md +218 -0
  122. package/.agent/skills/code-constitution/rules/enforcement/agents/agent-system-prompt.md +196 -0
  123. package/.agent/skills/code-constitution/rules/enforcement/checklists/backend-api-review-checklist.md +131 -0
  124. package/.agent/skills/code-constitution/rules/enforcement/checklists/chart-component-review-checklist.md +147 -0
  125. package/.agent/skills/code-constitution/rules/enforcement/checklists/frontend-review-checklist.md +194 -0
  126. package/.agent/skills/code-constitution/rules/enforcement/playbooks/doctrine-violation-playbook.md +236 -0
  127. package/.agent/skills/code-constitution/rules/engineering-spec.md +561 -0
  128. package/.agent/skills/code-constitution/scripts/audit_pr.ts +219 -0
  129. package/.agent/skills/code-constitution/scripts/check_boundaries.ts +134 -0
  130. package/.agent/skills/code-constitution/scripts/learn.ts +202 -0
  131. package/.agent/skills/code-constitution/scripts/validate_doctrine.ts +287 -0
  132. package/.agent/skills/code-craft/AGENTS.md +803 -0
  133. package/.agent/skills/code-craft/SKILL.md +170 -0
  134. package/.agent/skills/code-craft/rules/_sections.md +20 -0
  135. package/.agent/skills/code-craft/rules/_template.md +32 -0
  136. package/.agent/skills/code-craft/rules/engineering-spec.md +447 -0
  137. package/.agent/skills/code-craft/rules/verification-scripts.md +83 -0
  138. package/.agent/skills/code-craft/scripts/code_quality_checker.ts +193 -0
  139. package/.agent/skills/code-review/AGENTS.md +1664 -0
  140. package/.agent/skills/code-review/SKILL.md +152 -0
  141. package/.agent/skills/code-review/rules/_sections.md +15 -0
  142. package/.agent/skills/code-review/rules/_template.md +32 -0
  143. package/.agent/skills/code-review/rules/engineering-spec.md +466 -0
  144. package/.agent/skills/code-review/scripts/lint_runner.ts +213 -0
  145. package/.agent/skills/code-review/scripts/type_coverage.ts +118 -0
  146. package/.agent/skills/context-engineering/AGENTS.md +499 -0
  147. package/.agent/skills/context-engineering/SKILL.md +147 -0
  148. package/.agent/skills/context-engineering/rules/_sections.md +15 -0
  149. package/.agent/skills/context-engineering/rules/_template.md +32 -0
  150. package/.agent/skills/context-engineering/rules/engineering-spec.md +463 -0
  151. package/.agent/skills/context-engineering/scripts/context_analyzer.ts +127 -0
  152. package/.agent/skills/copywriting/AGENTS.md +501 -0
  153. package/.agent/skills/copywriting/SKILL.md +188 -0
  154. package/.agent/skills/copywriting/rules/_sections.md +15 -0
  155. package/.agent/skills/copywriting/rules/_template.md +32 -0
  156. package/.agent/skills/copywriting/rules/engineering-spec.md +465 -0
  157. package/.agent/skills/copywriting/scripts/copy_validator.ts +185 -0
  158. package/.agent/skills/data-modeler/AGENTS.md +814 -0
  159. package/.agent/skills/data-modeler/SKILL.md +195 -0
  160. package/.agent/skills/data-modeler/rules/_sections.md +15 -0
  161. package/.agent/skills/data-modeler/rules/_template.md +32 -0
  162. package/.agent/skills/data-modeler/rules/database-selection.md +124 -0
  163. package/.agent/skills/data-modeler/rules/engineering-spec.md +479 -0
  164. package/.agent/skills/data-modeler/rules/indexing.md +166 -0
  165. package/.agent/skills/data-modeler/rules/migrations.md +176 -0
  166. package/.agent/skills/data-modeler/rules/optimization.md +161 -0
  167. package/.agent/skills/data-modeler/rules/orm-selection.md +155 -0
  168. package/.agent/skills/data-modeler/rules/schema-design.md +162 -0
  169. package/.agent/skills/data-modeler/scripts/schema_validator.ts +357 -0
  170. package/.agent/skills/debug-pro/AGENTS.md +798 -0
  171. package/.agent/skills/debug-pro/SKILL.md +193 -0
  172. package/.agent/skills/debug-pro/defense-in-depth/SKILL.md +148 -0
  173. package/.agent/skills/debug-pro/root-cause-tracing/SKILL.md +196 -0
  174. package/.agent/skills/debug-pro/root-cause-tracing/find-polluter.sh +63 -0
  175. package/.agent/skills/debug-pro/rules/_sections.md +15 -0
  176. package/.agent/skills/debug-pro/rules/_template.md +32 -0
  177. package/.agent/skills/debug-pro/rules/engineering-spec.md +491 -0
  178. package/.agent/skills/debug-pro/scripts/debug_verifier.ts +148 -0
  179. package/.agent/skills/debug-pro/verification-before-completion/SKILL.md +160 -0
  180. package/.agent/skills/design-system/AGENTS.md +4216 -0
  181. package/.agent/skills/design-system/SKILL.md +186 -0
  182. package/.agent/skills/design-system/rules/_sections.md +65 -0
  183. package/.agent/skills/design-system/rules/_template.md +32 -0
  184. package/.agent/skills/design-system/rules/animation-guide.md +355 -0
  185. package/.agent/skills/design-system/rules/color-system.md +335 -0
  186. package/.agent/skills/design-system/rules/color-systems.md +133 -0
  187. package/.agent/skills/design-system/rules/decision-trees.md +442 -0
  188. package/.agent/skills/design-system/rules/design-extraction.md +152 -0
  189. package/.agent/skills/design-system/rules/engineering-spec.md +484 -0
  190. package/.agent/skills/design-system/rules/motion-design.md +161 -0
  191. package/.agent/skills/design-system/rules/motion-graphics.md +330 -0
  192. package/.agent/skills/design-system/rules/spatial-composition.md +184 -0
  193. package/.agent/skills/design-system/rules/typography-system.md +369 -0
  194. package/.agent/skills/design-system/rules/typography.md +124 -0
  195. package/.agent/skills/design-system/rules/ux-psychology.md +565 -0
  196. package/.agent/skills/design-system/rules/visual-effects.md +407 -0
  197. package/.agent/skills/design-system/scripts/accessibility_checker.ts +292 -0
  198. package/.agent/skills/design-system/scripts/ux_audit.ts +356 -0
  199. package/.agent/skills/doc-templates/AGENTS.md +820 -0
  200. package/.agent/skills/doc-templates/SKILL.md +260 -0
  201. package/.agent/skills/doc-templates/rules/_sections.md +20 -0
  202. package/.agent/skills/doc-templates/rules/_template.md +32 -0
  203. package/.agent/skills/doc-templates/rules/doc.md +355 -0
  204. package/.agent/skills/doc-templates/rules/engineering-spec.md +422 -0
  205. package/.agent/skills/doc-templates/scripts/editor-server.ts +162 -0
  206. package/.agent/skills/doc-templates/scripts/inject_otel.ts +22 -0
  207. package/.agent/skills/doc-templates/scripts/kanban-server.ts +171 -0
  208. package/.agent/skills/doc-templates/scripts/markdown-server.ts +185 -0
  209. package/.agent/skills/e2e-automation/AGENTS.md +882 -0
  210. package/.agent/skills/e2e-automation/SKILL.md +175 -0
  211. package/.agent/skills/e2e-automation/rules/_sections.md +20 -0
  212. package/.agent/skills/e2e-automation/rules/_template.md +32 -0
  213. package/.agent/skills/e2e-automation/rules/aria-snapshot.md +185 -0
  214. package/.agent/skills/e2e-automation/rules/engineering-spec.md +501 -0
  215. package/.agent/skills/e2e-automation/scripts/playwright_runner.ts +208 -0
  216. package/.agent/skills/execution-reporter/AGENTS.md +419 -0
  217. package/.agent/skills/execution-reporter/SKILL.md +152 -0
  218. package/.agent/skills/execution-reporter/rules/_sections.md +15 -0
  219. package/.agent/skills/execution-reporter/rules/_template.md +32 -0
  220. package/.agent/skills/execution-reporter/rules/engineering-spec.md +389 -0
  221. package/.agent/skills/game-development/2d-games/SKILL.md +140 -0
  222. package/.agent/skills/game-development/3d-games/SKILL.md +156 -0
  223. package/.agent/skills/game-development/AGENTS.md +783 -0
  224. package/.agent/skills/game-development/SKILL.md +178 -0
  225. package/.agent/skills/game-development/game-art/SKILL.md +207 -0
  226. package/.agent/skills/game-development/game-audio/SKILL.md +211 -0
  227. package/.agent/skills/game-development/game-design/SKILL.md +151 -0
  228. package/.agent/skills/game-development/mobile-games/SKILL.md +130 -0
  229. package/.agent/skills/game-development/multiplayer/SKILL.md +154 -0
  230. package/.agent/skills/game-development/pc-games/SKILL.md +167 -0
  231. package/.agent/skills/game-development/rules/_sections.md +15 -0
  232. package/.agent/skills/game-development/rules/_template.md +32 -0
  233. package/.agent/skills/game-development/rules/engineering-spec.md +480 -0
  234. package/.agent/skills/game-development/vr-ar/SKILL.md +144 -0
  235. package/.agent/skills/game-development/web-games/SKILL.md +173 -0
  236. package/.agent/skills/git-workflow/AGENTS.md +554 -0
  237. package/.agent/skills/git-workflow/SKILL.md +181 -0
  238. package/.agent/skills/git-workflow/rules/_sections.md +15 -0
  239. package/.agent/skills/git-workflow/rules/_template.md +32 -0
  240. package/.agent/skills/git-workflow/rules/engineering-spec.md +518 -0
  241. package/.agent/skills/gitops/AGENTS.md +921 -0
  242. package/.agent/skills/gitops/SKILL.md +163 -0
  243. package/.agent/skills/gitops/rules/_sections.md +25 -0
  244. package/.agent/skills/gitops/rules/_template.md +32 -0
  245. package/.agent/skills/gitops/rules/argocd-setup.md +148 -0
  246. package/.agent/skills/gitops/rules/engineering-spec.md +450 -0
  247. package/.agent/skills/gitops/rules/sync-policies.md +145 -0
  248. package/.agent/skills/google-adk-python/AGENTS.md +1054 -0
  249. package/.agent/skills/google-adk-python/SKILL.md +168 -0
  250. package/.agent/skills/google-adk-python/rules/_sections.md +25 -0
  251. package/.agent/skills/google-adk-python/rules/_template.md +32 -0
  252. package/.agent/skills/google-adk-python/rules/deployment.md +138 -0
  253. package/.agent/skills/google-adk-python/rules/engineering-spec.md +451 -0
  254. package/.agent/skills/google-adk-python/rules/multi-agent.md +146 -0
  255. package/.agent/skills/google-adk-python/rules/tools.md +131 -0
  256. package/.agent/skills/idea-storm/AGENTS.md +995 -0
  257. package/.agent/skills/idea-storm/SKILL.md +160 -0
  258. package/.agent/skills/idea-storm/rules/_sections.md +25 -0
  259. package/.agent/skills/idea-storm/rules/_template.md +32 -0
  260. package/.agent/skills/idea-storm/rules/architecture-debate.md +122 -0
  261. package/.agent/skills/idea-storm/rules/dynamic-questioning.md +374 -0
  262. package/.agent/skills/idea-storm/rules/engineering-spec.md +466 -0
  263. package/.agent/skills/knowledge-compiler/SKILL.md +320 -0
  264. package/.agent/skills/knowledge-graph/AGENTS.md +762 -0
  265. package/.agent/skills/knowledge-graph/SKILL.md +157 -0
  266. package/.agent/skills/knowledge-graph/rules/_sections.md +15 -0
  267. package/.agent/skills/knowledge-graph/rules/_template.md +32 -0
  268. package/.agent/skills/knowledge-graph/rules/engineering-spec.md +439 -0
  269. package/.agent/skills/knowledge-linter/SKILL.md +217 -0
  270. package/.agent/skills/lifecycle-orchestrator/AGENTS.md +989 -0
  271. package/.agent/skills/lifecycle-orchestrator/SKILL.md +169 -0
  272. package/.agent/skills/lifecycle-orchestrator/rules/_sections.md +15 -0
  273. package/.agent/skills/lifecycle-orchestrator/rules/_template.md +32 -0
  274. package/.agent/skills/lifecycle-orchestrator/rules/engineering-spec.md +525 -0
  275. package/.agent/skills/lifecycle-orchestrator/scripts/state_manager.ts +189 -0
  276. package/.agent/skills/mcp-builder/AGENTS.md +1653 -0
  277. package/.agent/skills/mcp-builder/SKILL.md +166 -0
  278. package/.agent/skills/mcp-builder/rules/_sections.md +40 -0
  279. package/.agent/skills/mcp-builder/rules/_template.md +32 -0
  280. package/.agent/skills/mcp-builder/rules/best-practices.md +157 -0
  281. package/.agent/skills/mcp-builder/rules/design-principles.md +105 -0
  282. package/.agent/skills/mcp-builder/rules/engineering-spec.md +473 -0
  283. package/.agent/skills/mcp-builder/rules/evaluation.md +103 -0
  284. package/.agent/skills/mcp-builder/rules/python-implementation.md +249 -0
  285. package/.agent/skills/mcp-builder/rules/quickstart.md +111 -0
  286. package/.agent/skills/mcp-builder/rules/typescript-implementation.md +280 -0
  287. package/.agent/skills/mcp-management/AGENTS.md +837 -0
  288. package/.agent/skills/mcp-management/SKILL.md +164 -0
  289. package/.agent/skills/mcp-management/rules/_sections.md +25 -0
  290. package/.agent/skills/mcp-management/rules/_template.md +32 -0
  291. package/.agent/skills/mcp-management/rules/cli-usage.md +146 -0
  292. package/.agent/skills/mcp-management/rules/engineering-spec.md +501 -0
  293. package/.agent/skills/mcp-management/rules/protocol.md +159 -0
  294. package/.agent/skills/media-processing/AGENTS.md +479 -0
  295. package/.agent/skills/media-processing/SKILL.md +176 -0
  296. package/.agent/skills/media-processing/rules/_sections.md +15 -0
  297. package/.agent/skills/media-processing/rules/_template.md +32 -0
  298. package/.agent/skills/media-processing/rules/engineering-spec.md +452 -0
  299. package/.agent/skills/media-processing/scripts/convert-video.ts +155 -0
  300. package/.agent/skills/media-processing/scripts/optimize-image.ts +127 -0
  301. package/.agent/skills/mobile-design/AGENTS.md +6531 -0
  302. package/.agent/skills/mobile-design/SKILL.md +165 -0
  303. package/.agent/skills/mobile-design/rules/_sections.md +45 -0
  304. package/.agent/skills/mobile-design/rules/_template.md +32 -0
  305. package/.agent/skills/mobile-design/rules/decision-trees.md +540 -0
  306. package/.agent/skills/mobile-design/rules/engineering-spec.md +467 -0
  307. package/.agent/skills/mobile-design/rules/mobile-backend.md +516 -0
  308. package/.agent/skills/mobile-design/rules/mobile-color-system.md +436 -0
  309. package/.agent/skills/mobile-design/rules/mobile-debugging.md +146 -0
  310. package/.agent/skills/mobile-design/rules/mobile-design-thinking.md +381 -0
  311. package/.agent/skills/mobile-design/rules/mobile-navigation.md +474 -0
  312. package/.agent/skills/mobile-design/rules/mobile-performance.md +783 -0
  313. package/.agent/skills/mobile-design/rules/mobile-testing.md +380 -0
  314. package/.agent/skills/mobile-design/rules/mobile-typography.md +449 -0
  315. package/.agent/skills/mobile-design/rules/platform-android.md +682 -0
  316. package/.agent/skills/mobile-design/rules/platform-ios.md +577 -0
  317. package/.agent/skills/mobile-design/rules/touch-psychology.md +553 -0
  318. package/.agent/skills/mobile-design/scripts/mobile_audit.ts +309 -0
  319. package/.agent/skills/mobile-developer/AGENTS.md +904 -0
  320. package/.agent/skills/mobile-developer/SKILL.md +194 -0
  321. package/.agent/skills/mobile-developer/rules/_sections.md +75 -0
  322. package/.agent/skills/mobile-developer/rules/_template.md +32 -0
  323. package/.agent/skills/mobile-developer/rules/anti-patterns.md +70 -0
  324. package/.agent/skills/mobile-developer/rules/app-store-optimization.md +319 -0
  325. package/.agent/skills/mobile-developer/rules/decision-trees.md +545 -0
  326. package/.agent/skills/mobile-developer/rules/deep-linking.md +441 -0
  327. package/.agent/skills/mobile-developer/rules/engineering-spec.md +477 -0
  328. package/.agent/skills/mobile-developer/rules/flutter.md +475 -0
  329. package/.agent/skills/mobile-developer/rules/mobile-backend.md +516 -0
  330. package/.agent/skills/mobile-developer/rules/mobile-color-system.md +444 -0
  331. package/.agent/skills/mobile-developer/rules/mobile-debugging.md +428 -0
  332. package/.agent/skills/mobile-developer/rules/mobile-design-thinking.md +367 -0
  333. package/.agent/skills/mobile-developer/rules/mobile-navigation.md +483 -0
  334. package/.agent/skills/mobile-developer/rules/mobile-performance.md +778 -0
  335. package/.agent/skills/mobile-developer/rules/mobile-testing.md +382 -0
  336. package/.agent/skills/mobile-developer/rules/mobile-typography.md +457 -0
  337. package/.agent/skills/mobile-developer/rules/native.md +572 -0
  338. package/.agent/skills/mobile-developer/rules/platform-android.md +676 -0
  339. package/.agent/skills/mobile-developer/rules/platform-ios.md +571 -0
  340. package/.agent/skills/mobile-developer/rules/push-notifications.md +599 -0
  341. package/.agent/skills/mobile-developer/rules/react-native.md +422 -0
  342. package/.agent/skills/mobile-developer/rules/touch-psychology.md +547 -0
  343. package/.agent/skills/mobile-developer/scripts/mobile_audit.ts +701 -0
  344. package/.agent/skills/nextjs-pro/AGENTS.md +3932 -0
  345. package/.agent/skills/nextjs-pro/SKILL.md +171 -0
  346. package/.agent/skills/nextjs-pro/rules/_sections.md +50 -0
  347. package/.agent/skills/nextjs-pro/rules/_template.md +32 -0
  348. package/.agent/skills/nextjs-pro/rules/advanced-event-handler-refs.md +59 -0
  349. package/.agent/skills/nextjs-pro/rules/advanced-init-once.md +46 -0
  350. package/.agent/skills/nextjs-pro/rules/advanced-use-latest.md +43 -0
  351. package/.agent/skills/nextjs-pro/rules/async-api-routes.md +42 -0
  352. package/.agent/skills/nextjs-pro/rules/async-defer-await.md +84 -0
  353. package/.agent/skills/nextjs-pro/rules/async-dependencies.md +55 -0
  354. package/.agent/skills/nextjs-pro/rules/async-parallel.md +32 -0
  355. package/.agent/skills/nextjs-pro/rules/async-suspense-boundaries.md +103 -0
  356. package/.agent/skills/nextjs-pro/rules/bundle-barrel-imports.md +63 -0
  357. package/.agent/skills/nextjs-pro/rules/bundle-conditional.md +35 -0
  358. package/.agent/skills/nextjs-pro/rules/bundle-defer-third-party.md +53 -0
  359. package/.agent/skills/nextjs-pro/rules/bundle-dynamic-imports.md +39 -0
  360. package/.agent/skills/nextjs-pro/rules/bundle-preload.md +54 -0
  361. package/.agent/skills/nextjs-pro/rules/client-event-listeners.md +78 -0
  362. package/.agent/skills/nextjs-pro/rules/client-localstorage-schema.md +75 -0
  363. package/.agent/skills/nextjs-pro/rules/client-passive-event-listeners.md +52 -0
  364. package/.agent/skills/nextjs-pro/rules/client-swr-dedup.md +60 -0
  365. package/.agent/skills/nextjs-pro/rules/engineering-spec.md +440 -0
  366. package/.agent/skills/nextjs-pro/rules/js-batch-dom-css.md +111 -0
  367. package/.agent/skills/nextjs-pro/rules/js-cache-function-results.md +84 -0
  368. package/.agent/skills/nextjs-pro/rules/js-cache-property-access.md +32 -0
  369. package/.agent/skills/nextjs-pro/rules/js-cache-storage.md +74 -0
  370. package/.agent/skills/nextjs-pro/rules/js-combine-iterations.md +36 -0
  371. package/.agent/skills/nextjs-pro/rules/js-early-exit.md +54 -0
  372. package/.agent/skills/nextjs-pro/rules/js-hoist-regexp.md +49 -0
  373. package/.agent/skills/nextjs-pro/rules/js-index-maps.md +41 -0
  374. package/.agent/skills/nextjs-pro/rules/js-length-check-first.md +53 -0
  375. package/.agent/skills/nextjs-pro/rules/js-min-max-loop.md +86 -0
  376. package/.agent/skills/nextjs-pro/rules/js-set-map-lookups.md +28 -0
  377. package/.agent/skills/nextjs-pro/rules/js-tosorted-immutable.md +61 -0
  378. package/.agent/skills/nextjs-pro/rules/rendering-activity.md +30 -0
  379. package/.agent/skills/nextjs-pro/rules/rendering-animate-svg-wrapper.md +51 -0
  380. package/.agent/skills/nextjs-pro/rules/rendering-conditional-render.md +44 -0
  381. package/.agent/skills/nextjs-pro/rules/rendering-content-visibility.md +42 -0
  382. package/.agent/skills/nextjs-pro/rules/rendering-hoist-jsx.md +50 -0
  383. package/.agent/skills/nextjs-pro/rules/rendering-hydration-no-flicker.md +86 -0
  384. package/.agent/skills/nextjs-pro/rules/rendering-hydration-suppress-warning.md +34 -0
  385. package/.agent/skills/nextjs-pro/rules/rendering-svg-precision.md +32 -0
  386. package/.agent/skills/nextjs-pro/rules/rendering-usetransition-loading.md +79 -0
  387. package/.agent/skills/nextjs-pro/rules/rerender-defer-reads.md +43 -0
  388. package/.agent/skills/nextjs-pro/rules/rerender-dependencies.md +49 -0
  389. package/.agent/skills/nextjs-pro/rules/rerender-derived-state-no-effect.md +44 -0
  390. package/.agent/skills/nextjs-pro/rules/rerender-derived-state.md +33 -0
  391. package/.agent/skills/nextjs-pro/rules/rerender-functional-setstate.md +78 -0
  392. package/.agent/skills/nextjs-pro/rules/rerender-lazy-state-init.md +62 -0
  393. package/.agent/skills/nextjs-pro/rules/rerender-memo-with-default-value.md +42 -0
  394. package/.agent/skills/nextjs-pro/rules/rerender-memo.md +48 -0
  395. package/.agent/skills/nextjs-pro/rules/rerender-move-effect-to-event.md +49 -0
  396. package/.agent/skills/nextjs-pro/rules/rerender-simple-expression-in-memo.md +39 -0
  397. package/.agent/skills/nextjs-pro/rules/rerender-transitions.md +44 -0
  398. package/.agent/skills/nextjs-pro/rules/rerender-use-ref-transient-values.md +77 -0
  399. package/.agent/skills/nextjs-pro/rules/schema.json +34 -0
  400. package/.agent/skills/nextjs-pro/rules/server-after-nonblocking.md +77 -0
  401. package/.agent/skills/nextjs-pro/rules/server-auth-actions.md +100 -0
  402. package/.agent/skills/nextjs-pro/rules/server-cache-lru.md +45 -0
  403. package/.agent/skills/nextjs-pro/rules/server-cache-react.md +80 -0
  404. package/.agent/skills/nextjs-pro/rules/server-dedup-props.md +69 -0
  405. package/.agent/skills/nextjs-pro/rules/server-parallel-fetching.md +87 -0
  406. package/.agent/skills/nextjs-pro/rules/server-serialization.md +42 -0
  407. package/.agent/skills/nodejs-pro/AGENTS.md +866 -0
  408. package/.agent/skills/nodejs-pro/SKILL.md +172 -0
  409. package/.agent/skills/nodejs-pro/rules/_sections.md +50 -0
  410. package/.agent/skills/nodejs-pro/rules/_template.md +32 -0
  411. package/.agent/skills/nodejs-pro/rules/architecture-patterns.md +229 -0
  412. package/.agent/skills/nodejs-pro/rules/async-patterns.md +246 -0
  413. package/.agent/skills/nodejs-pro/rules/engineering-spec.md +438 -0
  414. package/.agent/skills/nodejs-pro/rules/error-handling.md +257 -0
  415. package/.agent/skills/nodejs-pro/rules/framework-selection.md +220 -0
  416. package/.agent/skills/nodejs-pro/rules/runtime-modules.md +176 -0
  417. package/.agent/skills/nodejs-pro/rules/testing-strategy.md +266 -0
  418. package/.agent/skills/nodejs-pro/rules/validation-security.md +205 -0
  419. package/.agent/skills/observability/AGENTS.md +607 -0
  420. package/.agent/skills/observability/SKILL.md +178 -0
  421. package/.agent/skills/observability/rules/_sections.md +15 -0
  422. package/.agent/skills/observability/rules/_template.md +32 -0
  423. package/.agent/skills/observability/rules/engineering-spec.md +440 -0
  424. package/.agent/skills/offensive-sec/AGENTS.md +849 -0
  425. package/.agent/skills/offensive-sec/SKILL.md +191 -0
  426. package/.agent/skills/offensive-sec/rules/_sections.md +15 -0
  427. package/.agent/skills/offensive-sec/rules/_template.md +32 -0
  428. package/.agent/skills/offensive-sec/rules/engineering-spec.md +470 -0
  429. package/.agent/skills/perf-optimizer/AGENTS.md +870 -0
  430. package/.agent/skills/perf-optimizer/SKILL.md +189 -0
  431. package/.agent/skills/perf-optimizer/rules/_sections.md +15 -0
  432. package/.agent/skills/perf-optimizer/rules/_template.md +32 -0
  433. package/.agent/skills/perf-optimizer/rules/backend-patterns.md +312 -0
  434. package/.agent/skills/perf-optimizer/rules/engineering-spec.md +428 -0
  435. package/.agent/skills/perf-optimizer/scripts/lighthouse_audit.ts +201 -0
  436. package/.agent/skills/problem-checker/AGENTS.md +519 -0
  437. package/.agent/skills/problem-checker/SKILL.md +189 -0
  438. package/.agent/skills/problem-checker/rules/_sections.md +15 -0
  439. package/.agent/skills/problem-checker/rules/_template.md +32 -0
  440. package/.agent/skills/problem-checker/rules/engineering-spec.md +483 -0
  441. package/.agent/skills/problem-checker/scripts/check_problems.ts +396 -0
  442. package/.agent/skills/project-planner/AGENTS.md +2698 -0
  443. package/.agent/skills/project-planner/SKILL.md +166 -0
  444. package/.agent/skills/project-planner/rules/_sections.md +15 -0
  445. package/.agent/skills/project-planner/rules/_template.md +32 -0
  446. package/.agent/skills/project-planner/rules/engineering-spec.md +420 -0
  447. package/.agent/skills/python-pro/AGENTS.md +1871 -0
  448. package/.agent/skills/python-pro/SKILL.md +182 -0
  449. package/.agent/skills/python-pro/rules/_sections.md +50 -0
  450. package/.agent/skills/python-pro/rules/_template.md +32 -0
  451. package/.agent/skills/python-pro/rules/async-patterns.md +168 -0
  452. package/.agent/skills/python-pro/rules/django-patterns.md +194 -0
  453. package/.agent/skills/python-pro/rules/engineering-spec.md +442 -0
  454. package/.agent/skills/python-pro/rules/fastapi-patterns.md +179 -0
  455. package/.agent/skills/python-pro/rules/framework-selection.md +167 -0
  456. package/.agent/skills/python-pro/rules/project-structure.md +181 -0
  457. package/.agent/skills/python-pro/rules/testing-patterns.md +212 -0
  458. package/.agent/skills/python-pro/rules/type-hints.md +159 -0
  459. package/.agent/skills/react-pro/AGENTS.md +963 -0
  460. package/.agent/skills/react-pro/SKILL.md +232 -0
  461. package/.agent/skills/react-pro/rules/_sections.md +40 -0
  462. package/.agent/skills/react-pro/rules/_template.md +32 -0
  463. package/.agent/skills/react-pro/rules/component-patterns.md +145 -0
  464. package/.agent/skills/react-pro/rules/composition-compound.md +82 -0
  465. package/.agent/skills/react-pro/rules/data-fetching.md +133 -0
  466. package/.agent/skills/react-pro/rules/engineering-spec.md +453 -0
  467. package/.agent/skills/react-pro/rules/error-boundary.md +61 -0
  468. package/.agent/skills/react-pro/rules/file-organization.md +158 -0
  469. package/.agent/skills/react-pro/rules/hooks-custom.md +61 -0
  470. package/.agent/skills/react-pro/rules/mui-styling.md +138 -0
  471. package/.agent/skills/react-pro/rules/patterns.md +24 -0
  472. package/.agent/skills/react-pro/rules/performance-optimization.md +65 -0
  473. package/.agent/skills/react-pro/rules/performance.md +137 -0
  474. package/.agent/skills/react-pro/rules/react19-hooks.md +85 -0
  475. package/.agent/skills/react-pro/rules/state-management.md +90 -0
  476. package/.agent/skills/react-pro/rules/testing-patterns.md +52 -0
  477. package/.agent/skills/registry.json +1251 -0
  478. package/.agent/skills/security-scanner/AGENTS.md +851 -0
  479. package/.agent/skills/security-scanner/SKILL.md +182 -0
  480. package/.agent/skills/security-scanner/rules/_sections.md +15 -0
  481. package/.agent/skills/security-scanner/rules/_template.md +32 -0
  482. package/.agent/skills/security-scanner/rules/auth-patterns.md +281 -0
  483. package/.agent/skills/security-scanner/rules/checklists.md +186 -0
  484. package/.agent/skills/security-scanner/rules/engineering-spec.md +440 -0
  485. package/.agent/skills/security-scanner/scripts/security_scan.ts +513 -0
  486. package/.agent/skills/seo-optimizer/AGENTS.md +839 -0
  487. package/.agent/skills/seo-optimizer/SKILL.md +180 -0
  488. package/.agent/skills/seo-optimizer/rules/_sections.md +15 -0
  489. package/.agent/skills/seo-optimizer/rules/_template.md +32 -0
  490. package/.agent/skills/seo-optimizer/rules/engineering-spec.md +433 -0
  491. package/.agent/skills/seo-optimizer/scripts/geo_checker.ts +109 -0
  492. package/.agent/skills/seo-optimizer/scripts/seo_checker.ts +308 -0
  493. package/.agent/skills/server-ops/AGENTS.md +643 -0
  494. package/.agent/skills/server-ops/SKILL.md +194 -0
  495. package/.agent/skills/server-ops/rules/_sections.md +15 -0
  496. package/.agent/skills/server-ops/rules/_template.md +32 -0
  497. package/.agent/skills/server-ops/rules/engineering-spec.md +450 -0
  498. package/.agent/skills/shell-script/AGENTS.md +499 -0
  499. package/.agent/skills/shell-script/SKILL.md +205 -0
  500. package/.agent/skills/shell-script/rules/_sections.md +15 -0
  501. package/.agent/skills/shell-script/rules/_template.md +32 -0
  502. package/.agent/skills/shell-script/rules/engineering-spec.md +463 -0
  503. package/.agent/skills/skill-generator/SKILL.md +147 -0
  504. package/.agent/skills/smart-router/SKILL.md +95 -0
  505. package/.agent/skills/studio/AGENTS.md +636 -0
  506. package/.agent/skills/studio/SKILL.md +178 -0
  507. package/.agent/skills/studio/data/charts.csv +26 -0
  508. package/.agent/skills/studio/data/colors.csv +97 -0
  509. package/.agent/skills/studio/data/icons.csv +101 -0
  510. package/.agent/skills/studio/data/landing.csv +31 -0
  511. package/.agent/skills/studio/data/products.csv +97 -0
  512. package/.agent/skills/studio/data/prompts.csv +24 -0
  513. package/.agent/skills/studio/data/react-performance.csv +45 -0
  514. package/.agent/skills/studio/data/stacks/flutter.csv +52 -0
  515. package/.agent/skills/studio/data/stacks/html-tailwind.csv +56 -0
  516. package/.agent/skills/studio/data/stacks/jetpack-compose.csv +53 -0
  517. package/.agent/skills/studio/data/stacks/nextjs.csv +53 -0
  518. package/.agent/skills/studio/data/stacks/nuxt-ui.csv +51 -0
  519. package/.agent/skills/studio/data/stacks/nuxtjs.csv +59 -0
  520. package/.agent/skills/studio/data/stacks/react-native.csv +52 -0
  521. package/.agent/skills/studio/data/stacks/react.csv +54 -0
  522. package/.agent/skills/studio/data/stacks/shadcn.csv +61 -0
  523. package/.agent/skills/studio/data/stacks/svelte.csv +54 -0
  524. package/.agent/skills/studio/data/stacks/swiftui.csv +51 -0
  525. package/.agent/skills/studio/data/stacks/vue.csv +50 -0
  526. package/.agent/skills/studio/data/styles.csv +59 -0
  527. package/.agent/skills/studio/data/typography.csv +58 -0
  528. package/.agent/skills/studio/data/ui-reasoning.csv +101 -0
  529. package/.agent/skills/studio/data/ux-guidelines.csv +100 -0
  530. package/.agent/skills/studio/data/web-interface.csv +31 -0
  531. package/.agent/skills/studio/rules/_sections.md +15 -0
  532. package/.agent/skills/studio/rules/_template.md +32 -0
  533. package/.agent/skills/studio/rules/engineering-spec.md +455 -0
  534. package/.agent/skills/studio/scripts/core.ts +345 -0
  535. package/.agent/skills/studio/scripts/design_system.ts +953 -0
  536. package/.agent/skills/studio/scripts/search.ts +197 -0
  537. package/.agent/skills/studio/scripts/types.ts +147 -0
  538. package/.agent/skills/studio/scripts/utils/component-specs.ts +154 -0
  539. package/.agent/skills/studio/scripts/utils/config-loader.ts +165 -0
  540. package/.agent/skills/studio/scripts/utils/css-templates.ts +169 -0
  541. package/.agent/skills/studio/scripts/utils/css-validator.ts +95 -0
  542. package/.agent/skills/studio/scripts/utils/csv-loader.ts +52 -0
  543. package/.agent/skills/studio/scripts/utils/intelligent-overrides.ts +129 -0
  544. package/.agent/skills/studio/scripts/utils/page-override-formatter.ts +143 -0
  545. package/.agent/skills/studio/scripts/utils/page-type-detector.ts +124 -0
  546. package/.agent/skills/studio/scripts/utils/search-cache.ts +165 -0
  547. package/.agent/skills/studio/scripts/utils/text-utils.ts +44 -0
  548. package/.agent/skills/system-design/AGENTS.md +597 -0
  549. package/.agent/skills/system-design/SKILL.md +153 -0
  550. package/.agent/skills/system-design/rules/_sections.md +15 -0
  551. package/.agent/skills/system-design/rules/_template.md +32 -0
  552. package/.agent/skills/system-design/rules/context-discovery.md +117 -0
  553. package/.agent/skills/system-design/rules/engineering-spec.md +437 -0
  554. package/.agent/skills/system-design/rules/examples.md +180 -0
  555. package/.agent/skills/system-design/rules/pattern-selection.md +130 -0
  556. package/.agent/skills/system-design/rules/patterns-reference.md +110 -0
  557. package/.agent/skills/system-design/rules/trade-off-analysis.md +169 -0
  558. package/.agent/skills/tailwind-kit/AGENTS.md +1135 -0
  559. package/.agent/skills/tailwind-kit/SKILL.md +171 -0
  560. package/.agent/skills/tailwind-kit/rules/_sections.md +20 -0
  561. package/.agent/skills/tailwind-kit/rules/_template.md +32 -0
  562. package/.agent/skills/tailwind-kit/rules/components.md +232 -0
  563. package/.agent/skills/tailwind-kit/rules/engineering-spec.md +435 -0
  564. package/.agent/skills/tailwind-kit/rules/responsive.md +221 -0
  565. package/.agent/skills/tailwind-kit/rules/v4-config.md +72 -0
  566. package/.agent/skills/test-architect/AGENTS.md +851 -0
  567. package/.agent/skills/test-architect/SKILL.md +176 -0
  568. package/.agent/skills/test-architect/rules/_sections.md +15 -0
  569. package/.agent/skills/test-architect/rules/_template.md +32 -0
  570. package/.agent/skills/test-architect/rules/engineering-spec.md +434 -0
  571. package/.agent/skills/test-architect/scripts/test_runner.ts +265 -0
  572. package/.agent/skills/typescript-expert/AGENTS.md +1045 -0
  573. package/.agent/skills/typescript-expert/SKILL.md +200 -0
  574. package/.agent/skills/typescript-expert/rules/_sections.md +20 -0
  575. package/.agent/skills/typescript-expert/rules/_template.md +32 -0
  576. package/.agent/skills/typescript-expert/rules/engineering-spec.md +433 -0
  577. package/.agent/skills/typescript-expert/rules/tsconfig-strict.json +92 -0
  578. package/.agent/skills/typescript-expert/rules/typescript-cheatsheet.md +407 -0
  579. package/.agent/skills/typescript-expert/rules/utility-types.ts +264 -0
  580. package/.agent/skills/typescript-expert/scripts/ts_diagnostic.ts +321 -0
  581. package/.agent/skills/vercel-deploy/AGENTS.md +490 -0
  582. package/.agent/skills/vercel-deploy/SKILL.md +175 -0
  583. package/.agent/skills/vercel-deploy/rules/_sections.md +15 -0
  584. package/.agent/skills/vercel-deploy/rules/_template.md +32 -0
  585. package/.agent/skills/vercel-deploy/rules/engineering-spec.md +463 -0
  586. package/.agent/skills/vercel-deploy/scripts/deploy.sh +310 -0
  587. package/.agent/workflows/api.md +377 -0
  588. package/.agent/workflows/autopilot.md +344 -0
  589. package/.agent/workflows/build.md +338 -0
  590. package/.agent/workflows/chronicle.md +279 -0
  591. package/.agent/workflows/cook.md +217 -0
  592. package/.agent/workflows/diagnose.md +302 -0
  593. package/.agent/workflows/fix.md +253 -0
  594. package/.agent/workflows/game.md +329 -0
  595. package/.agent/workflows/inspect.md +276 -0
  596. package/.agent/workflows/knowledge.md +212 -0
  597. package/.agent/workflows/launch.md +345 -0
  598. package/.agent/workflows/mobile.md +354 -0
  599. package/.agent/workflows/monitor.md +239 -0
  600. package/.agent/workflows/optimize.md +269 -0
  601. package/.agent/workflows/plan.md +278 -0
  602. package/.agent/workflows/stage.md +286 -0
  603. package/.agent/workflows/studio.md +276 -0
  604. package/.agent/workflows/think.md +262 -0
  605. package/.agent/workflows/validate.md +289 -0
  606. package/.agentignore +161 -0
  607. package/.gitattributes +16 -0
  608. package/CHANGELOG.md +198 -0
  609. package/LICENSE +40 -0
  610. package/README.md +173 -0
  611. package/docs/SKILL_DESIGN_GUIDE.md +561 -0
  612. package/docs/The-Complete-Guide-to-Building-Skills-for-Claude.md +1207 -0
  613. package/docs/WORKFLOW_DESIGN_GUIDE.md +325 -0
  614. package/package.json +33 -0
  615. package/tsconfig.json +28 -0
@@ -0,0 +1,479 @@
1
+ ---
2
+ title: Data Modeler — Engineering Specification
3
+ impact: MEDIUM
4
+ tags: data-modeler
5
+ ---
6
+
7
+ # Data Modeler — Engineering Specification
8
+
9
+ > Production-grade specification for database design decision-making at FAANG scale.
10
+
11
+ ---
12
+
13
+ ## 1. Overview
14
+
15
+ Data Modeler provides structured decision frameworks for database architecture: database selection (PostgreSQL/Neon/Turso/SQLite), ORM selection (Drizzle/Prisma/Kysely), schema design (normalization, PKs, relationships), indexing strategy (B-tree/hash/GIN/GiST), query analysis (N+1 detection, EXPLAIN ANALYZE), and migration safety. The skill operates as an expert knowledge base that produces database architecture decisions — it does not execute SQL or modify databases.
16
+
17
+ **Contract Version:** 2.0.0
18
+ **Backward Compatibility:** breaking (first hardened version)
19
+ **Breaking Changes:** None — new spec for first hardening
20
+
21
+ ---
22
+
23
+ ## 2. Problem Statement
24
+
25
+ Database design at scale faces four quantified problems:
26
+
27
+ | Problem | Measurement | Impact |
28
+ |---------|-------------|--------|
29
+ | Default to PostgreSQL regardless of context | 60% of projects use PostgreSQL even when SQLite suffices | Over-provisioned infrastructure, unnecessary complexity |
30
+ | Missing index strategy | 40% of schemas have zero indexes beyond primary keys | Degraded query performance at scale |
31
+ | Unsafe migrations | 25% of schema changes cause downtime or data loss | Production outages |
32
+ | N+1 query blindness | 35% of ORMs generate N+1 queries undetected | 10–100x response time increase |
33
+
34
+ Data Modeler eliminates these by providing context-aware database selection, mandatory index planning, safe migration patterns, and query analysis guidance.
35
+
36
+ ---
37
+
38
+ ## 3. Design Goals
39
+
40
+ | ID | Goal | Measurable Constraint |
41
+ |----|------|-----------------------|
42
+ | G1 | Context-specific database selection | Decision tree considers deployment, scale, data model, budget |
43
+ | G2 | Mandatory index planning | Every schema design includes index strategy |
44
+ | G3 | Safe migration patterns | Zero-downtime migration guidance for every schema change |
45
+ | G4 | N+1 query prevention | Every ORM recommendation includes N+1 detection strategy |
46
+ | G5 | User preference respected | Ask before assuming database/ORM choice |
47
+
48
+ ---
49
+
50
+ ## 4. Non-Goals
51
+
52
+ | ID | Excluded | Rationale |
53
+ |----|----------|-----------|
54
+ | NG1 | SQL query execution | Infrastructure concern |
55
+ | NG2 | Database provisioning | Owned by `server-ops` skill |
56
+ | NG3 | API endpoint design | Owned by `api-architect` skill |
57
+ | NG4 | Security vulnerability scanning | Owned by `security-scanner` skill |
58
+ | NG5 | Data backup/recovery | Infrastructure concern |
59
+ | NG6 | Database monitoring/alerting | Owned by `observability` skill |
60
+
61
+ ---
62
+
63
+ ## 5. System Boundaries
64
+
65
+ | Boundary | Owned | Not Owned |
66
+ |----------|-------|-----------|
67
+ | Database selection (4 options) | Decision tree + rationale | Database installation |
68
+ | ORM selection (3 options) | Trade-off analysis | ORM installation/config |
69
+ | Schema design | Normalization rules, PK strategy, relationships | Schema file generation |
70
+ | Index strategy | Index type selection (B-tree/hash/GIN/GiST), composite rules | Index creation execution |
71
+ | Migration safety | Safe migration patterns, rollback strategy | Migration runner execution |
72
+ | Query analysis | N+1 detection, EXPLAIN ANALYZE guidance | Query execution |
73
+
74
+ **Side-effect boundary:** Data Modeler produces database architecture decisions, schema design guidance, and migration plans. It does not execute SQL, create databases, or modify schema files.
75
+
76
+ ---
77
+
78
+ ## 6. Integration Model
79
+
80
+ ### 6.1 Agent Contract
81
+
82
+ #### Input Schema
83
+
84
+ ```
85
+ Request_Type: string # "database-select" | "orm-select" | "schema-design" |
86
+ # "index-strategy" | "migration-plan" | "query-analysis" |
87
+ # "full-design"
88
+ Context: {
89
+ project_type: string # "web-app" | "api" | "embedded" | "data-pipeline" | "mobile-backend"
90
+ scale: string # "prototype" | "small" | "medium" | "large" | "enterprise"
91
+ deployment: string # "serverless" | "vps" | "container" | "edge" | "embedded"
92
+ data_model: string # "relational" | "document" | "key-value" | "graph" | "mixed"
93
+ budget: string # "free" | "low" | "medium" | "high"
94
+ existing_db: string | null # Current database if migrating
95
+ existing_orm: string | null # Current ORM if switching
96
+ schema_context: string | null # Current schema description
97
+ query_pattern: string | null # Query pattern to analyze
98
+ }
99
+ contract_version: string # "2.0.0"
100
+ ```
101
+
102
+ #### Output Schema
103
+
104
+ ```
105
+ Status: "success" | "error"
106
+ Data: {
107
+ database: {
108
+ recommended: string # "postgresql" | "neon" | "turso" | "sqlite"
109
+ rationale: string
110
+ alternatives: Array<string>
111
+ tradeoffs: Array<string>
112
+ } | null
113
+ orm: {
114
+ recommended: string # "drizzle" | "prisma" | "kysely"
115
+ rationale: string
116
+ n1_prevention: string # Strategy for N+1 detection
117
+ } | null
118
+ schema: {
119
+ normalization_level: string # "1NF" | "2NF" | "3NF" | "BCNF"
120
+ pk_strategy: string # "uuid" | "auto-increment" | "cuid" | "ulid"
121
+ relationships: Array<{
122
+ type: string # "one-to-one" | "one-to-many" | "many-to-many"
123
+ tables: Array<string>
124
+ strategy: string # Join table, FK, embedded
125
+ }>
126
+ } | null
127
+ indexes: Array<{
128
+ table: string
129
+ columns: Array<string>
130
+ type: string # "btree" | "hash" | "gin" | "gist"
131
+ rationale: string
132
+ }> | null
133
+ migration: {
134
+ strategy: string # "additive" | "destructive" | "multi-phase"
135
+ steps: Array<string>
136
+ rollback: string
137
+ downtime_risk: string # "zero" | "low" | "high"
138
+ } | null
139
+ reference_file: string | null # Relevant reference file to read
140
+ metadata: {
141
+ contract_version: string
142
+ backward_compatibility: string
143
+ }
144
+ }
145
+ Error: ErrorSchema | null
146
+ ```
147
+
148
+ #### Error Schema
149
+
150
+ ```
151
+ Code: string # From Error Taxonomy (Section 11)
152
+ Message: string
153
+ Request_Type: string
154
+ Recoverable: boolean
155
+ ```
156
+
157
+ #### Deterministic Guarantees
158
+
159
+ - Same `Request_Type` + `Context` = identical recommendation.
160
+ - Database selection order: deployment → scale → data_model → budget.
161
+ - ORM selection order: project_type → scale → data_model.
162
+ - Index type is deterministic per query pattern (equality → hash, range → btree, full-text → gin).
163
+ - Migration strategy is deterministic: additive (add column/table), destructive (drop/rename), multi-phase (complex changes).
164
+ - No randomization, no preference-based variation (user preference overrides decision tree).
165
+
166
+ #### What Agents May Assume
167
+
168
+ - Recommended database is appropriate for the stated context.
169
+ - ORM recommendation includes N+1 prevention strategy.
170
+ - Index strategy covers all stated query patterns.
171
+ - Migration plan includes rollback strategy.
172
+
173
+ #### What Agents Must NOT Assume
174
+
175
+ - The skill creates database connections or executes queries.
176
+ - Recommendations account for internal infrastructure constraints.
177
+ - Schema design includes all business-specific validations.
178
+ - Migration plan has been tested in staging.
179
+
180
+ #### Side-Effect Boundaries
181
+
182
+ | Operation | Side Effects |
183
+ |-----------|-------------|
184
+ | Database select | None; decision output |
185
+ | ORM select | None; decision output |
186
+ | Schema design | None; guidance output |
187
+ | Index strategy | None; recommendation |
188
+ | Migration plan | None; plan output |
189
+ | Query analysis | None; analysis output |
190
+
191
+ ### 6.2 Workflow Contract
192
+
193
+ #### Invocation Pattern
194
+
195
+ ```
196
+ 1. Define project context (type, scale, deployment, data model, budget)
197
+ 2. Invoke database-select for database recommendation
198
+ 3. Invoke orm-select for ORM recommendation
199
+ 4. Invoke schema-design with schema context
200
+ 5. Invoke index-strategy for index recommendations
201
+ 6. Implement schema (caller's responsibility)
202
+ 7. Invoke migration-plan before schema changes
203
+ ```
204
+
205
+ #### Execution Guarantees
206
+
207
+ - Each invocation produces a complete, self-contained recommendation.
208
+ - No background processes, no deferred execution.
209
+ - Reference files are linked in output; caller reads them.
210
+
211
+ #### Failure Propagation Model
212
+
213
+ | Failure Severity | Propagation | Workflow Action |
214
+ |-----------------|-------------|-----------------|
215
+ | Invalid request type | Return error to caller | Use supported type |
216
+ | Missing context field | Return error to caller | Supply missing context |
217
+ | Invalid scale/deployment | Return error to caller | Use supported values |
218
+ | Conflicting context | Return error to caller | Resolve conflict |
219
+
220
+ #### Retry Boundaries
221
+
222
+ - Zero internal retries. Deterministic output.
223
+ - Callers modify context to explore alternatives.
224
+
225
+ #### Isolation Model
226
+
227
+ - Each invocation is stateless and independent.
228
+
229
+ #### Idempotency Expectations
230
+
231
+ | Operation | Idempotent | Notes |
232
+ |-----------|-----------|-------|
233
+ | Database select | Yes | Same context = same recommendation |
234
+ | ORM select | Yes | Same context = same recommendation |
235
+ | Schema design | Yes | Same context = same design |
236
+ | Index strategy | Yes | Same query pattern = same indexes |
237
+ | Migration plan | Yes | Same schema change = same plan |
238
+
239
+ ---
240
+
241
+ ## 7. Execution Model
242
+
243
+ ### 3-Phase Lifecycle
244
+
245
+ | Phase | Action | Output |
246
+ |-------|--------|--------|
247
+ | **Parse** | Validate request type, context fields | Validated input or error |
248
+ | **Evaluate** | Traverse decision tree for request type | Recommendation |
249
+ | **Emit** | Return structured output with reference file link | Complete output schema |
250
+
251
+ All phases synchronous. No async pipeline.
252
+
253
+ ---
254
+
255
+ ## 8. Deterministic Design Principles
256
+
257
+ | Principle | Enforcement |
258
+ |-----------|-------------|
259
+ | Fixed database selection tree | deployment → scale → data_model → budget |
260
+ | Fixed ORM selection tree | project_type → scale → data_model |
261
+ | Fixed index type mapping | equality→hash, range→btree, full-text→gin, spatial→gist |
262
+ | Fixed migration classification | additive/destructive/multi-phase |
263
+ | User preference override | If user states preference, skip decision tree |
264
+ | No external calls | Decisions use only embedded rules + reference files |
265
+ | No ambient state | Each invocation operates solely on explicit inputs |
266
+
267
+ ---
268
+
269
+ ## 9. State & Idempotency Model
270
+
271
+ Stateless. Fully idempotent. No persistent state.
272
+
273
+ Each invocation produces an identical output for identical inputs. No session, no schema history.
274
+
275
+ ---
276
+
277
+ ## 10. Failure Handling Strategy
278
+
279
+ | Failure Class | Behavior | Caller Recovery |
280
+ |---------------|----------|-----------------|
281
+ | Unknown request type | Return `ERR_INVALID_REQUEST_TYPE` | Use supported type |
282
+ | Missing context field | Return `ERR_MISSING_CONTEXT` with field name | Supply missing field |
283
+ | Invalid scale value | Return `ERR_INVALID_SCALE` | Use supported scale |
284
+ | Invalid deployment value | Return `ERR_INVALID_DEPLOYMENT` | Use supported deployment |
285
+ | Conflicting context | Return `ERR_CONTEXT_CONFLICT` | Resolve conflict |
286
+ | Reference file missing | Return `ERR_REFERENCE_NOT_FOUND` | Verify skill installation |
287
+
288
+ **Invariant:** Every failure returns a structured error. No silent default. When context is ambiguous, ask user before proceeding.
289
+
290
+ ---
291
+
292
+ ## 11. Error Taxonomy
293
+
294
+ | Code | Category | Recoverable | Description |
295
+ |------|----------|-------------|-------------|
296
+ | `ERR_INVALID_REQUEST_TYPE` | Validation | No | Request type not supported |
297
+ | `ERR_MISSING_CONTEXT` | Validation | Yes | Required context field missing |
298
+ | `ERR_INVALID_SCALE` | Validation | No | Scale not in supported list |
299
+ | `ERR_INVALID_DEPLOYMENT` | Validation | No | Deployment not in supported list |
300
+ | `ERR_CONTEXT_CONFLICT` | Validation | Yes | Contradictory context fields |
301
+ | `ERR_REFERENCE_NOT_FOUND` | Infrastructure | No | Reference file missing |
302
+
303
+ ---
304
+
305
+ ## 12. Timeout & Retry Policy
306
+
307
+ | Parameter | Default | Maximum | Rationale |
308
+ |-----------|---------|---------|-----------|
309
+ | Decision timeout | N/A | N/A | Synchronous; < 50ms |
310
+ | Reference file read | 1,000 ms | 1,000 ms | Local filesystem |
311
+ | Internal retries | Zero | Zero | Deterministic output |
312
+
313
+ ---
314
+
315
+ ## 13. Observability & Logging Schema
316
+
317
+ ### Log Entry Format
318
+
319
+ ```json
320
+ {
321
+ "trace_id": "uuid",
322
+ "skill_name": "data-modeler",
323
+ "contract_version": "2.0.0",
324
+ "execution_id": "uuid",
325
+ "timestamp": "ISO-8601",
326
+ "request_type": "string",
327
+ "project_type": "string",
328
+ "scale": "string",
329
+ "deployment": "string",
330
+ "database_recommended": "string|null",
331
+ "orm_recommended": "string|null",
332
+ "status": "success|error",
333
+ "error_code": "string|null",
334
+ "duration_ms": "number"
335
+ }
336
+ ```
337
+
338
+ ### Required Log Points
339
+
340
+ | Event | Log Level | Fields |
341
+ |-------|-----------|--------|
342
+ | Recommendation generated | INFO | All fields |
343
+ | Destructive migration planned | WARN | migration strategy, rollback |
344
+ | Decision failed | ERROR | error_code, message |
345
+ | Reference file read | DEBUG | file path, duration |
346
+
347
+ ### Metrics
348
+
349
+ | Metric | Type | Unit |
350
+ |--------|------|------|
351
+ | `datamodeler.decision.duration` | Histogram | ms |
352
+ | `datamodeler.database.selected` | Counter | per database |
353
+ | `datamodeler.orm.selected` | Counter | per ORM |
354
+ | `datamodeler.migration.strategy` | Counter | per strategy type |
355
+ | `datamodeler.request_type.distribution` | Counter | per request type |
356
+
357
+ ---
358
+
359
+ ## 14. Security & Trust Model
360
+
361
+ ### Data Handling
362
+
363
+ - Data Modeler does not connect to databases or execute queries.
364
+ - Schema designs are produced as structured output; no SQL injection risk.
365
+ - Connection strings and credentials are never handled or stored.
366
+
367
+ ### Migration Safety
368
+
369
+ - Destructive migrations (drop/rename) are flagged with `WARN` log level.
370
+ - Multi-phase migrations include explicit rollback steps.
371
+ - All migration plans include downtime risk classification.
372
+
373
+ ---
374
+
375
+ ## 15. Scalability Model
376
+
377
+ | Dimension | Constraint | Mitigation |
378
+ |-----------|-----------|------------|
379
+ | Throughput | CPU-bound decision tree | < 50ms; scales linearly |
380
+ | Concurrency | Stateless invocations | Unlimited parallel |
381
+ | Reference storage | 6 files (~6 KB total) | Static; no growth |
382
+ | Memory per invocation | < 1 MB | No accumulation |
383
+ | Network | Zero network calls | No external dependency |
384
+
385
+ ---
386
+
387
+ ## 16. Concurrency Model
388
+
389
+ Fully parallel. No shared state. No coordination required.
390
+
391
+ Each invocation is independent and stateless. Any number of concurrent invocations are safe.
392
+
393
+ ---
394
+
395
+ ## 17. Resource Lifecycle Management
396
+
397
+ All resources scoped to invocation. No persistent handles.
398
+
399
+ | Resource | Created By | Destroyed By | Max Lifetime |
400
+ |----------|-----------|-------------|--------------|
401
+ | Decision output | Emit phase | Caller | Invocation scope |
402
+ | Reference file handle | Evaluate phase | Auto-close | < 10 ms |
403
+
404
+ ---
405
+
406
+ ## 18. Performance Constraints
407
+
408
+ | Operation | P50 Target | P99 Target | Hard Limit |
409
+ |-----------|-----------|-----------|------------|
410
+ | Database/ORM selection | < 5 ms | < 20 ms | 50 ms |
411
+ | Full design (all aspects) | < 15 ms | < 40 ms | 100 ms |
412
+ | Reference file read | < 1 ms | < 5 ms | 1,000 ms |
413
+ | Output size | ≤ 1,000 chars | ≤ 3,000 chars | 5,000 chars |
414
+
415
+ ---
416
+
417
+ ## 19. Operational Risks
418
+
419
+ | Risk | Likelihood | Impact | Mitigation |
420
+ |------|-----------|--------|------------|
421
+ | Outdated database recommendations | Medium | Suboptimal choice | Version-bumped references; periodic review |
422
+ | User preference ignored | Low | Wrong database selected | Decision tree defers to explicit user preference |
423
+ | Destructive migration undetected | Medium | Data loss | All destructive changes flagged with WARN |
424
+ | ORM lock-in bias | Medium | Hard migration later | Alternatives always listed in output |
425
+ | Index recommendations too generic | Medium | Missing workload-specific indexes | Query pattern required for precise index strategy |
426
+
427
+ ---
428
+
429
+ ## 20. Compliance with skill-design-guide.md
430
+
431
+ | Requirement | Status | Evidence |
432
+ |-------------|--------|----------|
433
+ | YAML frontmatter complete | ✅ | name, description, metadata with category, version, triggers, coordinates_with, success_metrics |
434
+ | SKILL.md < 200 lines | ✅ | Entry point under 200 lines |
435
+ | Prerequisites documented | ✅ | No external dependencies |
436
+ | When to Use section | ✅ | Request-type decision table |
437
+ | Core content matches skill type | ✅ | Expert type: decision trees, selection guides |
438
+ | Troubleshooting section | ✅ | Anti-patterns table |
439
+ | Related section | ✅ | Cross-links to api-architect, nodejs-pro, python-pro |
440
+ | Content Map for multi-file | ✅ | Links to 6 reference files + engineering-spec.md |
441
+ | Contract versioning | ✅ | contract_version, backward_compatibility, breaking_changes |
442
+ | Compliance matrix structured | ✅ | This table with ✅/❌ + evidence |
443
+
444
+ ---
445
+
446
+ ## 21. Production Readiness Checklist
447
+
448
+ | Category | Check | Status |
449
+ |----------|-------|--------|
450
+ | **Functionality** | Database selection (4 options with decision tree) | ✅ |
451
+ | **Functionality** | ORM selection (3 options with N+1 prevention) | ✅ |
452
+ | **Functionality** | Schema design (normalization, PKs, relationships) | ✅ |
453
+ | **Functionality** | Index strategy (4 index types with query pattern mapping) | ✅ |
454
+ | **Functionality** | Migration safety (3 strategies with rollback) | ✅ |
455
+ | **Contracts** | Input/output/error schemas in pseudo-schema format | ✅ |
456
+ | **Contracts** | Contract versioning with semver | ✅ |
457
+ | **Contracts** | Agent assumptions and non-assumptions documented | ✅ |
458
+ | **Failure** | Error taxonomy with 6 categorized codes | ✅ |
459
+ | **Failure** | No silent default; ask user on ambiguity | ✅ |
460
+ | **Failure** | Zero internal retries | ✅ |
461
+ | **Determinism** | Fixed decision tree ordering per request type | ✅ |
462
+ | **Determinism** | User preference override documented | ✅ |
463
+ | **Security** | No database connections; no credential handling | ✅ |
464
+ | **Observability** | Structured log schema with 5 mandatory fields + 4 log points | ✅ |
465
+ | **Observability** | 5 metrics defined | ✅ |
466
+ | **Performance** | P50/P99 targets for all operations | ✅ |
467
+ | **Scalability** | Stateless; unlimited parallel invocations | ✅ |
468
+ | **Compliance** | All skill-design-guide.md sections mapped with evidence | ✅ |
469
+
470
+ ---
471
+
472
+ ⚡ ## OpenTelemetry Observability (MANDATORY)
473
+
474
+ - **Schema Health Metrics**: EVERY schema validation MUST emit OpenTelemetry Spans containing metadata such as table count, column count, and ratio of indexed foreign keys vs unindexed.
475
+ - **Bad Practice Events**: Missing primary keys, unindexed foreign keys, or missing JSON constraints MUST trigger OTel Events attached to the main Trace ID.
476
+
477
+ ---
478
+
479
+ PikaKit v3.9.134
@@ -0,0 +1,166 @@
1
+ ---
2
+ name: indexing
3
+ description: Index strategy — B-tree, Hash, GIN, GiST, pgvector with SQL examples and composite index rules
4
+ ---
5
+
6
+ # Indexing Principles
7
+
8
+ > When and how to create indexes effectively. Index for known queries, not speculatively.
9
+
10
+ ---
11
+
12
+ ## When to Create Indexes
13
+
14
+ ```
15
+ Index these:
16
+ ├── Columns in WHERE clauses (equality + range)
17
+ ├── Columns in JOIN conditions (FK columns)
18
+ ├── Columns in ORDER BY (sorting)
19
+ ├── Unique constraints (auto-indexed)
20
+ └── Frequently filtered columns
21
+
22
+ Don't over-index:
23
+ ├── Write-heavy tables (slower inserts/updates)
24
+ ├── Low-cardinality columns (boolean, status with 3 values)
25
+ ├── Columns rarely queried
26
+ └── Small tables (< 1000 rows — seq scan is fine)
27
+ ```
28
+
29
+ ---
30
+
31
+ ## Index Type Selection
32
+
33
+ | Type | Use For | PostgreSQL Syntax |
34
+ |------|---------|-------------------|
35
+ | **B-tree** | General purpose, equality & range | Default — no keyword needed |
36
+ | **Hash** | Equality only (faster than B-tree for `=`) | `USING HASH` |
37
+ | **GIN** | JSONB, arrays, full-text search | `USING GIN` |
38
+ | **GiST** | Geometric, range types, spatial | `USING GiST` |
39
+ | **HNSW** | Vector similarity (pgvector) | `USING hnsw` |
40
+
41
+ ### SQL Examples
42
+
43
+ ```sql
44
+ -- B-tree (default) — equality + range
45
+ CREATE INDEX idx_users_email ON users (email);
46
+ CREATE INDEX idx_orders_created ON orders (created_at DESC);
47
+
48
+ -- Hash — equality only
49
+ CREATE INDEX idx_users_status ON users USING HASH (status);
50
+
51
+ -- GIN — JSONB fields
52
+ CREATE INDEX idx_products_metadata ON products USING GIN (metadata);
53
+
54
+ -- GIN — full-text search
55
+ CREATE INDEX idx_posts_search ON posts USING GIN (to_tsvector('english', title || ' ' || body));
56
+
57
+ -- GiST — spatial
58
+ CREATE INDEX idx_locations_coords ON locations USING GiST (coordinates);
59
+
60
+ -- HNSW — vector (pgvector)
61
+ CREATE INDEX idx_embeddings_vector ON items USING hnsw (embedding vector_cosine_ops);
62
+ ```
63
+
64
+ ---
65
+
66
+ ## Composite Index Rules
67
+
68
+ ```
69
+ Order matters for composite indexes:
70
+ ├── 1. Equality columns FIRST
71
+ ├── 2. Range/sort columns LAST
72
+ ├── 3. Most selective column first (among equals)
73
+ └── 4. Match the query's WHERE + ORDER BY pattern
74
+ ```
75
+
76
+ ### Example
77
+
78
+ ```sql
79
+ -- Query: WHERE status = 'active' AND created_at > '2025-01-01' ORDER BY created_at DESC
80
+ CREATE INDEX idx_orders_status_created
81
+ ON orders (status, created_at DESC);
82
+
83
+ -- ✅ status (equality) first, created_at (range + sort) second
84
+ -- ❌ Wrong: (created_at, status) — can't use index for status equality
85
+ ```
86
+
87
+ ---
88
+
89
+ ## Index with Prisma & Drizzle
90
+
91
+ ```prisma
92
+ // Prisma — schema.prisma
93
+ model Post {
94
+ id String @id @default(cuid())
95
+ title String
96
+ authorId String @map("author_id")
97
+ status String
98
+ createdAt DateTime @default(now()) @map("created_at")
99
+
100
+ @@index([authorId])
101
+ @@index([status, createdAt(sort: Desc)])
102
+ }
103
+ ```
104
+
105
+ ```typescript
106
+ // Drizzle — schema.ts
107
+ import { index } from 'drizzle-orm/pg-core';
108
+
109
+ export const posts = pgTable('posts', {
110
+ id: uuid('id').defaultRandom().primaryKey(),
111
+ title: text('title').notNull(),
112
+ authorId: uuid('author_id').notNull(),
113
+ status: text('status').notNull(),
114
+ createdAt: timestamp('created_at').defaultNow().notNull(),
115
+ }, (table) => ({
116
+ authorIdx: index('idx_posts_author').on(table.authorId),
117
+ statusCreatedIdx: index('idx_posts_status_created').on(table.status, table.createdAt),
118
+ }));
119
+ ```
120
+
121
+ ---
122
+
123
+ ## Verify Index Usage
124
+
125
+ ```sql
126
+ -- Check if query uses index
127
+ EXPLAIN ANALYZE
128
+ SELECT * FROM orders
129
+ WHERE status = 'active' AND created_at > '2025-01-01'
130
+ ORDER BY created_at DESC
131
+ LIMIT 20;
132
+
133
+ -- Look for:
134
+ -- ✅ "Index Scan" or "Index Only Scan"
135
+ -- ❌ "Seq Scan" on large tables = missing index
136
+ ```
137
+
138
+ ---
139
+
140
+ ## Anti-Patterns
141
+
142
+ | ❌ Don't | ✅ Do |
143
+ |---------|-------|
144
+ | Index every column | Index for known query patterns |
145
+ | Skip indexes on foreign keys | Always index FK columns |
146
+ | Use B-tree for JSONB queries | Use GIN for JSONB |
147
+ | Create index blocking production | Use `CREATE INDEX CONCURRENTLY` |
148
+ | Ignore index size and maintenance | Monitor with `pg_stat_user_indexes` |
149
+
150
+ ---
151
+
152
+
153
+
154
+ ---
155
+
156
+ ## 🔗 Related
157
+
158
+ | File | When to Read |
159
+ |------|-------------|
160
+ | [optimization.md](optimization.md) | EXPLAIN ANALYZE for query tuning |
161
+ | [schema-design.md](schema-design.md) | Schema that indexes support |
162
+ | [SKILL.md](SKILL.md) | Index type quick reference |
163
+
164
+ ---
165
+
166
+ ⚡ PikaKit v3.9.134