@nockdev/awf 6.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (727) hide show
  1. package/.agent/build.yaml +178 -0
  2. package/.agent/config.yaml +235 -0
  3. package/.agent/core/ACTIVE_MEMORY.yaml +344 -0
  4. package/.agent/core/ARCH_REGISTRY.yaml +252 -0
  5. package/.agent/core/AUDIT_POLICY.md +68 -0
  6. package/.agent/core/BRANDING.yaml +185 -0
  7. package/.agent/core/CACHE.md +59 -0
  8. package/.agent/core/CHECKPOINT.yaml +153 -0
  9. package/.agent/core/CLEANUP_ENGINE.yaml +326 -0
  10. package/.agent/core/CODING_STYLES.yaml +346 -0
  11. package/.agent/core/COMMANDS.md +93 -0
  12. package/.agent/core/CONTEXT_INJECTOR.yaml +325 -0
  13. package/.agent/core/CONTEXT_LOADER.yaml +323 -0
  14. package/.agent/core/CONTEXT_OPTIMIZATION.yaml +286 -0
  15. package/.agent/core/CONTEXT_PRIORITY.yaml +357 -0
  16. package/.agent/core/CUSTOMIZE.md +138 -0
  17. package/.agent/core/DATA_SAFETY.md +92 -0
  18. package/.agent/core/FLOW_ENGINE.yaml +300 -0
  19. package/.agent/core/GRAPH_MEMORY.yaml +420 -0
  20. package/.agent/core/HSA.yaml +357 -0
  21. package/.agent/core/HYBRID_ROUTER.yaml +346 -0
  22. package/.agent/core/INTENT_DETECTION.yaml +384 -0
  23. package/.agent/core/LIBRARY_REGISTRY.yaml +401 -0
  24. package/.agent/core/MCP_TOOLS.yaml +414 -0
  25. package/.agent/core/MEMORY_CONSOLIDATION.yaml +352 -0
  26. package/.agent/core/MEMORY_ENGINE.yaml +353 -0
  27. package/.agent/core/MEMORY_PATHS.yaml +79 -0
  28. package/.agent/core/MEMORY_UTILS.yaml +212 -0
  29. package/.agent/core/PATTERNS.yaml +319 -0
  30. package/.agent/core/PERMISSIONS.md +100 -0
  31. package/.agent/core/README.md +91 -0
  32. package/.agent/core/REFLECTION_ENGINE.yaml +348 -0
  33. package/.agent/core/ROUTER.yaml +424 -0
  34. package/.agent/core/SCORING_FORMULA.yaml +103 -0
  35. package/.agent/core/SEMANTIC_ENGINE.yaml +162 -0
  36. package/.agent/core/SKILLS_FLOW.yaml +341 -0
  37. package/.agent/core/SKILL_SCHEMA.yaml +266 -0
  38. package/.agent/core/STATE_MACHINE.yaml +409 -0
  39. package/.agent/core/SUMMARIZATION_ENGINE.yaml +258 -0
  40. package/.agent/core/TEMPLATES.yaml +364 -0
  41. package/.agent/core/TOKEN_BUDGETS.yaml +157 -0
  42. package/.agent/core/TOKEN_LOADING.yaml +197 -0
  43. package/.agent/core/TOKEN_SUMMARY.yaml +121 -0
  44. package/.agent/core/VERSION.yaml +240 -0
  45. package/.agent/core/embeddings.json +2004 -0
  46. package/.agent/core/session_cache.json +50 -0
  47. package/.agent/i18n/README.md +30 -0
  48. package/.agent/i18n/en.yaml +302 -0
  49. package/.agent/i18n/vi.yaml +302 -0
  50. package/.agent/ide/README.md +47 -0
  51. package/.agent/ide/amazonq.json +35 -0
  52. package/.agent/ide/amp.json +35 -0
  53. package/.agent/ide/antigravity.json +47 -0
  54. package/.agent/ide/augment.json +35 -0
  55. package/.agent/ide/claude.json +42 -0
  56. package/.agent/ide/cline.json +34 -0
  57. package/.agent/ide/codex.json +37 -0
  58. package/.agent/ide/cody.json +35 -0
  59. package/.agent/ide/continue.json +35 -0
  60. package/.agent/ide/cursor.json +42 -0
  61. package/.agent/ide/gemini.json +46 -0
  62. package/.agent/ide/jetbrains.json +35 -0
  63. package/.agent/ide/kiro.json +35 -0
  64. package/.agent/ide/opencode.json +35 -0
  65. package/.agent/ide/roo.json +35 -0
  66. package/.agent/ide/tabnine.json +35 -0
  67. package/.agent/ide/trae.json +35 -0
  68. package/.agent/ide/vscode.json +34 -0
  69. package/.agent/ide/windsurf.json +56 -0
  70. package/.agent/ide/zed.json +36 -0
  71. package/.agent/manifest.yaml +416 -0
  72. package/.agent/memory/README.md +148 -0
  73. package/.agent/memory/active_memories.json +35 -0
  74. package/.agent/memory/archive/.gitkeep +0 -0
  75. package/.agent/memory/audit_summary.json +58 -0
  76. package/.agent/memory/cleanup_log.json +34 -0
  77. package/.agent/memory/consolidated.md +75 -0
  78. package/.agent/memory/core_memory/persona.json +30 -0
  79. package/.agent/memory/core_memory/project.json +25 -0
  80. package/.agent/memory/core_memory/rules.json +29 -0
  81. package/.agent/memory/core_memory/user.json +24 -0
  82. package/.agent/memory/decisions.md +40 -0
  83. package/.agent/memory/graph/knowledge_graph.json +12 -0
  84. package/.agent/memory/insights.md +52 -0
  85. package/.agent/memory/metrics.json +48 -0
  86. package/.agent/memory/patterns/errors.json +11 -0
  87. package/.agent/memory/patterns/successes.json +10 -0
  88. package/.agent/memory/session.md +64 -0
  89. package/.agent/memory/session_rules.json +19 -0
  90. package/.agent/memory/state.json +81 -0
  91. package/.agent/memory/vectors/README.md +129 -0
  92. package/.agent/personas/README.md +180 -0
  93. package/.agent/personas/architect.md +186 -0
  94. package/.agent/personas/auditor.md +222 -0
  95. package/.agent/personas/debugger.md +210 -0
  96. package/.agent/personas/developer.md +183 -0
  97. package/.agent/personas/devops.md +268 -0
  98. package/.agent/personas/documenter.md +262 -0
  99. package/.agent/personas/orchestrator.md +240 -0
  100. package/.agent/personas/persona.schema.yaml +209 -0
  101. package/.agent/personas/planner.md +171 -0
  102. package/.agent/personas/researcher.md +194 -0
  103. package/.agent/personas/security.md +212 -0
  104. package/.agent/personas/tester.md +247 -0
  105. package/.agent/rules/README.md +231 -0
  106. package/.agent/rules/SACRED_RULES.xml +142 -0
  107. package/.agent/rules/constitutional/tier-0-core.yaml +182 -0
  108. package/.agent/rules/constitutional/tier-1-safety.yaml +272 -0
  109. package/.agent/rules/constitutional/tier-2-execution.yaml +294 -0
  110. package/.agent/rules/data/build-systems.yaml +126 -0
  111. package/.agent/rules/data/quality-standards.json +59 -0
  112. package/.agent/rules/duplication-prevention.md +138 -0
  113. package/.agent/rules/incremental-changes.md +146 -0
  114. package/.agent/rules/modules/context-management.yaml +158 -0
  115. package/.agent/rules/modules/edit-verification.yaml +197 -0
  116. package/.agent/rules/modules/evidence.yaml +185 -0
  117. package/.agent/rules/modules/git-workflow.yaml +165 -0
  118. package/.agent/rules/modules/language.yaml +155 -0
  119. package/.agent/rules/modules/online-research.yaml +192 -0
  120. package/.agent/rules/modules/quality.yaml +185 -0
  121. package/.agent/rules/modules/reflection.yaml +209 -0
  122. package/.agent/rules/modules/stop-conditions.yaml +196 -0
  123. package/.agent/rules/modules/terminal-safety.yaml +229 -0
  124. package/.agent/rules/modules/versioning.yaml +97 -0
  125. package/.agent/rules/modules/yagni.yaml +167 -0
  126. package/.agent/rules/project-detection.md +317 -0
  127. package/.agent/rules/prompt-injection-guard.md +260 -0
  128. package/.agent/rules/shell-commands.md +210 -0
  129. package/.agent/rules/validation-framework.md +189 -0
  130. package/.agent/skills/DEVELOPMENT.yaml +226 -0
  131. package/.agent/skills/README.md +69 -0
  132. package/.agent/skills/_categories.yaml +145 -0
  133. package/.agent/skills/_router.yaml +232 -0
  134. package/.agent/skills/core/_index.yaml +12 -0
  135. package/.agent/skills/core/api-design/META.yaml +64 -0
  136. package/.agent/skills/core/api-design/SKILL.md +169 -0
  137. package/.agent/skills/core/api-design/data/api-versioning.yaml +217 -0
  138. package/.agent/skills/core/api-design/data/error-responses.yaml +135 -0
  139. package/.agent/skills/core/api-design/data/graphql-patterns.yaml +165 -0
  140. package/.agent/skills/core/api-design/data/grpc-patterns.yaml +165 -0
  141. package/.agent/skills/core/api-design/data/http-status-codes.yaml +176 -0
  142. package/.agent/skills/core/api-design/data/pagination.yaml +121 -0
  143. package/.agent/skills/core/api-design/data/rate-limiting.yaml +135 -0
  144. package/.agent/skills/core/api-design/data/rest-patterns.yaml +195 -0
  145. package/.agent/skills/core/api-design/data/test-apis.yaml +217 -0
  146. package/.agent/skills/core/authentication/META.yaml +73 -0
  147. package/.agent/skills/core/authentication/SKILL.md +166 -0
  148. package/.agent/skills/core/authentication/data/anti-patterns.yaml +135 -0
  149. package/.agent/skills/core/authentication/data/core-patterns.yaml +256 -0
  150. package/.agent/skills/core/authentication/data/jwt-patterns.yaml +255 -0
  151. package/.agent/skills/core/authentication/data/language-csharp.yaml +215 -0
  152. package/.agent/skills/core/authentication/data/language-go.yaml +215 -0
  153. package/.agent/skills/core/authentication/data/language-java.yaml +215 -0
  154. package/.agent/skills/core/authentication/data/language-mobile.yaml +215 -0
  155. package/.agent/skills/core/authentication/data/language-python.yaml +215 -0
  156. package/.agent/skills/core/authentication/data/language-rust.yaml +215 -0
  157. package/.agent/skills/core/authentication/data/language-typescript.yaml +215 -0
  158. package/.agent/skills/core/authentication/data/mfa-patterns.yaml +175 -0
  159. package/.agent/skills/core/authentication/data/oauth-patterns.yaml +255 -0
  160. package/.agent/skills/core/authentication/data/oauth.yaml +248 -0
  161. package/.agent/skills/core/authentication/data/passkeys-webauthn.yaml +215 -0
  162. package/.agent/skills/core/authentication/data/passkeys.yaml +208 -0
  163. package/.agent/skills/core/authentication/data/password-patterns.yaml +175 -0
  164. package/.agent/skills/core/authentication/data/password.yaml +168 -0
  165. package/.agent/skills/core/authentication/data/session-patterns.yaml +215 -0
  166. package/.agent/skills/core/error-handling/META.yaml +71 -0
  167. package/.agent/skills/core/error-handling/SKILL.md +156 -0
  168. package/.agent/skills/core/error-handling/data/anti-patterns.yaml +105 -0
  169. package/.agent/skills/core/error-handling/data/api-error-patterns.yaml +135 -0
  170. package/.agent/skills/core/error-handling/data/core-patterns.yaml +226 -0
  171. package/.agent/skills/core/error-handling/data/error-codes.yaml +165 -0
  172. package/.agent/skills/core/error-handling/data/error-messages.yaml +165 -0
  173. package/.agent/skills/core/error-handling/data/language-c-cpp.yaml +226 -0
  174. package/.agent/skills/core/error-handling/data/language-go-rust.yaml +226 -0
  175. package/.agent/skills/core/error-handling/data/language-python-java.yaml +226 -0
  176. package/.agent/skills/core/error-handling/data/language-swift-kotlin.yaml +226 -0
  177. package/.agent/skills/core/error-handling/data/language-typescript-php-ruby.yaml +226 -0
  178. package/.agent/skills/core/error-handling/data/resilience-patterns.yaml +191 -0
  179. package/.agent/skills/core/error-handling/data/ui-error-patterns.yaml +135 -0
  180. package/.agent/skills/core/logging/META.yaml +73 -0
  181. package/.agent/skills/core/logging/SKILL.md +184 -0
  182. package/.agent/skills/core/logging/data/aggregation-patterns.yaml +191 -0
  183. package/.agent/skills/core/logging/data/anti-patterns.yaml +121 -0
  184. package/.agent/skills/core/logging/data/core-patterns.yaml +226 -0
  185. package/.agent/skills/core/logging/data/language-csharp.yaml +191 -0
  186. package/.agent/skills/core/logging/data/language-go.yaml +191 -0
  187. package/.agent/skills/core/logging/data/language-java.yaml +191 -0
  188. package/.agent/skills/core/logging/data/language-kotlin.yaml +156 -0
  189. package/.agent/skills/core/logging/data/language-others.yaml +184 -0
  190. package/.agent/skills/core/logging/data/language-python.yaml +191 -0
  191. package/.agent/skills/core/logging/data/language-rust.yaml +191 -0
  192. package/.agent/skills/core/logging/data/language-swift.yaml +156 -0
  193. package/.agent/skills/core/logging/data/language-typescript.yaml +191 -0
  194. package/.agent/skills/core/logging/data/otel-logging.yaml +156 -0
  195. package/.agent/skills/core/observability/META.yaml +76 -0
  196. package/.agent/skills/core/observability/SKILL.md +153 -0
  197. package/.agent/skills/core/observability/data/alerting-patterns.yaml +165 -0
  198. package/.agent/skills/core/observability/data/anti-patterns.yaml +105 -0
  199. package/.agent/skills/core/observability/data/core-patterns.yaml +195 -0
  200. package/.agent/skills/core/observability/data/language-cpp.yaml +165 -0
  201. package/.agent/skills/core/observability/data/language-csharp.yaml +165 -0
  202. package/.agent/skills/core/observability/data/language-go.yaml +165 -0
  203. package/.agent/skills/core/observability/data/language-java.yaml +165 -0
  204. package/.agent/skills/core/observability/data/language-others.yaml +255 -0
  205. package/.agent/skills/core/observability/data/language-python.yaml +165 -0
  206. package/.agent/skills/core/observability/data/language-rust.yaml +165 -0
  207. package/.agent/skills/core/observability/data/language-typescript.yaml +165 -0
  208. package/.agent/skills/core/observability/data/metrics-patterns.yaml +135 -0
  209. package/.agent/skills/core/observability/data/metrics-prometheus.yaml +165 -0
  210. package/.agent/skills/core/observability/data/otel-core.yaml +195 -0
  211. package/.agent/skills/core/observability/data/profiling-patterns.yaml +135 -0
  212. package/.agent/skills/core/observability/data/tracing-patterns.yaml +165 -0
  213. package/.agent/skills/core/observability/data/tracing-tools.yaml +135 -0
  214. package/.agent/skills/core/security/ADVANCED.md +269 -0
  215. package/.agent/skills/core/security/META.yaml +97 -0
  216. package/.agent/skills/core/security/SKILL.md +234 -0
  217. package/.agent/skills/core/security/data/ai-ml-security.yaml +261 -0
  218. package/.agent/skills/core/security/data/api-security.yaml +230 -0
  219. package/.agent/skills/core/security/data/auth-patterns.yaml +195 -0
  220. package/.agent/skills/core/security/data/binary-exploitation.yaml +339 -0
  221. package/.agent/skills/core/security/data/cloud-security.yaml +269 -0
  222. package/.agent/skills/core/security/data/cwe-top25.yaml +415 -0
  223. package/.agent/skills/core/security/data/language-specific/c-security.yaml +295 -0
  224. package/.agent/skills/core/security/data/language-specific/cpp-security.yaml +295 -0
  225. package/.agent/skills/core/security/data/language-specific/csharp-security.yaml +219 -0
  226. package/.agent/skills/core/security/data/language-specific/go-security.yaml +219 -0
  227. package/.agent/skills/core/security/data/language-specific/java-security.yaml +295 -0
  228. package/.agent/skills/core/security/data/language-specific/kotlin-security.yaml +198 -0
  229. package/.agent/skills/core/security/data/language-specific/php-security.yaml +219 -0
  230. package/.agent/skills/core/security/data/language-specific/python-security.yaml +295 -0
  231. package/.agent/skills/core/security/data/language-specific/ruby-security.yaml +198 -0
  232. package/.agent/skills/core/security/data/language-specific/rust-security.yaml +240 -0
  233. package/.agent/skills/core/security/data/language-specific/solidity-security.yaml +369 -0
  234. package/.agent/skills/core/security/data/language-specific/swift-security.yaml +198 -0
  235. package/.agent/skills/core/security/data/language-specific/typescript-security.yaml +295 -0
  236. package/.agent/skills/core/security/data/mobile-security.yaml +369 -0
  237. package/.agent/skills/core/security/data/network-security.yaml +297 -0
  238. package/.agent/skills/core/security/data/owasp-top10.yaml +171 -0
  239. package/.agent/skills/core/security/data/reverse-engineering.yaml +497 -0
  240. package/.agent/skills/core/security/data/supply-chain.yaml +219 -0
  241. package/.agent/skills/cross-cutting/_index.yaml +15 -0
  242. package/.agent/skills/cross-cutting/audit-pro/META.yaml +43 -0
  243. package/.agent/skills/cross-cutting/audit-pro/data/checklists.yaml +644 -0
  244. package/.agent/skills/cross-cutting/audit-pro/data/scoring.yaml +101 -0
  245. package/.agent/skills/cross-cutting/aws/META.yaml +75 -0
  246. package/.agent/skills/cross-cutting/aws/data/ai_ml.yaml +194 -0
  247. package/.agent/skills/cross-cutting/aws/data/compute.yaml +191 -0
  248. package/.agent/skills/cross-cutting/aws/data/kubernetes.yaml +199 -0
  249. package/.agent/skills/cross-cutting/aws/data/storage.yaml +174 -0
  250. package/.agent/skills/cross-cutting/bun/META.yaml +58 -0
  251. package/.agent/skills/cross-cutting/bun/SKILL.md +357 -0
  252. package/.agent/skills/cross-cutting/bun/data/database.yaml +85 -0
  253. package/.agent/skills/cross-cutting/bun/data/runtime.yaml +170 -0
  254. package/.agent/skills/cross-cutting/bun/data/tooling.yaml +192 -0
  255. package/.agent/skills/cross-cutting/ci-cd/META.yaml +60 -0
  256. package/.agent/skills/cross-cutting/ci-cd/data/github_actions.yaml +248 -0
  257. package/.agent/skills/cross-cutting/ci-cd/data/security.yaml +211 -0
  258. package/.agent/skills/cross-cutting/coding-rules/META.yaml +61 -0
  259. package/.agent/skills/cross-cutting/coding-rules/SKILL.md +171 -0
  260. package/.agent/skills/cross-cutting/coding-rules/data/architecture-patterns.yaml +96 -0
  261. package/.agent/skills/cross-cutting/coding-rules/data/build-systems.yaml +346 -0
  262. package/.agent/skills/cross-cutting/coding-rules/data/coding-rules.yaml +647 -0
  263. package/.agent/skills/cross-cutting/coding-rules/data/concurrency-patterns.yaml +108 -0
  264. package/.agent/skills/cross-cutting/coding-rules/data/design-patterns.yaml +260 -0
  265. package/.agent/skills/cross-cutting/coding-rules/data/framework-signatures.yaml +344 -0
  266. package/.agent/skills/cross-cutting/coding-rules/data/memory-management.yaml +108 -0
  267. package/.agent/skills/cross-cutting/coding-rules/data/naming-conventions.yaml +320 -0
  268. package/.agent/skills/cross-cutting/coding-rules/data/performance-benchmarks.yaml +164 -0
  269. package/.agent/skills/cross-cutting/coding-rules/data/solid-principles.yaml +80 -0
  270. package/.agent/skills/cross-cutting/coding-rules/data/test-frameworks.yaml +183 -0
  271. package/.agent/skills/cross-cutting/database/ADVANCED.md +465 -0
  272. package/.agent/skills/cross-cutting/database/META.yaml +22 -0
  273. package/.agent/skills/cross-cutting/database/SKILL.md +816 -0
  274. package/.agent/skills/cross-cutting/database/data/anti_patterns.yaml +116 -0
  275. package/.agent/skills/cross-cutting/database/data/distributed.yaml +152 -0
  276. package/.agent/skills/cross-cutting/database/data/mongodb.yaml +132 -0
  277. package/.agent/skills/cross-cutting/database/data/mysql.yaml +130 -0
  278. package/.agent/skills/cross-cutting/database/data/orm.yaml +104 -0
  279. package/.agent/skills/cross-cutting/database/data/postgresql.yaml +170 -0
  280. package/.agent/skills/cross-cutting/database/data/redis.yaml +129 -0
  281. package/.agent/skills/cross-cutting/deno/META.yaml +68 -0
  282. package/.agent/skills/cross-cutting/deno/SKILL.md +343 -0
  283. package/.agent/skills/cross-cutting/deno/data/runtime.yaml +260 -0
  284. package/.agent/skills/cross-cutting/deno/data/security.yaml +168 -0
  285. package/.agent/skills/cross-cutting/deno/data/tooling.yaml +133 -0
  286. package/.agent/skills/cross-cutting/docker/META.yaml +65 -0
  287. package/.agent/skills/cross-cutting/docker/data/build.yaml +197 -0
  288. package/.agent/skills/cross-cutting/docker/data/compose.yaml +229 -0
  289. package/.agent/skills/cross-cutting/docker/data/security.yaml +164 -0
  290. package/.agent/skills/cross-cutting/electron/META.yaml +174 -0
  291. package/.agent/skills/cross-cutting/electron/SKILL.md +862 -0
  292. package/.agent/skills/cross-cutting/electron/data/build.yaml +105 -0
  293. package/.agent/skills/cross-cutting/electron/data/crash.yaml +103 -0
  294. package/.agent/skills/cross-cutting/electron/data/ipc.yaml +85 -0
  295. package/.agent/skills/cross-cutting/electron/data/native.yaml +157 -0
  296. package/.agent/skills/cross-cutting/electron/data/security.yaml +89 -0
  297. package/.agent/skills/cross-cutting/electron/data/storage.yaml +100 -0
  298. package/.agent/skills/cross-cutting/electron/data/testing.yaml +103 -0
  299. package/.agent/skills/cross-cutting/electron/data/updates.yaml +99 -0
  300. package/.agent/skills/cross-cutting/electron/data/window.yaml +83 -0
  301. package/.agent/skills/cross-cutting/kubernetes/META.yaml +70 -0
  302. package/.agent/skills/cross-cutting/kubernetes/data/networking.yaml +270 -0
  303. package/.agent/skills/cross-cutting/kubernetes/data/scheduling.yaml +267 -0
  304. package/.agent/skills/cross-cutting/kubernetes/data/security.yaml +253 -0
  305. package/.agent/skills/cross-cutting/kubernetes/data/workloads.yaml +251 -0
  306. package/.agent/skills/cross-cutting/sql/META.yaml +88 -0
  307. package/.agent/skills/cross-cutting/sql/SKILL.md +296 -0
  308. package/.agent/skills/cross-cutting/sql/data/indexing.yaml +147 -0
  309. package/.agent/skills/cross-cutting/sql/data/json.yaml +156 -0
  310. package/.agent/skills/cross-cutting/sql/data/performance.yaml +204 -0
  311. package/.agent/skills/cross-cutting/sql/data/queries.yaml +150 -0
  312. package/.agent/skills/cross-cutting/tailwind/META.yaml +72 -0
  313. package/.agent/skills/cross-cutting/tailwind/SKILL.md +344 -0
  314. package/.agent/skills/cross-cutting/tailwind/data/build.yaml +143 -0
  315. package/.agent/skills/cross-cutting/tailwind/data/config.yaml +109 -0
  316. package/.agent/skills/cross-cutting/tailwind/data/migration.yaml +149 -0
  317. package/.agent/skills/cross-cutting/tailwind/data/responsive.yaml +148 -0
  318. package/.agent/skills/cross-cutting/tailwind/data/states.yaml +152 -0
  319. package/.agent/skills/cross-cutting/tailwind/data/theme.yaml +126 -0
  320. package/.agent/skills/cross-cutting/tailwind/data/utilities.yaml +182 -0
  321. package/.agent/skills/cross-cutting/tailwind/data/variants.yaml +154 -0
  322. package/.agent/skills/cross-cutting/testing/ADVANCED.md +245 -0
  323. package/.agent/skills/cross-cutting/testing/META.yaml +49 -0
  324. package/.agent/skills/cross-cutting/testing/SKILL.md +263 -0
  325. package/.agent/skills/cross-cutting/testing/data/frameworks.yaml +300 -0
  326. package/.agent/skills/cross-cutting/testing/data/patterns.yaml +168 -0
  327. package/.agent/skills/cross-cutting/ui-ux-pro-max/META.yaml +108 -0
  328. package/.agent/skills/cross-cutting/ui-ux-pro-max/SKILL.md +565 -0
  329. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/charts.yaml +331 -0
  330. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/colors.yaml +1226 -0
  331. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-decision.yaml +287 -0
  332. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-mapping.yaml +318 -0
  333. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/design-tokens.yaml +525 -0
  334. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-animation.yaml +232 -0
  335. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-architecture.yaml +140 -0
  336. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-colors.yaml +467 -0
  337. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/directory-structure.yaml +75 -0
  338. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/icons.yaml +918 -0
  339. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/implementation-strategy.yaml +107 -0
  340. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/landing.yaml +372 -0
  341. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-frameworks.yaml +195 -0
  342. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-guidelines.yaml +177 -0
  343. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/products.yaml +1339 -0
  344. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/prompts.yaml +180 -0
  345. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/react-performance.yaml +504 -0
  346. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/desktop.yaml +228 -0
  347. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/flutter.yaml +508 -0
  348. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/html-tailwind.yaml +543 -0
  349. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nextjs.yaml +515 -0
  350. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxt-ui.yaml +519 -0
  351. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxtjs.yaml +599 -0
  352. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react-native.yaml +496 -0
  353. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react.yaml +526 -0
  354. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/shadcn.yaml +616 -0
  355. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/svelte.yaml +520 -0
  356. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/swiftui.yaml +486 -0
  357. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/vue.yaml +485 -0
  358. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/styles.yaml +1473 -0
  359. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/typography.yaml +647 -0
  360. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ui-reasoning.yaml +1019 -0
  361. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ux-guidelines.yaml +1009 -0
  362. package/.agent/skills/cross-cutting/ui-ux-pro-max/data/web-interface.yaml +347 -0
  363. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-310.pyc +0 -0
  364. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
  365. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
  366. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core.py +393 -0
  367. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core_legacy.py +303 -0
  368. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/design_system.py +496 -0
  369. package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/search.py +76 -0
  370. package/.agent/skills/cross-cutting/web-perf/META.yaml +92 -0
  371. package/.agent/skills/cross-cutting/web-perf/SKILL.md +181 -0
  372. package/.agent/skills/cross-cutting/web-perf/data/cls_optimization.yaml +189 -0
  373. package/.agent/skills/cross-cutting/web-perf/data/core_web_vitals.yaml +282 -0
  374. package/.agent/skills/cross-cutting/web-perf/data/inp_optimization.yaml +240 -0
  375. package/.agent/skills/cross-cutting/web-perf/data/lcp_optimization.yaml +202 -0
  376. package/.agent/skills/cross-cutting/web-perf/data/measurement.yaml +170 -0
  377. package/.agent/skills/devops/_index.yaml +9 -0
  378. package/.agent/skills/devops/aws/ADVANCED.md +547 -0
  379. package/.agent/skills/devops/aws/META.yaml +84 -0
  380. package/.agent/skills/devops/aws/SKILL.md +711 -0
  381. package/.agent/skills/devops/ci-cd/ADVANCED.md +529 -0
  382. package/.agent/skills/devops/ci-cd/META.yaml +21 -0
  383. package/.agent/skills/devops/ci-cd/SKILL.md +821 -0
  384. package/.agent/skills/devops/docker/ADVANCED.md +495 -0
  385. package/.agent/skills/devops/docker/META.yaml +20 -0
  386. package/.agent/skills/devops/docker/SKILL.md +653 -0
  387. package/.agent/skills/devops/kubernetes/ADVANCED.md +252 -0
  388. package/.agent/skills/devops/kubernetes/META.yaml +15 -0
  389. package/.agent/skills/devops/kubernetes/SKILL.md +621 -0
  390. package/.agent/skills/frameworks/_index.yaml +13 -0
  391. package/.agent/skills/frameworks/angular/META.yaml +70 -0
  392. package/.agent/skills/frameworks/angular/SKILL.md +319 -0
  393. package/.agent/skills/frameworks/angular/data/core.yaml +209 -0
  394. package/.agent/skills/frameworks/angular/data/performance.yaml +210 -0
  395. package/.agent/skills/frameworks/angular/data/server.yaml +175 -0
  396. package/.agent/skills/frameworks/flutter/ADVANCED.md +491 -0
  397. package/.agent/skills/frameworks/flutter/META.yaml +64 -0
  398. package/.agent/skills/frameworks/flutter/SKILL.md +541 -0
  399. package/.agent/skills/frameworks/flutter/data/core.yaml +210 -0
  400. package/.agent/skills/frameworks/flutter/data/platform.yaml +246 -0
  401. package/.agent/skills/frameworks/flutter/data/state.yaml +250 -0
  402. package/.agent/skills/frameworks/nextjs/ADVANCED.md +225 -0
  403. package/.agent/skills/frameworks/nextjs/META.yaml +67 -0
  404. package/.agent/skills/frameworks/nextjs/SKILL.md +593 -0
  405. package/.agent/skills/frameworks/nextjs/data/caching.yaml +210 -0
  406. package/.agent/skills/frameworks/nextjs/data/core.yaml +255 -0
  407. package/.agent/skills/frameworks/nextjs/data/server.yaml +248 -0
  408. package/.agent/skills/frameworks/nuxt/META.yaml +57 -0
  409. package/.agent/skills/frameworks/nuxt/SKILL.md +283 -0
  410. package/.agent/skills/frameworks/nuxt/data/core.yaml +309 -0
  411. package/.agent/skills/frameworks/nuxt/data/server.yaml +271 -0
  412. package/.agent/skills/frameworks/react/ADVANCED.md +676 -0
  413. package/.agent/skills/frameworks/react/META.yaml +60 -0
  414. package/.agent/skills/frameworks/react/SKILL.md +263 -0
  415. package/.agent/skills/frameworks/react/data/core.yaml +278 -0
  416. package/.agent/skills/frameworks/react/data/server.yaml +283 -0
  417. package/.agent/skills/frameworks/react-native/META.yaml +59 -0
  418. package/.agent/skills/frameworks/react-native/SKILL.md +301 -0
  419. package/.agent/skills/frameworks/react-native/data/core.yaml +260 -0
  420. package/.agent/skills/frameworks/react-native/data/platform.yaml +287 -0
  421. package/.agent/skills/frameworks/svelte/META.yaml +62 -0
  422. package/.agent/skills/frameworks/svelte/SKILL.md +398 -0
  423. package/.agent/skills/frameworks/svelte/data/runes.yaml +239 -0
  424. package/.agent/skills/frameworks/svelte/data/sveltekit.yaml +244 -0
  425. package/.agent/skills/frameworks/vue/ADVANCED.md +214 -0
  426. package/.agent/skills/frameworks/vue/META.yaml +58 -0
  427. package/.agent/skills/frameworks/vue/SKILL.md +356 -0
  428. package/.agent/skills/frameworks/vue/data/advanced.yaml +253 -0
  429. package/.agent/skills/frameworks/vue/data/core.yaml +270 -0
  430. package/.agent/skills/index.json +143 -0
  431. package/.agent/skills/languages/_index.yaml +33 -0
  432. package/.agent/skills/languages/asm/ADVANCED.md +750 -0
  433. package/.agent/skills/languages/asm/META.yaml +84 -0
  434. package/.agent/skills/languages/asm/SKILL.md +753 -0
  435. package/.agent/skills/languages/asm/data/advanced.yaml +295 -0
  436. package/.agent/skills/languages/asm/data/core.yaml +280 -0
  437. package/.agent/skills/languages/c/ADVANCED.md +625 -0
  438. package/.agent/skills/languages/c/META.yaml +58 -0
  439. package/.agent/skills/languages/c/SKILL.md +748 -0
  440. package/.agent/skills/languages/c/data/core.yaml +179 -0
  441. package/.agent/skills/languages/c/data/embedded.yaml +251 -0
  442. package/.agent/skills/languages/c/data/memory.yaml +253 -0
  443. package/.agent/skills/languages/clojure/META.yaml +13 -0
  444. package/.agent/skills/languages/clojure/SKILL.md +130 -0
  445. package/.agent/skills/languages/clojure/data/core.yaml +326 -0
  446. package/.agent/skills/languages/cpp/ADVANCED.md +457 -0
  447. package/.agent/skills/languages/cpp/META.yaml +61 -0
  448. package/.agent/skills/languages/cpp/SKILL.md +936 -0
  449. package/.agent/skills/languages/cpp/data/core.yaml +304 -0
  450. package/.agent/skills/languages/cpp/data/memory.yaml +247 -0
  451. package/.agent/skills/languages/cpp/data/modern.yaml +334 -0
  452. package/.agent/skills/languages/crystal/META.yaml +30 -0
  453. package/.agent/skills/languages/crystal/SKILL.md +117 -0
  454. package/.agent/skills/languages/crystal/data/async.yaml +264 -0
  455. package/.agent/skills/languages/crystal/data/core.yaml +279 -0
  456. package/.agent/skills/languages/csharp/ADVANCED.md +592 -0
  457. package/.agent/skills/languages/csharp/META.yaml +23 -0
  458. package/.agent/skills/languages/csharp/SKILL.md +620 -0
  459. package/.agent/skills/languages/csharp/data/aspnet.yaml +448 -0
  460. package/.agent/skills/languages/csharp/data/core.yaml +362 -0
  461. package/.agent/skills/languages/elixir/META.yaml +18 -0
  462. package/.agent/skills/languages/elixir/SKILL.md +368 -0
  463. package/.agent/skills/languages/elixir/data/core.yaml +392 -0
  464. package/.agent/skills/languages/fsharp/META.yaml +14 -0
  465. package/.agent/skills/languages/fsharp/SKILL.md +113 -0
  466. package/.agent/skills/languages/fsharp/data/core.yaml +396 -0
  467. package/.agent/skills/languages/go/ADVANCED.md +260 -0
  468. package/.agent/skills/languages/go/META.yaml +64 -0
  469. package/.agent/skills/languages/go/SKILL.md +489 -0
  470. package/.agent/skills/languages/go/data/concurrency.yaml +424 -0
  471. package/.agent/skills/languages/go/data/core.yaml +399 -0
  472. package/.agent/skills/languages/go/data/http.yaml +507 -0
  473. package/.agent/skills/languages/haskell/META.yaml +18 -0
  474. package/.agent/skills/languages/haskell/SKILL.md +305 -0
  475. package/.agent/skills/languages/haskell/data/core.yaml +347 -0
  476. package/.agent/skills/languages/java/ADVANCED.md +450 -0
  477. package/.agent/skills/languages/java/META.yaml +89 -0
  478. package/.agent/skills/languages/java/SKILL.md +495 -0
  479. package/.agent/skills/languages/java/data/core.yaml +307 -0
  480. package/.agent/skills/languages/java/data/spring.yaml +437 -0
  481. package/.agent/skills/languages/javascript/ADVANCED.md +530 -0
  482. package/.agent/skills/languages/javascript/META.yaml +105 -0
  483. package/.agent/skills/languages/javascript/SKILL.md +455 -0
  484. package/.agent/skills/languages/javascript/data/async.yaml +290 -0
  485. package/.agent/skills/languages/javascript/data/core.yaml +380 -0
  486. package/.agent/skills/languages/javascript/data/modern.yaml +269 -0
  487. package/.agent/skills/languages/julia/META.yaml +13 -0
  488. package/.agent/skills/languages/julia/SKILL.md +174 -0
  489. package/.agent/skills/languages/julia/data/core.yaml +356 -0
  490. package/.agent/skills/languages/kotlin/ADVANCED.md +539 -0
  491. package/.agent/skills/languages/kotlin/META.yaml +24 -0
  492. package/.agent/skills/languages/kotlin/SKILL.md +525 -0
  493. package/.agent/skills/languages/kotlin/data/android.yaml +495 -0
  494. package/.agent/skills/languages/kotlin/data/core.yaml +366 -0
  495. package/.agent/skills/languages/lua/ADVANCED.md +257 -0
  496. package/.agent/skills/languages/lua/META.yaml +58 -0
  497. package/.agent/skills/languages/lua/SKILL.md +492 -0
  498. package/.agent/skills/languages/lua/data/core.yaml +264 -0
  499. package/.agent/skills/languages/lua/data/embedding.yaml +300 -0
  500. package/.agent/skills/languages/nim/META.yaml +30 -0
  501. package/.agent/skills/languages/nim/SKILL.md +116 -0
  502. package/.agent/skills/languages/nim/data/async.yaml +257 -0
  503. package/.agent/skills/languages/nim/data/core.yaml +241 -0
  504. package/.agent/skills/languages/ocaml/META.yaml +13 -0
  505. package/.agent/skills/languages/ocaml/SKILL.md +123 -0
  506. package/.agent/skills/languages/ocaml/data/core.yaml +357 -0
  507. package/.agent/skills/languages/perl/META.yaml +13 -0
  508. package/.agent/skills/languages/perl/SKILL.md +115 -0
  509. package/.agent/skills/languages/perl/data/core.yaml +360 -0
  510. package/.agent/skills/languages/php/ADVANCED.md +199 -0
  511. package/.agent/skills/languages/php/META.yaml +18 -0
  512. package/.agent/skills/languages/php/SKILL.md +488 -0
  513. package/.agent/skills/languages/php/data/core.yaml +392 -0
  514. package/.agent/skills/languages/php/data/laravel.yaml +525 -0
  515. package/.agent/skills/languages/python/ADVANCED.md +207 -0
  516. package/.agent/skills/languages/python/META.yaml +91 -0
  517. package/.agent/skills/languages/python/SKILL.md +495 -0
  518. package/.agent/skills/languages/python/data/async.yaml +265 -0
  519. package/.agent/skills/languages/python/data/core.yaml +259 -0
  520. package/.agent/skills/languages/python/data/fastapi.yaml +296 -0
  521. package/.agent/skills/languages/python/data/testing.yaml +226 -0
  522. package/.agent/skills/languages/r/META.yaml +16 -0
  523. package/.agent/skills/languages/r/SKILL.md +348 -0
  524. package/.agent/skills/languages/r/data/core.yaml +355 -0
  525. package/.agent/skills/languages/ruby/ADVANCED.md +381 -0
  526. package/.agent/skills/languages/ruby/META.yaml +19 -0
  527. package/.agent/skills/languages/ruby/SKILL.md +417 -0
  528. package/.agent/skills/languages/ruby/data/core.yaml +448 -0
  529. package/.agent/skills/languages/ruby/data/rails.yaml +415 -0
  530. package/.agent/skills/languages/rust/ADVANCED.md +212 -0
  531. package/.agent/skills/languages/rust/META.yaml +87 -0
  532. package/.agent/skills/languages/rust/SKILL.md +377 -0
  533. package/.agent/skills/languages/rust/data/async.yaml +404 -0
  534. package/.agent/skills/languages/rust/data/axum.yaml +450 -0
  535. package/.agent/skills/languages/rust/data/core.yaml +356 -0
  536. package/.agent/skills/languages/scala/META.yaml +17 -0
  537. package/.agent/skills/languages/scala/SKILL.md +202 -0
  538. package/.agent/skills/languages/scala/data/core.yaml +349 -0
  539. package/.agent/skills/languages/solidity/META.yaml +13 -0
  540. package/.agent/skills/languages/solidity/SKILL.md +188 -0
  541. package/.agent/skills/languages/solidity/data/core.yaml +528 -0
  542. package/.agent/skills/languages/swift/ADVANCED.md +231 -0
  543. package/.agent/skills/languages/swift/META.yaml +18 -0
  544. package/.agent/skills/languages/swift/SKILL.md +342 -0
  545. package/.agent/skills/languages/swift/data/core.yaml +489 -0
  546. package/.agent/skills/languages/typescript/ADVANCED.md +186 -0
  547. package/.agent/skills/languages/typescript/META.yaml +92 -0
  548. package/.agent/skills/languages/typescript/SKILL.md +306 -0
  549. package/.agent/skills/languages/typescript/data/async.yaml +397 -0
  550. package/.agent/skills/languages/typescript/data/core.yaml +283 -0
  551. package/.agent/skills/languages/typescript/data/validation.yaml +338 -0
  552. package/.agent/skills/languages/zig/META.yaml +52 -0
  553. package/.agent/skills/languages/zig/SKILL.md +354 -0
  554. package/.agent/skills/languages/zig/data/async.yaml +314 -0
  555. package/.agent/skills/languages/zig/data/core.yaml +302 -0
  556. package/.agent/templates/README.md +42 -0
  557. package/.agent/templates/audit-report.md +153 -0
  558. package/.agent/templates/chains/debug/step1-reproduce.md +83 -0
  559. package/.agent/templates/chains/debug/step2-isolate.md +73 -0
  560. package/.agent/templates/chains/debug/step3-analyze.md +86 -0
  561. package/.agent/templates/chains/debug/step4-fix.md +85 -0
  562. package/.agent/templates/chains/debug/step5-verify.md +122 -0
  563. package/.agent/templates/chains/implement/step1-plan.md +88 -0
  564. package/.agent/templates/chains/implement/step2-code.md +87 -0
  565. package/.agent/templates/chains/implement/step3-test.md +87 -0
  566. package/.agent/templates/chains/implement/step4-doc.md +118 -0
  567. package/.agent/templates/chains/review/step1-understand.md +74 -0
  568. package/.agent/templates/chains/review/step2-analyze.md +110 -0
  569. package/.agent/templates/chains/review/step3-fix.md +93 -0
  570. package/.agent/templates/chains/review/step4-summary.md +104 -0
  571. package/.agent/templates/debug-report.md +50 -0
  572. package/.agent/templates/deploy-plan.md +54 -0
  573. package/.agent/templates/doc-template.md +57 -0
  574. package/.agent/templates/findings.md +122 -0
  575. package/.agent/templates/index.yaml +239 -0
  576. package/.agent/templates/migrate-plan.md +50 -0
  577. package/.agent/templates/phase-template.md +72 -0
  578. package/.agent/templates/project-plan.md +87 -0
  579. package/.agent/templates/prompts/context_block.md +114 -0
  580. package/.agent/templates/prompts/guardrails_block.md +116 -0
  581. package/.agent/templates/prompts/persona_base.md +155 -0
  582. package/.agent/templates/prompts/tools_block.md +137 -0
  583. package/.agent/templates/reflection/critic.md +110 -0
  584. package/.agent/templates/reflection/error_analysis.md +149 -0
  585. package/.agent/templates/reflection/success_analysis.md +174 -0
  586. package/.agent/templates/task-list.md +144 -0
  587. package/.agent/templates/tasks/audit.yaml +146 -0
  588. package/.agent/templates/tasks/bug_fix.yaml +121 -0
  589. package/.agent/templates/tasks/code_implementation.yaml +110 -0
  590. package/.agent/templates/tasks/refactor.yaml +157 -0
  591. package/.agent/templates/test-report.md +52 -0
  592. package/.agent/workflows/ap.md +135 -0
  593. package/.agent/workflows/code.md +130 -0
  594. package/.agent/workflows/debug.md +230 -0
  595. package/.agent/workflows/deploy.md +192 -0
  596. package/.agent/workflows/dev.md +137 -0
  597. package/.agent/workflows/doc.md +124 -0
  598. package/.agent/workflows/env.md +98 -0
  599. package/.agent/workflows/fix.md +76 -0
  600. package/.agent/workflows/generate.md +28 -0
  601. package/.agent/workflows/git.md +97 -0
  602. package/.agent/workflows/help.md +75 -0
  603. package/.agent/workflows/init.md +148 -0
  604. package/.agent/workflows/migrate.md +135 -0
  605. package/.agent/workflows/monitor.md +133 -0
  606. package/.agent/workflows/onboard.md +144 -0
  607. package/.agent/workflows/orchestrate.md +117 -0
  608. package/.agent/workflows/perf.md +106 -0
  609. package/.agent/workflows/plan.md +106 -0
  610. package/.agent/workflows/recap.md +101 -0
  611. package/.agent/workflows/refactor.md +161 -0
  612. package/.agent/workflows/revert.md +99 -0
  613. package/.agent/workflows/review.md +106 -0
  614. package/.agent/workflows/scaffold.md +119 -0
  615. package/.agent/workflows/security.md +186 -0
  616. package/.agent/workflows/status.md +103 -0
  617. package/.agent/workflows/test.md +157 -0
  618. package/.agent/workflows/think.md +126 -0
  619. package/.agent/workflows/upgrade.md +109 -0
  620. package/.agent/workflows/visualize.md +295 -0
  621. package/.agent/workflows/workflow.md +196 -0
  622. package/README.md +64 -0
  623. package/dist/commands/add.d.ts +2 -0
  624. package/dist/commands/add.d.ts.map +1 -0
  625. package/dist/commands/add.js +70 -0
  626. package/dist/commands/add.js.map +1 -0
  627. package/dist/commands/config.d.ts +4 -0
  628. package/dist/commands/config.d.ts.map +1 -0
  629. package/dist/commands/config.js +152 -0
  630. package/dist/commands/config.js.map +1 -0
  631. package/dist/commands/doctor.d.ts +4 -0
  632. package/dist/commands/doctor.d.ts.map +1 -0
  633. package/dist/commands/doctor.js +98 -0
  634. package/dist/commands/doctor.js.map +1 -0
  635. package/dist/commands/hsa.d.ts +4 -0
  636. package/dist/commands/hsa.d.ts.map +1 -0
  637. package/dist/commands/hsa.js +194 -0
  638. package/dist/commands/hsa.js.map +1 -0
  639. package/dist/commands/info.d.ts +2 -0
  640. package/dist/commands/info.d.ts.map +1 -0
  641. package/dist/commands/info.js +149 -0
  642. package/dist/commands/info.js.map +1 -0
  643. package/dist/commands/init.d.ts +4 -0
  644. package/dist/commands/init.d.ts.map +1 -0
  645. package/dist/commands/init.js +262 -0
  646. package/dist/commands/init.js.map +1 -0
  647. package/dist/commands/install-core.d.ts +4 -0
  648. package/dist/commands/install-core.d.ts.map +1 -0
  649. package/dist/commands/install-core.js +85 -0
  650. package/dist/commands/install-core.js.map +1 -0
  651. package/dist/commands/install-helpers.d.ts +27 -0
  652. package/dist/commands/install-helpers.d.ts.map +1 -0
  653. package/dist/commands/install-helpers.js +125 -0
  654. package/dist/commands/install-helpers.js.map +1 -0
  655. package/dist/commands/install-hsa.d.ts +18 -0
  656. package/dist/commands/install-hsa.d.ts.map +1 -0
  657. package/dist/commands/install-hsa.js +61 -0
  658. package/dist/commands/install-hsa.js.map +1 -0
  659. package/dist/commands/install.d.ts +4 -0
  660. package/dist/commands/install.d.ts.map +1 -0
  661. package/dist/commands/install.js +310 -0
  662. package/dist/commands/install.js.map +1 -0
  663. package/dist/commands/list.d.ts +4 -0
  664. package/dist/commands/list.d.ts.map +1 -0
  665. package/dist/commands/list.js +91 -0
  666. package/dist/commands/list.js.map +1 -0
  667. package/dist/commands/mcp-registry.d.ts +48 -0
  668. package/dist/commands/mcp-registry.d.ts.map +1 -0
  669. package/dist/commands/mcp-registry.js +246 -0
  670. package/dist/commands/mcp-registry.js.map +1 -0
  671. package/dist/commands/mcp-writers.d.ts +20 -0
  672. package/dist/commands/mcp-writers.d.ts.map +1 -0
  673. package/dist/commands/mcp-writers.js +144 -0
  674. package/dist/commands/mcp-writers.js.map +1 -0
  675. package/dist/commands/mcp.d.ts +10 -0
  676. package/dist/commands/mcp.d.ts.map +1 -0
  677. package/dist/commands/mcp.js +319 -0
  678. package/dist/commands/mcp.js.map +1 -0
  679. package/dist/commands/update.d.ts +4 -0
  680. package/dist/commands/update.d.ts.map +1 -0
  681. package/dist/commands/update.js +79 -0
  682. package/dist/commands/update.js.map +1 -0
  683. package/dist/constants/cursor-globs.d.ts +17 -0
  684. package/dist/constants/cursor-globs.d.ts.map +1 -0
  685. package/dist/constants/cursor-globs.js +62 -0
  686. package/dist/constants/cursor-globs.js.map +1 -0
  687. package/dist/constants/ide-install-specs.d.ts +36 -0
  688. package/dist/constants/ide-install-specs.d.ts.map +1 -0
  689. package/dist/constants/ide-install-specs.js +870 -0
  690. package/dist/constants/ide-install-specs.js.map +1 -0
  691. package/dist/constants/ides.d.ts +105 -0
  692. package/dist/constants/ides.d.ts.map +1 -0
  693. package/dist/constants/ides.js +412 -0
  694. package/dist/constants/ides.js.map +1 -0
  695. package/dist/constants/skills.d.ts +40 -0
  696. package/dist/constants/skills.d.ts.map +1 -0
  697. package/dist/constants/skills.js +78 -0
  698. package/dist/constants/skills.js.map +1 -0
  699. package/dist/constants.d.ts +39 -0
  700. package/dist/constants.d.ts.map +1 -0
  701. package/dist/constants.js +75 -0
  702. package/dist/constants.js.map +1 -0
  703. package/dist/index.d.ts +8 -0
  704. package/dist/index.d.ts.map +1 -0
  705. package/dist/index.js +122 -0
  706. package/dist/index.js.map +1 -0
  707. package/dist/types/flags.d.ts +47 -0
  708. package/dist/types/flags.d.ts.map +1 -0
  709. package/dist/types/flags.js +4 -0
  710. package/dist/types/flags.js.map +1 -0
  711. package/dist/types/ide-install.d.ts +175 -0
  712. package/dist/types/ide-install.d.ts.map +1 -0
  713. package/dist/types/ide-install.js +29 -0
  714. package/dist/types/ide-install.js.map +1 -0
  715. package/dist/utils/copy-helpers.d.ts +60 -0
  716. package/dist/utils/copy-helpers.d.ts.map +1 -0
  717. package/dist/utils/copy-helpers.js +617 -0
  718. package/dist/utils/copy-helpers.js.map +1 -0
  719. package/dist/utils/index.d.ts +3 -0
  720. package/dist/utils/index.d.ts.map +1 -0
  721. package/dist/utils/index.js +5 -0
  722. package/dist/utils/index.js.map +1 -0
  723. package/dist/utils/validation.d.ts +29 -0
  724. package/dist/utils/validation.d.ts.map +1 -0
  725. package/dist/utils/validation.js +211 -0
  726. package/dist/utils/validation.js.map +1 -0
  727. package/package.json +64 -0
@@ -0,0 +1,147 @@
1
+ # =============================================================================
2
+ # PostgreSQL 17/18 Indexing Patterns (Feb 2026)
3
+ # =============================================================================
4
+ # Index optimization patterns including PG18 Index Skip Scan
5
+
6
+ metadata:
7
+ skill: sql
8
+ domain: indexing
9
+ version: "18.0.0"
10
+ updated: "2026-02-05"
11
+ patterns_count: 7
12
+
13
+ patterns:
14
+ - id: sql001
15
+ name: B-tree Index
16
+ category: index
17
+ version: "13+"
18
+ description: Default index type for equality and range queries
19
+ text: btree index primary key unique order sort range equality
20
+ example: |
21
+ -- Basic B-tree (default)
22
+ CREATE INDEX idx_users_email ON users (email);
23
+
24
+ -- Composite index (column order matters!)
25
+ CREATE INDEX idx_orders_date_status
26
+ ON orders (created_at DESC, status);
27
+
28
+ -- Works for: =, <, >, <=, >=, BETWEEN, IN
29
+ severity: HIGH
30
+ docs_url: https://www.postgresql.org/docs/current/indexes-types.html
31
+
32
+ - id: sql002
33
+ name: GIN Index
34
+ category: index
35
+ version: "9.1+"
36
+ description: Generalized Inverted Index for JSONB, arrays, and full-text search
37
+ text: gin index jsonb full text search array contains fts
38
+ example: |
39
+ -- JSONB GIN index (for containment @>, @@ operators)
40
+ CREATE INDEX idx_data_jsonb ON products USING GIN (metadata);
41
+
42
+ -- Array GIN index
43
+ CREATE INDEX idx_tags ON products USING GIN (tags);
44
+
45
+ -- Full-text search
46
+ CREATE INDEX idx_fts ON articles
47
+ USING GIN (to_tsvector('english', content));
48
+
49
+ -- Query:
50
+ SELECT * FROM products WHERE metadata @> '{"active": true}';
51
+ severity: HIGH
52
+ docs_url: https://www.postgresql.org/docs/current/gin.html
53
+
54
+ - id: sql003
55
+ name: Covering Index (INCLUDE)
56
+ category: index
57
+ version: "11+"
58
+ description: Include non-key columns to enable index-only scans
59
+ text: covering index include columns performance index only scan
60
+ example: |
61
+ -- Include columns that are frequently selected
62
+ CREATE INDEX idx_orders_status_covering
63
+ ON orders (status)
64
+ INCLUDE (total, customer_id, created_at);
65
+
66
+ -- This query can use index-only scan:
67
+ SELECT status, total, customer_id
68
+ FROM orders WHERE status = 'pending';
69
+ severity: HIGH
70
+ docs_url: https://www.postgresql.org/docs/current/indexes-index-only-scans.html
71
+
72
+ - id: sql004
73
+ name: Partial Index
74
+ category: index
75
+ version: "8.0+"
76
+ description: Index subset of rows with WHERE clause for smaller index size
77
+ text: partial index filter where condition subset active
78
+ example: |
79
+ -- Only index active rows (smaller, faster)
80
+ CREATE INDEX idx_active_users
81
+ ON users (email)
82
+ WHERE is_active = true;
83
+
84
+ -- Only index unprocessed orders
85
+ CREATE INDEX idx_pending_orders
86
+ ON orders (created_at)
87
+ WHERE status = 'pending';
88
+
89
+ -- Query must match WHERE clause to use index
90
+ severity: MEDIUM
91
+ docs_url: https://www.postgresql.org/docs/current/indexes-partial.html
92
+
93
+ - id: sql005
94
+ name: Index Skip Scan
95
+ category: index
96
+ version: "18+"
97
+ description: PG18 feature - use composite index even when leading column not in WHERE
98
+ text: index skip scan composite btree leading column pg18 postgresql 18
99
+ example: |
100
+ -- Composite index on (country, email)
101
+ CREATE INDEX idx_users_country_email ON users (country, email);
102
+
103
+ -- Before PG18: Sequential scan if country not in WHERE
104
+ -- PG18+: Index Skip Scan works!
105
+ SELECT * FROM users WHERE email = 'user@example.com';
106
+
107
+ -- Up to 40% faster than sequential scan
108
+ -- Enable: SET enable_indexskipscan = on; (default in PG18)
109
+ severity: CRITICAL
110
+ docs_url: https://www.postgresql.org/docs/18/indexes-skip-scan.html
111
+
112
+ - id: sql006
113
+ name: Parallel GIN Build
114
+ category: index
115
+ version: "18+"
116
+ description: PG18 parallel index build for GIN indexes (faster JSONB/FTS)
117
+ text: parallel gin index build jsonb full text search performance pg18
118
+ example: |
119
+ -- PG18: GIN indexes can be built in parallel
120
+ SET max_parallel_maintenance_workers = 4;
121
+
122
+ CREATE INDEX CONCURRENTLY idx_products_data
123
+ ON products USING GIN (data);
124
+
125
+ -- Significantly faster for large tables
126
+ severity: HIGH
127
+ docs_url: https://www.postgresql.org/docs/18/parallel-plans.html
128
+
129
+ - id: sql007
130
+ name: BRIN Index
131
+ category: index
132
+ version: "9.5+"
133
+ description: Block Range INdex for naturally ordered data (timestamps, sequences)
134
+ text: brin index block range timestamp sequential date time series
135
+ example: |
136
+ -- Perfect for append-only data (logs, events)
137
+ CREATE INDEX idx_logs_created
138
+ ON logs USING BRIN (created_at);
139
+
140
+ -- Very small index size but requires data correlation
141
+ -- Works best when data is inserted in order
142
+
143
+ -- Query:
144
+ SELECT * FROM logs
145
+ WHERE created_at >= '2026-01-01';
146
+ severity: MEDIUM
147
+ docs_url: https://www.postgresql.org/docs/current/brin.html
@@ -0,0 +1,156 @@
1
+ # =============================================================================
2
+ # PostgreSQL 17/18 JSON & Data Patterns (Feb 2026)
3
+ # =============================================================================
4
+ # JSON_TABLE, JSONB operations, and modern data types
5
+
6
+ metadata:
7
+ skill: sql
8
+ domain: json
9
+ version: "17.0.0"
10
+ updated: "2026-02-05"
11
+ patterns_count: 6
12
+
13
+ patterns:
14
+ - id: sql020
15
+ name: JSONB Operators
16
+ category: datatype
17
+ version: "9.4+"
18
+ description: Binary JSON with efficient querying via operators
19
+ text: jsonb json binary operators query @ contains exists index
20
+ example: |
21
+ -- Access values
22
+ SELECT data->'name' AS name, -- Returns JSONB
23
+ data->>'email' AS email -- Returns text
24
+ FROM users;
25
+
26
+ -- Nested access
27
+ SELECT data->'address'->>'city' FROM users;
28
+
29
+ -- Check key exists
30
+ SELECT * FROM users WHERE data ? 'premium';
31
+
32
+ -- Contains operator (uses GIN index)
33
+ SELECT * FROM users
34
+ WHERE data @> '{"role": "admin"}';
35
+ severity: HIGH
36
+ docs_url: https://www.postgresql.org/docs/current/functions-json.html
37
+
38
+ - id: sql021
39
+ name: JSON_TABLE (PG17)
40
+ category: function
41
+ version: "17+"
42
+ description: Convert JSON to table format for SQL analysis
43
+ text: json_table jsonb to table convert sql query standard
44
+ example: |
45
+ -- PG17: Convert JSON array to table
46
+ SELECT jt.*
47
+ FROM products,
48
+ JSON_TABLE(
49
+ products.data,
50
+ '$.items[*]'
51
+ COLUMNS (
52
+ id INTEGER PATH '$.id',
53
+ name TEXT PATH '$.name',
54
+ price DECIMAL(10,2) PATH '$.price'
55
+ )
56
+ ) AS jt;
57
+
58
+ -- Great for analytics on JSON data
59
+ severity: HIGH
60
+ docs_url: https://www.postgresql.org/docs/17/functions-json.html#FUNCTIONS-SQLJSON-TABLE
61
+
62
+ - id: sql022
63
+ name: JSON_EXISTS/QUERY/VALUE (PG17)
64
+ category: function
65
+ version: "17+"
66
+ description: SQL/JSON path functions for efficient querying
67
+ text: json_exists json_query json_value path standard sql json
68
+ example: |
69
+ -- Check if path exists
70
+ SELECT * FROM orders
71
+ WHERE JSON_EXISTS(data, '$.items[*] ? (@.qty > 10)');
72
+
73
+ -- Extract value
74
+ SELECT JSON_VALUE(data, '$.customer.name') FROM orders;
75
+
76
+ -- Extract JSON object
77
+ SELECT JSON_QUERY(data, '$.items[0]') FROM orders;
78
+ severity: HIGH
79
+ docs_url: https://www.postgresql.org/docs/17/functions-json.html#FUNCTIONS-SQLJSON-PATH
80
+
81
+ - id: sql023
82
+ name: UUIDv7 (PG18)
83
+ category: datatype
84
+ version: "18+"
85
+ description: Time-ordered UUIDs for better B-tree performance
86
+ text: uuidv7 uuid v7 timestamp ordered unique identifier pg18
87
+ example: |
88
+ -- PG18: Native UUIDv7 support
89
+ SELECT uuidv7();
90
+ -- Returns: 01902d1c-45e0-7000-8000-000000000001
91
+
92
+ -- Better than UUIDv4 for primary keys:
93
+ -- - Time-ordered = less B-tree fragmentation
94
+ -- - Better insert performance
95
+ -- - Contains timestamp for debugging
96
+
97
+ CREATE TABLE orders (
98
+ id uuid PRIMARY KEY DEFAULT uuidv7(),
99
+ created_at timestamp GENERATED ALWAYS AS (
100
+ uuid_extract_timestamp(id)
101
+ ) STORED
102
+ );
103
+ severity: HIGH
104
+ docs_url: https://www.postgresql.org/docs/18/functions-uuid.html
105
+
106
+ - id: sql024
107
+ name: JSONB Path Updates
108
+ category: function
109
+ version: "14+"
110
+ description: Update nested JSONB values efficiently
111
+ text: jsonb set path update nested modify
112
+ example: |
113
+ -- Update nested value
114
+ UPDATE users
115
+ SET data = jsonb_set(
116
+ data,
117
+ '{address,city}',
118
+ '"San Francisco"'
119
+ )
120
+ WHERE id = 1;
121
+
122
+ -- Remove key
123
+ UPDATE users
124
+ SET data = data - 'temporary_field';
125
+
126
+ -- Merge JSONB
127
+ UPDATE users
128
+ SET data = data || '{"verified": true}';
129
+ severity: MEDIUM
130
+ docs_url: https://www.postgresql.org/docs/current/functions-json.html#FUNCTIONS-JSON-PROCESSING
131
+
132
+ - id: sql025
133
+ name: Generated Columns
134
+ category: ddl
135
+ version: "12+"
136
+ description: Computed columns that update automatically
137
+ text: generated column computed stored virtual
138
+ example: |
139
+ -- Stored generated column (persisted)
140
+ CREATE TABLE products (
141
+ price_cents integer,
142
+ price_dollars numeric
143
+ GENERATED ALWAYS AS (price_cents / 100.0) STORED
144
+ );
145
+
146
+ -- Extract from JSONB
147
+ CREATE TABLE users (
148
+ data jsonb,
149
+ email text
150
+ GENERATED ALWAYS AS (data->>'email') STORED
151
+ );
152
+
153
+ -- Can be indexed!
154
+ CREATE INDEX idx_users_email ON users (email);
155
+ severity: MEDIUM
156
+ docs_url: https://www.postgresql.org/docs/current/ddl-generated-columns.html
@@ -0,0 +1,204 @@
1
+ # =============================================================================
2
+ # PostgreSQL 17/18 Performance Patterns (Feb 2026)
3
+ # =============================================================================
4
+ # Query optimization and performance monitoring
5
+
6
+ metadata:
7
+ skill: sql
8
+ domain: performance
9
+ version: "18.0.0"
10
+ updated: "2026-02-05"
11
+ patterns_count: 9
12
+
13
+ patterns:
14
+ - id: sql010
15
+ name: EXPLAIN ANALYZE
16
+ category: monitoring
17
+ version: "8.0+"
18
+ description: Analyze query execution plan with timing and buffers
19
+ text: explain analyze buffers query plan execution performance
20
+ example: |
21
+ EXPLAIN (ANALYZE, BUFFERS, TIMING, VERBOSE)
22
+ SELECT * FROM orders
23
+ WHERE customer_id = 123
24
+ AND created_at > '2026-01-01';
25
+
26
+ -- Look for:
27
+ -- - Sequential scans on large tables (bad)
28
+ -- - High buffer reads (caching issue)
29
+ -- - Actual vs Planned rows mismatch (stats outdated)
30
+ severity: HIGH
31
+ docs_url: https://www.postgresql.org/docs/current/sql-explain.html
32
+
33
+ - id: sql011
34
+ name: Async I/O (PG18)
35
+ category: performance
36
+ version: "18+"
37
+ description: PG18 asynchronous I/O for 3x faster sequential scans
38
+ text: aio async io performance sequential scan vacuum pg18
39
+ example: |
40
+ -- PG18: Async I/O enabled by default for read-heavy workloads
41
+ -- Up to 3x faster sequential scans
42
+ -- Up to 3x faster VACUUM operations
43
+
44
+ -- Check if AIO is being used:
45
+ SELECT * FROM pg_stat_io;
46
+
47
+ -- Good for: Data warehousing, analytics, bulk operations
48
+ severity: CRITICAL
49
+ docs_url: https://www.postgresql.org/docs/18/asynchronous-io.html
50
+
51
+ - id: sql012
52
+ name: pg_stat_statements
53
+ category: monitoring
54
+ version: "8.4+"
55
+ description: Track execution statistics of all SQL statements
56
+ text: pg_stat_statements monitoring slow query execution stats
57
+ example: |
58
+ -- Enable extension
59
+ CREATE EXTENSION IF NOT EXISTS pg_stat_statements;
60
+
61
+ -- Find slowest queries
62
+ SELECT query, calls, total_exec_time / calls AS avg_time
63
+ FROM pg_stat_statements
64
+ ORDER BY total_exec_time DESC
65
+ LIMIT 10;
66
+
67
+ -- Find most frequent queries
68
+ SELECT query, calls FROM pg_stat_statements
69
+ ORDER BY calls DESC LIMIT 10;
70
+ severity: HIGH
71
+ docs_url: https://www.postgresql.org/docs/current/pgstatstatements.html
72
+
73
+ - id: sql013
74
+ name: pg_stat_io (PG16+)
75
+ category: monitoring
76
+ version: "16+"
77
+ description: I/O statistics for understanding disk/buffer activity
78
+ text: pg_stat_io statistics monitoring reads writes buffer io
79
+ example: |
80
+ -- View I/O statistics by backend type
81
+ SELECT backend_type, reads, writes, hits
82
+ FROM pg_stat_io
83
+ WHERE backend_type = 'client backend';
84
+
85
+ -- Calculate cache hit ratio
86
+ SELECT
87
+ sum(hits) / nullif(sum(hits) + sum(reads), 0)
88
+ AS cache_hit_ratio
89
+ FROM pg_stat_io;
90
+ severity: MEDIUM
91
+ docs_url: https://www.postgresql.org/docs/current/monitoring-stats.html#MONITORING-PG-STAT-IO
92
+
93
+ - id: sql014
94
+ name: Connection Pooling
95
+ category: performance
96
+ version: "all"
97
+ description: Use connection pooler (PgBouncer) for high concurrency
98
+ text: connection pool pgbouncer connectionlimit performance
99
+ example: |
100
+ -- Check current connections
101
+ SELECT count(*) FROM pg_stat_activity;
102
+
103
+ -- PostgreSQL max_connections (default 100)
104
+ SHOW max_connections;
105
+
106
+ -- PgBouncer config (pgbouncer.ini)
107
+ [databases]
108
+ mydb = host=localhost dbname=mydb
109
+
110
+ [pgbouncer]
111
+ pool_mode = transaction
112
+ max_client_conn = 1000
113
+ default_pool_size = 20
114
+ severity: HIGH
115
+ docs_url: https://www.pgbouncer.org/
116
+
117
+ - id: sql015
118
+ name: VACUUM and ANALYZE
119
+ category: maintenance
120
+ version: "8.0+"
121
+ description: Reclaim storage and update query planner statistics
122
+ text: vacuum analyze maintenance autovacuum statistics bloat
123
+ example: |
124
+ -- Manual vacuum
125
+ VACUUM (VERBOSE) orders;
126
+
127
+ -- Update statistics
128
+ ANALYZE orders;
129
+
130
+ -- Check autovacuum status
131
+ SELECT schemaname, relname,
132
+ last_vacuum, last_autovacuum,
133
+ n_dead_tup
134
+ FROM pg_stat_user_tables
135
+ WHERE n_dead_tup > 10000;
136
+
137
+ -- PG18: pg_upgrade preserves optimizer stats!
138
+ severity: HIGH
139
+ docs_url: https://www.postgresql.org/docs/current/routine-vacuuming.html
140
+
141
+ - id: sql016
142
+ name: Parallel Query
143
+ category: performance
144
+ version: "9.6+"
145
+ description: Parallelize sequential scans, aggregates, and joins
146
+ text: parallel query workers sequential scan aggregate
147
+ example: |
148
+ -- Check parallel settings
149
+ SHOW max_parallel_workers_per_gather;
150
+
151
+ -- Enable more parallelism
152
+ SET max_parallel_workers_per_gather = 4;
153
+
154
+ -- Parallel-eligible query
155
+ EXPLAIN SELECT count(*) FROM large_table
156
+ WHERE status = 'active';
157
+
158
+ -- Look for "Gather" node in plan
159
+ severity: MEDIUM
160
+ docs_url: https://www.postgresql.org/docs/current/parallel-query.html
161
+
162
+ - id: sql017
163
+ name: pg_aios View (PG18)
164
+ category: monitoring
165
+ version: "18+"
166
+ description: Monitor async I/O operations with real-time statistics
167
+ text: pg_aios async io monitoring statistics view aio operations
168
+ example: |
169
+ -- View active async I/O operations
170
+ SELECT * FROM pg_aios;
171
+
172
+ -- Monitor AIO by backend
173
+ SELECT
174
+ pid,
175
+ state,
176
+ io_type,
177
+ blocks_requested,
178
+ blocks_completed
179
+ FROM pg_aios
180
+ WHERE state = 'in_progress';
181
+ severity: HIGH
182
+ docs_url: https://www.postgresql.org/docs/18/asynchronous-io.html
183
+
184
+ - id: sql018
185
+ name: io_uring (PG18 Linux)
186
+ category: performance
187
+ version: "18+"
188
+ description: Linux io_uring backend for maximum async I/O performance
189
+ text: io_uring linux kernel async io performance ring buffer
190
+ example: |
191
+ -- PG18 supports two AIO backends:
192
+ -- 1. io_uring (Linux 5.1+) - fastest, uses kernel ring buffers
193
+ -- 2. worker - cross-platform, uses worker processes
194
+
195
+ -- Check AIO configuration
196
+ SHOW io_method;
197
+ -- Default: io_uring on Linux, worker on other platforms
198
+
199
+ -- Benefits:
200
+ -- - 2-3x faster sequential scans
201
+ -- - 2-3x faster bitmap heap scans
202
+ -- - No application code changes needed
203
+ severity: CRITICAL
204
+ docs_url: https://www.postgresql.org/docs/18/asynchronous-io.html
@@ -0,0 +1,150 @@
1
+ # =============================================================================
2
+ # PostgreSQL Query Patterns (Feb 2026)
3
+ # =============================================================================
4
+ # Common query patterns and advanced SQL features
5
+
6
+ metadata:
7
+ skill: sql
8
+ domain: queries
9
+ version: "17.0.0"
10
+ updated: "2026-02-05"
11
+ patterns_count: 6
12
+
13
+ patterns:
14
+ - id: sql030
15
+ name: Common Table Expression (CTE)
16
+ category: query
17
+ version: "8.4+"
18
+ description: WITH clause for readable, reusable query parts
19
+ text: cte common table expression with recursive query readable
20
+ example: |
21
+ WITH active_customers AS (
22
+ SELECT id, name, email
23
+ FROM customers
24
+ WHERE is_active = true
25
+ ),
26
+ recent_orders AS (
27
+ SELECT customer_id, count(*) as order_count
28
+ FROM orders
29
+ WHERE created_at > now() - interval '30 days'
30
+ GROUP BY customer_id
31
+ )
32
+ SELECT c.name, r.order_count
33
+ FROM active_customers c
34
+ JOIN recent_orders r ON c.id = r.customer_id;
35
+
36
+ -- PG17: Improved CTE planning and materialization
37
+ severity: HIGH
38
+ docs_url: https://www.postgresql.org/docs/current/queries-with.html
39
+
40
+ - id: sql031
41
+ name: Window Functions
42
+ category: query
43
+ version: "8.4+"
44
+ description: Perform calculations across related rows
45
+ text: window function rank row_number partition over running total
46
+ example: |
47
+ -- Row number by category
48
+ SELECT
49
+ product_name,
50
+ category,
51
+ price,
52
+ ROW_NUMBER() OVER (
53
+ PARTITION BY category
54
+ ORDER BY price DESC
55
+ ) as rank
56
+ FROM products;
57
+
58
+ -- Running total
59
+ SELECT
60
+ date,
61
+ amount,
62
+ SUM(amount) OVER (ORDER BY date) as running_total
63
+ FROM transactions;
64
+ severity: HIGH
65
+ docs_url: https://www.postgresql.org/docs/current/tutorial-window.html
66
+
67
+ - id: sql032
68
+ name: UPSERT (ON CONFLICT)
69
+ category: dml
70
+ version: "9.5+"
71
+ description: Insert or update on conflict
72
+ text: upsert insert on conflict update nothing do merge
73
+ example: |
74
+ -- Update on conflict
75
+ INSERT INTO products (sku, name, price)
76
+ VALUES ('ABC123', 'Widget', 29.99)
77
+ ON CONFLICT (sku)
78
+ DO UPDATE SET
79
+ name = EXCLUDED.name,
80
+ price = EXCLUDED.price,
81
+ updated_at = now();
82
+
83
+ -- Insert or ignore
84
+ INSERT INTO logs (event_id, message)
85
+ VALUES ('evt123', 'User login')
86
+ ON CONFLICT (event_id) DO NOTHING;
87
+ severity: HIGH
88
+ docs_url: https://www.postgresql.org/docs/current/sql-insert.html#SQL-ON-CONFLICT
89
+
90
+ - id: sql033
91
+ name: LATERAL Join
92
+ category: query
93
+ version: "9.3+"
94
+ description: Subquery that references preceding FROM items
95
+ text: lateral join subquery correlated top n per group
96
+ example: |
97
+ -- Top 3 orders per customer
98
+ SELECT c.name, o.*
99
+ FROM customers c
100
+ CROSS JOIN LATERAL (
101
+ SELECT * FROM orders
102
+ WHERE customer_id = c.id
103
+ ORDER BY created_at DESC
104
+ LIMIT 3
105
+ ) o;
106
+
107
+ -- More efficient than correlated subqueries
108
+ severity: MEDIUM
109
+ docs_url: https://www.postgresql.org/docs/current/queries-table-expressions.html#QUERIES-LATERAL
110
+
111
+ - id: sql034
112
+ name: Transaction & Savepoints
113
+ category: safety
114
+ version: "8.0+"
115
+ description: ACID transactions with partial rollback support
116
+ text: transaction begin commit rollback savepoint isolation
117
+ example: |
118
+ BEGIN;
119
+
120
+ INSERT INTO orders (id, total) VALUES (1, 100.00);
121
+ SAVEPOINT order_created;
122
+
123
+ -- Try to update inventory
124
+ UPDATE products SET stock = stock - 1 WHERE id = 42;
125
+
126
+ -- If error, rollback to savepoint
127
+ ROLLBACK TO order_created;
128
+
129
+ -- Or commit all
130
+ COMMIT;
131
+ severity: HIGH
132
+ docs_url: https://www.postgresql.org/docs/current/sql-savepoint.html
133
+
134
+ - id: sql035
135
+ name: Parallel COPY (PG18)
136
+ category: bulk
137
+ version: "18+"
138
+ description: PG18 parallel COPY FROM for faster bulk imports
139
+ text: parallel copy from import bulk load csv pg18
140
+ example: |
141
+ -- PG18: Parallel COPY FROM
142
+ SET max_parallel_workers = 4;
143
+
144
+ COPY large_table FROM '/data/input.csv'
145
+ WITH (FORMAT csv, HEADER true);
146
+
147
+ -- Significant speedup for large imports
148
+ -- Works with CSV, binary formats
149
+ severity: HIGH
150
+ docs_url: https://www.postgresql.org/docs/18/sql-copy.html