tribunal-kit 9.2.4 → 9.2.6

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 (1208) hide show
  1. package/.agent/.manifest.json +78 -78
  2. package/.agent/.shared/ui-ux-pro-max/README.md +4 -4
  3. package/.agent/.tribunal/session.jsonl +15 -15
  4. package/.agent/ADRs/ADR-001-system-architecture-intelligence.md +49 -0
  5. package/.agent/ARCHITECTURE.md +63 -63
  6. package/.agent/agents/accessibility-reviewer.md +109 -109
  7. package/.agent/agents/agent-shield-auditor.md +21 -18
  8. package/.agent/agents/ai-code-reviewer.md +223 -223
  9. package/.agent/agents/anti-pattern-reviewer.md +104 -104
  10. package/.agent/agents/anti-slop-auditor.md +79 -0
  11. package/.agent/agents/api-architect.md +94 -89
  12. package/.agent/agents/architecture-auditor.md +196 -0
  13. package/.agent/agents/backend-security-architect.md +115 -0
  14. package/.agent/agents/backend-specialist.md +242 -242
  15. package/.agent/agents/cloud-engineer.md +120 -120
  16. package/.agent/agents/code-archaeologist.md +186 -186
  17. package/.agent/agents/complexity-reviewer.md +76 -76
  18. package/.agent/agents/database-architect.md +206 -206
  19. package/.agent/agents/db-latency-auditor.md +237 -237
  20. package/.agent/agents/debugger.md +215 -215
  21. package/.agent/agents/dependency-reviewer.md +124 -124
  22. package/.agent/agents/devops-engineer.md +240 -240
  23. package/.agent/agents/documentation-writer.md +228 -228
  24. package/.agent/agents/explorer-agent.md +186 -186
  25. package/.agent/agents/frontend-reviewer.md +197 -195
  26. package/.agent/agents/frontend-specialist.md +123 -122
  27. package/.agent/agents/game-developer.md +68 -68
  28. package/.agent/agents/harness-manager.md +57 -49
  29. package/.agent/agents/human-gate-negotiator.md +26 -22
  30. package/.agent/agents/interaction-reviewer.md +123 -123
  31. package/.agent/agents/kernel-scheduler.md +60 -56
  32. package/.agent/agents/logic-reviewer.md +147 -147
  33. package/.agent/agents/memory-archivist.md +42 -37
  34. package/.agent/agents/minimalist-reviewer.md +104 -104
  35. package/.agent/agents/mobile-developer.md +216 -216
  36. package/.agent/agents/mobile-reviewer.md +180 -180
  37. package/.agent/agents/orchestrator.md +267 -268
  38. package/.agent/agents/penetration-tester.md +180 -180
  39. package/.agent/agents/performance-optimizer.md +202 -202
  40. package/.agent/agents/performance-reviewer.md +180 -180
  41. package/.agent/agents/pipeline-reviewer.md +144 -144
  42. package/.agent/agents/precedence-reviewer.md +266 -266
  43. package/.agent/agents/product-manager.md +167 -167
  44. package/.agent/agents/product-owner.md +103 -103
  45. package/.agent/agents/product-reviewer.md +103 -103
  46. package/.agent/agents/project-planner.md +180 -181
  47. package/.agent/agents/qa-automation-engineer.md +244 -244
  48. package/.agent/agents/resilience-reviewer.md +108 -108
  49. package/.agent/agents/schema-reviewer.md +87 -87
  50. package/.agent/agents/security-auditor.md +203 -204
  51. package/.agent/agents/seo-specialist.md +213 -213
  52. package/.agent/agents/sql-reviewer.md +180 -180
  53. package/.agent/agents/supervisor-agent.md +202 -202
  54. package/.agent/agents/swarm-worker-contracts.md +170 -170
  55. package/.agent/agents/swarm-worker-registry.md +99 -99
  56. package/.agent/agents/system-architect.md +274 -105
  57. package/.agent/agents/test-coverage-reviewer.md +181 -181
  58. package/.agent/agents/test-engineer.md +138 -138
  59. package/.agent/agents/throughput-optimizer.md +316 -316
  60. package/.agent/agents/type-safety-reviewer.md +202 -202
  61. package/.agent/agents/ui-ux-auditor.md +85 -80
  62. package/.agent/agents/ui-visual-auditor.md +107 -102
  63. package/.agent/agents/ux-reviewer.md +109 -109
  64. package/.agent/agents/visual-reviewer.md +103 -103
  65. package/.agent/agents/vitals-reviewer.md +245 -245
  66. package/.agent/config/claude.json +18 -18
  67. package/.agent/config/plugin.json +102 -102
  68. package/.agent/config/slash-commands.json +115 -115
  69. package/.agent/config/specialist-registry.json +415 -415
  70. package/.agent/config/system-prompt.md +258 -258
  71. package/.agent/history/arch-mapper-cache.json +6712 -0
  72. package/.agent/history/architecture-intelligence.html +794 -0
  73. package/.agent/history/architecture-model.json +16096 -0
  74. package/.agent/history/architecture-verification.json +22 -0
  75. package/.agent/history/architecture.idx.json +5746 -0
  76. package/.agent/history/integrity_manifest.json +369 -3158
  77. package/.agent/mcp_config.json +32 -32
  78. package/.agent/patterns/generator.md +11 -11
  79. package/.agent/patterns/inversion.md +14 -14
  80. package/.agent/patterns/pipeline.md +11 -11
  81. package/.agent/patterns/reviewer.md +15 -15
  82. package/.agent/patterns/tool-wrapper.md +11 -11
  83. package/.agent/plans/implementation_plan.md +55 -0
  84. package/.agent/plans/task.md +41 -0
  85. package/.agent/routing_index.json +1566 -286
  86. package/.agent/rules/GEMINI.md +437 -437
  87. package/.agent/rules/GEMINI_PLANNER.md +82 -82
  88. package/.agent/rules/kernel.md +89 -86
  89. package/.agent/scripts/_colors.js +210 -210
  90. package/.agent/scripts/_utils.js +378 -377
  91. package/.agent/scripts/ab_json_experiment.js +129 -0
  92. package/.agent/scripts/architecture_diff.js +260 -0
  93. package/.agent/scripts/architecture_extractor.js +753 -0
  94. package/.agent/scripts/architecture_health.js +256 -0
  95. package/.agent/scripts/architecture_mapper.js +691 -0
  96. package/.agent/scripts/architecture_verifier.js +270 -0
  97. package/.agent/scripts/architecture_visualizer.js +873 -0
  98. package/.agent/scripts/ast_context_loader.js +137 -137
  99. package/.agent/scripts/auto_preview.js +203 -203
  100. package/.agent/scripts/backend_audit.js +238 -0
  101. package/.agent/scripts/backend_report_generator.js +161 -0
  102. package/.agent/scripts/benchmark_suite.js +493 -0
  103. package/.agent/scripts/blast_radius_engine.js +234 -0
  104. package/.agent/scripts/browser_audit.js +102 -102
  105. package/.agent/scripts/bundle_analyzer.js +287 -287
  106. package/.agent/scripts/case_law_manager.js +887 -887
  107. package/.agent/scripts/checklist.js +304 -300
  108. package/.agent/scripts/cicd_validator.js +305 -305
  109. package/.agent/scripts/consolidation_experiment.js +543 -0
  110. package/.agent/scripts/context_broker.js +962 -962
  111. package/.agent/scripts/context_compiler.js +1174 -1112
  112. package/.agent/scripts/contract_engine.js +402 -402
  113. package/.agent/scripts/cross_agent_correlator.js +223 -0
  114. package/.agent/scripts/dependency_analyzer.js +335 -313
  115. package/.agent/scripts/evidence_verifier.js +171 -0
  116. package/.agent/scripts/finding_schema.js +104 -0
  117. package/.agent/scripts/findings_validator.js +147 -0
  118. package/.agent/scripts/graph_builder.js +384 -384
  119. package/.agent/scripts/graph_visualizer.js +390 -390
  120. package/.agent/scripts/graph_zoom.js +181 -181
  121. package/.agent/scripts/guardrail_engine.js +804 -785
  122. package/.agent/scripts/harness_manager.js +72 -60
  123. package/.agent/scripts/impact_classifier.js +193 -192
  124. package/.agent/scripts/inner_loop_validator.js +472 -472
  125. package/.agent/scripts/integrity_manifest.js +524 -484
  126. package/.agent/scripts/lint_runner.js +220 -218
  127. package/.agent/scripts/live_abc_benchmark.js +452 -0
  128. package/.agent/scripts/marathon_harness.js +986 -986
  129. package/.agent/scripts/mcp_server.js +203 -181
  130. package/.agent/scripts/memory_archivist.js +103 -97
  131. package/.agent/scripts/memory_consolidator.js +37 -37
  132. package/.agent/scripts/memory_engine.js +798 -782
  133. package/.agent/scripts/minify_context.js +111 -111
  134. package/.agent/scripts/minimal_change_engine.js +445 -445
  135. package/.agent/scripts/mutation_runner.js +307 -305
  136. package/.agent/scripts/payload_schemas.js +164 -164
  137. package/.agent/scripts/pipeline_engine.js +921 -906
  138. package/.agent/scripts/prompt_compiler.js +272 -272
  139. package/.agent/scripts/schema_validator.js +326 -326
  140. package/.agent/scripts/secret_redactor.js +119 -0
  141. package/.agent/scripts/security_scan.js +390 -390
  142. package/.agent/scripts/session_logger.js +115 -115
  143. package/.agent/scripts/session_manager.js +304 -299
  144. package/.agent/scripts/signal_detector.js +175 -175
  145. package/.agent/scripts/skill_evolution.js +997 -997
  146. package/.agent/scripts/skill_integrator.js +304 -304
  147. package/.agent/scripts/socratic_gate_policy.js +63 -63
  148. package/.agent/scripts/strengthen_skills.js +199 -199
  149. package/.agent/scripts/swarm_dispatcher.js +992 -979
  150. package/.agent/scripts/syscall_registry.js +110 -105
  151. package/.agent/scripts/test_runner.js +209 -209
  152. package/.agent/scripts/tier3_audit.js +195 -0
  153. package/.agent/scripts/token_budget_broker.js +165 -165
  154. package/.agent/scripts/trace_engine.js +126 -126
  155. package/.agent/scripts/validation_engine.js +236 -0
  156. package/.agent/scripts/verify_all.js +278 -276
  157. package/.agent/scripts/visual_audit.js +87 -87
  158. package/.agent/skill_topic_map.json +123 -96
  159. package/.agent/skills/12-principles-of-animation/SKILL.md +91 -21
  160. package/.agent/skills/60fps-animation/SKILL.md +118 -61
  161. package/.agent/skills/accessible-animation/SKILL.md +214 -152
  162. package/.agent/skills/adapt/SKILL.md +98 -28
  163. package/.agent/skills/adr-generation/SKILL.md +133 -0
  164. package/.agent/skills/advanced-rag-pipelines/SKILL.md +125 -64
  165. package/.agent/skills/agent-organizer/SKILL.md +142 -84
  166. package/.agent/skills/agent-syscall-guidelines/SKILL.md +88 -13
  167. package/.agent/skills/agentic-patterns/SKILL.md +314 -244
  168. package/.agent/skills/agentic-workflows-2026/SKILL.md +137 -65
  169. package/.agent/skills/agentshield-security/SKILL.md +74 -15
  170. package/.agent/skills/ai-app-hardening/SKILL.md +99 -27
  171. package/.agent/skills/ai-prompt-injection-defense/SKILL.md +191 -130
  172. package/.agent/skills/animation-on-scroll/SKILL.md +225 -163
  173. package/.agent/skills/animation-systems/SKILL.md +227 -165
  174. package/.agent/skills/antfu-conventions/SKILL.md +96 -26
  175. package/.agent/skills/anti-slop-enforcement/SKILL.md +118 -0
  176. package/.agent/skills/api-patterns/SKILL.md +247 -186
  177. package/.agent/skills/api-security-auditor/SKILL.md +204 -126
  178. package/.agent/skills/app-builder/SKILL.md +556 -501
  179. package/.agent/skills/app-builder/templates/SKILL.md +108 -108
  180. package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
  181. package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
  182. package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
  183. package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
  184. package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
  185. package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
  186. package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
  187. package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -126
  188. package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +127 -127
  189. package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +172 -172
  190. package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +139 -139
  191. package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
  192. package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +122 -122
  193. package/.agent/skills/appflow-wireframe/SKILL.md +129 -69
  194. package/.agent/skills/apple-design/SKILL.md +130 -60
  195. package/.agent/skills/architecture/SKILL.md +216 -155
  196. package/.agent/skills/architecture-drift/SKILL.md +121 -0
  197. package/.agent/skills/architecture-intelligence/SKILL.md +53 -0
  198. package/.agent/skills/audit-and-fix/SKILL.md +133 -63
  199. package/.agent/skills/authentication-best-practices/SKILL.md +191 -121
  200. package/.agent/skills/autonomous-execution/SKILL.md +154 -0
  201. package/.agent/skills/backend-alembic/SKILL.md +91 -0
  202. package/.agent/skills/backend-architecture-auditor/SKILL.md +101 -0
  203. package/.agent/skills/backend-mongodb/SKILL.md +133 -0
  204. package/.agent/skills/backend-mysql/SKILL.md +84 -0
  205. package/.agent/skills/backend-performance-auditor/SKILL.md +100 -0
  206. package/.agent/skills/backend-postgresql/SKILL.md +117 -0
  207. package/.agent/skills/backend-redis/SKILL.md +122 -0
  208. package/.agent/skills/backend-security-expert/SKILL.md +111 -50
  209. package/.agent/skills/backend-sqlalchemy/SKILL.md +107 -0
  210. package/.agent/skills/backend-sqlite/SKILL.md +93 -0
  211. package/.agent/skills/backend-testing-auditor/SKILL.md +113 -0
  212. package/.agent/skills/baseline-ui/SKILL.md +99 -29
  213. package/.agent/skills/bash-linux/SKILL.md +164 -106
  214. package/.agent/skills/behavioral-modes/SKILL.md +235 -165
  215. package/.agent/skills/better-colors/SKILL.md +153 -83
  216. package/.agent/skills/better-typography/SKILL.md +137 -67
  217. package/.agent/skills/better-ui/SKILL.md +160 -99
  218. package/.agent/skills/bolder/SKILL.md +91 -21
  219. package/.agent/skills/brainstorming/SKILL.md +494 -434
  220. package/.agent/skills/browser-audit/SKILL.md +134 -64
  221. package/.agent/skills/browser-native-ai/SKILL.md +111 -41
  222. package/.agent/skills/build-primitive/SKILL.md +93 -23
  223. package/.agent/skills/building-native-ui/SKILL.md +191 -130
  224. package/.agent/skills/cicd-pro/SKILL.md +440 -379
  225. package/.agent/skills/clarify/SKILL.md +98 -28
  226. package/.agent/skills/clean-code/SKILL.md +395 -334
  227. package/.agent/skills/cloud-architect/SKILL.md +437 -376
  228. package/.agent/skills/cobejs/SKILL.md +120 -50
  229. package/.agent/skills/code-review-checklist/SKILL.md +198 -128
  230. package/.agent/skills/codebase-design/SKILL.md +109 -48
  231. package/.agent/skills/colorize/SKILL.md +100 -30
  232. package/.agent/skills/compact-landing/SKILL.md +93 -23
  233. package/.agent/skills/company-logos/SKILL.md +96 -26
  234. package/.agent/skills/config-validator/SKILL.md +151 -93
  235. package/.agent/skills/containerization-pro/SKILL.md +450 -389
  236. package/.agent/skills/context-engineering-pro/SKILL.md +113 -41
  237. package/.agent/skills/create-design-md/SKILL.md +128 -58
  238. package/.agent/skills/critique/SKILL.md +115 -45
  239. package/.agent/skills/csharp-developer/SKILL.md +512 -442
  240. package/.agent/skills/data-validation-schemas/SKILL.md +321 -263
  241. package/.agent/skills/database-design/SKILL.md +247 -186
  242. package/.agent/skills/delight/SKILL.md +88 -18
  243. package/.agent/skills/deployment-procedures/SKILL.md +159 -101
  244. package/.agent/skills/design-lab/SKILL.md +85 -15
  245. package/.agent/skills/devops-engineer/SKILL.md +339 -269
  246. package/.agent/skills/devops-incident-responder/SKILL.md +130 -72
  247. package/.agent/skills/diagnosing-bugs/SKILL.md +208 -138
  248. package/.agent/skills/distill/SKILL.md +88 -18
  249. package/.agent/skills/documentation-templates/SKILL.md +275 -217
  250. package/.agent/skills/domain-modeling/SKILL.md +101 -31
  251. package/.agent/skills/duckdb-analytical-sql/SKILL.md +100 -28
  252. package/.agent/skills/edge-ai-mobile/SKILL.md +92 -20
  253. package/.agent/skills/edge-computing/SKILL.md +168 -110
  254. package/.agent/skills/emil-design-eng/SKILL.md +170 -100
  255. package/.agent/skills/error-resilience/SKILL.md +431 -370
  256. package/.agent/skills/expo-router-v4/SKILL.md +126 -54
  257. package/.agent/skills/extract-design-system/SKILL.md +146 -88
  258. package/.agent/skills/fabel-protocol/SKILL.md +316 -246
  259. package/.agent/skills/failure-mode-analysis/SKILL.md +124 -0
  260. package/.agent/skills/fastapi-pro/SKILL.md +123 -0
  261. package/.agent/skills/fixing-accessibility/SKILL.md +129 -59
  262. package/.agent/skills/fixing-metadata/SKILL.md +130 -60
  263. package/.agent/skills/fixing-motion-performance/SKILL.md +115 -45
  264. package/.agent/skills/framer-motion-expert/SKILL.md +259 -204
  265. package/.agent/skills/frontend-design/SKILL.md +139 -69
  266. package/.agent/skills/frontend-security-expert/SKILL.md +94 -33
  267. package/.agent/skills/game-design-expert/SKILL.md +126 -68
  268. package/.agent/skills/game-engineering-expert/SKILL.md +135 -77
  269. package/.agent/skills/generative-ui-expert/SKILL.md +142 -72
  270. package/.agent/skills/geo-fundamentals/SKILL.md +134 -76
  271. package/.agent/skills/git-pro/SKILL.md +429 -368
  272. package/.agent/skills/github-operations/SKILL.md +329 -259
  273. package/.agent/skills/gpt-taste/SKILL.md +92 -22
  274. package/.agent/skills/graph-engineering/SKILL.md +104 -16
  275. package/.agent/skills/gsap-core/SKILL.md +312 -242
  276. package/.agent/skills/gsap-frameworks/SKILL.md +204 -134
  277. package/.agent/skills/gsap-performance/SKILL.md +130 -60
  278. package/.agent/skills/gsap-plugins/SKILL.md +476 -406
  279. package/.agent/skills/gsap-react/SKILL.md +248 -178
  280. package/.agent/skills/gsap-scrolltrigger/SKILL.md +347 -277
  281. package/.agent/skills/gsap-timeline/SKILL.md +157 -87
  282. package/.agent/skills/gsap-utils/SKILL.md +334 -264
  283. package/.agent/skills/harden/SKILL.md +97 -27
  284. package/.agent/skills/harness-protocol/SKILL.md +91 -21
  285. package/.agent/skills/hf-cli/SKILL.md +86 -6
  286. package/.agent/skills/hf-cloud-aws-context-discovery/SKILL.md +86 -8
  287. package/.agent/skills/hf-cloud-python-env-setup/SKILL.md +86 -8
  288. package/.agent/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +86 -8
  289. package/.agent/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +86 -8
  290. package/.agent/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +86 -8
  291. package/.agent/skills/hf-cloud-serving-image-selection/SKILL.md +86 -8
  292. package/.agent/skills/hf-mem/SKILL.md +86 -6
  293. package/.agent/skills/huggingface-best/SKILL.md +86 -16
  294. package/.agent/skills/huggingface-community-evals/SKILL.md +86 -8
  295. package/.agent/skills/huggingface-datasets/SKILL.md +86 -8
  296. package/.agent/skills/huggingface-gradio/SKILL.md +86 -8
  297. package/.agent/skills/huggingface-llm-trainer/SKILL.md +86 -9
  298. package/.agent/skills/huggingface-local-models/SKILL.md +86 -8
  299. package/.agent/skills/huggingface-lora-space-builder/SKILL.md +86 -8
  300. package/.agent/skills/huggingface-paper-publisher/SKILL.md +86 -7
  301. package/.agent/skills/huggingface-papers/SKILL.md +86 -8
  302. package/.agent/skills/huggingface-spaces/SKILL.md +87 -9
  303. package/.agent/skills/huggingface-tool-builder/SKILL.md +86 -8
  304. package/.agent/skills/huggingface-trackio/SKILL.md +77 -8
  305. package/.agent/skills/huggingface-vision-trainer/SKILL.md +86 -8
  306. package/.agent/skills/huggingface-zerogpu/SKILL.md +86 -8
  307. package/.agent/skills/human-gate-negotiation/SKILL.md +83 -17
  308. package/.agent/skills/i18n-localization/SKILL.md +160 -102
  309. package/.agent/skills/impeccable/SKILL.md +95 -25
  310. package/.agent/skills/improve-codebase-architecture/SKILL.md +90 -20
  311. package/.agent/skills/improve-ui/SKILL.md +107 -37
  312. package/.agent/skills/intelligent-routing/SKILL.md +243 -180
  313. package/.agent/skills/knowledge-graph/SKILL.md +109 -39
  314. package/.agent/skills/landing-page/SKILL.md +106 -36
  315. package/.agent/skills/lint-and-validate/SKILL.md +249 -191
  316. package/.agent/skills/llm-engineering/SKILL.md +394 -324
  317. package/.agent/skills/local-first/SKILL.md +163 -105
  318. package/.agent/skills/local-first-architecture/SKILL.md +100 -39
  319. package/.agent/skills/lottie-animation/SKILL.md +109 -39
  320. package/.agent/skills/marquee-loop/SKILL.md +121 -51
  321. package/.agent/skills/masked-reveal/SKILL.md +267 -198
  322. package/.agent/skills/mcp-builder/SKILL.md +131 -73
  323. package/.agent/skills/micro-interaction/SKILL.md +281 -219
  324. package/.agent/skills/mobile-design/SKILL.md +274 -213
  325. package/.agent/skills/monorepo-management/SKILL.md +319 -261
  326. package/.agent/skills/morphing-icons/SKILL.md +379 -310
  327. package/.agent/skills/motion-engineering/SKILL.md +225 -164
  328. package/.agent/skills/nextjs-react-expert/SKILL.md +247 -186
  329. package/.agent/skills/nodejs-best-practices/SKILL.md +570 -509
  330. package/.agent/skills/observability/SKILL.md +337 -267
  331. package/.agent/skills/opentelemetry-observability/SKILL.md +106 -34
  332. package/.agent/skills/page-transition-animation/SKILL.md +130 -60
  333. package/.agent/skills/parallel-agents/SKILL.md +136 -78
  334. package/.agent/skills/performance-profiling/SKILL.md +263 -193
  335. package/.agent/skills/plan-writing/SKILL.md +156 -95
  336. package/.agent/skills/platform-engineer/SKILL.md +134 -76
  337. package/.agent/skills/platform-engineering-opentofu/SKILL.md +114 -42
  338. package/.agent/skills/playwright-ai-e2e/SKILL.md +100 -28
  339. package/.agent/skills/playwright-best-practices/SKILL.md +174 -116
  340. package/.agent/skills/polish/SKILL.md +90 -20
  341. package/.agent/skills/powershell-windows/SKILL.md +156 -86
  342. package/.agent/skills/pricing-page/SKILL.md +91 -21
  343. package/.agent/skills/product-aware-heuristics/SKILL.md +424 -354
  344. package/.agent/skills/progressive-blur/SKILL.md +122 -52
  345. package/.agent/skills/project-idioms/SKILL.md +125 -55
  346. package/.agent/skills/property-based-testing/SKILL.md +104 -32
  347. package/.agent/skills/python-patterns/SKILL.md +245 -187
  348. package/.agent/skills/python-pro/SKILL.md +333 -272
  349. package/.agent/skills/quieter/SKILL.md +91 -21
  350. package/.agent/skills/react-doctor/SKILL.md +93 -23
  351. package/.agent/skills/react-specialist/SKILL.md +309 -248
  352. package/.agent/skills/readme-builder/SKILL.md +294 -236
  353. package/.agent/skills/realtime-patterns/SKILL.md +317 -247
  354. package/.agent/skills/red-team-tactics/SKILL.md +220 -159
  355. package/.agent/skills/redesign-skill/SKILL.md +88 -18
  356. package/.agent/skills/review-animations/SKILL.md +91 -21
  357. package/.agent/skills/review-animations/STANDARDS.md +87 -87
  358. package/.agent/skills/rust-pro/SKILL.md +680 -619
  359. package/.agent/skills/semantic-filesystem-navigation/SKILL.md +69 -14
  360. package/.agent/skills/seo-fundamentals/SKILL.md +165 -107
  361. package/.agent/skills/server-management/SKILL.md +203 -145
  362. package/.agent/skills/session-log-interrogation/SKILL.md +70 -18
  363. package/.agent/skills/shadcn-ui-expert/SKILL.md +221 -163
  364. package/.agent/skills/shape/SKILL.md +96 -26
  365. package/.agent/skills/skill-creator/SKILL.md +213 -145
  366. package/.agent/skills/soft-skill/SKILL.md +95 -25
  367. package/.agent/skills/sounds-on-the-web/SKILL.md +115 -45
  368. package/.agent/skills/sql-pro/SKILL.md +653 -592
  369. package/.agent/skills/subagent-driven-development/SKILL.md +78 -18
  370. package/.agent/skills/supabase-postgres-best-practices/SKILL.md +93 -32
  371. package/.agent/skills/svg-animation/SKILL.md +388 -319
  372. package/.agent/skills/swiftui-expert/SKILL.md +190 -132
  373. package/.agent/skills/swiss-design/SKILL.md +87 -17
  374. package/.agent/skills/system-design-pro/SKILL.md +238 -294
  375. package/.agent/skills/systematic-debugging/SKILL.md +154 -96
  376. package/.agent/skills/systematic-debugging/condition-based-waiting.md +120 -120
  377. package/.agent/skills/systematic-debugging/defense-in-depth.md +128 -128
  378. package/.agent/skills/systematic-debugging/root-cause-tracing.md +183 -183
  379. package/.agent/skills/tailwind-patterns/SKILL.md +617 -547
  380. package/.agent/skills/taste-skill/SKILL.md +94 -24
  381. package/.agent/skills/tdd-workflow/SKILL.md +133 -72
  382. package/.agent/skills/test-result-analyzer/SKILL.md +304 -234
  383. package/.agent/skills/testing-patterns/SKILL.md +567 -497
  384. package/.agent/skills/thermo-nuclear-code-quality-review/SKILL.md +104 -34
  385. package/.agent/skills/thinking-protocol/SKILL.md +65 -7
  386. package/.agent/skills/to-spring-or-not-to-spring/SKILL.md +90 -20
  387. package/.agent/skills/train-sentence-transformers/SKILL.md +86 -8
  388. package/.agent/skills/transformers-js/SKILL.md +86 -15
  389. package/.agent/skills/transformers-js/references/CONFIGURATION.md +1 -1
  390. package/.agent/skills/transitions-dev/SKILL.md +136 -66
  391. package/.agent/skills/trend-researcher/SKILL.md +232 -162
  392. package/.agent/skills/tribunal-instincts-memory/SKILL.md +74 -19
  393. package/.agent/skills/trl-training/SKILL.md +86 -16
  394. package/.agent/skills/typescript-advanced/SKILL.md +334 -273
  395. package/.agent/skills/typeset/SKILL.md +101 -31
  396. package/.agent/skills/ui-reasoning-engine/SKILL.md +191 -121
  397. package/.agent/skills/ui-skill-packs/SKILL.md +95 -25
  398. package/.agent/skills/ui-skills-root/SKILL.md +118 -48
  399. package/.agent/skills/ui-ux-pro-max/SKILL.md +145 -75
  400. package/.agent/skills/ui-ux-researcher/SKILL.md +235 -165
  401. package/.agent/skills/vector-search-pgvector/SKILL.md +118 -46
  402. package/.agent/skills/verification-before-completion/SKILL.md +151 -79
  403. package/.agent/skills/vue-expert/SKILL.md +288 -227
  404. package/.agent/skills/vulnerability-scanner/SKILL.md +409 -342
  405. package/.agent/skills/web-accessibility-auditor/SKILL.md +204 -146
  406. package/.agent/skills/web-design-guidelines/SKILL.md +92 -22
  407. package/.agent/skills/web-quality-audit/SKILL.md +90 -20
  408. package/.agent/skills/webapp-testing/SKILL.md +152 -94
  409. package/.agent/skills/webgpu-performance/SKILL.md +126 -56
  410. package/.agent/skills/whimsy-injector/SKILL.md +339 -269
  411. package/.agent/skills/workflow-optimizer/SKILL.md +222 -152
  412. package/.agent/skills/zero-trust-passkeys/SKILL.md +135 -63
  413. package/.agent/skills_inventory.json +6922 -0
  414. package/.agent/templates/DESIGN.md +843 -843
  415. package/.agent/templates/design-tokens.json +140 -140
  416. package/.agent/templates/sdd/implementer-prompt.md +62 -62
  417. package/.agent/templates/sdd/re-review-prompt.md +36 -36
  418. package/.agent/templates/sdd/task-reviewer-prompt.md +78 -78
  419. package/.agent/workflows/acf.md +153 -153
  420. package/.agent/workflows/api-tester.md +189 -189
  421. package/.agent/workflows/arch.md +80 -0
  422. package/.agent/workflows/assimilate.md +24 -21
  423. package/.agent/workflows/audit-live.md +53 -53
  424. package/.agent/workflows/audit.md +171 -172
  425. package/.agent/workflows/brainstorm.md +157 -157
  426. package/.agent/workflows/changelog.md +152 -152
  427. package/.agent/workflows/compare-web.md +35 -35
  428. package/.agent/workflows/context.md +102 -102
  429. package/.agent/workflows/contract.md +79 -79
  430. package/.agent/workflows/create.md +182 -182
  431. package/.agent/workflows/debug.md +201 -201
  432. package/.agent/workflows/deploy.md +215 -215
  433. package/.agent/workflows/enhance.md +165 -165
  434. package/.agent/workflows/fix-ci.md +94 -94
  435. package/.agent/workflows/fix.md +149 -149
  436. package/.agent/workflows/generate.md +221 -216
  437. package/.agent/workflows/htop.md +26 -22
  438. package/.agent/workflows/marathon.md +290 -291
  439. package/.agent/workflows/migrate.md +198 -198
  440. package/.agent/workflows/minimal.md +101 -101
  441. package/.agent/workflows/orchestrate.md +205 -205
  442. package/.agent/workflows/performance-benchmarker.md +148 -148
  443. package/.agent/workflows/pipeline.md +165 -165
  444. package/.agent/workflows/plan.md +206 -206
  445. package/.agent/workflows/preview.md +116 -116
  446. package/.agent/workflows/refactor.md +207 -207
  447. package/.agent/workflows/resume.md +23 -20
  448. package/.agent/workflows/review-ai.md +139 -139
  449. package/.agent/workflows/review.md +155 -155
  450. package/.agent/workflows/sdd.md +137 -137
  451. package/.agent/workflows/session.md +135 -135
  452. package/.agent/workflows/skill-enhancement-engine.md +84 -84
  453. package/.agent/workflows/status.md +112 -112
  454. package/.agent/workflows/strengthen-skills.md +174 -174
  455. package/.agent/workflows/super-prompt.md +146 -146
  456. package/.agent/workflows/swarm.md +218 -218
  457. package/.agent/workflows/team-mode.md +25 -22
  458. package/.agent/workflows/test.md +224 -224
  459. package/.agent/workflows/tribunal-backend.md +161 -149
  460. package/.agent/workflows/tribunal-cicd.md +109 -109
  461. package/.agent/workflows/tribunal-database.md +142 -142
  462. package/.agent/workflows/tribunal-frontend.md +163 -157
  463. package/.agent/workflows/tribunal-full.md +156 -156
  464. package/.agent/workflows/tribunal-mobile.md +142 -142
  465. package/.agent/workflows/tribunal-performance.md +149 -149
  466. package/.agent/workflows/tribunal-speed.md +222 -222
  467. package/.agent/workflows/tribunal-ui.md +102 -97
  468. package/.agent/workflows/ui-ux-pro-max.md +103 -103
  469. package/.agents/skills/12-principles-of-animation/SKILL.md +91 -21
  470. package/.agents/skills/60fps-animation/SKILL.md +118 -61
  471. package/.agents/skills/accessible-animation/SKILL.md +214 -152
  472. package/.agents/skills/adapt/SKILL.md +98 -28
  473. package/.agents/skills/adr-generation/SKILL.md +133 -0
  474. package/.agents/skills/advanced-rag-pipelines/SKILL.md +125 -64
  475. package/.agents/skills/agent-organizer/SKILL.md +142 -84
  476. package/.agents/skills/agent-syscall-guidelines/SKILL.md +88 -13
  477. package/.agents/skills/agentic-patterns/SKILL.md +314 -244
  478. package/.agents/skills/agentic-workflows-2026/SKILL.md +137 -65
  479. package/.agents/skills/agentshield-security/SKILL.md +74 -15
  480. package/.agents/skills/ai-app-hardening/SKILL.md +99 -27
  481. package/.agents/skills/ai-prompt-injection-defense/SKILL.md +191 -130
  482. package/.agents/skills/animation-on-scroll/SKILL.md +225 -163
  483. package/.agents/skills/animation-systems/SKILL.md +227 -165
  484. package/.agents/skills/antfu-conventions/SKILL.md +96 -26
  485. package/.agents/skills/anti-slop-enforcement/SKILL.md +118 -0
  486. package/.agents/skills/api-patterns/SKILL.md +247 -186
  487. package/.agents/skills/api-security-auditor/SKILL.md +204 -126
  488. package/.agents/skills/app-builder/SKILL.md +556 -501
  489. package/.agents/skills/app-builder/templates/SKILL.md +108 -108
  490. package/.agents/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
  491. package/.agents/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
  492. package/.agents/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
  493. package/.agents/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
  494. package/.agents/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
  495. package/.agents/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
  496. package/.agents/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
  497. package/.agents/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -126
  498. package/.agents/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +127 -127
  499. package/.agents/skills/app-builder/templates/nextjs-static/TEMPLATE.md +172 -172
  500. package/.agents/skills/app-builder/templates/nuxt-app/TEMPLATE.md +139 -139
  501. package/.agents/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
  502. package/.agents/skills/app-builder/templates/react-native-app/TEMPLATE.md +122 -122
  503. package/.agents/skills/appflow-wireframe/SKILL.md +129 -69
  504. package/.agents/skills/apple-design/SKILL.md +130 -60
  505. package/.agents/skills/architecture/SKILL.md +216 -155
  506. package/.agents/skills/architecture-drift/SKILL.md +121 -0
  507. package/.agents/skills/architecture-intelligence/SKILL.md +53 -0
  508. package/.agents/skills/audit-and-fix/SKILL.md +133 -63
  509. package/.agents/skills/authentication-best-practices/SKILL.md +191 -121
  510. package/.agents/skills/autonomous-execution/SKILL.md +154 -0
  511. package/.agents/skills/backend-alembic/SKILL.md +91 -0
  512. package/.agents/skills/backend-architecture-auditor/SKILL.md +101 -0
  513. package/.agents/skills/backend-mongodb/SKILL.md +133 -0
  514. package/.agents/skills/backend-mysql/SKILL.md +84 -0
  515. package/.agents/skills/backend-performance-auditor/SKILL.md +100 -0
  516. package/.agents/skills/backend-postgresql/SKILL.md +117 -0
  517. package/.agents/skills/backend-redis/SKILL.md +122 -0
  518. package/.agents/skills/backend-security-expert/SKILL.md +111 -50
  519. package/.agents/skills/backend-sqlalchemy/SKILL.md +107 -0
  520. package/.agents/skills/backend-sqlite/SKILL.md +93 -0
  521. package/.agents/skills/backend-testing-auditor/SKILL.md +113 -0
  522. package/.agents/skills/baseline-ui/SKILL.md +99 -29
  523. package/.agents/skills/bash-linux/SKILL.md +164 -106
  524. package/.agents/skills/behavioral-modes/SKILL.md +235 -165
  525. package/.agents/skills/better-colors/SKILL.md +153 -83
  526. package/.agents/skills/better-typography/SKILL.md +137 -67
  527. package/.agents/skills/better-ui/SKILL.md +160 -99
  528. package/.agents/skills/bolder/SKILL.md +91 -21
  529. package/.agents/skills/brainstorming/SKILL.md +494 -434
  530. package/.agents/skills/browser-audit/SKILL.md +134 -64
  531. package/.agents/skills/browser-native-ai/SKILL.md +111 -41
  532. package/.agents/skills/build-primitive/SKILL.md +93 -23
  533. package/.agents/skills/building-native-ui/SKILL.md +191 -130
  534. package/.agents/skills/cicd-pro/SKILL.md +440 -379
  535. package/.agents/skills/clarify/SKILL.md +98 -28
  536. package/.agents/skills/clean-code/SKILL.md +395 -334
  537. package/.agents/skills/cloud-architect/SKILL.md +437 -376
  538. package/.agents/skills/cobejs/SKILL.md +120 -50
  539. package/.agents/skills/code-review-checklist/SKILL.md +198 -128
  540. package/.agents/skills/codebase-design/SKILL.md +109 -48
  541. package/.agents/skills/colorize/SKILL.md +100 -30
  542. package/.agents/skills/compact-landing/SKILL.md +93 -23
  543. package/.agents/skills/company-logos/SKILL.md +96 -26
  544. package/.agents/skills/config-validator/SKILL.md +151 -93
  545. package/.agents/skills/containerization-pro/SKILL.md +450 -389
  546. package/.agents/skills/context-engineering-pro/SKILL.md +113 -41
  547. package/.agents/skills/create-design-md/SKILL.md +128 -58
  548. package/.agents/skills/critique/SKILL.md +115 -45
  549. package/.agents/skills/csharp-developer/SKILL.md +512 -442
  550. package/.agents/skills/data-validation-schemas/SKILL.md +321 -263
  551. package/.agents/skills/database-design/SKILL.md +247 -186
  552. package/.agents/skills/delight/SKILL.md +88 -18
  553. package/.agents/skills/deployment-procedures/SKILL.md +159 -101
  554. package/.agents/skills/design-lab/SKILL.md +85 -15
  555. package/.agents/skills/devops-engineer/SKILL.md +339 -269
  556. package/.agents/skills/devops-incident-responder/SKILL.md +130 -72
  557. package/.agents/skills/diagnosing-bugs/SKILL.md +208 -138
  558. package/.agents/skills/distill/SKILL.md +88 -18
  559. package/.agents/skills/documentation-templates/SKILL.md +275 -217
  560. package/.agents/skills/domain-modeling/SKILL.md +101 -31
  561. package/.agents/skills/duckdb-analytical-sql/SKILL.md +100 -28
  562. package/.agents/skills/edge-ai-mobile/SKILL.md +92 -20
  563. package/.agents/skills/edge-computing/SKILL.md +168 -110
  564. package/.agents/skills/emil-design-eng/SKILL.md +170 -100
  565. package/.agents/skills/error-resilience/SKILL.md +431 -370
  566. package/.agents/skills/expo-router-v4/SKILL.md +126 -54
  567. package/.agents/skills/extract-design-system/SKILL.md +146 -88
  568. package/.agents/skills/fabel-protocol/SKILL.md +316 -246
  569. package/.agents/skills/failure-mode-analysis/SKILL.md +124 -0
  570. package/.agents/skills/fastapi-pro/SKILL.md +123 -0
  571. package/.agents/skills/fixing-accessibility/SKILL.md +129 -59
  572. package/.agents/skills/fixing-metadata/SKILL.md +130 -60
  573. package/.agents/skills/fixing-motion-performance/SKILL.md +115 -45
  574. package/.agents/skills/framer-motion-expert/SKILL.md +259 -204
  575. package/.agents/skills/frontend-design/SKILL.md +139 -69
  576. package/.agents/skills/frontend-security-expert/SKILL.md +94 -33
  577. package/.agents/skills/game-design-expert/SKILL.md +126 -68
  578. package/.agents/skills/game-engineering-expert/SKILL.md +135 -77
  579. package/.agents/skills/generative-ui-expert/SKILL.md +142 -72
  580. package/.agents/skills/geo-fundamentals/SKILL.md +134 -76
  581. package/.agents/skills/git-pro/SKILL.md +429 -368
  582. package/.agents/skills/github-operations/SKILL.md +329 -259
  583. package/.agents/skills/gpt-taste/SKILL.md +92 -22
  584. package/.agents/skills/graph-engineering/SKILL.md +104 -16
  585. package/.agents/skills/gsap-core/SKILL.md +312 -242
  586. package/.agents/skills/gsap-frameworks/SKILL.md +204 -134
  587. package/.agents/skills/gsap-performance/SKILL.md +130 -60
  588. package/.agents/skills/gsap-plugins/SKILL.md +476 -406
  589. package/.agents/skills/gsap-react/SKILL.md +248 -178
  590. package/.agents/skills/gsap-scrolltrigger/SKILL.md +347 -277
  591. package/.agents/skills/gsap-timeline/SKILL.md +157 -87
  592. package/.agents/skills/gsap-utils/SKILL.md +334 -264
  593. package/.agents/skills/harden/SKILL.md +97 -27
  594. package/.agents/skills/harness-protocol/SKILL.md +91 -21
  595. package/.agents/skills/hf-cli/SKILL.md +86 -6
  596. package/.agents/skills/hf-cloud-aws-context-discovery/SKILL.md +86 -8
  597. package/.agents/skills/hf-cloud-python-env-setup/SKILL.md +86 -8
  598. package/.agents/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +86 -8
  599. package/.agents/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +86 -8
  600. package/.agents/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +86 -8
  601. package/.agents/skills/hf-cloud-serving-image-selection/SKILL.md +86 -8
  602. package/.agents/skills/hf-mem/SKILL.md +86 -6
  603. package/.agents/skills/huggingface-best/SKILL.md +86 -16
  604. package/.agents/skills/huggingface-community-evals/SKILL.md +86 -8
  605. package/.agents/skills/huggingface-datasets/SKILL.md +86 -8
  606. package/.agents/skills/huggingface-gradio/SKILL.md +86 -8
  607. package/.agents/skills/huggingface-llm-trainer/SKILL.md +86 -9
  608. package/.agents/skills/huggingface-local-models/SKILL.md +86 -8
  609. package/.agents/skills/huggingface-lora-space-builder/SKILL.md +86 -8
  610. package/.agents/skills/huggingface-paper-publisher/SKILL.md +86 -7
  611. package/.agents/skills/huggingface-papers/SKILL.md +86 -8
  612. package/.agents/skills/huggingface-spaces/SKILL.md +87 -9
  613. package/.agents/skills/huggingface-tool-builder/SKILL.md +86 -8
  614. package/.agents/skills/huggingface-trackio/SKILL.md +77 -8
  615. package/.agents/skills/huggingface-vision-trainer/SKILL.md +86 -8
  616. package/.agents/skills/huggingface-zerogpu/SKILL.md +86 -8
  617. package/.agents/skills/human-gate-negotiation/SKILL.md +83 -17
  618. package/.agents/skills/i18n-localization/SKILL.md +160 -102
  619. package/.agents/skills/impeccable/SKILL.md +95 -25
  620. package/.agents/skills/improve-codebase-architecture/SKILL.md +90 -20
  621. package/.agents/skills/improve-ui/SKILL.md +107 -37
  622. package/.agents/skills/intelligent-routing/SKILL.md +243 -180
  623. package/.agents/skills/knowledge-graph/SKILL.md +109 -39
  624. package/.agents/skills/landing-page/SKILL.md +106 -36
  625. package/.agents/skills/lint-and-validate/SKILL.md +249 -191
  626. package/.agents/skills/llm-engineering/SKILL.md +394 -324
  627. package/.agents/skills/local-first/SKILL.md +163 -105
  628. package/.agents/skills/local-first-architecture/SKILL.md +100 -39
  629. package/.agents/skills/lottie-animation/SKILL.md +109 -39
  630. package/.agents/skills/marquee-loop/SKILL.md +121 -51
  631. package/.agents/skills/masked-reveal/SKILL.md +267 -198
  632. package/.agents/skills/mcp-builder/SKILL.md +131 -73
  633. package/.agents/skills/micro-interaction/SKILL.md +281 -219
  634. package/.agents/skills/mobile-design/SKILL.md +274 -213
  635. package/.agents/skills/monorepo-management/SKILL.md +319 -261
  636. package/.agents/skills/morphing-icons/SKILL.md +379 -310
  637. package/.agents/skills/motion-engineering/SKILL.md +225 -164
  638. package/.agents/skills/nextjs-react-expert/SKILL.md +247 -186
  639. package/.agents/skills/nodejs-best-practices/SKILL.md +570 -509
  640. package/.agents/skills/observability/SKILL.md +337 -267
  641. package/.agents/skills/opentelemetry-observability/SKILL.md +106 -34
  642. package/.agents/skills/page-transition-animation/SKILL.md +130 -60
  643. package/.agents/skills/parallel-agents/SKILL.md +136 -78
  644. package/.agents/skills/performance-profiling/SKILL.md +263 -193
  645. package/.agents/skills/plan-writing/SKILL.md +156 -95
  646. package/.agents/skills/platform-engineer/SKILL.md +134 -76
  647. package/.agents/skills/platform-engineering-opentofu/SKILL.md +114 -42
  648. package/.agents/skills/playwright-ai-e2e/SKILL.md +100 -28
  649. package/.agents/skills/playwright-best-practices/SKILL.md +174 -116
  650. package/.agents/skills/polish/SKILL.md +90 -20
  651. package/.agents/skills/powershell-windows/SKILL.md +156 -86
  652. package/.agents/skills/pricing-page/SKILL.md +91 -21
  653. package/.agents/skills/product-aware-heuristics/SKILL.md +424 -354
  654. package/.agents/skills/progressive-blur/SKILL.md +122 -52
  655. package/.agents/skills/project-idioms/SKILL.md +125 -55
  656. package/.agents/skills/property-based-testing/SKILL.md +104 -32
  657. package/.agents/skills/python-patterns/SKILL.md +245 -187
  658. package/.agents/skills/python-pro/SKILL.md +333 -272
  659. package/.agents/skills/quieter/SKILL.md +91 -21
  660. package/.agents/skills/react-doctor/SKILL.md +93 -23
  661. package/.agents/skills/react-specialist/SKILL.md +309 -248
  662. package/.agents/skills/readme-builder/SKILL.md +294 -236
  663. package/.agents/skills/realtime-patterns/SKILL.md +317 -247
  664. package/.agents/skills/red-team-tactics/SKILL.md +220 -159
  665. package/.agents/skills/redesign-skill/SKILL.md +88 -18
  666. package/.agents/skills/review-animations/SKILL.md +91 -21
  667. package/.agents/skills/review-animations/STANDARDS.md +87 -87
  668. package/.agents/skills/rust-pro/SKILL.md +680 -619
  669. package/.agents/skills/semantic-filesystem-navigation/SKILL.md +69 -14
  670. package/.agents/skills/seo-fundamentals/SKILL.md +165 -107
  671. package/.agents/skills/server-management/SKILL.md +203 -145
  672. package/.agents/skills/session-log-interrogation/SKILL.md +70 -18
  673. package/.agents/skills/shadcn-ui-expert/SKILL.md +221 -163
  674. package/.agents/skills/shape/SKILL.md +96 -26
  675. package/.agents/skills/skill-creator/SKILL.md +213 -145
  676. package/.agents/skills/soft-skill/SKILL.md +95 -25
  677. package/.agents/skills/sounds-on-the-web/SKILL.md +115 -45
  678. package/.agents/skills/sql-pro/SKILL.md +653 -592
  679. package/.agents/skills/subagent-driven-development/SKILL.md +78 -18
  680. package/.agents/skills/supabase-postgres-best-practices/SKILL.md +93 -32
  681. package/.agents/skills/svg-animation/SKILL.md +388 -319
  682. package/.agents/skills/swiftui-expert/SKILL.md +190 -132
  683. package/.agents/skills/swiss-design/SKILL.md +87 -17
  684. package/.agents/skills/system-design-pro/SKILL.md +238 -294
  685. package/.agents/skills/systematic-debugging/SKILL.md +154 -96
  686. package/.agents/skills/systematic-debugging/condition-based-waiting.md +120 -120
  687. package/.agents/skills/systematic-debugging/defense-in-depth.md +128 -128
  688. package/.agents/skills/systematic-debugging/root-cause-tracing.md +183 -183
  689. package/.agents/skills/tailwind-patterns/SKILL.md +617 -547
  690. package/.agents/skills/taste-skill/SKILL.md +94 -24
  691. package/.agents/skills/tdd-workflow/SKILL.md +133 -72
  692. package/.agents/skills/test-result-analyzer/SKILL.md +304 -234
  693. package/.agents/skills/testing-patterns/SKILL.md +567 -497
  694. package/.agents/skills/thermo-nuclear-code-quality-review/SKILL.md +104 -34
  695. package/.agents/skills/thinking-protocol/SKILL.md +65 -7
  696. package/.agents/skills/to-spring-or-not-to-spring/SKILL.md +90 -20
  697. package/.agents/skills/train-sentence-transformers/SKILL.md +86 -8
  698. package/.agents/skills/transformers-js/SKILL.md +86 -15
  699. package/.agents/skills/transformers-js/references/CONFIGURATION.md +1 -1
  700. package/.agents/skills/transitions-dev/SKILL.md +136 -66
  701. package/.agents/skills/trend-researcher/SKILL.md +232 -162
  702. package/.agents/skills/tribunal-instincts-memory/SKILL.md +74 -19
  703. package/.agents/skills/trl-training/SKILL.md +86 -16
  704. package/.agents/skills/typescript-advanced/SKILL.md +334 -273
  705. package/.agents/skills/typeset/SKILL.md +101 -31
  706. package/.agents/skills/ui-reasoning-engine/SKILL.md +191 -121
  707. package/.agents/skills/ui-skill-packs/SKILL.md +95 -25
  708. package/.agents/skills/ui-skills-root/SKILL.md +118 -48
  709. package/.agents/skills/ui-ux-pro-max/SKILL.md +145 -75
  710. package/.agents/skills/ui-ux-researcher/SKILL.md +235 -165
  711. package/.agents/skills/vector-search-pgvector/SKILL.md +118 -46
  712. package/.agents/skills/verification-before-completion/SKILL.md +151 -79
  713. package/.agents/skills/vue-expert/SKILL.md +288 -227
  714. package/.agents/skills/vulnerability-scanner/SKILL.md +409 -342
  715. package/.agents/skills/web-accessibility-auditor/SKILL.md +204 -146
  716. package/.agents/skills/web-design-guidelines/SKILL.md +92 -22
  717. package/.agents/skills/web-quality-audit/SKILL.md +90 -20
  718. package/.agents/skills/webapp-testing/SKILL.md +152 -94
  719. package/.agents/skills/webgpu-performance/SKILL.md +126 -56
  720. package/.agents/skills/whimsy-injector/SKILL.md +339 -269
  721. package/.agents/skills/workflow-optimizer/SKILL.md +222 -152
  722. package/.agents/skills/zero-trust-passkeys/SKILL.md +135 -63
  723. package/AGENTS.md +93 -93
  724. package/CLAUDE.md +444 -444
  725. package/CONTRIBUTING.md +134 -134
  726. package/README.md +264 -242
  727. package/SECURITY.md +58 -52
  728. package/bin/adapter-install.js +264 -264
  729. package/bin/global-store.js +48 -48
  730. package/bin/mcp-server.js +1662 -1653
  731. package/bin/proxy-server.js +122 -122
  732. package/bin/spawn-agent.js +45 -45
  733. package/bin/tk-proxy.js +34 -34
  734. package/bin/tribunal-kit.js +113 -113
  735. package/bin/wrapper.js +225 -211
  736. package/hooks/hooks-cursor.json +10 -10
  737. package/hooks/hooks.json +10 -10
  738. package/hooks/session-start.js +77 -77
  739. package/mcp_config.json +18 -18
  740. package/package.json +20 -31
  741. package/{.claude-plugin → plugins/claude}/marketplace.json +14 -14
  742. package/{.claude-plugin → plugins/claude}/plugin.json +26 -26
  743. package/{.codex-plugin → plugins/codex}/plugin.json +41 -41
  744. package/{plugin.json → plugins/core-plugin.json} +1 -1
  745. package/{.cursor-plugin → plugins/cursor}/plugin.json +26 -26
  746. package/{.devin-plugin → plugins/devin}/plugin.json +14 -14
  747. package/{gemini-extension.json → plugins/gemini/extension.json} +1 -1
  748. package/{.hermes-plugin → plugins/hermes}/__init__.py +102 -102
  749. package/{.hermes-plugin → plugins/hermes}/plugin.yaml +6 -6
  750. package/{.kimi-plugin → plugins/kimi}/plugin.json +34 -34
  751. package/{marketplace.json → plugins/marketplace.json} +14 -14
  752. package/{.opencode → plugins/opencode}/INSTALL.md +42 -42
  753. package/{.opencode → plugins/opencode}/plugins/tribunal.js +110 -110
  754. package/{.opencode → plugins/opencode}/rules.md +258 -258
  755. package/{.pi → plugins/pi}/extensions/tribunal.ts +130 -130
  756. package/skills/12-principles-of-animation/SKILL.md +91 -21
  757. package/skills/60fps-animation/SKILL.md +118 -61
  758. package/skills/accessible-animation/SKILL.md +214 -152
  759. package/skills/adapt/SKILL.md +98 -28
  760. package/skills/adr-generation/SKILL.md +133 -0
  761. package/skills/advanced-rag-pipelines/SKILL.md +125 -64
  762. package/skills/agent-organizer/SKILL.md +142 -84
  763. package/skills/agent-syscall-guidelines/SKILL.md +88 -13
  764. package/skills/agentic-patterns/SKILL.md +314 -244
  765. package/skills/agentic-workflows-2026/SKILL.md +137 -65
  766. package/skills/agentshield-security/SKILL.md +74 -15
  767. package/skills/ai-app-hardening/SKILL.md +99 -27
  768. package/skills/ai-prompt-injection-defense/SKILL.md +191 -130
  769. package/skills/animation-on-scroll/SKILL.md +225 -163
  770. package/skills/animation-systems/SKILL.md +227 -165
  771. package/skills/antfu-conventions/SKILL.md +96 -26
  772. package/skills/anti-slop-enforcement/SKILL.md +118 -0
  773. package/skills/api-patterns/SKILL.md +247 -186
  774. package/skills/api-security-auditor/SKILL.md +204 -126
  775. package/skills/app-builder/SKILL.md +556 -501
  776. package/skills/app-builder/templates/SKILL.md +108 -108
  777. package/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -76
  778. package/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -92
  779. package/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -88
  780. package/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -88
  781. package/skills/app-builder/templates/express-api/TEMPLATE.md +83 -83
  782. package/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -90
  783. package/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -90
  784. package/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +126 -126
  785. package/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +127 -127
  786. package/skills/app-builder/templates/nextjs-static/TEMPLATE.md +172 -172
  787. package/skills/app-builder/templates/nuxt-app/TEMPLATE.md +139 -139
  788. package/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -83
  789. package/skills/app-builder/templates/react-native-app/TEMPLATE.md +122 -122
  790. package/skills/appflow-wireframe/SKILL.md +129 -69
  791. package/skills/apple-design/SKILL.md +130 -60
  792. package/skills/architecture/SKILL.md +216 -155
  793. package/skills/architecture-drift/SKILL.md +121 -0
  794. package/skills/architecture-intelligence/SKILL.md +53 -0
  795. package/skills/audit-and-fix/SKILL.md +133 -63
  796. package/skills/authentication-best-practices/SKILL.md +191 -121
  797. package/skills/autonomous-execution/SKILL.md +154 -0
  798. package/skills/backend-alembic/SKILL.md +91 -0
  799. package/skills/backend-architecture-auditor/SKILL.md +101 -0
  800. package/skills/backend-mongodb/SKILL.md +133 -0
  801. package/skills/backend-mysql/SKILL.md +84 -0
  802. package/skills/backend-performance-auditor/SKILL.md +100 -0
  803. package/skills/backend-postgresql/SKILL.md +117 -0
  804. package/skills/backend-redis/SKILL.md +122 -0
  805. package/skills/backend-security-expert/SKILL.md +111 -50
  806. package/skills/backend-sqlalchemy/SKILL.md +107 -0
  807. package/skills/backend-sqlite/SKILL.md +93 -0
  808. package/skills/backend-testing-auditor/SKILL.md +113 -0
  809. package/skills/baseline-ui/SKILL.md +99 -29
  810. package/skills/bash-linux/SKILL.md +164 -106
  811. package/skills/behavioral-modes/SKILL.md +235 -165
  812. package/skills/better-colors/SKILL.md +153 -83
  813. package/skills/better-typography/SKILL.md +137 -67
  814. package/skills/better-ui/SKILL.md +160 -99
  815. package/skills/bolder/SKILL.md +91 -21
  816. package/skills/brainstorming/SKILL.md +494 -434
  817. package/skills/browser-audit/SKILL.md +134 -64
  818. package/skills/browser-native-ai/SKILL.md +111 -41
  819. package/skills/build-primitive/SKILL.md +93 -23
  820. package/skills/building-native-ui/SKILL.md +191 -130
  821. package/skills/cicd-pro/SKILL.md +440 -379
  822. package/skills/clarify/SKILL.md +98 -28
  823. package/skills/clean-code/SKILL.md +395 -334
  824. package/skills/cloud-architect/SKILL.md +437 -376
  825. package/skills/cobejs/SKILL.md +120 -50
  826. package/skills/code-review-checklist/SKILL.md +198 -128
  827. package/skills/codebase-design/SKILL.md +109 -48
  828. package/skills/colorize/SKILL.md +100 -30
  829. package/skills/compact-landing/SKILL.md +93 -23
  830. package/skills/company-logos/SKILL.md +96 -26
  831. package/skills/config-validator/SKILL.md +151 -93
  832. package/skills/containerization-pro/SKILL.md +450 -389
  833. package/skills/context-engineering-pro/SKILL.md +113 -41
  834. package/skills/create-design-md/SKILL.md +128 -58
  835. package/skills/critique/SKILL.md +115 -45
  836. package/skills/csharp-developer/SKILL.md +512 -442
  837. package/skills/data-validation-schemas/SKILL.md +321 -263
  838. package/skills/database-design/SKILL.md +247 -186
  839. package/skills/delight/SKILL.md +88 -18
  840. package/skills/deployment-procedures/SKILL.md +159 -101
  841. package/skills/design-lab/SKILL.md +85 -15
  842. package/skills/devops-engineer/SKILL.md +339 -269
  843. package/skills/devops-incident-responder/SKILL.md +130 -72
  844. package/skills/diagnosing-bugs/SKILL.md +208 -138
  845. package/skills/distill/SKILL.md +88 -18
  846. package/skills/documentation-templates/SKILL.md +275 -217
  847. package/skills/domain-modeling/SKILL.md +101 -31
  848. package/skills/duckdb-analytical-sql/SKILL.md +100 -28
  849. package/skills/edge-ai-mobile/SKILL.md +92 -20
  850. package/skills/edge-computing/SKILL.md +168 -110
  851. package/skills/emil-design-eng/SKILL.md +170 -100
  852. package/skills/error-resilience/SKILL.md +431 -370
  853. package/skills/expo-router-v4/SKILL.md +126 -54
  854. package/skills/extract-design-system/SKILL.md +146 -88
  855. package/skills/fabel-protocol/SKILL.md +316 -246
  856. package/skills/failure-mode-analysis/SKILL.md +124 -0
  857. package/skills/fastapi-pro/SKILL.md +123 -0
  858. package/skills/fixing-accessibility/SKILL.md +129 -59
  859. package/skills/fixing-metadata/SKILL.md +130 -60
  860. package/skills/fixing-motion-performance/SKILL.md +115 -45
  861. package/skills/framer-motion-expert/SKILL.md +259 -204
  862. package/skills/frontend-design/SKILL.md +139 -69
  863. package/skills/frontend-security-expert/SKILL.md +94 -33
  864. package/skills/game-design-expert/SKILL.md +126 -68
  865. package/skills/game-engineering-expert/SKILL.md +135 -77
  866. package/skills/generative-ui-expert/SKILL.md +142 -72
  867. package/skills/geo-fundamentals/SKILL.md +134 -76
  868. package/skills/git-pro/SKILL.md +429 -368
  869. package/skills/github-operations/SKILL.md +329 -259
  870. package/skills/gpt-taste/SKILL.md +92 -22
  871. package/skills/graph-engineering/SKILL.md +104 -16
  872. package/skills/gsap-core/SKILL.md +312 -242
  873. package/skills/gsap-frameworks/SKILL.md +204 -134
  874. package/skills/gsap-performance/SKILL.md +130 -60
  875. package/skills/gsap-plugins/SKILL.md +476 -406
  876. package/skills/gsap-react/SKILL.md +248 -178
  877. package/skills/gsap-scrolltrigger/SKILL.md +347 -277
  878. package/skills/gsap-timeline/SKILL.md +157 -87
  879. package/skills/gsap-utils/SKILL.md +334 -264
  880. package/skills/harden/SKILL.md +97 -27
  881. package/skills/harness-protocol/SKILL.md +91 -21
  882. package/skills/hf-cli/SKILL.md +86 -6
  883. package/skills/hf-cloud-aws-context-discovery/SKILL.md +86 -8
  884. package/skills/hf-cloud-python-env-setup/SKILL.md +86 -8
  885. package/skills/hf-cloud-sagemaker-deployment-planner/SKILL.md +86 -8
  886. package/skills/hf-cloud-sagemaker-iam-preflight/SKILL.md +86 -8
  887. package/skills/hf-cloud-sagemaker-production-defaults/SKILL.md +86 -8
  888. package/skills/hf-cloud-serving-image-selection/SKILL.md +86 -8
  889. package/skills/hf-mem/SKILL.md +86 -6
  890. package/skills/huggingface-best/SKILL.md +86 -16
  891. package/skills/huggingface-community-evals/SKILL.md +86 -8
  892. package/skills/huggingface-datasets/SKILL.md +86 -8
  893. package/skills/huggingface-gradio/SKILL.md +86 -8
  894. package/skills/huggingface-llm-trainer/SKILL.md +86 -9
  895. package/skills/huggingface-local-models/SKILL.md +86 -8
  896. package/skills/huggingface-lora-space-builder/SKILL.md +86 -8
  897. package/skills/huggingface-paper-publisher/SKILL.md +86 -7
  898. package/skills/huggingface-papers/SKILL.md +86 -8
  899. package/skills/huggingface-spaces/SKILL.md +87 -9
  900. package/skills/huggingface-tool-builder/SKILL.md +86 -8
  901. package/skills/huggingface-trackio/SKILL.md +77 -8
  902. package/skills/huggingface-vision-trainer/SKILL.md +86 -8
  903. package/skills/huggingface-zerogpu/SKILL.md +86 -8
  904. package/skills/human-gate-negotiation/SKILL.md +83 -17
  905. package/skills/i18n-localization/SKILL.md +160 -102
  906. package/skills/impeccable/SKILL.md +95 -25
  907. package/skills/improve-codebase-architecture/SKILL.md +90 -20
  908. package/skills/improve-ui/SKILL.md +107 -37
  909. package/skills/intelligent-routing/SKILL.md +243 -180
  910. package/skills/knowledge-graph/SKILL.md +109 -39
  911. package/skills/landing-page/SKILL.md +106 -36
  912. package/skills/lint-and-validate/SKILL.md +249 -191
  913. package/skills/llm-engineering/SKILL.md +394 -324
  914. package/skills/local-first/SKILL.md +163 -105
  915. package/skills/local-first-architecture/SKILL.md +100 -39
  916. package/skills/lottie-animation/SKILL.md +109 -39
  917. package/skills/marquee-loop/SKILL.md +121 -51
  918. package/skills/masked-reveal/SKILL.md +267 -198
  919. package/skills/mcp-builder/SKILL.md +131 -73
  920. package/skills/micro-interaction/SKILL.md +281 -219
  921. package/skills/mobile-design/SKILL.md +274 -213
  922. package/skills/monorepo-management/SKILL.md +319 -261
  923. package/skills/morphing-icons/SKILL.md +379 -310
  924. package/skills/motion-engineering/SKILL.md +225 -164
  925. package/skills/nextjs-react-expert/SKILL.md +247 -186
  926. package/skills/nodejs-best-practices/SKILL.md +570 -509
  927. package/skills/observability/SKILL.md +337 -267
  928. package/skills/opentelemetry-observability/SKILL.md +106 -34
  929. package/skills/page-transition-animation/SKILL.md +130 -60
  930. package/skills/parallel-agents/SKILL.md +136 -78
  931. package/skills/performance-profiling/SKILL.md +263 -193
  932. package/skills/plan-writing/SKILL.md +156 -95
  933. package/skills/platform-engineer/SKILL.md +134 -76
  934. package/skills/platform-engineering-opentofu/SKILL.md +114 -42
  935. package/skills/playwright-ai-e2e/SKILL.md +100 -28
  936. package/skills/playwright-best-practices/SKILL.md +174 -116
  937. package/skills/polish/SKILL.md +90 -20
  938. package/skills/powershell-windows/SKILL.md +156 -86
  939. package/skills/pricing-page/SKILL.md +91 -21
  940. package/skills/product-aware-heuristics/SKILL.md +424 -354
  941. package/skills/progressive-blur/SKILL.md +122 -52
  942. package/skills/project-idioms/SKILL.md +125 -55
  943. package/skills/property-based-testing/SKILL.md +104 -32
  944. package/skills/python-patterns/SKILL.md +245 -187
  945. package/skills/python-pro/SKILL.md +333 -272
  946. package/skills/quieter/SKILL.md +91 -21
  947. package/skills/react-doctor/SKILL.md +93 -23
  948. package/skills/react-specialist/SKILL.md +309 -248
  949. package/skills/readme-builder/SKILL.md +294 -236
  950. package/skills/realtime-patterns/SKILL.md +317 -247
  951. package/skills/red-team-tactics/SKILL.md +220 -159
  952. package/skills/redesign-skill/SKILL.md +88 -18
  953. package/skills/review-animations/SKILL.md +91 -21
  954. package/skills/review-animations/STANDARDS.md +87 -87
  955. package/skills/rust-pro/SKILL.md +680 -619
  956. package/skills/semantic-filesystem-navigation/SKILL.md +69 -14
  957. package/skills/seo-fundamentals/SKILL.md +165 -107
  958. package/skills/server-management/SKILL.md +203 -145
  959. package/skills/session-log-interrogation/SKILL.md +70 -18
  960. package/skills/shadcn-ui-expert/SKILL.md +221 -163
  961. package/skills/shape/SKILL.md +96 -26
  962. package/skills/skill-creator/SKILL.md +213 -145
  963. package/skills/soft-skill/SKILL.md +95 -25
  964. package/skills/sounds-on-the-web/SKILL.md +115 -45
  965. package/skills/sql-pro/SKILL.md +653 -592
  966. package/skills/subagent-driven-development/SKILL.md +78 -18
  967. package/skills/supabase-postgres-best-practices/SKILL.md +93 -32
  968. package/skills/svg-animation/SKILL.md +388 -319
  969. package/skills/swiftui-expert/SKILL.md +190 -132
  970. package/skills/swiss-design/SKILL.md +87 -17
  971. package/skills/system-design-pro/SKILL.md +238 -294
  972. package/skills/systematic-debugging/SKILL.md +154 -96
  973. package/skills/systematic-debugging/condition-based-waiting.md +120 -120
  974. package/skills/systematic-debugging/defense-in-depth.md +128 -128
  975. package/skills/systematic-debugging/root-cause-tracing.md +183 -183
  976. package/skills/tailwind-patterns/SKILL.md +617 -547
  977. package/skills/taste-skill/SKILL.md +94 -24
  978. package/skills/tdd-workflow/SKILL.md +133 -72
  979. package/skills/test-result-analyzer/SKILL.md +304 -234
  980. package/skills/testing-patterns/SKILL.md +567 -497
  981. package/skills/thermo-nuclear-code-quality-review/SKILL.md +104 -34
  982. package/skills/thinking-protocol/SKILL.md +65 -7
  983. package/skills/to-spring-or-not-to-spring/SKILL.md +90 -20
  984. package/skills/train-sentence-transformers/SKILL.md +86 -8
  985. package/skills/transformers-js/SKILL.md +86 -15
  986. package/skills/transformers-js/references/CONFIGURATION.md +1 -1
  987. package/skills/transitions-dev/SKILL.md +136 -66
  988. package/skills/trend-researcher/SKILL.md +232 -162
  989. package/skills/tribunal-instincts-memory/SKILL.md +74 -19
  990. package/skills/trl-training/SKILL.md +86 -16
  991. package/skills/typescript-advanced/SKILL.md +334 -273
  992. package/skills/typeset/SKILL.md +101 -31
  993. package/skills/ui-reasoning-engine/SKILL.md +191 -121
  994. package/skills/ui-skill-packs/SKILL.md +95 -25
  995. package/skills/ui-skills-root/SKILL.md +118 -48
  996. package/skills/ui-ux-pro-max/SKILL.md +145 -75
  997. package/skills/ui-ux-researcher/SKILL.md +235 -165
  998. package/skills/vector-search-pgvector/SKILL.md +118 -46
  999. package/skills/verification-before-completion/SKILL.md +151 -79
  1000. package/skills/vue-expert/SKILL.md +288 -227
  1001. package/skills/vulnerability-scanner/SKILL.md +409 -342
  1002. package/skills/web-accessibility-auditor/SKILL.md +204 -146
  1003. package/skills/web-design-guidelines/SKILL.md +92 -22
  1004. package/skills/web-quality-audit/SKILL.md +90 -20
  1005. package/skills/webapp-testing/SKILL.md +152 -94
  1006. package/skills/webgpu-performance/SKILL.md +126 -56
  1007. package/skills/whimsy-injector/SKILL.md +339 -269
  1008. package/skills/workflow-optimizer/SKILL.md +222 -152
  1009. package/skills/zero-trust-passkeys/SKILL.md +135 -63
  1010. package/{dist → src}/browser/audit.js +233 -229
  1011. package/{dist → src}/browser/case_bridge.js +190 -189
  1012. package/{dist → src}/browser/cdp.js +526 -513
  1013. package/{dist → src}/browser/compare.js +110 -110
  1014. package/{dist → src}/browser/discovery.js +150 -140
  1015. package/{dist → src}/browser/idpi.js +145 -142
  1016. package/{dist → src}/browser/index.js +89 -89
  1017. package/{dist → src}/browser/launcher.js +160 -154
  1018. package/{dist → src}/browser/sentinel.js +208 -202
  1019. package/{dist → src}/browser/synapse.js +251 -251
  1020. package/{dist → src}/browser/trimmer.js +219 -210
  1021. package/src/cli.js +430 -0
  1022. package/src/commands/align.js +208 -0
  1023. package/src/commands/arch.js +172 -0
  1024. package/{dist → src}/commands/audit-web.js +126 -112
  1025. package/{dist → src}/commands/browse.js +62 -56
  1026. package/src/commands/case.js +98 -0
  1027. package/{dist → src}/commands/compare-web.js +69 -61
  1028. package/src/commands/compile.js +97 -0
  1029. package/src/commands/context.js +156 -0
  1030. package/{dist → src}/commands/contract.js +423 -440
  1031. package/{dist → src}/commands/deconstruct.js +70 -58
  1032. package/src/commands/graph.js +52 -0
  1033. package/{dist → src}/commands/guardrail.js +247 -275
  1034. package/{dist → src}/commands/heal.js +109 -99
  1035. package/src/commands/hook.js +32 -0
  1036. package/src/commands/init.js +462 -0
  1037. package/src/commands/learn.js +195 -0
  1038. package/src/commands/marathon.js +68 -0
  1039. package/src/commands/memory.js +609 -0
  1040. package/src/commands/minimal.js +85 -0
  1041. package/src/commands/mutate.js +34 -0
  1042. package/src/commands/native.js +409 -0
  1043. package/src/commands/optimize.js +365 -0
  1044. package/src/commands/review.js +971 -0
  1045. package/src/commands/sdd.js +275 -0
  1046. package/{dist → src}/commands/status.js +76 -66
  1047. package/src/commands/sync.js +27 -0
  1048. package/src/commands/system1.js +312 -0
  1049. package/src/commands/uninstall.js +63 -0
  1050. package/src/commands/update.js +44 -0
  1051. package/{dist → src}/commands/validate.js +66 -58
  1052. package/src/context/ranker.js +339 -0
  1053. package/{dist → src}/esm/index.mjs +4 -2
  1054. package/src/evolution/engine.js +295 -0
  1055. package/src/mcp/server.js +8 -0
  1056. package/src/synthesis/claim_check_separator.js +271 -0
  1057. package/src/system1/laya-package-lock.json +303 -0
  1058. package/src/system1/laya-package.json +16 -0
  1059. package/src/system1/provider.js +127 -0
  1060. package/{dist → src}/tui/banner.js +1 -1
  1061. package/{dist → src}/tui/index.js +21 -21
  1062. package/{dist → src}/tui/reviewer-grid.js +86 -90
  1063. package/{dist → src}/tui/shimmer.js +89 -91
  1064. package/{dist → src}/tui/theme.js +130 -130
  1065. package/{dist → src}/tui/tree.js +93 -93
  1066. package/{dist → src}/tui/wizard.js +144 -148
  1067. package/{dist → src}/types.js +8 -8
  1068. package/src/utils/fs.js +103 -0
  1069. package/src/utils/hasher.js +144 -0
  1070. package/src/utils/helpers.js +52 -0
  1071. package/src/utils/logger.js +61 -0
  1072. package/src/utils/version.js +176 -0
  1073. package/.agent/history/README.md +0 -53
  1074. package/.agent/history/architecture-explorer.html +0 -352
  1075. package/.agent/history/architecture-graph.yaml +0 -619
  1076. package/.agent/history/case-law/cases/template-case.json +0 -19
  1077. package/.agent/history/graph-cache.json +0 -1042
  1078. package/.agent/history/memory/.memory.idx +0 -7596
  1079. package/.agent/history/memory/MEMORY.md +0 -512
  1080. package/.agent/history/memory.db +0 -0
  1081. package/.agent/history/snapshots/.opencode__plugins__tribunal.js.json +0 -12
  1082. package/.agent/history/snapshots/.pi__extensions__tribunal.ts.json +0 -12
  1083. package/.agent/history/snapshots/bin__adapter-install.js.json +0 -13
  1084. package/.agent/history/snapshots/bin__global-store.js.json +0 -15
  1085. package/.agent/history/snapshots/bin__mcp-server.js.json +0 -21
  1086. package/.agent/history/snapshots/bin__proxy-server.js.json +0 -20
  1087. package/.agent/history/snapshots/bin__spawn-agent.js.json +0 -12
  1088. package/.agent/history/snapshots/bin__tk-proxy.js.json +0 -21
  1089. package/.agent/history/snapshots/bin__tribunal-kit.js.json +0 -21
  1090. package/.agent/history/snapshots/bin__wrapper.js.json +0 -14
  1091. package/.agent/history/snapshots/eslint.config.js.json +0 -8
  1092. package/.agent/history/snapshots/hooks__session-start.js.json +0 -11
  1093. package/.agent/history/snapshots/scripts__apply-version.js.json +0 -11
  1094. package/.agent/history/snapshots/scripts__audit_skill_sdo.js.json +0 -11
  1095. package/.agent/history/snapshots/scripts__benchmark.js.json +0 -14
  1096. package/.agent/history/snapshots/scripts__changelog.js.json +0 -12
  1097. package/.agent/history/snapshots/scripts__clean-pycache.js.json +0 -11
  1098. package/.agent/history/snapshots/scripts__context_compiler.js.json +0 -17
  1099. package/.agent/history/snapshots/scripts__fix-vbc.js.json +0 -11
  1100. package/.agent/history/snapshots/scripts__modernize_skills.js.json +0 -11
  1101. package/.agent/history/snapshots/scripts__package-cores.js.json +0 -12
  1102. package/.agent/history/snapshots/scripts__skill_enhancement_engine.js.json +0 -11
  1103. package/.agent/history/snapshots/scripts__stress_benchmark.js.json +0 -15
  1104. package/.agent/history/snapshots/scripts__sync-skills.js.json +0 -11
  1105. package/.agent/history/snapshots/scripts__sync-version.js.json +0 -11
  1106. package/.agent/history/snapshots/scripts__telemetry_gc.js.json +0 -11
  1107. package/.agent/history/snapshots/scripts__validate-payload.js.json +0 -11
  1108. package/.agent/history/snapshots/scripts__visual_audit.js.json +0 -11
  1109. package/.agent/history/snapshots/test__integration__bridges.test.js.json +0 -13
  1110. package/.agent/history/snapshots/test__integration__browser_cli.test.js.json +0 -12
  1111. package/.agent/history/snapshots/test__integration__graceful_degradation.test.js.json +0 -12
  1112. package/.agent/history/snapshots/test__integration__init.test.js.json +0 -13
  1113. package/.agent/history/snapshots/test__integration__minimal_change_pipeline.test.js.json +0 -13
  1114. package/.agent/history/snapshots/test__integration__parallel_tribunal.test.js.json +0 -12
  1115. package/.agent/history/snapshots/test__integration__routing.test.js.json +0 -11
  1116. package/.agent/history/snapshots/test__integration__swarm_dispatcher.test.js.json +0 -13
  1117. package/.agent/history/snapshots/test__integration__sync_status.test.js.json +0 -13
  1118. package/.agent/history/snapshots/test__integration__wave2.test.js.json +0 -13
  1119. package/.agent/history/snapshots/test__integration__wrapper.test.js.json +0 -13
  1120. package/.agent/history/snapshots/test__unit__align.test.js.json +0 -10
  1121. package/.agent/history/snapshots/test__unit__args.test.js.json +0 -20
  1122. package/.agent/history/snapshots/test__unit__ast_context_loader.test.js.json +0 -12
  1123. package/.agent/history/snapshots/test__unit__audit_release.test.js.json +0 -16
  1124. package/.agent/history/snapshots/test__unit__browser_case_bridge.test.js.json +0 -11
  1125. package/.agent/history/snapshots/test__unit__browser_discovery.test.js.json +0 -10
  1126. package/.agent/history/snapshots/test__unit__browser_idpi.test.js.json +0 -10
  1127. package/.agent/history/snapshots/test__unit__browser_sentinel.test.js.json +0 -11
  1128. package/.agent/history/snapshots/test__unit__browser_synapse.test.js.json +0 -10
  1129. package/.agent/history/snapshots/test__unit__browser_trimmer.test.js.json +0 -10
  1130. package/.agent/history/snapshots/test__unit__case_law_manager.test.js.json +0 -10
  1131. package/.agent/history/snapshots/test__unit__cicd_validator.test.js.json +0 -12
  1132. package/.agent/history/snapshots/test__unit__compile.test.js.json +0 -10
  1133. package/.agent/history/snapshots/test__unit__context_broker.test.js.json +0 -10
  1134. package/.agent/history/snapshots/test__unit__context_compiler.test.js.json +0 -26
  1135. package/.agent/history/snapshots/test__unit__contract_engine.test.js.json +0 -13
  1136. package/.agent/history/snapshots/test__unit__copyDir.test.js.json +0 -23
  1137. package/.agent/history/snapshots/test__unit__graph_tools.test.js.json +0 -11
  1138. package/.agent/history/snapshots/test__unit__guardrail_engine.test.js.json +0 -10
  1139. package/.agent/history/snapshots/test__unit__impact_classifier.test.js.json +0 -12
  1140. package/.agent/history/snapshots/test__unit__init.test.js.json +0 -14
  1141. package/.agent/history/snapshots/test__unit__inner_loop_validator.test.js.json +0 -10
  1142. package/.agent/history/snapshots/test__unit__integrity_manifest.test.js.json +0 -13
  1143. package/.agent/history/snapshots/test__unit__learn.test.js.json +0 -11
  1144. package/.agent/history/snapshots/test__unit__marathon.test.js.json +0 -22
  1145. package/.agent/history/snapshots/test__unit__mcp_server.test.js.json +0 -16
  1146. package/.agent/history/snapshots/test__unit__memory.test.js.json +0 -13
  1147. package/.agent/history/snapshots/test__unit__minimal_change.test.js.json +0 -10
  1148. package/.agent/history/snapshots/test__unit__native.test.js.json +0 -10
  1149. package/.agent/history/snapshots/test__unit__optimize.test.js.json +0 -13
  1150. package/.agent/history/snapshots/test__unit__path_resolution.test.js.json +0 -14
  1151. package/.agent/history/snapshots/test__unit__platform_download_audit.test.js.json +0 -11
  1152. package/.agent/history/snapshots/test__unit__production_readiness_evidence.test.js.json +0 -21
  1153. package/.agent/history/snapshots/test__unit__prompt_compiler.test.js.json +0 -10
  1154. package/.agent/history/snapshots/test__unit__sdd_integration.test.js.json +0 -12
  1155. package/.agent/history/snapshots/test__unit__selfInstall.test.js.json +0 -23
  1156. package/.agent/history/snapshots/test__unit__semver.test.js.json +0 -20
  1157. package/.agent/history/snapshots/test__unit__skill_evolution.test.js.json +0 -11
  1158. package/.agent/history/snapshots/test__unit__stress.test.js.json +0 -15
  1159. package/.agent/history/snapshots/test__unit__swarm_dispatcher.test.js.json +0 -12
  1160. package/.agent/history/snapshots/test__unit__token_budget_broker.test.js.json +0 -10
  1161. package/.agent/history/snapshots/test__unit__tui.test.js.json +0 -10
  1162. package/.agent/history/snapshots/test__unit__utils.test.js.json +0 -10
  1163. package/.agents/plugins/marketplace.json +0 -20
  1164. package/.claude/CLAUDE.md +0 -442
  1165. package/dist/cli.js +0 -377
  1166. package/dist/commands/align.js +0 -201
  1167. package/dist/commands/case.js +0 -73
  1168. package/dist/commands/compile.js +0 -91
  1169. package/dist/commands/context.js +0 -71
  1170. package/dist/commands/graph.js +0 -44
  1171. package/dist/commands/hook.js +0 -28
  1172. package/dist/commands/init.js +0 -393
  1173. package/dist/commands/learn.js +0 -117
  1174. package/dist/commands/marathon.js +0 -45
  1175. package/dist/commands/memory.js +0 -508
  1176. package/dist/commands/minimal.js +0 -71
  1177. package/dist/commands/mutate.js +0 -30
  1178. package/dist/commands/native.js +0 -264
  1179. package/dist/commands/optimize.js +0 -328
  1180. package/dist/commands/sdd.js +0 -229
  1181. package/dist/commands/sync.js +0 -25
  1182. package/dist/commands/uninstall.js +0 -54
  1183. package/dist/commands/update.js +0 -37
  1184. package/dist/mcp/server.js +0 -8
  1185. package/dist/utils/fs.js +0 -102
  1186. package/dist/utils/hasher.js +0 -142
  1187. package/dist/utils/helpers.js +0 -53
  1188. package/dist/utils/logger.js +0 -54
  1189. package/dist/utils/version.js +0 -157
  1190. package/scripts/apply-version.js +0 -57
  1191. package/scripts/audit_skill_sdo.js +0 -89
  1192. package/scripts/benchmark.js +0 -231
  1193. package/scripts/build-graph.js +0 -71
  1194. package/scripts/changelog.js +0 -190
  1195. package/scripts/clean-pycache.js +0 -42
  1196. package/scripts/context_compiler.js +0 -1117
  1197. package/scripts/fix-vbc.js +0 -96
  1198. package/scripts/fix-vbc.ps1 +0 -3
  1199. package/scripts/modernize_skills.js +0 -268
  1200. package/scripts/package-cores.js +0 -116
  1201. package/scripts/skill_enhancement_engine.js +0 -608
  1202. package/scripts/stress_benchmark.js +0 -358
  1203. package/scripts/sync-skills.js +0 -61
  1204. package/scripts/sync-version.js +0 -177
  1205. package/scripts/telemetry_gc.js +0 -156
  1206. package/scripts/validate-payload.js +0 -73
  1207. package/scripts/visual_audit.js +0 -136
  1208. /package/{dist → src}/index.d.ts +0 -0
@@ -1,8 +1,8 @@
1
1
  ---
2
2
  name: sql-pro
3
- description: "Use when Senior SQL developer across major databases (PostgreSQL, MySQL, SQL Server, Oracle). Complex query design with CTEs, window functions, PIVOT, recursive queries, JSON operations, full-text search, performance optimization with EXPLAIN ANALYZE, indexing strategies, partitioning, and schema architecture. Use when writing queries, designing schemas, optimizing performance, or debugging slow queries."
4
- version: 5.0.0
5
- last-updated: 2026-09-13
3
+ description: "Use when designing schemas, querying, indexing, optimizing, and securing sql pro databases and data models."
4
+ version: 6.0.0
5
+ last-updated: 2026-09-29
6
6
  skills:
7
7
  - database-design
8
8
  - db-latency-auditor
@@ -15,610 +15,671 @@ scripts-binding:
15
15
 
16
16
  # SQL Pro — Advanced Query & Schema Mastery
17
17
 
18
- ---
19
-
20
- ## 🛠️ Technical Architecture & Reference Recipes
21
-
22
- ---
23
-
24
- ## 2026 SQL Performance & Query Invariants
25
-
26
- 1. **SARGable Date/Time Predicates**:
27
- ```sql
28
- -- ❌ BAD: Function on column kills index scan (Seq Scan)
29
- WHERE DATE(created_at) = '2026-01-01'
30
- -- ✅ GOOD: Direct range comparison enables Index Scan
31
- WHERE created_at >= '2026-01-01 00:00:00+00' AND created_at < '2026-01-02 00:00:00+00'
32
- ```
33
- 2. **Keyset Cursor Pagination (O(1) vs O(N) OFFSET)**:
34
- ```sql
35
- -- ✅ Instant lookup regardless of page depth
36
- SELECT id, title, created_at
37
- FROM articles
38
- WHERE (created_at, id) < ($last_created_at, $last_id)
39
- ORDER BY created_at DESC, id DESC
40
- LIMIT 20;
41
- ```
42
- 3. **CTE Optimization (`AS NOT MATERIALIZED`)**: In PostgreSQL 12+, CTEs inline automatically unless marked `MATERIALIZED`. Explicitly control materialization when CTE contains heavy calculations.
43
- 4. **Batch Upserts with `ON CONFLICT`**:
44
- ```sql
45
- INSERT INTO metrics (device_id, recorded_at, val)
46
- VALUES ($1, $2, $3)
47
- ON CONFLICT (device_id, recorded_at)
48
- DO UPDATE SET val = EXCLUDED.val;
49
- ```
50
-
51
- ## Hallucination Traps (Read First)
52
-
53
- - ❌ String-concatenating user input into SQL → ✅ Always use parameterized queries (`$1`, `?`)
54
- - ❌ Using `OFFSET 50000` for pagination → ✅ Use keyset cursor pagination (`WHERE id > $last_id`)
55
- - ❌ Wrapping indexed columns in functions in WHERE clauses → ✅ Compare bare column against computed value
56
- - ❌ `SELECT *` in production queries → ✅ Select explicit columns to utilize covering indexes
57
- - ❌ `COUNT(*)` on millions of rows for simple existence check → ✅ Use `SELECT EXISTS(SELECT 1 FROM ...)`
58
-
59
- ---
60
-
61
- ## Common Table Expressions (CTEs)
62
-
63
- ### Basic CTE
64
-
65
- ```sql
66
- -- CTE for readability and reuse
67
- WITH active_users AS (
68
- SELECT id, name, email, created_at
69
- FROM users
70
- WHERE is_active = true
71
- AND last_login > CURRENT_DATE - INTERVAL '30 days'
72
- ),
73
- user_orders AS (
74
- SELECT user_id, COUNT(*) AS order_count, SUM(total) AS total_spent
75
- FROM orders
76
- WHERE status = 'completed'
77
- GROUP BY user_id
78
- )
79
- SELECT
80
- u.name,
81
- u.email,
82
- COALESCE(o.order_count, 0) AS orders,
83
- COALESCE(o.total_spent, 0) AS revenue
84
- FROM active_users u
85
- LEFT JOIN user_orders o ON u.id = o.user_id
86
- ORDER BY revenue DESC;
87
- ```
88
-
89
- ### Recursive CTE (Hierarchical Data)
90
-
91
- ```sql
92
- -- Org chart: find all reports under a manager
93
- WITH RECURSIVE org_tree AS (
94
- -- Base case: the starting manager
95
- SELECT id, name, manager_id, 1 AS depth
96
- FROM employees
97
- WHERE id = 42 -- starting point
98
-
99
- UNION ALL
100
-
101
- -- Recursive case: find direct reports
102
- SELECT e.id, e.name, e.manager_id, t.depth + 1
103
- FROM employees e
104
- INNER JOIN org_tree t ON e.manager_id = t.id
105
- WHERE t.depth < 10 -- safety limit to prevent infinite loops
106
- )
107
- SELECT * FROM org_tree ORDER BY depth, name;
108
-
109
- -- ❌ HALLUCINATION TRAP: Always include a depth/cycle guard
110
- -- Without it, circular references cause infinite recursion
111
- -- PostgreSQL: use CYCLE detection clause (PG 14+)
112
- -- SQL Server: use MAXRECURSION option
113
- ```
114
-
115
- ### CTE for Running Totals & Pagination
116
-
117
- ```sql
118
- -- Keyset pagination (faster than OFFSET for large tables)
119
- WITH page AS (
120
- SELECT id, name, created_at
121
- FROM products
122
- WHERE (created_at, id) < (:last_created_at, :last_id) -- cursor
123
- ORDER BY created_at DESC, id DESC
124
- LIMIT 20
125
- )
126
- SELECT * FROM page;
127
-
128
- -- ❌ HALLUCINATION TRAP: OFFSET-based pagination gets slower with higher pages
129
- -- OFFSET 100000, LIMIT 20 scans and discards 100,000 rows
130
- -- Keyset pagination is O(1) regardless of page number
131
- ```
132
-
133
- ---
134
-
135
- ## Window Functions
136
-
137
- ### Ranking Functions
138
-
139
- ```sql
140
- -- ROW_NUMBER: unique sequential number per partition
141
- SELECT
142
- department,
143
- name,
144
- salary,
145
- ROW_NUMBER() OVER (PARTITION BY department ORDER BY salary DESC) AS rank_in_dept
146
- FROM employees;
147
-
148
- -- RANK vs DENSE_RANK
149
- -- RANK: 1, 2, 2, 4 (gaps after ties)
150
- -- DENSE_RANK: 1, 2, 2, 3 (no gaps)
151
- SELECT
152
- name,
153
- score,
154
- RANK() OVER (ORDER BY score DESC) AS rank,
155
- DENSE_RANK() OVER (ORDER BY score DESC) AS dense_rank
156
- FROM leaderboard;
157
-
158
- -- NTILE: divide into N equal groups
159
- SELECT
160
- name,
161
- revenue,
162
- NTILE(4) OVER (ORDER BY revenue DESC) AS quartile
163
- FROM companies;
164
- ```
165
-
166
- ### Aggregate Windows
167
-
168
- ```sql
169
- -- Running total
170
- SELECT
171
- date,
172
- amount,
173
- SUM(amount) OVER (ORDER BY date) AS running_total,
174
- AVG(amount) OVER (ORDER BY date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS moving_avg_7d
175
- FROM daily_revenue;
176
-
177
- -- Percentage of total
178
- SELECT
179
- category,
180
- revenue,
181
- ROUND(100.0 * revenue / SUM(revenue) OVER (), 2) AS pct_of_total
182
- FROM category_sales;
183
-
184
- -- Difference from previous row
185
- SELECT
186
- month,
187
- revenue,
188
- revenue - LAG(revenue) OVER (ORDER BY month) AS mom_change,
189
- ROUND(100.0 * (revenue - LAG(revenue) OVER (ORDER BY month))
190
- / NULLIF(LAG(revenue) OVER (ORDER BY month), 0), 2) AS mom_pct_change
191
- FROM monthly_revenue;
192
- ```
193
-
194
- ### Frame Clauses
195
-
196
- ```sql
197
- -- Frame clause controls which rows the window function sees
198
- SUM(amount) OVER (
199
- ORDER BY date
200
- ROWS BETWEEN 2 PRECEDING AND CURRENT ROW -- last 3 rows (physical)
201
- )
202
-
203
- SUM(amount) OVER (
204
- ORDER BY date
205
- RANGE BETWEEN INTERVAL '7 days' PRECEDING AND CURRENT ROW -- last 7 days (logical)
206
- )
207
-
208
- -- ROWS vs RANGE:
209
- -- ROWS = physical row count (exact)
210
- -- RANGE = logical value range (handles ties differently)
211
-
212
- -- ❌ HALLUCINATION TRAP: Default frame is RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
213
- -- This means SUM() OVER (ORDER BY x) includes ALL preceding rows, not just "the one before"
214
- -- To get a true running count of N rows, use ROWS BETWEEN explicitly
215
- ```
216
-
217
- ### Lead / Lag Analysis
218
-
219
- ```sql
220
- -- Next and previous values
221
- SELECT
222
- event_date,
223
- user_id,
224
- LAG(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS prev_visit,
225
- LEAD(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS next_visit,
226
- event_date - LAG(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS days_between
227
- FROM user_events;
228
-
229
- -- FIRST_VALUE / LAST_VALUE
230
- SELECT
231
- department,
232
- name,
233
- salary,
234
- FIRST_VALUE(name) OVER (PARTITION BY department ORDER BY salary DESC) AS highest_paid,
235
- LAST_VALUE(name) OVER (
236
- PARTITION BY department ORDER BY salary DESC
237
- ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING -- ⚠️ required!
238
- ) AS lowest_paid
239
- FROM employees;
240
-
241
- -- ❌ HALLUCINATION TRAP: LAST_VALUE without explicit frame clause returns CURRENT ROW
242
- -- You MUST specify ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
243
- ```
244
-
245
- ---
246
-
247
- ## PIVOT / UNPIVOT / Conditional Aggregation
248
-
249
- ### PostgreSQL / Standard SQL (Conditional Aggregation)
250
-
251
- ```sql
252
- -- PostgreSQL doesn't have PIVOT — use conditional aggregation
253
- SELECT
254
- product_name,
255
- SUM(CASE WHEN quarter = 'Q1' THEN revenue ELSE 0 END) AS q1,
256
- SUM(CASE WHEN quarter = 'Q2' THEN revenue ELSE 0 END) AS q2,
257
- SUM(CASE WHEN quarter = 'Q3' THEN revenue ELSE 0 END) AS q3,
258
- SUM(CASE WHEN quarter = 'Q4' THEN revenue ELSE 0 END) AS q4,
259
- SUM(revenue) AS total
260
- FROM quarterly_sales
261
- GROUP BY product_name
262
- ORDER BY total DESC;
263
-
264
- -- PostgreSQL crosstab (requires tablefunc extension)
265
- SELECT * FROM crosstab(
266
- 'SELECT product, quarter, revenue FROM sales ORDER BY 1, 2',
267
- 'SELECT DISTINCT quarter FROM sales ORDER BY 1'
268
- ) AS ct(product TEXT, q1 NUMERIC, q2 NUMERIC, q3 NUMERIC, q4 NUMERIC);
269
- ```
270
-
271
- ### SQL Server PIVOT
272
-
273
- ```sql
274
- -- SQL Server native PIVOT
275
- SELECT *
276
- FROM (
277
- SELECT product_name, quarter, revenue
278
- FROM quarterly_sales
279
- ) AS source
280
- PIVOT (
281
- SUM(revenue)
282
- FOR quarter IN ([Q1], [Q2], [Q3], [Q4])
283
- ) AS pivoted;
284
- ```
285
-
286
- ---
287
-
288
- ## JSON Operations
289
-
290
- ### PostgreSQL JSONB
291
-
292
- ```sql
293
- -- Query JSON fields
294
- SELECT
295
- id,
296
- profile->>'name' AS name, -- text extraction
297
- profile->'address'->>'city' AS city, -- nested extraction
298
- (profile->>'age')::int AS age -- cast to int
299
- FROM users
300
- WHERE profile->>'country' = 'US'
301
- AND (profile->>'age')::int >= 18;
302
-
303
- -- JSONB containment
304
- SELECT * FROM products
305
- WHERE metadata @> '{"category": "electronics"}'; -- contains
306
-
307
- -- JSONB existence
308
- SELECT * FROM products
309
- WHERE metadata ? 'warranty'; -- key exists
310
-
311
- -- JSONB array queries
312
- SELECT * FROM users
313
- WHERE profile->'tags' ? 'premium'; -- array contains value
314
-
315
- -- Update JSONB
316
- UPDATE users
317
- SET profile = jsonb_set(profile, '{address,city}', '"New York"')
318
- WHERE id = 1;
319
-
320
- -- JSONB aggregation
321
- SELECT jsonb_agg(jsonb_build_object('id', id, 'name', name)) AS users_json
322
- FROM users
323
- WHERE is_active = true;
324
-
325
- -- ❌ HALLUCINATION TRAP: -> returns JSON, ->> returns TEXT
326
- -- Filtering on -> requires JSON comparison
327
- -- Filtering on ->> allows string comparison
328
- -- Always cast ->> results when comparing numbers: (col->>'age')::int
329
- ```
330
-
331
- ---
332
-
333
- ## Indexing Strategy
334
-
335
- ### Index Types
336
-
337
- ```sql
338
- -- B-tree (default — good for equality and range)
339
- CREATE INDEX idx_users_email ON users (email);
340
-
341
- -- Composite index (column order matters!)
342
- CREATE INDEX idx_orders_user_date ON orders (user_id, created_at DESC);
343
- -- ✅ Supports: WHERE user_id = 1 AND created_at > '2024-01-01'
344
- -- ✅ Supports: WHERE user_id = 1 (uses leftmost prefix)
345
- -- ❌ Does NOT support: WHERE created_at > '2024-01-01' (skips first column)
346
-
347
- -- Partial / Filtered index (index only matching rows)
348
- CREATE INDEX idx_active_users ON users (email) WHERE is_active = true;
349
- -- Smaller index, faster queries when filtering by is_active
350
-
351
- -- Covering index (INCLUDE — avoids table lookup)
352
- CREATE INDEX idx_orders_covering ON orders (user_id)
353
- INCLUDE (total, status, created_at);
354
- -- All needed columns in the index = index-only scan
355
-
356
- -- GIN index (for JSONB, arrays, full-text search)
357
- CREATE INDEX idx_products_metadata ON products USING gin (metadata);
358
-
359
- -- GiST index (for geometric, range, full-text)
360
- CREATE INDEX idx_locations_geo ON locations USING gist (coordinates);
361
-
362
- -- BRIN index (for naturally ordered data like timestamps)
363
- CREATE INDEX idx_logs_timestamp ON logs USING brin (created_at);
364
- -- Tiny index, perfect for append-only tables with timestamp ordering
365
- ```
366
-
367
- ### SARGability
368
-
369
- ```sql
370
- -- SARGable = Search ARGument ABLE — can the query use an index?
371
-
372
- -- ✅ SARGable (index seekable)
373
- WHERE created_at >= '2024-01-01'
374
- WHERE email = 'alice@test.com'
375
- WHERE name LIKE 'Ali%' -- prefix match
376
-
377
- -- ❌ NOT SARGable (forces full table scan)
378
- WHERE YEAR(created_at) = 2024 -- function on column
379
- WHERE LOWER(email) = 'alice@test.com' -- function on column
380
- WHERE name LIKE '%alice%' -- leading wildcard
381
- WHERE amount + tax > 100 -- expression on column
382
- WHERE COALESCE(name, '') = '' -- function on column
383
-
384
- -- ✅ Fix: functional index (PostgreSQL)
385
- CREATE INDEX idx_users_email_lower ON users (LOWER(email));
386
- -- Now WHERE LOWER(email) = 'alice@test.com' IS SARGable
387
-
388
- -- ✅ Fix: computed column (SQL Server)
389
- ALTER TABLE users ADD email_lower AS LOWER(email) PERSISTED;
390
- CREATE INDEX idx_email_lower ON users (email_lower);
391
-
392
- -- ❌ HALLUCINATION TRAP: Implicit type conversions destroy SARGability
393
- -- WHERE varchar_column = 123 ← implicit cast on EVERY row
394
- -- WHERE varchar_column = '123' ← direct comparison, uses index
395
- ```
396
-
397
- ---
398
-
399
- ## EXPLAIN ANALYZE (Query Optimization)
400
-
401
- ```sql
402
- -- PostgreSQL
403
- EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT)
404
- SELECT * FROM orders WHERE user_id = 42 AND status = 'completed';
405
-
406
- -- Reading the output:
407
- -- Seq Scan → full table scan (usually bad for large tables)
408
- -- Index Scan → using an index to find rows (good)
409
- -- Index Only Scan → all data from index, no table access (best)
410
- -- Bitmap Scan → index + bitmap for multiple conditions (good for moderate selectivity)
411
- -- Hash Join → building hash table for join (good for large joins)
412
- -- Nested Loop → for each row in A, scan B (good for small datasets, bad for large)
413
- -- Sort → explicit sorting (check if index can avoid this)
414
-
415
- -- Key metrics:
416
- -- actual time=X..Y → X = time to first row, Y = time to all rows (ms)
417
- -- rows=N → actual rows returned
418
- -- loops=N → number of times this node executed
419
- -- Buffers: shared hit=N → pages read from cache (good)
420
- -- Buffers: shared read=N → pages read from disk (measure of I/O cost)
421
-
422
- -- SQL Server
423
- SET STATISTICS IO ON;
424
- SET STATISTICS TIME ON;
425
- SELECT * FROM orders WHERE user_id = 42;
426
- -- Check: logical reads (from cache), physical reads (from disk)
427
-
428
- -- ❌ HALLUCINATION TRAP: EXPLAIN without ANALYZE shows estimates, NOT actuals
429
- -- Always use EXPLAIN ANALYZE for real performance data
430
- -- But CAREFUL: ANALYZE actually EXECUTES the query
431
- -- For destructive queries (DELETE, UPDATE), wrap in a transaction:
432
- BEGIN;
433
- EXPLAIN ANALYZE DELETE FROM users WHERE id = 1;
434
- ROLLBACK; -- prevents actual deletion
435
- ```
436
-
437
- ---
438
-
439
- ## Table Partitioning
440
-
441
- ```sql
442
- -- PostgreSQL range partitioning (ideal for time-series data)
443
- CREATE TABLE events (
444
- id BIGSERIAL,
445
- event_type TEXT NOT NULL,
446
- payload JSONB,
447
- created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
448
- ) PARTITION BY RANGE (created_at);
449
-
450
- -- Create monthly partitions
451
- CREATE TABLE events_2024_01 PARTITION OF events
452
- FOR VALUES FROM ('2024-01-01') TO ('2024-02-01');
453
- CREATE TABLE events_2024_02 PARTITION OF events
454
- FOR VALUES FROM ('2024-02-01') TO ('2024-03-01');
18
+ ## Mandatory Pre-Flight Context Inspection
19
+ Before reading, generating, or refactoring code in the `sql-pro` domain, inspect these 5 critical parameters:
20
+ 1. **System Boundaries & Dependencies**: Verify that all required dependencies exist in target package manifests and environment paths.
21
+ 2. **Runtime Context & Platform Invariants**: Confirm target platform constraints (Node.js, Browser, Mobile OS, Edge runtime) before applying APIs.
22
+ 3. **Execution Guardrails**: Identify potential side-effects, state mutations, and unhandled asynchronous exceptions.
23
+ 4. **Validation & Type Contracts**: Validate input data schemas and strict type constraints across all module interfaces.
24
+ 5. **Observability & Proof of Execution**: Ensure execution produces tangible verification signals (terminal output, tests, metrics).
455
25
 
456
- -- Queries automatically prune partitions:
457
- -- SELECT * FROM events WHERE created_at >= '2024-02-01'
458
- -- Only scans events_2024_02 and later — skips events_2024_01 entirely
459
26
 
460
- -- List partitioning (for categorical data)
461
- CREATE TABLE orders (
462
- id SERIAL,
463
- region TEXT NOT NULL,
464
- total NUMERIC
465
- ) PARTITION BY LIST (region);
27
+ ## Activation Boundaries
28
+ - **Activate when:** Use when designing schemas, querying, indexing, optimizing, and securing sql pro databases and data models.
29
+ - **DO NOT activate when:** The task falls outside the `sql-pro` domain or is managed by a different dedicated specialist agent.
466
30
 
467
- CREATE TABLE orders_us PARTITION OF orders FOR VALUES IN ('US');
468
- CREATE TABLE orders_eu PARTITION OF orders FOR VALUES IN ('EU', 'UK');
469
- CREATE TABLE orders_apac PARTITION OF orders FOR VALUES IN ('JP', 'KR', 'AU');
470
- ```
471
-
472
- ---
473
-
474
- ## Transactions & Concurrency
475
-
476
- ```sql
477
- -- Proper transaction pattern
478
- BEGIN;
479
-
480
- -- Lock the row for update (prevents concurrent modification)
481
- SELECT * FROM accounts WHERE id = 1 FOR UPDATE;
482
-
483
- UPDATE accounts SET balance = balance - 100 WHERE id = 1;
484
- UPDATE accounts SET balance = balance + 100 WHERE id = 2;
485
-
486
- -- Verify consistency
487
- DO $$
488
- BEGIN
489
- IF (SELECT SUM(balance) FROM accounts) <> 10000 THEN
490
- RAISE EXCEPTION 'Balance integrity violation';
491
- END IF;
492
- END $$;
493
-
494
- COMMIT;
495
31
 
496
- -- Isolation levels (ordered by strictness)
497
- SET TRANSACTION ISOLATION LEVEL READ COMMITTED; -- default (PostgreSQL)
498
- SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- snapshot isolation
499
- SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; -- strictest (may abort)
32
+ ## 🔁 Multi-Pass Execution Protocol
500
33
 
501
- -- Advisory locks (application-level locking)
502
- SELECT pg_advisory_lock(12345); -- acquire
503
- -- ... do work ...
504
- SELECT pg_advisory_unlock(12345); -- release
505
- ```
506
-
507
- ---
508
-
509
- ## MERGE / UPSERT
510
-
511
- ```sql
512
- -- PostgreSQL UPSERT (ON CONFLICT)
513
- INSERT INTO products (sku, name, price, updated_at)
514
- VALUES ('ABC-123', 'Widget', 29.99, NOW())
515
- ON CONFLICT (sku) DO UPDATE SET
516
- name = EXCLUDED.name,
517
- price = EXCLUDED.price,
518
- updated_at = EXCLUDED.updated_at;
34
+ | Pass | Phase | Core Action | Adaptive Depth |
35
+ |:---|:---|:---|:---|
36
+ | **Pass 1** | **Understand** | Deconstruct the user's explicit objective, implicit requirements, and platform constraints. | Fast / Standard / Deep |
37
+ | **Pass 2** | **Plan** | Decompose task into smallest logical steps; map dependencies, affected files, and tool calls. | Standard / Deep |
38
+ | **Pass 3** | **Execute** | Implement solution with production-grade craft, zero placeholders, and strict typing. | All Modes |
39
+ | **Pass 4** | **Verify** | Run linters, unit tests, or compiler checks to validate structural correctness. | All Modes |
40
+ | **Pass 5** | **Attack & Falsify** | Perform adversarial search for edge-case failures, counterexamples, race conditions, and traps. | Standard / Deep |
41
+ | **Pass 6** | **Harden** | Eliminate discovered friction, optimize performance, and harden error boundaries. | Standard / Deep |
42
+ | **Pass 7** | **Quality Gate** | Enforce Verification-Before-Completion (VBC) with concrete terminal proof before finalizing. | All Modes |
519
43
 
520
- -- SQL Server MERGE
521
- MERGE INTO products AS target
522
- USING staging_products AS source
523
- ON target.sku = source.sku
524
- WHEN MATCHED THEN
525
- UPDATE SET
526
- name = source.name,
527
- price = source.price,
528
- updated_at = GETDATE()
529
- WHEN NOT MATCHED THEN
530
- INSERT (sku, name, price, created_at)
531
- VALUES (source.sku, source.name, source.price, GETDATE());
532
-
533
- -- ❌ HALLUCINATION TRAP: PostgreSQL uses ON CONFLICT, not MERGE
534
- -- MERGE was added in PostgreSQL 15+ but ON CONFLICT is idiomatic
535
- -- SQL Server uses MERGE — do not confuse the two syntaxes
536
- ```
537
-
538
- ---
539
44
 
540
- ## Full-Text Search (PostgreSQL)
541
-
542
- ```sql
543
- -- Create tsvector column and GIN index
544
- ALTER TABLE articles ADD COLUMN search_vector tsvector;
545
-
546
- UPDATE articles SET search_vector =
547
- setweight(to_tsvector('english', COALESCE(title, '')), 'A') ||
548
- setweight(to_tsvector('english', COALESCE(body, '')), 'B');
549
-
550
- CREATE INDEX idx_articles_search ON articles USING gin (search_vector);
551
-
552
- -- Search with ranking
553
- SELECT
554
- title,
555
- ts_rank(search_vector, query) AS rank
556
- FROM articles, to_tsquery('english', 'database & optimization') AS query
557
- WHERE search_vector @@ query
558
- ORDER BY rank DESC
559
- LIMIT 20;
560
-
561
- -- Trigger to auto-update search vector
562
- CREATE FUNCTION update_search_vector() RETURNS trigger AS $$
563
- BEGIN
564
- NEW.search_vector :=
565
- setweight(to_tsvector('english', COALESCE(NEW.title, '')), 'A') ||
566
- setweight(to_tsvector('english', COALESCE(NEW.body, '')), 'B');
567
- RETURN NEW;
568
- END $$ LANGUAGE plpgsql;
569
-
570
- CREATE TRIGGER trg_articles_search
571
- BEFORE INSERT OR UPDATE OF title, body ON articles
572
- FOR EACH ROW EXECUTE FUNCTION update_search_vector();
573
- ```
574
-
575
- ---
576
-
577
- ## Security
578
-
579
- ```sql
580
- -- ✅ ALWAYS use parameterized queries
581
- -- PostgreSQL (via psycopg)
582
- cursor.execute("SELECT * FROM users WHERE email = %s", (email,))
583
-
584
- -- Python SQLAlchemy
585
- stmt = select(User).where(User.email == email)
45
+ ---
46
+
47
+ ## 🛠️ Technical Architecture & Reference Recipes
586
48
 
587
- -- ❌ NEVER: String interpolation for SQL
588
- -- ❌ f"SELECT * FROM users WHERE email = '{email}'"
589
- -- ❌ "SELECT * FROM users WHERE email = '" + email + "'"
590
- -- These allow SQL injection: email = "'; DROP TABLE users; --"
49
+ ## 2026 SQL Performance & Query Invariants
50
+
51
+ 1. **SARGable Date/Time Predicates**:
52
+ ```sql
53
+ -- ❌ BAD: Function on column kills index scan (Seq Scan)
54
+ WHERE DATE(created_at) = '2026-01-01'
55
+ -- ✅ GOOD: Direct range comparison enables Index Scan
56
+ WHERE created_at >= '2026-01-01 00:00:00+00' AND created_at < '2026-01-02 00:00:00+00'
57
+ ```
58
+ 2. **Keyset Cursor Pagination (O(1) vs O(N) OFFSET)**:
59
+ ```sql
60
+ -- ✅ Instant lookup regardless of page depth
61
+ SELECT id, title, created_at
62
+ FROM articles
63
+ WHERE (created_at, id) < ($last_created_at, $last_id)
64
+ ORDER BY created_at DESC, id DESC
65
+ LIMIT 20;
66
+ ```
67
+ 3. **CTE Optimization (`AS NOT MATERIALIZED`)**: In PostgreSQL 12+, CTEs inline automatically unless marked `MATERIALIZED`. Explicitly control materialization when CTE contains heavy calculations.
68
+ 4. **Batch Upserts with `ON CONFLICT`**:
69
+ ```sql
70
+ INSERT INTO metrics (device_id, recorded_at, val)
71
+ VALUES ($1, $2, $3)
72
+ ON CONFLICT (device_id, recorded_at)
73
+ DO UPDATE SET val = EXCLUDED.val;
74
+ ```
75
+
76
+ ## Hallucination Traps (Read First)
77
+
78
+ - ❌ String-concatenating user input into SQL → ✅ Always use parameterized queries (`$1`, `?`)
79
+ - ❌ Using `OFFSET 50000` for pagination → ✅ Use keyset cursor pagination (`WHERE id > $last_id`)
80
+ - ❌ Wrapping indexed columns in functions in WHERE clauses → ✅ Compare bare column against computed value
81
+ - ❌ `SELECT *` in production queries → ✅ Select explicit columns to utilize covering indexes
82
+ - ❌ `COUNT(*)` on millions of rows for simple existence check → ✅ Use `SELECT EXISTS(SELECT 1 FROM ...)`
83
+
84
+ ---
85
+
86
+ ## Common Table Expressions (CTEs)
87
+
88
+ ### Basic CTE
89
+
90
+ ```sql
91
+ -- CTE for readability and reuse
92
+ WITH active_users AS (
93
+ SELECT id, name, email, created_at
94
+ FROM users
95
+ WHERE is_active = true
96
+ AND last_login > CURRENT_DATE - INTERVAL '30 days'
97
+ ),
98
+ user_orders AS (
99
+ SELECT user_id, COUNT(*) AS order_count, SUM(total) AS total_spent
100
+ FROM orders
101
+ WHERE status = 'completed'
102
+ GROUP BY user_id
103
+ )
104
+ SELECT
105
+ u.name,
106
+ u.email,
107
+ COALESCE(o.order_count, 0) AS orders,
108
+ COALESCE(o.total_spent, 0) AS revenue
109
+ FROM active_users u
110
+ LEFT JOIN user_orders o ON u.id = o.user_id
111
+ ORDER BY revenue DESC;
112
+ ```
113
+
114
+ ### Recursive CTE (Hierarchical Data)
115
+
116
+ ```sql
117
+ -- Org chart: find all reports under a manager
118
+ WITH RECURSIVE org_tree AS (
119
+ -- Base case: the starting manager
120
+ SELECT id, name, manager_id, 1 AS depth
121
+ FROM employees
122
+ WHERE id = 42 -- starting point
123
+
124
+ UNION ALL
125
+
126
+ -- Recursive case: find direct reports
127
+ SELECT e.id, e.name, e.manager_id, t.depth + 1
128
+ FROM employees e
129
+ INNER JOIN org_tree t ON e.manager_id = t.id
130
+ WHERE t.depth < 10 -- safety limit to prevent infinite loops
131
+ )
132
+ SELECT * FROM org_tree ORDER BY depth, name;
133
+
134
+ -- ❌ HALLUCINATION TRAP: Always include a depth/cycle guard
135
+ -- Without it, circular references cause infinite recursion
136
+ -- PostgreSQL: use CYCLE detection clause (PG 14+)
137
+ -- SQL Server: use MAXRECURSION option
138
+ ```
139
+
140
+ ### CTE for Running Totals & Pagination
141
+
142
+ ```sql
143
+ -- Keyset pagination (faster than OFFSET for large tables)
144
+ WITH page AS (
145
+ SELECT id, name, created_at
146
+ FROM products
147
+ WHERE (created_at, id) < (:last_created_at, :last_id) -- cursor
148
+ ORDER BY created_at DESC, id DESC
149
+ LIMIT 20
150
+ )
151
+ SELECT * FROM page;
152
+
153
+ -- ❌ HALLUCINATION TRAP: OFFSET-based pagination gets slower with higher pages
154
+ -- OFFSET 100000, LIMIT 20 scans and discards 100,000 rows
155
+ -- Keyset pagination is O(1) regardless of page number
156
+ ```
157
+
158
+ ---
159
+
160
+ ## Window Functions
161
+
162
+ ### Ranking Functions
163
+
164
+ ```sql
165
+ -- ROW_NUMBER: unique sequential number per partition
166
+ SELECT
167
+ department,
168
+ name,
169
+ salary,
170
+ ROW_NUMBER() OVER (PARTITION BY department ORDER BY salary DESC) AS rank_in_dept
171
+ FROM employees;
172
+
173
+ -- RANK vs DENSE_RANK
174
+ -- RANK: 1, 2, 2, 4 (gaps after ties)
175
+ -- DENSE_RANK: 1, 2, 2, 3 (no gaps)
176
+ SELECT
177
+ name,
178
+ score,
179
+ RANK() OVER (ORDER BY score DESC) AS rank,
180
+ DENSE_RANK() OVER (ORDER BY score DESC) AS dense_rank
181
+ FROM leaderboard;
182
+
183
+ -- NTILE: divide into N equal groups
184
+ SELECT
185
+ name,
186
+ revenue,
187
+ NTILE(4) OVER (ORDER BY revenue DESC) AS quartile
188
+ FROM companies;
189
+ ```
190
+
191
+ ### Aggregate Windows
192
+
193
+ ```sql
194
+ -- Running total
195
+ SELECT
196
+ date,
197
+ amount,
198
+ SUM(amount) OVER (ORDER BY date) AS running_total,
199
+ AVG(amount) OVER (ORDER BY date ROWS BETWEEN 6 PRECEDING AND CURRENT ROW) AS moving_avg_7d
200
+ FROM daily_revenue;
201
+
202
+ -- Percentage of total
203
+ SELECT
204
+ category,
205
+ revenue,
206
+ ROUND(100.0 * revenue / SUM(revenue) OVER (), 2) AS pct_of_total
207
+ FROM category_sales;
208
+
209
+ -- Difference from previous row
210
+ SELECT
211
+ month,
212
+ revenue,
213
+ revenue - LAG(revenue) OVER (ORDER BY month) AS mom_change,
214
+ ROUND(100.0 * (revenue - LAG(revenue) OVER (ORDER BY month))
215
+ / NULLIF(LAG(revenue) OVER (ORDER BY month), 0), 2) AS mom_pct_change
216
+ FROM monthly_revenue;
217
+ ```
218
+
219
+ ### Frame Clauses
220
+
221
+ ```sql
222
+ -- Frame clause controls which rows the window function sees
223
+ SUM(amount) OVER (
224
+ ORDER BY date
225
+ ROWS BETWEEN 2 PRECEDING AND CURRENT ROW -- last 3 rows (physical)
226
+ )
227
+
228
+ SUM(amount) OVER (
229
+ ORDER BY date
230
+ RANGE BETWEEN INTERVAL '7 days' PRECEDING AND CURRENT ROW -- last 7 days (logical)
231
+ )
232
+
233
+ -- ROWS vs RANGE:
234
+ -- ROWS = physical row count (exact)
235
+ -- RANGE = logical value range (handles ties differently)
236
+
237
+ -- ❌ HALLUCINATION TRAP: Default frame is RANGE BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
238
+ -- This means SUM() OVER (ORDER BY x) includes ALL preceding rows, not just "the one before"
239
+ -- To get a true running count of N rows, use ROWS BETWEEN explicitly
240
+ ```
241
+
242
+ ### Lead / Lag Analysis
243
+
244
+ ```sql
245
+ -- Next and previous values
246
+ SELECT
247
+ event_date,
248
+ user_id,
249
+ LAG(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS prev_visit,
250
+ LEAD(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS next_visit,
251
+ event_date - LAG(event_date) OVER (PARTITION BY user_id ORDER BY event_date) AS days_between
252
+ FROM user_events;
253
+
254
+ -- FIRST_VALUE / LAST_VALUE
255
+ SELECT
256
+ department,
257
+ name,
258
+ salary,
259
+ FIRST_VALUE(name) OVER (PARTITION BY department ORDER BY salary DESC) AS highest_paid,
260
+ LAST_VALUE(name) OVER (
261
+ PARTITION BY department ORDER BY salary DESC
262
+ ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING -- ⚠️ required!
263
+ ) AS lowest_paid
264
+ FROM employees;
265
+
266
+ -- ❌ HALLUCINATION TRAP: LAST_VALUE without explicit frame clause returns CURRENT ROW
267
+ -- You MUST specify ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING
268
+ ```
269
+
270
+ ---
271
+
272
+ ## PIVOT / UNPIVOT / Conditional Aggregation
273
+
274
+ ### PostgreSQL / Standard SQL (Conditional Aggregation)
275
+
276
+ ```sql
277
+ -- PostgreSQL doesn't have PIVOT — use conditional aggregation
278
+ SELECT
279
+ product_name,
280
+ SUM(CASE WHEN quarter = 'Q1' THEN revenue ELSE 0 END) AS q1,
281
+ SUM(CASE WHEN quarter = 'Q2' THEN revenue ELSE 0 END) AS q2,
282
+ SUM(CASE WHEN quarter = 'Q3' THEN revenue ELSE 0 END) AS q3,
283
+ SUM(CASE WHEN quarter = 'Q4' THEN revenue ELSE 0 END) AS q4,
284
+ SUM(revenue) AS total
285
+ FROM quarterly_sales
286
+ GROUP BY product_name
287
+ ORDER BY total DESC;
288
+
289
+ -- PostgreSQL crosstab (requires tablefunc extension)
290
+ SELECT * FROM crosstab(
291
+ 'SELECT product, quarter, revenue FROM sales ORDER BY 1, 2',
292
+ 'SELECT DISTINCT quarter FROM sales ORDER BY 1'
293
+ ) AS ct(product TEXT, q1 NUMERIC, q2 NUMERIC, q3 NUMERIC, q4 NUMERIC);
294
+ ```
295
+
296
+ ### SQL Server PIVOT
297
+
298
+ ```sql
299
+ -- SQL Server native PIVOT
300
+ SELECT *
301
+ FROM (
302
+ SELECT product_name, quarter, revenue
303
+ FROM quarterly_sales
304
+ ) AS source
305
+ PIVOT (
306
+ SUM(revenue)
307
+ FOR quarter IN ([Q1], [Q2], [Q3], [Q4])
308
+ ) AS pivoted;
309
+ ```
310
+
311
+ ---
312
+
313
+ ## JSON Operations
314
+
315
+ ### PostgreSQL JSONB
316
+
317
+ ```sql
318
+ -- Query JSON fields
319
+ SELECT
320
+ id,
321
+ profile->>'name' AS name, -- text extraction
322
+ profile->'address'->>'city' AS city, -- nested extraction
323
+ (profile->>'age')::int AS age -- cast to int
324
+ FROM users
325
+ WHERE profile->>'country' = 'US'
326
+ AND (profile->>'age')::int >= 18;
327
+
328
+ -- JSONB containment
329
+ SELECT * FROM products
330
+ WHERE metadata @> '{"category": "electronics"}'; -- contains
331
+
332
+ -- JSONB existence
333
+ SELECT * FROM products
334
+ WHERE metadata ? 'warranty'; -- key exists
335
+
336
+ -- JSONB array queries
337
+ SELECT * FROM users
338
+ WHERE profile->'tags' ? 'premium'; -- array contains value
339
+
340
+ -- Update JSONB
341
+ UPDATE users
342
+ SET profile = jsonb_set(profile, '{address,city}', '"New York"')
343
+ WHERE id = 1;
344
+
345
+ -- JSONB aggregation
346
+ SELECT jsonb_agg(jsonb_build_object('id', id, 'name', name)) AS users_json
347
+ FROM users
348
+ WHERE is_active = true;
349
+
350
+ -- ❌ HALLUCINATION TRAP: -> returns JSON, ->> returns TEXT
351
+ -- Filtering on -> requires JSON comparison
352
+ -- Filtering on ->> allows string comparison
353
+ -- Always cast ->> results when comparing numbers: (col->>'age')::int
354
+ ```
355
+
356
+ ---
357
+
358
+ ## Indexing Strategy
359
+
360
+ ### Index Types
361
+
362
+ ```sql
363
+ -- B-tree (default — good for equality and range)
364
+ CREATE INDEX idx_users_email ON users (email);
365
+
366
+ -- Composite index (column order matters!)
367
+ CREATE INDEX idx_orders_user_date ON orders (user_id, created_at DESC);
368
+ -- ✅ Supports: WHERE user_id = 1 AND created_at > '2024-01-01'
369
+ -- ✅ Supports: WHERE user_id = 1 (uses leftmost prefix)
370
+ -- ❌ Does NOT support: WHERE created_at > '2024-01-01' (skips first column)
371
+
372
+ -- Partial / Filtered index (index only matching rows)
373
+ CREATE INDEX idx_active_users ON users (email) WHERE is_active = true;
374
+ -- Smaller index, faster queries when filtering by is_active
375
+
376
+ -- Covering index (INCLUDE — avoids table lookup)
377
+ CREATE INDEX idx_orders_covering ON orders (user_id)
378
+ INCLUDE (total, status, created_at);
379
+ -- All needed columns in the index = index-only scan
380
+
381
+ -- GIN index (for JSONB, arrays, full-text search)
382
+ CREATE INDEX idx_products_metadata ON products USING gin (metadata);
383
+
384
+ -- GiST index (for geometric, range, full-text)
385
+ CREATE INDEX idx_locations_geo ON locations USING gist (coordinates);
386
+
387
+ -- BRIN index (for naturally ordered data like timestamps)
388
+ CREATE INDEX idx_logs_timestamp ON logs USING brin (created_at);
389
+ -- Tiny index, perfect for append-only tables with timestamp ordering
390
+ ```
391
+
392
+ ### SARGability
393
+
394
+ ```sql
395
+ -- SARGable = Search ARGument ABLE — can the query use an index?
396
+
397
+ -- ✅ SARGable (index seekable)
398
+ WHERE created_at >= '2024-01-01'
399
+ WHERE email = 'alice@test.com'
400
+ WHERE name LIKE 'Ali%' -- prefix match
401
+
402
+ -- ❌ NOT SARGable (forces full table scan)
403
+ WHERE YEAR(created_at) = 2024 -- function on column
404
+ WHERE LOWER(email) = 'alice@test.com' -- function on column
405
+ WHERE name LIKE '%alice%' -- leading wildcard
406
+ WHERE amount + tax > 100 -- expression on column
407
+ WHERE COALESCE(name, '') = '' -- function on column
408
+
409
+ -- ✅ Fix: functional index (PostgreSQL)
410
+ CREATE INDEX idx_users_email_lower ON users (LOWER(email));
411
+ -- Now WHERE LOWER(email) = 'alice@test.com' IS SARGable
412
+
413
+ -- ✅ Fix: computed column (SQL Server)
414
+ ALTER TABLE users ADD email_lower AS LOWER(email) PERSISTED;
415
+ CREATE INDEX idx_email_lower ON users (email_lower);
416
+
417
+ -- ❌ HALLUCINATION TRAP: Implicit type conversions destroy SARGability
418
+ -- WHERE varchar_column = 123 ← implicit cast on EVERY row
419
+ -- WHERE varchar_column = '123' ← direct comparison, uses index
420
+ ```
421
+
422
+ ---
423
+
424
+ ## EXPLAIN ANALYZE (Query Optimization)
425
+
426
+ ```sql
427
+ -- PostgreSQL
428
+ EXPLAIN (ANALYZE, BUFFERS, FORMAT TEXT)
429
+ SELECT * FROM orders WHERE user_id = 42 AND status = 'completed';
430
+
431
+ -- Reading the output:
432
+ -- Seq Scan → full table scan (usually bad for large tables)
433
+ -- Index Scan → using an index to find rows (good)
434
+ -- Index Only Scan → all data from index, no table access (best)
435
+ -- Bitmap Scan → index + bitmap for multiple conditions (good for moderate selectivity)
436
+ -- Hash Join → building hash table for join (good for large joins)
437
+ -- Nested Loop → for each row in A, scan B (good for small datasets, bad for large)
438
+ -- Sort → explicit sorting (check if index can avoid this)
439
+
440
+ -- Key metrics:
441
+ -- actual time=X..Y → X = time to first row, Y = time to all rows (ms)
442
+ -- rows=N → actual rows returned
443
+ -- loops=N → number of times this node executed
444
+ -- Buffers: shared hit=N → pages read from cache (good)
445
+ -- Buffers: shared read=N → pages read from disk (measure of I/O cost)
446
+
447
+ -- SQL Server
448
+ SET STATISTICS IO ON;
449
+ SET STATISTICS TIME ON;
450
+ SELECT * FROM orders WHERE user_id = 42;
451
+ -- Check: logical reads (from cache), physical reads (from disk)
452
+
453
+ -- ❌ HALLUCINATION TRAP: EXPLAIN without ANALYZE shows estimates, NOT actuals
454
+ -- Always use EXPLAIN ANALYZE for real performance data
455
+ -- But CAREFUL: ANALYZE actually EXECUTES the query
456
+ -- For destructive queries (DELETE, UPDATE), wrap in a transaction:
457
+ BEGIN;
458
+ EXPLAIN ANALYZE DELETE FROM users WHERE id = 1;
459
+ ROLLBACK; -- prevents actual deletion
460
+ ```
461
+
462
+ ---
463
+
464
+ ## Table Partitioning
465
+
466
+ ```sql
467
+ -- PostgreSQL range partitioning (ideal for time-series data)
468
+ CREATE TABLE events (
469
+ id BIGSERIAL,
470
+ event_type TEXT NOT NULL,
471
+ payload JSONB,
472
+ created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
473
+ ) PARTITION BY RANGE (created_at);
474
+
475
+ -- Create monthly partitions
476
+ CREATE TABLE events_2024_01 PARTITION OF events
477
+ FOR VALUES FROM ('2024-01-01') TO ('2024-02-01');
478
+ CREATE TABLE events_2024_02 PARTITION OF events
479
+ FOR VALUES FROM ('2024-02-01') TO ('2024-03-01');
480
+
481
+ -- Queries automatically prune partitions:
482
+ -- SELECT * FROM events WHERE created_at >= '2024-02-01'
483
+ -- Only scans events_2024_02 and later — skips events_2024_01 entirely
484
+
485
+ -- List partitioning (for categorical data)
486
+ CREATE TABLE orders (
487
+ id SERIAL,
488
+ region TEXT NOT NULL,
489
+ total NUMERIC
490
+ ) PARTITION BY LIST (region);
491
+
492
+ CREATE TABLE orders_us PARTITION OF orders FOR VALUES IN ('US');
493
+ CREATE TABLE orders_eu PARTITION OF orders FOR VALUES IN ('EU', 'UK');
494
+ CREATE TABLE orders_apac PARTITION OF orders FOR VALUES IN ('JP', 'KR', 'AU');
495
+ ```
496
+
497
+ ---
498
+
499
+ ## Transactions & Concurrency
500
+
501
+ ```sql
502
+ -- Proper transaction pattern
503
+ BEGIN;
504
+
505
+ -- Lock the row for update (prevents concurrent modification)
506
+ SELECT * FROM accounts WHERE id = 1 FOR UPDATE;
507
+
508
+ UPDATE accounts SET balance = balance - 100 WHERE id = 1;
509
+ UPDATE accounts SET balance = balance + 100 WHERE id = 2;
510
+
511
+ -- Verify consistency
512
+ DO $$
513
+ BEGIN
514
+ IF (SELECT SUM(balance) FROM accounts) <> 10000 THEN
515
+ RAISE EXCEPTION 'Balance integrity violation';
516
+ END IF;
517
+ END $$;
518
+
519
+ COMMIT;
520
+
521
+ -- Isolation levels (ordered by strictness)
522
+ SET TRANSACTION ISOLATION LEVEL READ COMMITTED; -- default (PostgreSQL)
523
+ SET TRANSACTION ISOLATION LEVEL REPEATABLE READ; -- snapshot isolation
524
+ SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; -- strictest (may abort)
525
+
526
+ -- Advisory locks (application-level locking)
527
+ SELECT pg_advisory_lock(12345); -- acquire
528
+ -- ... do work ...
529
+ SELECT pg_advisory_unlock(12345); -- release
530
+ ```
531
+
532
+ ---
533
+
534
+ ## MERGE / UPSERT
535
+
536
+ ```sql
537
+ -- PostgreSQL UPSERT (ON CONFLICT)
538
+ INSERT INTO products (sku, name, price, updated_at)
539
+ VALUES ('ABC-123', 'Widget', 29.99, NOW())
540
+ ON CONFLICT (sku) DO UPDATE SET
541
+ name = EXCLUDED.name,
542
+ price = EXCLUDED.price,
543
+ updated_at = EXCLUDED.updated_at;
544
+
545
+ -- SQL Server MERGE
546
+ MERGE INTO products AS target
547
+ USING staging_products AS source
548
+ ON target.sku = source.sku
549
+ WHEN MATCHED THEN
550
+ UPDATE SET
551
+ name = source.name,
552
+ price = source.price,
553
+ updated_at = GETDATE()
554
+ WHEN NOT MATCHED THEN
555
+ INSERT (sku, name, price, created_at)
556
+ VALUES (source.sku, source.name, source.price, GETDATE());
557
+
558
+ -- ❌ HALLUCINATION TRAP: PostgreSQL uses ON CONFLICT, not MERGE
559
+ -- MERGE was added in PostgreSQL 15+ but ON CONFLICT is idiomatic
560
+ -- SQL Server uses MERGE — do not confuse the two syntaxes
561
+ ```
562
+
563
+ ---
564
+
565
+ ## Full-Text Search (PostgreSQL)
566
+
567
+ ```sql
568
+ -- Create tsvector column and GIN index
569
+ ALTER TABLE articles ADD COLUMN search_vector tsvector;
570
+
571
+ UPDATE articles SET search_vector =
572
+ setweight(to_tsvector('english', COALESCE(title, '')), 'A') ||
573
+ setweight(to_tsvector('english', COALESCE(body, '')), 'B');
574
+
575
+ CREATE INDEX idx_articles_search ON articles USING gin (search_vector);
576
+
577
+ -- Search with ranking
578
+ SELECT
579
+ title,
580
+ ts_rank(search_vector, query) AS rank
581
+ FROM articles, to_tsquery('english', 'database & optimization') AS query
582
+ WHERE search_vector @@ query
583
+ ORDER BY rank DESC
584
+ LIMIT 20;
585
+
586
+ -- Trigger to auto-update search vector
587
+ CREATE FUNCTION update_search_vector() RETURNS trigger AS $$
588
+ BEGIN
589
+ NEW.search_vector :=
590
+ setweight(to_tsvector('english', COALESCE(NEW.title, '')), 'A') ||
591
+ setweight(to_tsvector('english', COALESCE(NEW.body, '')), 'B');
592
+ RETURN NEW;
593
+ END $$ LANGUAGE plpgsql;
594
+
595
+ CREATE TRIGGER trg_articles_search
596
+ BEFORE INSERT OR UPDATE OF title, body ON articles
597
+ FOR EACH ROW EXECUTE FUNCTION update_search_vector();
598
+ ```
599
+
600
+ ---
601
+
602
+ ## Security
603
+
604
+ ```sql
605
+ -- ✅ ALWAYS use parameterized queries
606
+ -- PostgreSQL (via psycopg)
607
+ cursor.execute("SELECT * FROM users WHERE email = %s", (email,))
608
+
609
+ -- Python SQLAlchemy
610
+ stmt = select(User).where(User.email == email)
611
+
612
+ -- ❌ NEVER: String interpolation for SQL
613
+ -- ❌ f"SELECT * FROM users WHERE email = '{email}'"
614
+ -- ❌ "SELECT * FROM users WHERE email = '" + email + "'"
615
+ -- These allow SQL injection: email = "'; DROP TABLE users; --"
616
+
617
+ -- Row-Level Security (PostgreSQL)
618
+ ALTER TABLE documents ENABLE ROW LEVEL SECURITY;
619
+
620
+ CREATE POLICY documents_owner_policy ON documents
621
+ USING (owner_id = current_setting('app.current_user_id')::int);
622
+
623
+ -- Grant minimum permissions
624
+ GRANT SELECT, INSERT ON users TO app_role;
625
+ -- ❌ NEVER: GRANT ALL ON DATABASE TO app_role
626
+ ```
627
+
628
+ ---
629
+
630
+ ## Output Format
631
+
632
+ When this skill produces or reviews code, structure your output as follows:
633
+
634
+ ```
635
+ ━━━ SQL Pro Report ━━━━━━━━━━━━━━━━━━━━━━━━
636
+ Skill: SQL Pro
637
+ Database: [PostgreSQL/MySQL/SQL Server/Oracle]
638
+ Scope: [N queries · N tables]
639
+ ─────────────────────────────────────────────────
640
+ ✅ Passed: [checks that passed, or "All clean"]
641
+ ⚠️ Warnings: [non-blocking issues, or "None"]
642
+ ❌ Blocked: [blocking issues requiring fix, or "None"]
643
+ ─────────────────────────────────────────────────
644
+ VBC status: PENDING → VERIFIED
645
+ Evidence: [EXPLAIN ANALYZE output / migration success / test pass]
646
+ ```
647
+
648
+ **VBC (Verification-Before-Completion) is mandatory.**
649
+ Do not mark status as VERIFIED until concrete terminal evidence is provided.
591
650
 
592
- -- Row-Level Security (PostgreSQL)
593
- ALTER TABLE documents ENABLE ROW LEVEL SECURITY;
651
+ ## 🚨 Edge-Case & Failure Mode Matrix
594
652
 
595
- CREATE POLICY documents_owner_policy ON documents
596
- USING (owner_id = current_setting('app.current_user_id')::int);
653
+ | Scenario | Risk | Production Mitigation |
654
+ |:---|:---|:---|
655
+ | **Empty or Null Inputs** | Unhandled exception or unexpected rendering collapse | Enforce fallback guards, optional chaining, and explicit empty state handlers |
656
+ | **Network Timeout / Latency** | Hanging operations or duplicate side-effects | Implement bounded abort controllers, exponential backoff, and idempotency keys |
657
+ | **Concurrency / Race Conditions** | Stale state overwrite or inconsistent data mutations | Use atomic transactions, mutex locking, or cancel-on-resubmit controls |
658
+ | **Invalid Schema / Malformed Payload** | Downstream runtime errors or security injection | Validate boundary payloads with Zod/Pydantic schemas prior to execution |
659
+ | **Resource / Memory Saturation** | OOM errors, frame drops, or memory leaks | Clean up listeners, cancel active timers, and enforce pagination/virtualization |
597
660
 
598
- -- Grant minimum permissions
599
- GRANT SELECT, INSERT ON users TO app_role;
600
- -- ❌ NEVER: GRANT ALL ON DATABASE TO app_role
601
- ```
602
661
 
603
- ---
662
+ ## 🏛️ Tribunal Verification & Guardrails
604
663
 
605
- ## Output Format
664
+ **Active Reviewers:** `database-architect` · `sql-pro` · `security-auditor` · `schema-validator`
665
+ **Slash Command:** `/review` or `/tribunal-full`
606
666
 
607
- When this skill produces or reviews code, structure your output as follows:
667
+ ### 🔬 Evidence Standard (Tri-State Verification)
668
+ Every finding, audit statement, or completion claim must classify its factual certainty:
669
+ - **`[OBSERVED]`**: Directly confirmed in the codebase or verified via executed terminal command.
670
+ - **`[INFERRED]`**: Logically deduced from code patterns, architectural data flow, or schema relations.
671
+ - **`[UNVERIFIED]`**: Speculative hypothesis or runtime possibility requiring active testing or measurement.
608
672
 
673
+ ### ✅ Pre-Flight Self-Audit Checklist
609
674
  ```
610
- ━━━ SQL Pro Report ━━━━━━━━━━━━━━━━━━━━━━━━
611
- Skill: SQL Pro
612
- Database: [PostgreSQL/MySQL/SQL Server/Oracle]
613
- Scope: [N queries · N tables]
614
- ─────────────────────────────────────────────────
615
- ✅ Passed: [checks that passed, or "All clean"]
616
- ⚠️ Warnings: [non-blocking issues, or "None"]
617
- ❌ Blocked: [blocking issues requiring fix, or "None"]
618
- ─────────────────────────────────────────────────
619
- VBC status: PENDING → VERIFIED
620
- Evidence: [EXPLAIN ANALYZE output / migration success / test pass]
675
+ ✅ Are all queries parameterized against SQL injection vulnerabilities?
676
+ ✅ Are composite indexes ordered by Equality, Sort, then Range (ESR)?
677
+ ✅ Are multi-table writes wrapped in atomic transactions with rollback handlers?
678
+ ✅ Are schema migrations backwards-compatible (expand-and-contract pattern)?
679
+ ✅ Did I verify table and column names against active schema definitions?
621
680
  ```
622
681
 
623
- **VBC (Verification-Before-Completion) is mandatory.**
624
- Do not mark status as VERIFIED until concrete terminal evidence is provided.
682
+ ### 🛑 Verification-Before-Completion (VBC) Protocol
683
+ **CRITICAL:** You must follow a strict "evidence-based closeout" state machine.
684
+ - ❌ **Forbidden:** Declaring a task complete because the output "looks correct."
685
+ - ✅ **Required:** You are explicitly forbidden from finalizing any task without providing **concrete evidence** (terminal output, passing test suites, compiler success, or equivalent operational proof) that your output works as intended.