heraspec 0.1.13 → 0.1.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (287) hide show
  1. package/LICENSE +209 -22
  2. package/README.md +205 -137
  3. package/bin/heraspec.js +4950 -1161
  4. package/bin/heraspec.js.map +4 -4
  5. package/dist/core/templates/skills/CHANGELOG.md +117 -117
  6. package/dist/core/templates/skills/README-template.md +58 -58
  7. package/dist/core/templates/skills/README.md +35 -32
  8. package/dist/core/templates/skills/campaign-plan/skill.md +76 -0
  9. package/dist/core/templates/skills/campaign-plan/skill.vi.md +76 -0
  10. package/dist/core/templates/skills/campaign-plan-skill.md +76 -0
  11. package/dist/core/templates/skills/campaign-plan-skill.vi.md +76 -0
  12. package/dist/core/templates/skills/code-review/skill.md +70 -0
  13. package/dist/core/templates/skills/code-review/skill.vi.md +70 -0
  14. package/dist/core/templates/skills/code-review-skill.md +70 -0
  15. package/dist/core/templates/skills/code-review-skill.vi.md +70 -0
  16. package/dist/core/templates/skills/content-creation/skill.md +69 -0
  17. package/dist/core/templates/skills/content-creation/skill.vi.md +69 -0
  18. package/dist/core/templates/skills/content-creation-skill.md +69 -0
  19. package/dist/core/templates/skills/content-creation-skill.vi.md +69 -0
  20. package/dist/core/templates/skills/content-optimization/skill.md +104 -0
  21. package/dist/core/templates/skills/content-optimization-skill.md +104 -104
  22. package/dist/core/templates/skills/data/design-systems.csv +54 -0
  23. package/dist/core/templates/skills/data/pages-proposed.csv +21 -21
  24. package/dist/core/templates/skills/data/pages.csv +9 -9
  25. package/dist/core/templates/skills/data/typography.csv +57 -57
  26. package/dist/core/templates/skills/debug/skill.md +69 -0
  27. package/dist/core/templates/skills/debug/skill.vi.md +69 -0
  28. package/dist/core/templates/skills/debug-skill.md +69 -0
  29. package/dist/core/templates/skills/debug-skill.vi.md +69 -0
  30. package/dist/core/templates/skills/deploy-documentation/skill.md +408 -0
  31. package/dist/core/templates/skills/deploy-documentation-skill.md +408 -0
  32. package/dist/core/templates/skills/design-system/knowledge/design-systems/airbnb/DESIGN.md +246 -0
  33. package/dist/core/templates/skills/design-system/knowledge/design-systems/airtable/DESIGN.md +89 -0
  34. package/dist/core/templates/skills/design-system/knowledge/design-systems/apple/DESIGN.md +313 -0
  35. package/dist/core/templates/skills/design-system/knowledge/design-systems/bmw/DESIGN.md +180 -0
  36. package/dist/core/templates/skills/design-system/knowledge/design-systems/cal/DESIGN.md +259 -0
  37. package/dist/core/templates/skills/design-system/knowledge/design-systems/claude/DESIGN.md +312 -0
  38. package/dist/core/templates/skills/design-system/knowledge/design-systems/clay/DESIGN.md +304 -0
  39. package/dist/core/templates/skills/design-system/knowledge/design-systems/clickhouse/DESIGN.md +281 -0
  40. package/dist/core/templates/skills/design-system/knowledge/design-systems/cohere/DESIGN.md +266 -0
  41. package/dist/core/templates/skills/design-system/knowledge/design-systems/coinbase/DESIGN.md +129 -0
  42. package/dist/core/templates/skills/design-system/knowledge/design-systems/composio/DESIGN.md +307 -0
  43. package/dist/core/templates/skills/design-system/knowledge/design-systems/cursor/DESIGN.md +309 -0
  44. package/dist/core/templates/skills/design-system/knowledge/design-systems/elevenlabs/DESIGN.md +265 -0
  45. package/dist/core/templates/skills/design-system/knowledge/design-systems/expo/DESIGN.md +281 -0
  46. package/dist/core/templates/skills/design-system/knowledge/design-systems/figma/DESIGN.md +220 -0
  47. package/dist/core/templates/skills/design-system/knowledge/design-systems/framer/DESIGN.md +246 -0
  48. package/dist/core/templates/skills/design-system/knowledge/design-systems/hashicorp/DESIGN.md +278 -0
  49. package/dist/core/templates/skills/design-system/knowledge/design-systems/ibm/DESIGN.md +332 -0
  50. package/dist/core/templates/skills/design-system/knowledge/design-systems/index.json +72 -0
  51. package/dist/core/templates/skills/design-system/knowledge/design-systems/intercom/DESIGN.md +146 -0
  52. package/dist/core/templates/skills/design-system/knowledge/design-systems/kraken/DESIGN.md +125 -0
  53. package/dist/core/templates/skills/design-system/knowledge/design-systems/linear.app/DESIGN.md +367 -0
  54. package/dist/core/templates/skills/design-system/knowledge/design-systems/lovable/DESIGN.md +298 -0
  55. package/dist/core/templates/skills/design-system/knowledge/design-systems/minimax/DESIGN.md +257 -0
  56. package/dist/core/templates/skills/design-system/knowledge/design-systems/mintlify/DESIGN.md +326 -0
  57. package/dist/core/templates/skills/design-system/knowledge/design-systems/miro/DESIGN.md +108 -0
  58. package/dist/core/templates/skills/design-system/knowledge/design-systems/mistral.ai/DESIGN.md +261 -0
  59. package/dist/core/templates/skills/design-system/knowledge/design-systems/mongodb/DESIGN.md +266 -0
  60. package/dist/core/templates/skills/design-system/knowledge/design-systems/notion/DESIGN.md +309 -0
  61. package/dist/core/templates/skills/design-system/knowledge/design-systems/nvidia/DESIGN.md +293 -0
  62. package/dist/core/templates/skills/design-system/knowledge/design-systems/ollama/DESIGN.md +267 -0
  63. package/dist/core/templates/skills/design-system/knowledge/design-systems/opencode.ai/DESIGN.md +281 -0
  64. package/dist/core/templates/skills/design-system/knowledge/design-systems/pinterest/DESIGN.md +230 -0
  65. package/dist/core/templates/skills/design-system/knowledge/design-systems/posthog/DESIGN.md +256 -0
  66. package/dist/core/templates/skills/design-system/knowledge/design-systems/raycast/DESIGN.md +268 -0
  67. package/dist/core/templates/skills/design-system/knowledge/design-systems/replicate/DESIGN.md +261 -0
  68. package/dist/core/templates/skills/design-system/knowledge/design-systems/resend/DESIGN.md +303 -0
  69. package/dist/core/templates/skills/design-system/knowledge/design-systems/revolut/DESIGN.md +185 -0
  70. package/dist/core/templates/skills/design-system/knowledge/design-systems/runwayml/DESIGN.md +244 -0
  71. package/dist/core/templates/skills/design-system/knowledge/design-systems/sanity/DESIGN.md +357 -0
  72. package/dist/core/templates/skills/design-system/knowledge/design-systems/sentry/DESIGN.md +262 -0
  73. package/dist/core/templates/skills/design-system/knowledge/design-systems/spacex/DESIGN.md +194 -0
  74. package/dist/core/templates/skills/design-system/knowledge/design-systems/spotify/DESIGN.md +246 -0
  75. package/dist/core/templates/skills/design-system/knowledge/design-systems/stripe/DESIGN.md +322 -0
  76. package/dist/core/templates/skills/design-system/knowledge/design-systems/supabase/DESIGN.md +255 -0
  77. package/dist/core/templates/skills/design-system/knowledge/design-systems/superhuman/DESIGN.md +252 -0
  78. package/dist/core/templates/skills/design-system/knowledge/design-systems/together.ai/DESIGN.md +263 -0
  79. package/dist/core/templates/skills/design-system/knowledge/design-systems/uber/DESIGN.md +295 -0
  80. package/dist/core/templates/skills/design-system/knowledge/design-systems/vercel/DESIGN.md +310 -0
  81. package/dist/core/templates/skills/design-system/knowledge/design-systems/voltagent/DESIGN.md +323 -0
  82. package/dist/core/templates/skills/design-system/knowledge/design-systems/warp/DESIGN.md +253 -0
  83. package/dist/core/templates/skills/design-system/knowledge/design-systems/webflow/DESIGN.md +92 -0
  84. package/dist/core/templates/skills/design-system/knowledge/design-systems/wise/DESIGN.md +173 -0
  85. package/dist/core/templates/skills/design-system/knowledge/design-systems/x.ai/DESIGN.md +257 -0
  86. package/dist/core/templates/skills/design-system/knowledge/design-systems/zapier/DESIGN.md +328 -0
  87. package/dist/core/templates/skills/design-system/skill.md +176 -0
  88. package/dist/core/templates/skills/design-system-skill.md +176 -0
  89. package/dist/core/templates/skills/documents/skill.md +104 -0
  90. package/dist/core/templates/skills/documents/templates/documentation-landing-page.html +63 -63
  91. package/dist/core/templates/skills/documents/templates/documentation.html +49 -49
  92. package/dist/core/templates/skills/documents/templates/landing-script.js +38 -38
  93. package/dist/core/templates/skills/documents/templates/landing-style.css +158 -158
  94. package/dist/core/templates/skills/documents/templates/script.js +56 -56
  95. package/dist/core/templates/skills/documents/templates/style.css +155 -155
  96. package/dist/core/templates/skills/documents/templates/technical-doc-template.md +16 -16
  97. package/dist/core/templates/skills/documents/templates/user-guide-template.md +16 -16
  98. package/dist/core/templates/skills/documents-skill.md +104 -104
  99. package/dist/core/templates/skills/e2e-test/skill.md +119 -0
  100. package/dist/core/templates/skills/e2e-test-skill.md +119 -119
  101. package/dist/core/templates/skills/email-sequence/skill.md +68 -0
  102. package/dist/core/templates/skills/email-sequence/skill.vi.md +68 -0
  103. package/dist/core/templates/skills/email-sequence-skill.md +68 -0
  104. package/dist/core/templates/skills/email-sequence-skill.vi.md +68 -0
  105. package/dist/core/templates/skills/git-embed/skill.md +57 -0
  106. package/dist/core/templates/skills/git-embed-skill.md +57 -0
  107. package/dist/core/templates/skills/integration-test/skill.md +118 -0
  108. package/dist/core/templates/skills/integration-test-skill.md +118 -118
  109. package/dist/core/templates/skills/knowledge/README.md +63 -0
  110. package/dist/core/templates/skills/knowledge/design-systems/airbnb/DESIGN.md +246 -0
  111. package/dist/core/templates/skills/knowledge/design-systems/airtable/DESIGN.md +89 -0
  112. package/dist/core/templates/skills/knowledge/design-systems/apple/DESIGN.md +313 -0
  113. package/dist/core/templates/skills/knowledge/design-systems/bmw/DESIGN.md +180 -0
  114. package/dist/core/templates/skills/knowledge/design-systems/cal/DESIGN.md +259 -0
  115. package/dist/core/templates/skills/knowledge/design-systems/claude/DESIGN.md +312 -0
  116. package/dist/core/templates/skills/knowledge/design-systems/clay/DESIGN.md +304 -0
  117. package/dist/core/templates/skills/knowledge/design-systems/clickhouse/DESIGN.md +281 -0
  118. package/dist/core/templates/skills/knowledge/design-systems/cohere/DESIGN.md +266 -0
  119. package/dist/core/templates/skills/knowledge/design-systems/coinbase/DESIGN.md +129 -0
  120. package/dist/core/templates/skills/knowledge/design-systems/composio/DESIGN.md +307 -0
  121. package/dist/core/templates/skills/knowledge/design-systems/cursor/DESIGN.md +309 -0
  122. package/dist/core/templates/skills/knowledge/design-systems/elevenlabs/DESIGN.md +265 -0
  123. package/dist/core/templates/skills/knowledge/design-systems/expo/DESIGN.md +281 -0
  124. package/dist/core/templates/skills/knowledge/design-systems/figma/DESIGN.md +220 -0
  125. package/dist/core/templates/skills/knowledge/design-systems/framer/DESIGN.md +246 -0
  126. package/dist/core/templates/skills/knowledge/design-systems/hashicorp/DESIGN.md +278 -0
  127. package/dist/core/templates/skills/knowledge/design-systems/ibm/DESIGN.md +332 -0
  128. package/dist/core/templates/skills/knowledge/design-systems/index.json +72 -0
  129. package/dist/core/templates/skills/knowledge/design-systems/intercom/DESIGN.md +146 -0
  130. package/dist/core/templates/skills/knowledge/design-systems/kraken/DESIGN.md +125 -0
  131. package/dist/core/templates/skills/knowledge/design-systems/linear.app/DESIGN.md +367 -0
  132. package/dist/core/templates/skills/knowledge/design-systems/lovable/DESIGN.md +298 -0
  133. package/dist/core/templates/skills/knowledge/design-systems/minimax/DESIGN.md +257 -0
  134. package/dist/core/templates/skills/knowledge/design-systems/mintlify/DESIGN.md +326 -0
  135. package/dist/core/templates/skills/knowledge/design-systems/miro/DESIGN.md +108 -0
  136. package/dist/core/templates/skills/knowledge/design-systems/mistral.ai/DESIGN.md +261 -0
  137. package/dist/core/templates/skills/knowledge/design-systems/mongodb/DESIGN.md +266 -0
  138. package/dist/core/templates/skills/knowledge/design-systems/notion/DESIGN.md +309 -0
  139. package/dist/core/templates/skills/knowledge/design-systems/nvidia/DESIGN.md +293 -0
  140. package/dist/core/templates/skills/knowledge/design-systems/ollama/DESIGN.md +267 -0
  141. package/dist/core/templates/skills/knowledge/design-systems/opencode.ai/DESIGN.md +281 -0
  142. package/dist/core/templates/skills/knowledge/design-systems/pinterest/DESIGN.md +230 -0
  143. package/dist/core/templates/skills/knowledge/design-systems/posthog/DESIGN.md +256 -0
  144. package/dist/core/templates/skills/knowledge/design-systems/raycast/DESIGN.md +268 -0
  145. package/dist/core/templates/skills/knowledge/design-systems/replicate/DESIGN.md +261 -0
  146. package/dist/core/templates/skills/knowledge/design-systems/resend/DESIGN.md +303 -0
  147. package/dist/core/templates/skills/knowledge/design-systems/revolut/DESIGN.md +185 -0
  148. package/dist/core/templates/skills/knowledge/design-systems/runwayml/DESIGN.md +244 -0
  149. package/dist/core/templates/skills/knowledge/design-systems/sanity/DESIGN.md +357 -0
  150. package/dist/core/templates/skills/knowledge/design-systems/sentry/DESIGN.md +262 -0
  151. package/dist/core/templates/skills/knowledge/design-systems/spacex/DESIGN.md +194 -0
  152. package/dist/core/templates/skills/knowledge/design-systems/spotify/DESIGN.md +246 -0
  153. package/dist/core/templates/skills/knowledge/design-systems/stripe/DESIGN.md +322 -0
  154. package/dist/core/templates/skills/knowledge/design-systems/supabase/DESIGN.md +255 -0
  155. package/dist/core/templates/skills/knowledge/design-systems/superhuman/DESIGN.md +252 -0
  156. package/dist/core/templates/skills/knowledge/design-systems/together.ai/DESIGN.md +263 -0
  157. package/dist/core/templates/skills/knowledge/design-systems/uber/DESIGN.md +295 -0
  158. package/dist/core/templates/skills/knowledge/design-systems/vercel/DESIGN.md +310 -0
  159. package/dist/core/templates/skills/knowledge/design-systems/voltagent/DESIGN.md +323 -0
  160. package/dist/core/templates/skills/knowledge/design-systems/warp/DESIGN.md +253 -0
  161. package/dist/core/templates/skills/knowledge/design-systems/webflow/DESIGN.md +92 -0
  162. package/dist/core/templates/skills/knowledge/design-systems/wise/DESIGN.md +173 -0
  163. package/dist/core/templates/skills/knowledge/design-systems/x.ai/DESIGN.md +257 -0
  164. package/dist/core/templates/skills/knowledge/design-systems/zapier/DESIGN.md +328 -0
  165. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/profile.json +27 -0
  166. package/dist/core/templates/skills/knowledge/frameworks/php/codeigniter/rise-cms/structure.md +137 -0
  167. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/profile.json +39 -0
  168. package/dist/core/templates/skills/knowledge/frameworks/php/laravel/botble/structure.md +208 -0
  169. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/profile.json +51 -0
  170. package/dist/core/templates/skills/knowledge/frameworks/php/wordpress/core/structure.md +369 -0
  171. package/dist/core/templates/skills/knowledge/index.json +65 -0
  172. package/dist/core/templates/skills/module-codebase-skill.md +110 -110
  173. package/dist/core/templates/skills/perfex-module/module-codebase/skill.md +110 -0
  174. package/dist/core/templates/skills/plugin-directory-skill.md +396 -396
  175. package/dist/core/templates/skills/project-memory/skill.md +222 -0
  176. package/dist/core/templates/skills/project-memory/skill.vi.md +223 -0
  177. package/dist/core/templates/skills/project-memory-skill.md +222 -0
  178. package/dist/core/templates/skills/project-memory-skill.vi.md +223 -0
  179. package/dist/core/templates/skills/scripts/CODE_EXPLANATION.md +394 -394
  180. package/dist/core/templates/skills/scripts/SEARCH_ALGORITHMS_COMPARISON.md +421 -421
  181. package/dist/core/templates/skills/scripts/SEARCH_MODES_GUIDE.md +238 -238
  182. package/dist/core/templates/skills/scripts/__pycache__/core.cpython-311.pyc +0 -0
  183. package/dist/core/templates/skills/scripts/core.py +391 -385
  184. package/dist/core/templates/skills/scripts/search.py +1 -1
  185. package/dist/core/templates/skills/seo-audit/skill.md +75 -0
  186. package/dist/core/templates/skills/seo-audit/skill.vi.md +75 -0
  187. package/dist/core/templates/skills/seo-audit-skill.md +75 -0
  188. package/dist/core/templates/skills/seo-audit-skill.vi.md +75 -0
  189. package/dist/core/templates/skills/smart-explore/skill.md +141 -0
  190. package/dist/core/templates/skills/smart-explore-skill.md +141 -0
  191. package/dist/core/templates/skills/sourcecode-analyzer/skill.md +210 -0
  192. package/dist/core/templates/skills/sourcecode-analyzer/skill.vi.md +210 -0
  193. package/dist/core/templates/skills/sourcecode-analyzer-skill.md +210 -0
  194. package/dist/core/templates/skills/sourcecode-analyzer-skill.vi.md +210 -0
  195. package/dist/core/templates/skills/spec-writer/skill.md +61 -0
  196. package/dist/core/templates/skills/spec-writer/skill.vi.md +61 -0
  197. package/dist/core/templates/skills/spec-writer-skill.md +61 -0
  198. package/dist/core/templates/skills/spec-writer-skill.vi.md +61 -0
  199. package/dist/core/templates/skills/sql-queries/skill.md +67 -0
  200. package/dist/core/templates/skills/sql-queries/skill.vi.md +67 -0
  201. package/dist/core/templates/skills/sql-queries-skill.md +67 -0
  202. package/dist/core/templates/skills/sql-queries-skill.vi.md +67 -0
  203. package/dist/core/templates/skills/suggestion/skill.md +118 -0
  204. package/dist/core/templates/skills/suggestion-skill.md +118 -118
  205. package/dist/core/templates/skills/system-design/skill.md +70 -0
  206. package/dist/core/templates/skills/system-design/skill.vi.md +70 -0
  207. package/dist/core/templates/skills/system-design-skill.md +70 -0
  208. package/dist/core/templates/skills/system-design-skill.vi.md +70 -0
  209. package/dist/core/templates/skills/tech-debt/skill.md +70 -0
  210. package/dist/core/templates/skills/tech-debt/skill.vi.md +70 -0
  211. package/dist/core/templates/skills/tech-debt-skill.md +70 -0
  212. package/dist/core/templates/skills/tech-debt-skill.vi.md +70 -0
  213. package/dist/core/templates/skills/templates/accessibility-checklist.md +40 -40
  214. package/dist/core/templates/skills/templates/example-prompt-full-theme.md +333 -333
  215. package/dist/core/templates/skills/templates/page-types-guide.md +338 -338
  216. package/dist/core/templates/skills/templates/pages-proposed-summary.md +273 -273
  217. package/dist/core/templates/skills/templates/pre-delivery-checklist.md +42 -42
  218. package/dist/core/templates/skills/templates/prompt-template-full-theme.md +313 -313
  219. package/dist/core/templates/skills/templates/responsive-design.md +40 -40
  220. package/dist/core/templates/skills/ui-ux/data/charts.csv +26 -0
  221. package/dist/core/templates/skills/ui-ux/data/colors.csv +97 -0
  222. package/dist/core/templates/skills/ui-ux/data/design-systems.csv +54 -0
  223. package/dist/core/templates/skills/ui-ux/data/landing.csv +31 -0
  224. package/dist/core/templates/skills/ui-ux/data/pages-proposed.csv +22 -0
  225. package/dist/core/templates/skills/ui-ux/data/pages.csv +10 -0
  226. package/dist/core/templates/skills/ui-ux/data/products.csv +97 -0
  227. package/dist/core/templates/skills/ui-ux/data/prompts.csv +24 -0
  228. package/dist/core/templates/skills/ui-ux/data/stacks/flutter.csv +53 -0
  229. package/dist/core/templates/skills/ui-ux/data/stacks/html-tailwind.csv +56 -0
  230. package/dist/core/templates/skills/ui-ux/data/stacks/nextjs.csv +53 -0
  231. package/dist/core/templates/skills/ui-ux/data/stacks/react-native.csv +52 -0
  232. package/dist/core/templates/skills/ui-ux/data/stacks/react.csv +54 -0
  233. package/dist/core/templates/skills/ui-ux/data/stacks/svelte.csv +54 -0
  234. package/dist/core/templates/skills/ui-ux/data/stacks/swiftui.csv +51 -0
  235. package/dist/core/templates/skills/ui-ux/data/stacks/vue.csv +50 -0
  236. package/dist/core/templates/skills/ui-ux/data/styles.csv +59 -0
  237. package/dist/core/templates/skills/ui-ux/data/typography.csv +58 -0
  238. package/dist/core/templates/skills/ui-ux/data/ux-guidelines.csv +100 -0
  239. package/dist/core/templates/skills/ui-ux/scripts/CODE_EXPLANATION.md +394 -0
  240. package/dist/core/templates/skills/ui-ux/scripts/SEARCH_ALGORITHMS_COMPARISON.md +421 -0
  241. package/dist/core/templates/skills/ui-ux/scripts/SEARCH_MODES_GUIDE.md +238 -0
  242. package/dist/core/templates/skills/ui-ux/scripts/core.py +391 -0
  243. package/dist/core/templates/skills/ui-ux/scripts/search.py +73 -0
  244. package/dist/core/templates/skills/ui-ux/skill.md +595 -0
  245. package/dist/core/templates/skills/ui-ux/templates/accessibility-checklist.md +40 -0
  246. package/dist/core/templates/skills/ui-ux/templates/example-prompt-full-theme.md +333 -0
  247. package/dist/core/templates/skills/ui-ux/templates/page-types-guide.md +338 -0
  248. package/dist/core/templates/skills/ui-ux/templates/pages-proposed-summary.md +273 -0
  249. package/dist/core/templates/skills/ui-ux/templates/pre-delivery-checklist.md +42 -0
  250. package/dist/core/templates/skills/ui-ux/templates/prompt-template-full-theme.md +313 -0
  251. package/dist/core/templates/skills/ui-ux/templates/responsive-design.md +40 -0
  252. package/dist/core/templates/skills/ui-ux-skill.md +595 -584
  253. package/dist/core/templates/skills/unit-test/skill.md +111 -0
  254. package/dist/core/templates/skills/unit-test-skill.md +111 -111
  255. package/dist/core/templates/skills/ux-element/templates/Controller.php +50 -50
  256. package/dist/core/templates/skills/ux-element/templates/Shortcode.php +23 -23
  257. package/dist/core/templates/skills/ux-element/templates/Template.html +20 -20
  258. package/dist/core/templates/skills/ux-element/templates/Thumbnail.svg +8 -8
  259. package/dist/core/templates/skills/ux-element/templates/View.php +21 -21
  260. package/dist/core/templates/skills/ux-element-skill.md +83 -83
  261. package/dist/core/templates/skills/wordpress/plugin-check/skill.md +151 -0
  262. package/dist/core/templates/skills/wordpress/plugin-directory/skill.md +396 -0
  263. package/dist/core/templates/skills/wordpress/plugin-standard/skill.md +100 -0
  264. package/dist/core/templates/skills/wordpress/plugin-standard/templates/admin-dashboard.php +47 -0
  265. package/dist/core/templates/skills/wordpress/plugin-standard/templates/admin-settings.php +60 -0
  266. package/dist/core/templates/skills/wordpress/plugin-standard/templates/assets/admin-css.css +22 -0
  267. package/dist/core/templates/skills/wordpress/plugin-standard/templates/assets/admin-js.js +15 -0
  268. package/dist/core/templates/skills/wordpress/plugin-standard/templates/plugin-main.php +169 -0
  269. package/dist/core/templates/skills/wordpress/plugin-standard/templates/readme.txt +41 -0
  270. package/dist/core/templates/skills/wordpress/plugin-standard/templates/uninstall.php +21 -0
  271. package/dist/core/templates/skills/wordpress/ux-element/skill.md +83 -0
  272. package/dist/core/templates/skills/wordpress/ux-element/templates/Controller.php +50 -0
  273. package/dist/core/templates/skills/wordpress/ux-element/templates/Shortcode.php +23 -0
  274. package/dist/core/templates/skills/wordpress/ux-element/templates/Template.html +20 -0
  275. package/dist/core/templates/skills/wordpress/ux-element/templates/Thumbnail.svg +8 -0
  276. package/dist/core/templates/skills/wordpress/ux-element/templates/View.php +21 -0
  277. package/dist/core/templates/skills/wordpress-plugin-check-skill.md +151 -151
  278. package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-dashboard.php +47 -47
  279. package/dist/core/templates/skills/wordpress-plugin-standard/templates/admin-settings.php +60 -60
  280. package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-css.css +22 -22
  281. package/dist/core/templates/skills/wordpress-plugin-standard/templates/assets/admin-js.js +15 -15
  282. package/dist/core/templates/skills/wordpress-plugin-standard/templates/plugin-main.php +169 -169
  283. package/dist/core/templates/skills/wordpress-plugin-standard/templates/readme.txt +41 -41
  284. package/dist/core/templates/skills/wordpress-plugin-standard/templates/uninstall.php +21 -21
  285. package/dist/core/templates/skills/wordpress-plugin-standard-skill.md +100 -100
  286. package/dist/index.js +4237 -331
  287. package/package.json +75 -72
@@ -0,0 +1,210 @@
1
+ ---
2
+ name: sourcecode-analyzer
3
+ description: Phân tích sâu source code theo mô hình đa agent cho kiến trúc, coding style, design pattern, ngôn ngữ, framework, thư viện, cấu trúc module, extension point và khả năng tích hợp. Sử dụng khi agent cần hiểu tối đa codebase trước khi lập kế hoạch feature, refactor, integration, migration, audit hoặc documentation.
4
+ projectType: all
5
+ ---
6
+
7
+ # Source Code Analyzer (Tiếng Việt)
8
+
9
+ ## Mục tiêu
10
+ Tạo báo cáo phân tích kiến trúc và khả năng tích hợp có độ tin cậy cao, dựa trên bằng chứng trực tiếp từ source code.
11
+
12
+ ## Phạm vi
13
+ Phân tích:
14
+ - Ranh giới kiến trúc và phân lớp
15
+ - Stack framework/CMS/runtime và dependency
16
+ - Coding style và conventions
17
+ - Modules/themes/plugins và extension points
18
+ - API surfaces (REST/GraphQL/webhooks/events/CLI/jobs)
19
+ - Data layer và mô hình cấu hình
20
+ - Bảo mật và vận hành
21
+ - Khả năng tích hợp và các ràng buộc
22
+
23
+ Không:
24
+ - Sửa business logic
25
+ - Chạy lệnh hủy hoại
26
+ - Cài đặt hoặc nâng cấp dependency nếu chưa được yêu cầu
27
+
28
+ ## Đầu ra bắt buộc
29
+ Ghi báo cáo vào `_analytics/structure.md` (hoặc đường dẫn do người dùng chỉ định), đúng thứ tự section như trong `Report Template`.
30
+
31
+ ## Quy tắc bằng chứng
32
+ Mỗi nhận định quan trọng phải:
33
+ - Có bằng chứng cụ thể (đường dẫn file, symbol/class/function, tóm tắt snippet ngắn)
34
+ - Gán mức độ tin cậy `High`, `Medium` hoặc `Low`
35
+ - Gán loại nhận định:
36
+ - `Observed`: Xác nhận trực tiếp trong source
37
+ - `Inferred`: Suy ra từ nhiều quan sát đã xác thực
38
+ - `Assumed`: Giả định hợp lý nhưng chưa xác thực
39
+
40
+ Không đưa ra kết luận không có cơ sở.
41
+
42
+ ## Điều phối đa agent
43
+ Nếu có subagents, tách song song 4 lane:
44
+
45
+ 1. `Architecture lane`
46
+ - Lập bản đồ topology thư mục, layers, modules/plugins/themes
47
+ - Xác định entry points và hướng phụ thuộc
48
+
49
+ 2. `Style and design lane`
50
+ - Xác định naming conventions, folder conventions, patterns, anti-patterns
51
+ - Xác định coding standards và quality gates (lint/test/static check)
52
+
53
+ 3. `Dependency and runtime lane`
54
+ - Xác định ngôn ngữ/runtime/framework versions
55
+ - Inventory thư viện quan trọng và vai trò
56
+
57
+ 4. `Integration and security lane`
58
+ - Lập bản đồ APIs, events/hooks, queues, cron/jobs, webhooks, third-party SDKs
59
+ - Đánh giá authN/authZ, input validation, secrets handling và attack surface
60
+
61
+ Nhiệm vụ của coordinator:
62
+ - Chuẩn hóa output của các lane
63
+ - Xử lý mâu thuẫn giữa các lane
64
+ - Tổng hợp 1 báo cáo cuối cùng có bằng chứng và confidence
65
+
66
+ Nếu không có subagents, chạy tuần tự theo cùng quy trình lane.
67
+
68
+ ## Workflow
69
+
70
+ ### Step 0 — Knowledge Lookup (Tra cứu kiến thức sẵn có)
71
+ Trước khi phân tích toàn bộ, kiểm tra knowledge base đã có sẵn:
72
+
73
+ 1. Kiểm tra `heraspec/knowledge/index.json` có tồn tại trong dự án không
74
+ 2. Đọc tất cả entries và đối chiếu với dự án hiện tại:
75
+ - Với signal `file-contains`: kiểm tra file tồn tại VÀ chứa chuỗi chỉ định
76
+ - Với signal `directory-exists`: kiểm tra thư mục tồn tại
77
+ - Mỗi signal khớp = +1 điểm match score
78
+ 3. Nếu `score >= minMatchScore` cho bất kỳ entry nào:
79
+ - Đọc `structure.md` tương ứng từ `heraspec/knowledge/<knowledgePath>/`
80
+ - Sử dụng làm **baseline phân tích** — bỏ qua Steps 1-8 cho các section đã có
81
+ - Chỉ tập trung vào **khác biệt riêng dự án** (custom plugins, configs, .env, custom code)
82
+ - Đầu ra: gộp baseline knowledge + delta riêng dự án thành báo cáo cuối
83
+ 4. Kiểm tra thêm `heraspec/knowledge/custom/index.json` cho knowledge riêng dự án
84
+ 5. Nếu không match: tiến hành phân tích đầy đủ từ Step 1
85
+
86
+ Phân cấp knowledge: `heraspec/knowledge/<category>/<runtime>/<framework>/<cms>/`
87
+
88
+ ### Step 1 - Baseline Metadata
89
+ Đọc metadata ở root trước:
90
+ - `composer.json`, `composer.lock`
91
+ - `package.json`, lockfiles
92
+ - `docker*`, `Makefile`, CI configs
93
+ - `.env.example`, config directories
94
+
95
+ Thu thập:
96
+ - Language/runtime versions
97
+ - Framework/CMS versions
98
+ - Build và deployment model
99
+
100
+ ### Step 2 - Repository Topology
101
+ Lập bản đồ thư mục chính và trách nhiệm:
102
+ - Core/domain/infrastructure boundaries
103
+ - Kiến trúc plugin/module/theme
104
+ - Shared libraries và cross-cutting concerns
105
+ - Bootstrapping và entry points
106
+
107
+ ### Step 3 - Architectural Patterns
108
+ Xác định và đánh giá:
109
+ - Layered/hexagonal/modular/monolith/microservice patterns
110
+ - Sử dụng service container/DI
111
+ - Event-driven flows
112
+ - Điểm nóng coupling và boundaries
113
+
114
+ ### Step 4 - Coding Style and Design Conventions
115
+ Kiểm tra các file đại diện mỗi layer:
116
+ - Naming conventions (class/function/file)
117
+ - Folder và namespace strategy
118
+ - Error handling patterns
119
+ - Test style và coverage signals
120
+ - Static analysis/lint/format rules
121
+
122
+ ### Step 5 - Extension Model
123
+ Lập bản đồ cơ chế mở rộng:
124
+ - Hooks/filters/events/listeners
125
+ - Đăng ký module/plugin và lifecycle
126
+ - Theme/template override model
127
+ - Custom providers, middleware, policies
128
+
129
+ ### Step 6 - API and Interaction Surfaces
130
+ Thống kê interfaces nội bộ và bên ngoài:
131
+ - REST/GraphQL routes và controllers
132
+ - Command bus, queues, jobs, schedulers
133
+ - CLI commands, webhooks, callbacks
134
+ - Public SDK/service abstractions
135
+
136
+ ### Step 7 - Data and State
137
+ Phân tích:
138
+ - ORM/data access strategy
139
+ - Migration và seeding patterns
140
+ - Cache/session/queue drivers
141
+ - Transaction boundaries và consistency risks
142
+
143
+ ### Step 8 - Security and Compliance Signals
144
+ Kiểm tra:
145
+ - Authentication và authorization model
146
+ - CSRF/XSS/SQLi protections
147
+ - Secrets và credential handling
148
+ - Rate limiting và abuse protection
149
+ - Audit logging và trace các thao tác nhạy cảm
150
+
151
+ ### Step 9 - Integration Readiness
152
+ Đánh giá khả năng tích hợp theo:
153
+ - Data integration
154
+ - API integration
155
+ - Event integration
156
+ - UI/theme integration
157
+ - Deployment/infra integration
158
+
159
+ Mỗi loại tích hợp cần tóm tắt:
160
+ - Entry points hiện có
161
+ - Adapters cần bổ sung
162
+ - Độ phức tạp ước tính (`Low`/`Medium`/`High`)
163
+ - Rủi ro chính và hướng giảm thiểu
164
+
165
+ ### Step 10 - Synthesis
166
+ Tổng hợp findings vào một báo cáo, ưu tiên kết luận có bằng chứng, và liệt kê unknowns đang cần xác minh.
167
+
168
+ ## Report Template
169
+
170
+ Sử dụng đúng thứ tự section sau trong `_analytics/structure.md`:
171
+
172
+ 1. `Executive Summary`
173
+ 2. `Technology Profile`
174
+ 3. `Repository Topology`
175
+ 4. `Architecture and Dependency Flow`
176
+ 5. `Coding Style and Conventions`
177
+ 6. `Extension Points (Modules/Themes/Plugins/Hooks)`
178
+ 7. `API and Interaction Surfaces`
179
+ 8. `Data Model and State Management`
180
+ 9. `Security Posture`
181
+ 10. `Integration Capability Matrix`
182
+ 11. `Strengths, Weaknesses, Risks`
183
+ 12. `Top 10 Evidence Items`
184
+ 13. `Unknowns and Verification Plan`
185
+ 14. `Recommended Next Actions (30/60/90 day)`
186
+
187
+ ## Integration Capability Matrix Format
188
+
189
+ Mỗi integration domain là 1 dòng:
190
+
191
+ | Domain | Entry Points | Required Adapters | Complexity | Risks | Confidence |
192
+ |---|---|---|---|---|---|
193
+
194
+ Bắt buộc gồm:
195
+ - External APIs
196
+ - Authentication/SSO
197
+ - Payment
198
+ - Messaging/Queue
199
+ - Storage/CDN
200
+ - Observability
201
+ - Admin/UI customization
202
+ - Content/data migration
203
+
204
+ ## Completion Checklist
205
+ Chỉ kết thúc skill khi đủ các điều kiện:
206
+ - Report tồn tại ở đường dẫn mục tiêu
207
+ - Mỗi nhận định quan trọng đều có bằng chứng
208
+ - Giả định được đánh dấu rõ ràng
209
+ - Integration matrix đầy đủ
210
+ - Top risks có hướng giảm thiểu đề xuất
@@ -0,0 +1,61 @@
1
+ # Skill: Specification Writing (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write and refine high-quality functional/technical specifications, user stories, and delta specs for consumption by AI agents.
6
+
7
+ ## When to Use
8
+
9
+ - When starting a new feature change (Step 1 of the HeraSpec workflow)
10
+ - When converting high-level business ideas into structured technical specs
11
+ - When refining delta specs during parallel merge validation
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Define User Story & Scenarios
16
+ - Structure the core requirement as a User Story (As a... I want to... So that...)
17
+ - Formulate behavioral scenarios using GIVEN-WHEN-THEN syntax (Gherkin style)
18
+ - Define happy paths, error paths, and edge cases
19
+
20
+ ### Step 2: Structure metadata
21
+ - Specify target components, domains, and technical stacks
22
+ - Verify requirements match the architectural conventions defined in `project.md`
23
+
24
+ ### Step-3: Write Delta Spec
25
+ - Segment new, modified, and removed requirements clearly:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (must specify the exact Before vs. After states)
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Required Input
31
+
32
+ - Business requirement description or user prompt
33
+ - Technical stack metadata from `project.md`
34
+
35
+ ## Expected Output
36
+
37
+ - Clean markdown specification following the HeraSpec format
38
+ - Complete Delta Spec with GIVEN-WHEN-THEN scenarios
39
+
40
+ ## Tone & Rules
41
+
42
+ - Be extremely precise. Avoid ambiguous language like "user-friendly" or "fast".
43
+ - Always define exact failure states (e.g. "returns 401 Unauthorized" instead of "shows error").
44
+ - Scenarios MUST be testable and actionable.
45
+
46
+ ## Available Templates
47
+
48
+ - None
49
+
50
+ ## Available Scripts
51
+
52
+ - None
53
+
54
+ ## Examples
55
+
56
+ See `examples/` directory.
57
+
58
+ ## Links to Other Skills
59
+
60
+ - **documents**: Use to format the specifications into product manuals.
61
+ - **suggestion**: Use to identify gaps in existing specs.
@@ -0,0 +1,61 @@
1
+ # Kỹ năng: Viết Đặc tả (Specification Writing) (Cross-Cutting)
2
+
3
+ ## Mục đích
4
+
5
+ Viết và tinh chỉnh các đặc tả chức năng/kỹ thuật chất lượng cao, các user stories và các delta specs để các AI agent có thể đọc hiểu và thực thi hiệu quả.
6
+
7
+ ## Khi nào sử dụng
8
+
9
+ - Khi bắt đầu tạo một Change mới (Bước 1 của quy trình HeraSpec)
10
+ - Khi chuyển đổi các ý tưởng nghiệp vụ mức cao thành tài liệu spec có cấu trúc kỹ thuật
11
+ - Khi tinh chỉnh delta specs trong quá trình giải quyết xung đột song song (parallel merge)
12
+
13
+ ## Quy trình từng bước
14
+
15
+ ### Bước 1: Định nghĩa User Story & Scenarios
16
+ - Cấu trúc yêu cầu cốt lõi dưới dạng User Story (Với vai trò là... Tôi muốn... Để...)
17
+ - Xây dựng các kịch bản hành vi (scenarios) sử dụng cú pháp GIVEN-WHEN-THEN (phong cách Gherkin)
18
+ - Định nghĩa rõ luồng xử lý thành công (happy path), luồng lỗi (error path) và trường hợp biên (edge cases)
19
+
20
+ ### Bước 2: Cấu trúc phần Meta
21
+ - Chỉ định rõ các component mục tiêu, domain và technical stack
22
+ - Xác minh các yêu cầu phải khớp với quy ước kiến trúc được định nghĩa trong `project.md`
23
+
24
+ ### Bước 3: Viết Delta Spec
25
+ - Phân đoạn rõ ràng các yêu cầu mới, sửa đổi và loại bỏ:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (phải nêu rõ trạng thái Trước đây (Before) vs. Bây giờ (After))
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Input yêu cầu
31
+
32
+ - Mô tả yêu cầu nghiệp vụ hoặc prompt yêu cầu từ người dùng
33
+ - Thông tin về tech stack lấy từ `project.md`
34
+
35
+ ## Output mong đợi
36
+
37
+ - File đặc tả markdown sạch sẽ tuân thủ đúng định dạng của HeraSpec
38
+ - File Delta Spec hoàn chỉnh với các kịch bản GIVEN-WHEN-THEN
39
+
40
+ ## Giọng điệu & Quy tắc
41
+
42
+ - Cực kỳ chính xác. Tránh các từ ngữ mơ hồ như "thân thiện với người dùng" hoặc "nhanh chóng".
43
+ - Luôn định nghĩa rõ các trạng thái lỗi cụ thể (ví dụ: "trả về lỗi 401 Unauthorized" thay vị "hiển thị lỗi").
44
+ - Các kịch bản (scenarios) BẮT BUỘC phải kiểm thử được và có thể triển khai được.
45
+
46
+ ## Templates có sẵn
47
+
48
+ - Không có
49
+
50
+ ## Scripts có sẵn
51
+
52
+ - Không có
53
+
54
+ ## Ví dụ
55
+
56
+ Xem thư mục `examples/`.
57
+
58
+ ## Liên kết với các kỹ năng khác
59
+
60
+ - **documents**: Dùng để định dạng các đặc tả kỹ thuật thành hướng dẫn sản phẩm.
61
+ - **suggestion**: Dùng để phát hiện các lỗ hổng trong các spec hiện có.
@@ -0,0 +1,61 @@
1
+ # Skill: Specification Writing (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write and refine high-quality functional/technical specifications, user stories, and delta specs for consumption by AI agents.
6
+
7
+ ## When to Use
8
+
9
+ - When starting a new feature change (Step 1 of the HeraSpec workflow)
10
+ - When converting high-level business ideas into structured technical specs
11
+ - When refining delta specs during parallel merge validation
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Define User Story & Scenarios
16
+ - Structure the core requirement as a User Story (As a... I want to... So that...)
17
+ - Formulate behavioral scenarios using GIVEN-WHEN-THEN syntax (Gherkin style)
18
+ - Define happy paths, error paths, and edge cases
19
+
20
+ ### Step 2: Structure metadata
21
+ - Specify target components, domains, and technical stacks
22
+ - Verify requirements match the architectural conventions defined in `project.md`
23
+
24
+ ### Step-3: Write Delta Spec
25
+ - Segment new, modified, and removed requirements clearly:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (must specify the exact Before vs. After states)
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Required Input
31
+
32
+ - Business requirement description or user prompt
33
+ - Technical stack metadata from `project.md`
34
+
35
+ ## Expected Output
36
+
37
+ - Clean markdown specification following the HeraSpec format
38
+ - Complete Delta Spec with GIVEN-WHEN-THEN scenarios
39
+
40
+ ## Tone & Rules
41
+
42
+ - Be extremely precise. Avoid ambiguous language like "user-friendly" or "fast".
43
+ - Always define exact failure states (e.g. "returns 401 Unauthorized" instead of "shows error").
44
+ - Scenarios MUST be testable and actionable.
45
+
46
+ ## Available Templates
47
+
48
+ - None
49
+
50
+ ## Available Scripts
51
+
52
+ - None
53
+
54
+ ## Examples
55
+
56
+ See `examples/` directory.
57
+
58
+ ## Links to Other Skills
59
+
60
+ - **documents**: Use to format the specifications into product manuals.
61
+ - **suggestion**: Use to identify gaps in existing specs.
@@ -0,0 +1,61 @@
1
+ # Kỹ năng: Viết Đặc tả (Specification Writing) (Cross-Cutting)
2
+
3
+ ## Mục đích
4
+
5
+ Viết và tinh chỉnh các đặc tả chức năng/kỹ thuật chất lượng cao, các user stories và các delta specs để các AI agent có thể đọc hiểu và thực thi hiệu quả.
6
+
7
+ ## Khi nào sử dụng
8
+
9
+ - Khi bắt đầu tạo một Change mới (Bước 1 của quy trình HeraSpec)
10
+ - Khi chuyển đổi các ý tưởng nghiệp vụ mức cao thành tài liệu spec có cấu trúc kỹ thuật
11
+ - Khi tinh chỉnh delta specs trong quá trình giải quyết xung đột song song (parallel merge)
12
+
13
+ ## Quy trình từng bước
14
+
15
+ ### Bước 1: Định nghĩa User Story & Scenarios
16
+ - Cấu trúc yêu cầu cốt lõi dưới dạng User Story (Với vai trò là... Tôi muốn... Để...)
17
+ - Xây dựng các kịch bản hành vi (scenarios) sử dụng cú pháp GIVEN-WHEN-THEN (phong cách Gherkin)
18
+ - Định nghĩa rõ luồng xử lý thành công (happy path), luồng lỗi (error path) và trường hợp biên (edge cases)
19
+
20
+ ### Bước 2: Cấu trúc phần Meta
21
+ - Chỉ định rõ các component mục tiêu, domain và technical stack
22
+ - Xác minh các yêu cầu phải khớp với quy ước kiến trúc được định nghĩa trong `project.md`
23
+
24
+ ### Bước 3: Viết Delta Spec
25
+ - Phân đoạn rõ ràng các yêu cầu mới, sửa đổi và loại bỏ:
26
+ - `## ADDED Requirements`
27
+ - `## MODIFIED Requirements` (phải nêu rõ trạng thái Trước đây (Before) vs. Bây giờ (After))
28
+ - `## REMOVED Requirements`
29
+
30
+ ## Input yêu cầu
31
+
32
+ - Mô tả yêu cầu nghiệp vụ hoặc prompt yêu cầu từ người dùng
33
+ - Thông tin về tech stack lấy từ `project.md`
34
+
35
+ ## Output mong đợi
36
+
37
+ - File đặc tả markdown sạch sẽ tuân thủ đúng định dạng của HeraSpec
38
+ - File Delta Spec hoàn chỉnh với các kịch bản GIVEN-WHEN-THEN
39
+
40
+ ## Giọng điệu & Quy tắc
41
+
42
+ - Cực kỳ chính xác. Tránh các từ ngữ mơ hồ như "thân thiện với người dùng" hoặc "nhanh chóng".
43
+ - Luôn định nghĩa rõ các trạng thái lỗi cụ thể (ví dụ: "trả về lỗi 401 Unauthorized" thay vị "hiển thị lỗi").
44
+ - Các kịch bản (scenarios) BẮT BUỘC phải kiểm thử được và có thể triển khai được.
45
+
46
+ ## Templates có sẵn
47
+
48
+ - Không có
49
+
50
+ ## Scripts có sẵn
51
+
52
+ - Không có
53
+
54
+ ## Ví dụ
55
+
56
+ Xem thư mục `examples/`.
57
+
58
+ ## Liên kết với các kỹ năng khác
59
+
60
+ - **documents**: Dùng để định dạng các đặc tả kỹ thuật thành hướng dẫn sản phẩm.
61
+ - **suggestion**: Dùng để phát hiện các lỗ hổng trong các spec hiện có.
@@ -0,0 +1,67 @@
1
+ # Skill: SQL Queries (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write correct, readable, and highly performant SQL queries across all major database systems and data warehouse dialects (PostgreSQL, Snowflake, BigQuery, Redshift, Databricks SQL).
6
+
7
+ ## When to Use
8
+
9
+ - When writing complex analytical queries involving CTEs, window functions, and cohort retention calculations.
10
+ - When optimizing slow-running SQL queries or translating queries between database dialects.
11
+ - When designing data models, schema migrations, and indexing strategies.
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Analyze Schema & Dialect
16
+ - Identify the target database engine (PostgreSQL, BigQuery, Snowflake, etc.).
17
+ - Review available table schemas, keys, indexes, and partitioning keys.
18
+
19
+ ### Step 2: Structure Using CTEs
20
+ - Break down complex logic into small, readable Common Table Expressions (CTEs) representing logical steps.
21
+
22
+ ### Step 3: Write Dialect-Specific Logic
23
+ - Implement date/time arithmetic, string manipulation, JSON/array functions, and window functions using syntax specific to the selected dialect.
24
+
25
+ ### Step 4: Performance Optimization
26
+ - Apply database-specific optimization rules:
27
+ - PostgreSQL: Use `EXPLAIN ANALYZE`, index columns, prefer `EXISTS` over `IN` for subqueries.
28
+ - BigQuery: Minimize scanned bytes, partition on date columns, use `APPROX_COUNT_DISTINCT`.
29
+ - Snowflake: Leverage clustering keys, transient tables, and avoid unnecessary warehouse resizing.
30
+
31
+ ### Step 5: Test & Debug
32
+ - Verify correct handling of boundary cases (division by zero, null fields, type mismatch casting).
33
+
34
+ ## Required Input
35
+
36
+ - **Database Engine**: PostgreSQL, BigQuery, Snowflake, etc.
37
+ - **Goal/Query Purpose**: What analytical question the query should answer.
38
+ - **Table Schema**: Definitions, keys, and partitioning details.
39
+
40
+ ## Expected Output
41
+
42
+ - **Optimized SQL Code**: Full query code formatted using uppercase keywords and standard alignment.
43
+ - **Performance Explanation**: Brief details on partition pruning, indexing, or dialect-specific functions used to speed up the query.
44
+ - **Query Flow Explanation**: Explanation of each CTE step for developer readability.
45
+
46
+ ## Tone & Rules
47
+
48
+ - Write clean, modern SQL using uppercase for keywords (SELECT, FROM, WHERE, etc.).
49
+ - Always qualify column names with table aliases when using JOINs.
50
+ - Avoid nested subqueries; always prefer Common Table Expressions (CTEs) for readability.
51
+
52
+ ## Available Templates
53
+
54
+ - None
55
+
56
+ ## Available Scripts
57
+
58
+ - None
59
+
60
+ ## Examples
61
+
62
+ See `examples/` directory.
63
+
64
+ ## Links to Other Skills
65
+
66
+ - **documents**: Use to document database schemas or technical data flow maps.
67
+ - **debug**: Use to diagnose and resolve errors returned by SQL execution engines.
@@ -0,0 +1,67 @@
1
+ # Kỹ năng: Truy vấn SQL (SQL Queries) (Cross-Cutting)
2
+
3
+ ## Mục đích
4
+
5
+ Viết các câu truy vấn SQL chính xác, dễ đọc và đạt hiệu năng tối ưu trên các hệ thống cơ sở dữ liệu và kho dữ liệu phổ biến (PostgreSQL, Snowflake, BigQuery, Redshift, Databricks SQL).
6
+
7
+ ## Khi nào sử dụng
8
+
9
+ - Khi viết các câu truy vấn phân tích phức tạp có sử dụng CTEs, hàm cửa sổ (window functions) và tính toán tỷ lệ giữ chân khách hàng (cohort retention).
10
+ - Khi tối ưu hóa các câu lệnh SQL chạy chậm hoặc chuyển đổi cú pháp truy vấn giữa các hệ quản trị cơ sở dữ liệu khác nhau.
11
+ - Khi thiết kế mô hình dữ liệu, viết mã dịch chuyển cấu trúc bảng (migrations) và lập chiến lược đánh chỉ mục (indexing).
12
+
13
+ ## Quy trình từng bước
14
+
15
+ ### Bước 1: Phân tích Lược đồ & Cú pháp Dialect
16
+ - Xác định hệ quản trị cơ sở dữ liệu đích (PostgreSQL, BigQuery, Snowflake, v.v...).
17
+ - Xem xét cấu trúc các bảng dữ liệu, khóa chính/phụ, chỉ mục (indexes) và khóa phân vùng (partition keys).
18
+
19
+ ### Bước 2: Cấu trúc hóa bằng CTEs
20
+ - Chia nhỏ logic phức tạp thành các biểu thức bảng chung (Common Table Expressions - CTEs) dễ đọc, đại diện cho từng bước xử lý dữ liệu tuần tự.
21
+
22
+ ### Bước 3: Viết Logic Đặc thù theo Dialect
23
+ - Triển khai các phép toán ngày/tháng, xử lý chuỗi văn bản, trích xuất JSON/mảng và các hàm cửa sổ sử dụng đúng cú pháp của cơ sở dữ liệu đích.
24
+
25
+ ### Bước 4: Tối ưu hóa Hiệu năng (Performance Optimization)
26
+ - Áp dụng các quy tắc tối ưu đặc thù:
27
+ - PostgreSQL: Sử dụng `EXPLAIN ANALYZE` để xem chi tiết thực thi, đánh chỉ mục các cột lọc/join, ưu tiên `EXISTS` thay vì `IN` cho truy vấn con.
28
+ - BigQuery: Giảm thiểu dung lượng quét dữ liệu (scanned bytes), lọc theo cột phân vùng date, sử dụng `APPROX_COUNT_DISTINCT`.
29
+ - Snowflake: Tận dụng khóa gom cụm (clustering keys), bảng tạm thời (transient tables) và tránh thay đổi kích thước warehouse không cần thiết.
30
+
31
+ ### Bước 5: Kiểm thử & Sửa lỗi
32
+ - Xác minh cách xử lý các trường hợp đặc biệt (chia cho 0, giá trị null, ép kiểu dữ liệu mismatch).
33
+
34
+ ## Input yêu cầu
35
+
36
+ - **Database Engine**: Loại cơ sở dữ liệu (PostgreSQL, BigQuery, Snowflake, v.v...).
37
+ - **Mục đích truy vấn**: Câu hỏi nghiệp vụ cần trả lời bằng dữ liệu.
38
+ - **Lược đồ bảng (Table Schema)**: Định nghĩa các bảng, kiểu dữ liệu, các trường khóa và chi tiết phân vùng.
39
+
40
+ ## Output mong đợi
41
+
42
+ - **Mã lệnh SQL Tối ưu**: Câu lệnh SQL hoàn chỉnh được định dạng viết hoa các từ khóa chính và căn lề chuẩn mực.
43
+ - **Giải thích Hiệu năng**: Mô tả ngắn gọn về phân vùng dữ liệu, chỉ mục hoặc hàm đặc thù được dùng để tăng tốc truy vấn.
44
+ - **Giải thích Luồng truy vấn**: Giải thích rõ ràng mục đích của từng bước CTE để nhà phát triển dễ đọc hiểu.
45
+
46
+ ## Giọng điệu & Quy tắc
47
+
48
+ - Viết mã SQL sạch, hiện đại bằng cách viết hoa các từ khóa chuẩn (SELECT, FROM, WHERE, v.v...).
49
+ - Luôn đặt tên viết tắt (alias) cho các bảng và gọi tên cột kèm alias khi thực hiện JOINs.
50
+ - Hạn chế viết các truy vấn con lồng nhau phức tạp; luôn ưu tiên sử dụng CTEs để giữ code sạch sẽ.
51
+
52
+ ## Templates có sẵn
53
+
54
+ - Không có
55
+
56
+ ## Scripts có sẵn
57
+
58
+ - Không có
59
+
60
+ ## Ví dụ
61
+
62
+ Xem thư mục `examples/`.
63
+
64
+ ## Liên kết với các kỹ năng khác
65
+
66
+ - **documents**: Sử dụng để viết tài liệu thiết kế cơ sở dữ liệu hoặc sơ đồ luồng dữ liệu kỹ thuật.
67
+ - **debug**: Sử dụng để chẩn đoán và khắc phục các lỗi cú pháp/logic do công cụ cơ sở dữ liệu trả về.
@@ -0,0 +1,67 @@
1
+ # Skill: SQL Queries (Cross-Cutting)
2
+
3
+ ## Purpose
4
+
5
+ Write correct, readable, and highly performant SQL queries across all major database systems and data warehouse dialects (PostgreSQL, Snowflake, BigQuery, Redshift, Databricks SQL).
6
+
7
+ ## When to Use
8
+
9
+ - When writing complex analytical queries involving CTEs, window functions, and cohort retention calculations.
10
+ - When optimizing slow-running SQL queries or translating queries between database dialects.
11
+ - When designing data models, schema migrations, and indexing strategies.
12
+
13
+ ## Step-by-Step Process
14
+
15
+ ### Step 1: Analyze Schema & Dialect
16
+ - Identify the target database engine (PostgreSQL, BigQuery, Snowflake, etc.).
17
+ - Review available table schemas, keys, indexes, and partitioning keys.
18
+
19
+ ### Step 2: Structure Using CTEs
20
+ - Break down complex logic into small, readable Common Table Expressions (CTEs) representing logical steps.
21
+
22
+ ### Step 3: Write Dialect-Specific Logic
23
+ - Implement date/time arithmetic, string manipulation, JSON/array functions, and window functions using syntax specific to the selected dialect.
24
+
25
+ ### Step 4: Performance Optimization
26
+ - Apply database-specific optimization rules:
27
+ - PostgreSQL: Use `EXPLAIN ANALYZE`, index columns, prefer `EXISTS` over `IN` for subqueries.
28
+ - BigQuery: Minimize scanned bytes, partition on date columns, use `APPROX_COUNT_DISTINCT`.
29
+ - Snowflake: Leverage clustering keys, transient tables, and avoid unnecessary warehouse resizing.
30
+
31
+ ### Step 5: Test & Debug
32
+ - Verify correct handling of boundary cases (division by zero, null fields, type mismatch casting).
33
+
34
+ ## Required Input
35
+
36
+ - **Database Engine**: PostgreSQL, BigQuery, Snowflake, etc.
37
+ - **Goal/Query Purpose**: What analytical question the query should answer.
38
+ - **Table Schema**: Definitions, keys, and partitioning details.
39
+
40
+ ## Expected Output
41
+
42
+ - **Optimized SQL Code**: Full query code formatted using uppercase keywords and standard alignment.
43
+ - **Performance Explanation**: Brief details on partition pruning, indexing, or dialect-specific functions used to speed up the query.
44
+ - **Query Flow Explanation**: Explanation of each CTE step for developer readability.
45
+
46
+ ## Tone & Rules
47
+
48
+ - Write clean, modern SQL using uppercase for keywords (SELECT, FROM, WHERE, etc.).
49
+ - Always qualify column names with table aliases when using JOINs.
50
+ - Avoid nested subqueries; always prefer Common Table Expressions (CTEs) for readability.
51
+
52
+ ## Available Templates
53
+
54
+ - None
55
+
56
+ ## Available Scripts
57
+
58
+ - None
59
+
60
+ ## Examples
61
+
62
+ See `examples/` directory.
63
+
64
+ ## Links to Other Skills
65
+
66
+ - **documents**: Use to document database schemas or technical data flow maps.
67
+ - **debug**: Use to diagnose and resolve errors returned by SQL execution engines.