@ruaruababa/vibe-kit 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (462) hide show
  1. package/CATALOG.md +317 -0
  2. package/README.md +121 -0
  3. package/aliases.json +65 -0
  4. package/bin/vibe.js +2 -0
  5. package/bundles.json +265 -0
  6. package/catalog.json +1560 -0
  7. package/dist/antigravity-skills/bin/cli.js +438 -0
  8. package/dist/antigravity-skills/lib/skill-utils.js +158 -0
  9. package/dist/antigravity-skills/scripts/build-catalog.js +305 -0
  10. package/dist/antigravity-skills/scripts/normalize-frontmatter.js +144 -0
  11. package/dist/antigravity-skills/scripts/validate-skills.js +230 -0
  12. package/dist/bin/vibe.js +2 -0
  13. package/dist/dist/src/cli/index.js +26 -0
  14. package/dist/lib/skill-utils.js +158 -0
  15. package/dist/scripts/build-catalog.js +50 -0
  16. package/dist/scripts/normalize-frontmatter.js +144 -0
  17. package/dist/scripts/validate-skills.js +56 -0
  18. package/dist/src/cli/index.js +146 -0
  19. package/dist/src/types/index.js +13 -0
  20. package/dist/src/utils/fs.js +1 -0
  21. package/package.json +43 -0
  22. package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
  23. package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
  24. package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
  25. package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
  26. package/skills/agent-orchestrator/SKILL.md +24 -0
  27. package/skills/ai-engineer/SKILL.md +171 -0
  28. package/skills/airflow-dag-patterns/SKILL.md +41 -0
  29. package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  30. package/skills/angular-migration/SKILL.md +428 -0
  31. package/skills/anti-reversing-techniques/SKILL.md +42 -0
  32. package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
  33. package/skills/api-design-principles/SKILL.md +37 -0
  34. package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  35. package/skills/api-design-principles/assets/rest-api-template.py +182 -0
  36. package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  37. package/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  39. package/skills/api-documenter/SKILL.md +184 -0
  40. package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
  41. package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  42. package/skills/application-performance-performance-optimization/SKILL.md +154 -0
  43. package/skills/architect-review/SKILL.md +174 -0
  44. package/skills/architecture-decision-records/SKILL.md +441 -0
  45. package/skills/architecture-patterns/SKILL.md +37 -0
  46. package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  47. package/skills/arm-cortex-expert/SKILL.md +306 -0
  48. package/skills/async-python-patterns/SKILL.md +39 -0
  49. package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  50. package/skills/attack-tree-construction/SKILL.md +38 -0
  51. package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
  52. package/skills/auth-implementation-patterns/SKILL.md +39 -0
  53. package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  54. package/skills/backend-architect/SKILL.md +333 -0
  55. package/skills/backend-development-feature-development/SKILL.md +180 -0
  56. package/skills/backend-security-coder/SKILL.md +156 -0
  57. package/skills/backtesting-frameworks/SKILL.md +39 -0
  58. package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  59. package/skills/bash-defensive-patterns/SKILL.md +43 -0
  60. package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  61. package/skills/bash-pro/SKILL.md +310 -0
  62. package/skills/bats-testing-patterns/SKILL.md +34 -0
  63. package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  64. package/skills/bazel-build-optimization/SKILL.md +397 -0
  65. package/skills/billing-automation/SKILL.md +42 -0
  66. package/skills/billing-automation/resources/implementation-playbook.md +544 -0
  67. package/skills/binary-analysis-patterns/SKILL.md +450 -0
  68. package/skills/blockchain-developer/SKILL.md +208 -0
  69. package/skills/business-analyst/SKILL.md +182 -0
  70. package/skills/c-pro/SKILL.md +56 -0
  71. package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
  72. package/skills/c4-code/SKILL.md +244 -0
  73. package/skills/c4-component/SKILL.md +153 -0
  74. package/skills/c4-container/SKILL.md +171 -0
  75. package/skills/c4-context/SKILL.md +150 -0
  76. package/skills/changelog-automation/SKILL.md +38 -0
  77. package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
  78. package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
  79. package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
  80. package/skills/clean-markdown/SKILL.md +23 -0
  81. package/skills/cloud-architect/SKILL.md +135 -0
  82. package/skills/code-documentation-code-explain/SKILL.md +46 -0
  83. package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
  84. package/skills/code-documentation-doc-generate/SKILL.md +48 -0
  85. package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
  86. package/skills/code-refactoring-context-restore/SKILL.md +179 -0
  87. package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
  88. package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  89. package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
  90. package/skills/code-review-ai-ai-review/SKILL.md +450 -0
  91. package/skills/code-review-excellence/SKILL.md +40 -0
  92. package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
  93. package/skills/code-reviewer/SKILL.md +178 -0
  94. package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
  95. package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  96. package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
  97. package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  98. package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
  99. package/skills/competitive-landscape/SKILL.md +34 -0
  100. package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
  101. package/skills/comprehensive-review-full-review/SKILL.md +146 -0
  102. package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
  103. package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
  104. package/skills/conductor-implement/SKILL.md +388 -0
  105. package/skills/conductor-manage/SKILL.md +39 -0
  106. package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
  107. package/skills/conductor-new-track/SKILL.md +433 -0
  108. package/skills/conductor-revert/SKILL.md +372 -0
  109. package/skills/conductor-setup/SKILL.md +426 -0
  110. package/skills/conductor-status/SKILL.md +338 -0
  111. package/skills/conductor-validator/SKILL.md +62 -0
  112. package/skills/content-marketer/SKILL.md +170 -0
  113. package/skills/context-driven-development/SKILL.md +400 -0
  114. package/skills/context-management-context-restore/SKILL.md +179 -0
  115. package/skills/context-management-context-save/SKILL.md +177 -0
  116. package/skills/context-manager/SKILL.md +185 -0
  117. package/skills/cost-optimization/SKILL.md +286 -0
  118. package/skills/cpp-pro/SKILL.md +59 -0
  119. package/skills/cqrs-implementation/SKILL.md +35 -0
  120. package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
  121. package/skills/csharp-pro/SKILL.md +59 -0
  122. package/skills/customer-support/SKILL.md +170 -0
  123. package/skills/data-engineer/SKILL.md +224 -0
  124. package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
  125. package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
  126. package/skills/data-quality-frameworks/SKILL.md +40 -0
  127. package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
  128. package/skills/data-scientist/SKILL.md +199 -0
  129. package/skills/data-storytelling/SKILL.md +465 -0
  130. package/skills/database-admin/SKILL.md +165 -0
  131. package/skills/database-architect/SKILL.md +268 -0
  132. package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
  133. package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  134. package/skills/database-migration/SKILL.md +436 -0
  135. package/skills/database-migrations-migration-observability/SKILL.md +420 -0
  136. package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
  137. package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  138. package/skills/database-optimizer/SKILL.md +167 -0
  139. package/skills/dbt-transformation-patterns/SKILL.md +34 -0
  140. package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  141. package/skills/debugger/SKILL.md +49 -0
  142. package/skills/debugging-strategies/SKILL.md +34 -0
  143. package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
  144. package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
  145. package/skills/defi-protocol-templates/SKILL.md +466 -0
  146. package/skills/dependency-management-deps-audit/SKILL.md +44 -0
  147. package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
  148. package/skills/dependency-upgrade/SKILL.md +421 -0
  149. package/skills/deployment-engineer/SKILL.md +170 -0
  150. package/skills/deployment-pipeline-design/SKILL.md +371 -0
  151. package/skills/deployment-validation-config-validate/SKILL.md +496 -0
  152. package/skills/devops-troubleshooter/SKILL.md +161 -0
  153. package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
  154. package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
  155. package/skills/distributed-tracing/SKILL.md +450 -0
  156. package/skills/django-pro/SKILL.md +180 -0
  157. package/skills/docs-architect/SKILL.md +98 -0
  158. package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
  159. package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
  160. package/skills/dotnet-architect/SKILL.md +197 -0
  161. package/skills/dotnet-backend-patterns/SKILL.md +37 -0
  162. package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
  163. package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
  164. package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  165. package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  166. package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  167. package/skills/dummy-skill/SKILL.md +5 -0
  168. package/skills/dx-optimizer/SKILL.md +83 -0
  169. package/skills/e2e-testing-patterns/SKILL.md +41 -0
  170. package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  171. package/skills/elixir-pro/SKILL.md +59 -0
  172. package/skills/embedding-strategies/SKILL.md +491 -0
  173. package/skills/employment-contract-templates/SKILL.md +39 -0
  174. package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
  175. package/skills/error-debugging-error-analysis/SKILL.md +47 -0
  176. package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
  177. package/skills/error-debugging-error-trace/SKILL.md +43 -0
  178. package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
  179. package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
  180. package/skills/error-detective/SKILL.md +53 -0
  181. package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
  182. package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
  183. package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
  184. package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
  185. package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
  186. package/skills/error-handling-patterns/SKILL.md +35 -0
  187. package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  188. package/skills/event-sourcing-architect/SKILL.md +58 -0
  189. package/skills/event-store-design/SKILL.md +449 -0
  190. package/skills/fastapi-pro/SKILL.md +192 -0
  191. package/skills/fastapi-templates/SKILL.md +32 -0
  192. package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  193. package/skills/final-test/SKILL.md +5 -0
  194. package/skills/firmware-analyst/SKILL.md +320 -0
  195. package/skills/flutter-expert/SKILL.md +200 -0
  196. package/skills/framework-migration-code-migrate/SKILL.md +48 -0
  197. package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
  198. package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
  199. package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
  200. package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
  201. package/skills/frontend-developer/SKILL.md +171 -0
  202. package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
  203. package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
  204. package/skills/frontend-security-coder/SKILL.md +170 -0
  205. package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
  206. package/skills/gdpr-data-handling/SKILL.md +33 -0
  207. package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
  208. package/skills/git-advanced-workflows/SKILL.md +412 -0
  209. package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
  210. package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
  211. package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
  212. package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  213. package/skills/github-actions-templates/SKILL.md +345 -0
  214. package/skills/gitlab-ci-patterns/SKILL.md +283 -0
  215. package/skills/gitops-workflow/SKILL.md +303 -0
  216. package/skills/gitops-workflow/references/argocd-setup.md +134 -0
  217. package/skills/gitops-workflow/references/sync-policies.md +131 -0
  218. package/skills/go-concurrency-patterns/SKILL.md +33 -0
  219. package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  220. package/skills/godot-gdscript-patterns/SKILL.md +33 -0
  221. package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  222. package/skills/golang-pro/SKILL.md +179 -0
  223. package/skills/grafana-dashboards/SKILL.md +381 -0
  224. package/skills/graphql-architect/SKILL.md +182 -0
  225. package/skills/haskell-pro/SKILL.md +56 -0
  226. package/skills/helm-chart-scaffolding/SKILL.md +34 -0
  227. package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
  228. package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
  229. package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
  230. package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
  231. package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
  232. package/skills/hr-pro/SKILL.md +126 -0
  233. package/skills/hybrid-cloud-architect/SKILL.md +168 -0
  234. package/skills/hybrid-cloud-networking/SKILL.md +238 -0
  235. package/skills/hybrid-search-implementation/SKILL.md +32 -0
  236. package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
  237. package/skills/incident-responder/SKILL.md +213 -0
  238. package/skills/incident-response-incident-response/SKILL.md +168 -0
  239. package/skills/incident-response-smart-fix/SKILL.md +29 -0
  240. package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
  241. package/skills/incident-runbook-templates/SKILL.md +395 -0
  242. package/skills/ios-developer/SKILL.md +219 -0
  243. package/skills/istio-traffic-management/SKILL.md +337 -0
  244. package/skills/java-pro/SKILL.md +177 -0
  245. package/skills/javascript-pro/SKILL.md +57 -0
  246. package/skills/javascript-testing-patterns/SKILL.md +35 -0
  247. package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  248. package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
  249. package/skills/julia-pro/SKILL.md +209 -0
  250. package/skills/k8s-manifest-generator/SKILL.md +35 -0
  251. package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
  252. package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
  253. package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
  254. package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
  255. package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
  256. package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
  257. package/skills/k8s-security-policies/SKILL.md +346 -0
  258. package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  259. package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  260. package/skills/kpi-dashboard-design/SKILL.md +440 -0
  261. package/skills/kubernetes-architect/SKILL.md +170 -0
  262. package/skills/langchain-architecture/SKILL.md +350 -0
  263. package/skills/legacy-modernizer/SKILL.md +53 -0
  264. package/skills/legal-advisor/SKILL.md +70 -0
  265. package/skills/linkerd-patterns/SKILL.md +321 -0
  266. package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
  267. package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  268. package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
  269. package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
  270. package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  271. package/skills/llm-evaluation/SKILL.md +483 -0
  272. package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
  273. package/skills/malware-analyst/SKILL.md +247 -0
  274. package/skills/market-sizing-analysis/SKILL.md +425 -0
  275. package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
  276. package/skills/market-sizing-analysis/references/data-sources.md +360 -0
  277. package/skills/memory-forensics/SKILL.md +491 -0
  278. package/skills/memory-safety-patterns/SKILL.md +33 -0
  279. package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  280. package/skills/mermaid-expert/SKILL.md +59 -0
  281. package/skills/microservices-patterns/SKILL.md +35 -0
  282. package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  283. package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
  284. package/skills/ml-engineer/SKILL.md +168 -0
  285. package/skills/ml-pipeline-workflow/SKILL.md +257 -0
  286. package/skills/mlops-engineer/SKILL.md +219 -0
  287. package/skills/mobile-developer/SKILL.md +205 -0
  288. package/skills/mobile-security-coder/SKILL.md +184 -0
  289. package/skills/modern-javascript-patterns/SKILL.md +35 -0
  290. package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  291. package/skills/monorepo-architect/SKILL.md +61 -0
  292. package/skills/monorepo-management/SKILL.md +35 -0
  293. package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
  294. package/skills/mtls-configuration/SKILL.md +359 -0
  295. package/skills/multi-cloud-architecture/SKILL.md +189 -0
  296. package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
  297. package/skills/network-engineer/SKILL.md +169 -0
  298. package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
  299. package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  300. package/skills/nft-standards/SKILL.md +395 -0
  301. package/skills/node-expert/SKILL.md +23 -0
  302. package/skills/nodejs-backend-patterns/SKILL.md +35 -0
  303. package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  304. package/skills/nx-workspace-patterns/SKILL.md +464 -0
  305. package/skills/observability-engineer/SKILL.md +237 -0
  306. package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
  307. package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
  308. package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
  309. package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
  310. package/skills/on-call-handoff-patterns/SKILL.md +453 -0
  311. package/skills/openapi-spec-generation/SKILL.md +33 -0
  312. package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  313. package/skills/payment-integration/SKILL.md +77 -0
  314. package/skills/paypal-integration/SKILL.md +479 -0
  315. package/skills/pci-compliance/SKILL.md +478 -0
  316. package/skills/performance-engineer/SKILL.md +180 -0
  317. package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
  318. package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
  319. package/skills/php-pro/SKILL.md +63 -0
  320. package/skills/posix-shell-pro/SKILL.md +304 -0
  321. package/skills/postgresql/SKILL.md +230 -0
  322. package/skills/postmortem-writing/SKILL.md +386 -0
  323. package/skills/projection-patterns/SKILL.md +33 -0
  324. package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  325. package/skills/prometheus-configuration/SKILL.md +404 -0
  326. package/skills/prompt-engineer/SKILL.md +272 -0
  327. package/skills/prompt-engineering-patterns/SKILL.md +213 -0
  328. package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  329. package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  330. package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  331. package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  332. package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  333. package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  334. package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  335. package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  336. package/skills/protocol-reverse-engineering/SKILL.md +29 -0
  337. package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
  338. package/skills/python-development-python-scaffold/SKILL.md +331 -0
  339. package/skills/python-packaging/SKILL.md +36 -0
  340. package/skills/python-packaging/resources/implementation-playbook.md +869 -0
  341. package/skills/python-performance-optimization/SKILL.md +36 -0
  342. package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  343. package/skills/python-pro/SKILL.md +158 -0
  344. package/skills/python-testing-patterns/SKILL.md +37 -0
  345. package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  346. package/skills/quant-analyst/SKILL.md +53 -0
  347. package/skills/rag-implementation/SKILL.md +421 -0
  348. package/skills/react-modernization/SKILL.md +34 -0
  349. package/skills/react-modernization/resources/implementation-playbook.md +512 -0
  350. package/skills/react-native-architecture/SKILL.md +33 -0
  351. package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  352. package/skills/react-state-management/SKILL.md +441 -0
  353. package/skills/reference-builder/SKILL.md +188 -0
  354. package/skills/reverse-engineer/SKILL.md +173 -0
  355. package/skills/risk-manager/SKILL.md +61 -0
  356. package/skills/risk-metrics-calculation/SKILL.md +33 -0
  357. package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
  358. package/skills/ruby-pro/SKILL.md +56 -0
  359. package/skills/rust-async-patterns/SKILL.md +33 -0
  360. package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  361. package/skills/rust-pro/SKILL.md +178 -0
  362. package/skills/saga-orchestration/SKILL.md +496 -0
  363. package/skills/sales-automator/SKILL.md +55 -0
  364. package/skills/sast-configuration/SKILL.md +212 -0
  365. package/skills/scala-pro/SKILL.md +82 -0
  366. package/skills/screen-reader-testing/SKILL.md +33 -0
  367. package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  368. package/skills/search-specialist/SKILL.md +80 -0
  369. package/skills/secrets-management/SKILL.md +364 -0
  370. package/skills/security-auditor/SKILL.md +169 -0
  371. package/skills/security-compliance-compliance-check/SKILL.md +55 -0
  372. package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  373. package/skills/security-requirement-extraction/SKILL.md +33 -0
  374. package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  375. package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
  376. package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  377. package/skills/security-scanning-security-hardening/SKILL.md +147 -0
  378. package/skills/security-scanning-security-sast/SKILL.md +495 -0
  379. package/skills/seo-authority-builder/SKILL.md +136 -0
  380. package/skills/seo-cannibalization-detector/SKILL.md +123 -0
  381. package/skills/seo-content-auditor/SKILL.md +83 -0
  382. package/skills/seo-content-planner/SKILL.md +108 -0
  383. package/skills/seo-content-refresher/SKILL.md +118 -0
  384. package/skills/seo-content-writer/SKILL.md +96 -0
  385. package/skills/seo-keyword-strategist/SKILL.md +95 -0
  386. package/skills/seo-meta-optimizer/SKILL.md +92 -0
  387. package/skills/seo-snippet-hunter/SKILL.md +114 -0
  388. package/skills/seo-structure-architect/SKILL.md +108 -0
  389. package/skills/service-mesh-expert/SKILL.md +58 -0
  390. package/skills/service-mesh-observability/SKILL.md +395 -0
  391. package/skills/shellcheck-configuration/SKILL.md +466 -0
  392. package/skills/similarity-search-patterns/SKILL.md +33 -0
  393. package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  394. package/skills/slo-implementation/SKILL.md +341 -0
  395. package/skills/solidity-security/SKILL.md +34 -0
  396. package/skills/solidity-security/resources/implementation-playbook.md +524 -0
  397. package/skills/spark-optimization/SKILL.md +427 -0
  398. package/skills/sql-optimization-patterns/SKILL.md +35 -0
  399. package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  400. package/skills/sql-pro/SKILL.md +173 -0
  401. package/skills/startup-analyst/SKILL.md +328 -0
  402. package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
  403. package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
  404. package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
  405. package/skills/startup-financial-modeling/SKILL.md +467 -0
  406. package/skills/startup-metrics-framework/SKILL.md +34 -0
  407. package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
  408. package/skills/stride-analysis-patterns/SKILL.md +33 -0
  409. package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  410. package/skills/stripe-integration/SKILL.md +454 -0
  411. package/skills/systems-programming-rust-project/SKILL.md +440 -0
  412. package/skills/tailwind-design-system/SKILL.md +33 -0
  413. package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  414. package/skills/tdd-orchestrator/SKILL.md +205 -0
  415. package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
  416. package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
  417. package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
  418. package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
  419. package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
  420. package/skills/team-collaboration-issue/SKILL.md +37 -0
  421. package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
  422. package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
  423. package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
  424. package/skills/team-composition-analysis/SKILL.md +413 -0
  425. package/skills/temporal-python-pro/SKILL.md +370 -0
  426. package/skills/temporal-python-testing/SKILL.md +170 -0
  427. package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  428. package/skills/temporal-python-testing/resources/local-setup.md +553 -0
  429. package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  430. package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  431. package/skills/terraform-module-library/SKILL.md +261 -0
  432. package/skills/terraform-module-library/references/aws-modules.md +63 -0
  433. package/skills/terraform-specialist/SKILL.md +166 -0
  434. package/skills/test-automator/SKILL.md +224 -0
  435. package/skills/threat-mitigation-mapping/SKILL.md +33 -0
  436. package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
  437. package/skills/threat-modeling-expert/SKILL.md +60 -0
  438. package/skills/track-management/SKILL.md +38 -0
  439. package/skills/track-management/resources/implementation-playbook.md +591 -0
  440. package/skills/turborepo-caching/SKILL.md +419 -0
  441. package/skills/tutorial-engineer/SKILL.md +139 -0
  442. package/skills/typescript-advanced-types/SKILL.md +35 -0
  443. package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  444. package/skills/typescript-pro/SKILL.md +55 -0
  445. package/skills/ui-minimal/SKILL.md +23 -0
  446. package/skills/ui-ux-designer/SKILL.md +209 -0
  447. package/skills/ui-visual-validator/SKILL.md +214 -0
  448. package/skills/unit-testing-test-generate/SKILL.md +319 -0
  449. package/skills/unity-developer/SKILL.md +230 -0
  450. package/skills/unity-ecs-patterns/SKILL.md +33 -0
  451. package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  452. package/skills/uv-package-manager/SKILL.md +37 -0
  453. package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
  454. package/skills/vector-database-engineer/SKILL.md +60 -0
  455. package/skills/vector-index-tuning/SKILL.md +42 -0
  456. package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
  457. package/skills/wcag-audit-patterns/SKILL.md +41 -0
  458. package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  459. package/skills/web3-testing/SKILL.md +427 -0
  460. package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
  461. package/skills/workflow-patterns/SKILL.md +38 -0
  462. package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
@@ -0,0 +1,879 @@
1
+ # Refactor and Clean Code Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Instructions
6
+
7
+ ### 1. Code Analysis
8
+ First, analyze the current code for:
9
+ - **Code Smells**
10
+ - Long methods/functions (>20 lines)
11
+ - Large classes (>200 lines)
12
+ - Duplicate code blocks
13
+ - Dead code and unused variables
14
+ - Complex conditionals and nested loops
15
+ - Magic numbers and hardcoded values
16
+ - Poor naming conventions
17
+ - Tight coupling between components
18
+ - Missing abstractions
19
+
20
+ - **SOLID Violations**
21
+ - Single Responsibility Principle violations
22
+ - Open/Closed Principle issues
23
+ - Liskov Substitution problems
24
+ - Interface Segregation concerns
25
+ - Dependency Inversion violations
26
+
27
+ - **Performance Issues**
28
+ - Inefficient algorithms (O(n²) or worse)
29
+ - Unnecessary object creation
30
+ - Memory leaks potential
31
+ - Blocking operations
32
+ - Missing caching opportunities
33
+
34
+ ### 2. Refactoring Strategy
35
+
36
+ Create a prioritized refactoring plan:
37
+
38
+ **Immediate Fixes (High Impact, Low Effort)**
39
+ - Extract magic numbers to constants
40
+ - Improve variable and function names
41
+ - Remove dead code
42
+ - Simplify boolean expressions
43
+ - Extract duplicate code to functions
44
+
45
+ **Method Extraction**
46
+ ```
47
+ # Before
48
+ def process_order(order):
49
+ # 50 lines of validation
50
+ # 30 lines of calculation
51
+ # 40 lines of notification
52
+
53
+ # After
54
+ def process_order(order):
55
+ validate_order(order)
56
+ total = calculate_order_total(order)
57
+ send_order_notifications(order, total)
58
+ ```
59
+
60
+ **Class Decomposition**
61
+ - Extract responsibilities to separate classes
62
+ - Create interfaces for dependencies
63
+ - Implement dependency injection
64
+ - Use composition over inheritance
65
+
66
+ **Pattern Application**
67
+ - Factory pattern for object creation
68
+ - Strategy pattern for algorithm variants
69
+ - Observer pattern for event handling
70
+ - Repository pattern for data access
71
+ - Decorator pattern for extending behavior
72
+
73
+ ### 3. SOLID Principles in Action
74
+
75
+ Provide concrete examples of applying each SOLID principle:
76
+
77
+ **Single Responsibility Principle (SRP)**
78
+ ```python
79
+ # BEFORE: Multiple responsibilities in one class
80
+ class UserManager:
81
+ def create_user(self, data):
82
+ # Validate data
83
+ # Save to database
84
+ # Send welcome email
85
+ # Log activity
86
+ # Update cache
87
+ pass
88
+
89
+ # AFTER: Each class has one responsibility
90
+ class UserValidator:
91
+ def validate(self, data): pass
92
+
93
+ class UserRepository:
94
+ def save(self, user): pass
95
+
96
+ class EmailService:
97
+ def send_welcome_email(self, user): pass
98
+
99
+ class UserActivityLogger:
100
+ def log_creation(self, user): pass
101
+
102
+ class UserService:
103
+ def __init__(self, validator, repository, email_service, logger):
104
+ self.validator = validator
105
+ self.repository = repository
106
+ self.email_service = email_service
107
+ self.logger = logger
108
+
109
+ def create_user(self, data):
110
+ self.validator.validate(data)
111
+ user = self.repository.save(data)
112
+ self.email_service.send_welcome_email(user)
113
+ self.logger.log_creation(user)
114
+ return user
115
+ ```
116
+
117
+ **Open/Closed Principle (OCP)**
118
+ ```python
119
+ # BEFORE: Modification required for new discount types
120
+ class DiscountCalculator:
121
+ def calculate(self, order, discount_type):
122
+ if discount_type == "percentage":
123
+ return order.total * 0.1
124
+ elif discount_type == "fixed":
125
+ return 10
126
+ elif discount_type == "tiered":
127
+ # More logic
128
+ pass
129
+
130
+ # AFTER: Open for extension, closed for modification
131
+ from abc import ABC, abstractmethod
132
+
133
+ class DiscountStrategy(ABC):
134
+ @abstractmethod
135
+ def calculate(self, order): pass
136
+
137
+ class PercentageDiscount(DiscountStrategy):
138
+ def __init__(self, percentage):
139
+ self.percentage = percentage
140
+
141
+ def calculate(self, order):
142
+ return order.total * self.percentage
143
+
144
+ class FixedDiscount(DiscountStrategy):
145
+ def __init__(self, amount):
146
+ self.amount = amount
147
+
148
+ def calculate(self, order):
149
+ return self.amount
150
+
151
+ class TieredDiscount(DiscountStrategy):
152
+ def calculate(self, order):
153
+ if order.total > 1000: return order.total * 0.15
154
+ if order.total > 500: return order.total * 0.10
155
+ return order.total * 0.05
156
+
157
+ class DiscountCalculator:
158
+ def calculate(self, order, strategy: DiscountStrategy):
159
+ return strategy.calculate(order)
160
+ ```
161
+
162
+ **Liskov Substitution Principle (LSP)**
163
+ ```typescript
164
+ // BEFORE: Violates LSP - Square changes Rectangle behavior
165
+ class Rectangle {
166
+ constructor(protected width: number, protected height: number) {}
167
+
168
+ setWidth(width: number) { this.width = width; }
169
+ setHeight(height: number) { this.height = height; }
170
+ area(): number { return this.width * this.height; }
171
+ }
172
+
173
+ class Square extends Rectangle {
174
+ setWidth(width: number) {
175
+ this.width = width;
176
+ this.height = width; // Breaks LSP
177
+ }
178
+ setHeight(height: number) {
179
+ this.width = height;
180
+ this.height = height; // Breaks LSP
181
+ }
182
+ }
183
+
184
+ // AFTER: Proper abstraction respects LSP
185
+ interface Shape {
186
+ area(): number;
187
+ }
188
+
189
+ class Rectangle implements Shape {
190
+ constructor(private width: number, private height: number) {}
191
+ area(): number { return this.width * this.height; }
192
+ }
193
+
194
+ class Square implements Shape {
195
+ constructor(private side: number) {}
196
+ area(): number { return this.side * this.side; }
197
+ }
198
+ ```
199
+
200
+ **Interface Segregation Principle (ISP)**
201
+ ```java
202
+ // BEFORE: Fat interface forces unnecessary implementations
203
+ interface Worker {
204
+ void work();
205
+ void eat();
206
+ void sleep();
207
+ }
208
+
209
+ class Robot implements Worker {
210
+ public void work() { /* work */ }
211
+ public void eat() { /* robots don't eat! */ }
212
+ public void sleep() { /* robots don't sleep! */ }
213
+ }
214
+
215
+ // AFTER: Segregated interfaces
216
+ interface Workable {
217
+ void work();
218
+ }
219
+
220
+ interface Eatable {
221
+ void eat();
222
+ }
223
+
224
+ interface Sleepable {
225
+ void sleep();
226
+ }
227
+
228
+ class Human implements Workable, Eatable, Sleepable {
229
+ public void work() { /* work */ }
230
+ public void eat() { /* eat */ }
231
+ public void sleep() { /* sleep */ }
232
+ }
233
+
234
+ class Robot implements Workable {
235
+ public void work() { /* work */ }
236
+ }
237
+ ```
238
+
239
+ **Dependency Inversion Principle (DIP)**
240
+ ```go
241
+ // BEFORE: High-level module depends on low-level module
242
+ type MySQLDatabase struct{}
243
+
244
+ func (db *MySQLDatabase) Save(data string) {}
245
+
246
+ type UserService struct {
247
+ db *MySQLDatabase // Tight coupling
248
+ }
249
+
250
+ func (s *UserService) CreateUser(name string) {
251
+ s.db.Save(name)
252
+ }
253
+
254
+ // AFTER: Both depend on abstraction
255
+ type Database interface {
256
+ Save(data string)
257
+ }
258
+
259
+ type MySQLDatabase struct{}
260
+ func (db *MySQLDatabase) Save(data string) {}
261
+
262
+ type PostgresDatabase struct{}
263
+ func (db *PostgresDatabase) Save(data string) {}
264
+
265
+ type UserService struct {
266
+ db Database // Depends on abstraction
267
+ }
268
+
269
+ func NewUserService(db Database) *UserService {
270
+ return &UserService{db: db}
271
+ }
272
+
273
+ func (s *UserService) CreateUser(name string) {
274
+ s.db.Save(name)
275
+ }
276
+ ```
277
+
278
+ ### 4. Complete Refactoring Scenarios
279
+
280
+ **Scenario 1: Legacy Monolith to Clean Modular Architecture**
281
+
282
+ ```python
283
+ # BEFORE: 500-line monolithic file
284
+ class OrderSystem:
285
+ def process_order(self, order_data):
286
+ # Validation (100 lines)
287
+ if not order_data.get('customer_id'):
288
+ return {'error': 'No customer'}
289
+ if not order_data.get('items'):
290
+ return {'error': 'No items'}
291
+ # Database operations mixed in (150 lines)
292
+ conn = mysql.connector.connect(host='localhost', user='root')
293
+ cursor = conn.cursor()
294
+ cursor.execute("INSERT INTO orders...")
295
+ # Business logic (100 lines)
296
+ total = 0
297
+ for item in order_data['items']:
298
+ total += item['price'] * item['quantity']
299
+ # Email notifications (80 lines)
300
+ smtp = smtplib.SMTP('smtp.gmail.com')
301
+ smtp.sendmail(...)
302
+ # Logging and analytics (70 lines)
303
+ log_file = open('/var/log/orders.log', 'a')
304
+ log_file.write(f"Order processed: {order_data}")
305
+
306
+ # AFTER: Clean, modular architecture
307
+ # domain/entities.py
308
+ from dataclasses import dataclass
309
+ from typing import List
310
+ from decimal import Decimal
311
+
312
+ @dataclass
313
+ class OrderItem:
314
+ product_id: str
315
+ quantity: int
316
+ price: Decimal
317
+
318
+ @dataclass
319
+ class Order:
320
+ customer_id: str
321
+ items: List[OrderItem]
322
+
323
+ @property
324
+ def total(self) -> Decimal:
325
+ return sum(item.price * item.quantity for item in self.items)
326
+
327
+ # domain/repositories.py
328
+ from abc import ABC, abstractmethod
329
+
330
+ class OrderRepository(ABC):
331
+ @abstractmethod
332
+ def save(self, order: Order) -> str: pass
333
+
334
+ @abstractmethod
335
+ def find_by_id(self, order_id: str) -> Order: pass
336
+
337
+ # infrastructure/mysql_order_repository.py
338
+ class MySQLOrderRepository(OrderRepository):
339
+ def __init__(self, connection_pool):
340
+ self.pool = connection_pool
341
+
342
+ def save(self, order: Order) -> str:
343
+ with self.pool.get_connection() as conn:
344
+ cursor = conn.cursor()
345
+ cursor.execute(
346
+ "INSERT INTO orders (customer_id, total) VALUES (%s, %s)",
347
+ (order.customer_id, order.total)
348
+ )
349
+ return cursor.lastrowid
350
+
351
+ # application/validators.py
352
+ class OrderValidator:
353
+ def validate(self, order: Order) -> None:
354
+ if not order.customer_id:
355
+ raise ValueError("Customer ID is required")
356
+ if not order.items:
357
+ raise ValueError("Order must contain items")
358
+ if order.total <= 0:
359
+ raise ValueError("Order total must be positive")
360
+
361
+ # application/services.py
362
+ class OrderService:
363
+ def __init__(
364
+ self,
365
+ validator: OrderValidator,
366
+ repository: OrderRepository,
367
+ email_service: EmailService,
368
+ logger: Logger
369
+ ):
370
+ self.validator = validator
371
+ self.repository = repository
372
+ self.email_service = email_service
373
+ self.logger = logger
374
+
375
+ def process_order(self, order: Order) -> str:
376
+ self.validator.validate(order)
377
+ order_id = self.repository.save(order)
378
+ self.email_service.send_confirmation(order)
379
+ self.logger.info(f"Order {order_id} processed successfully")
380
+ return order_id
381
+ ```
382
+
383
+ **Scenario 2: Code Smell Resolution Catalog**
384
+
385
+ ```typescript
386
+ // SMELL: Long Parameter List
387
+ // BEFORE
388
+ function createUser(
389
+ firstName: string,
390
+ lastName: string,
391
+ email: string,
392
+ phone: string,
393
+ address: string,
394
+ city: string,
395
+ state: string,
396
+ zipCode: string
397
+ ) {}
398
+
399
+ // AFTER: Parameter Object
400
+ interface UserData {
401
+ firstName: string;
402
+ lastName: string;
403
+ email: string;
404
+ phone: string;
405
+ address: Address;
406
+ }
407
+
408
+ interface Address {
409
+ street: string;
410
+ city: string;
411
+ state: string;
412
+ zipCode: string;
413
+ }
414
+
415
+ function createUser(userData: UserData) {}
416
+
417
+ // SMELL: Feature Envy (method uses another class's data more than its own)
418
+ // BEFORE
419
+ class Order {
420
+ calculateShipping(customer: Customer): number {
421
+ if (customer.isPremium) {
422
+ return customer.address.isInternational ? 0 : 5;
423
+ }
424
+ return customer.address.isInternational ? 20 : 10;
425
+ }
426
+ }
427
+
428
+ // AFTER: Move method to the class it envies
429
+ class Customer {
430
+ calculateShippingCost(): number {
431
+ if (this.isPremium) {
432
+ return this.address.isInternational ? 0 : 5;
433
+ }
434
+ return this.address.isInternational ? 20 : 10;
435
+ }
436
+ }
437
+
438
+ class Order {
439
+ calculateShipping(customer: Customer): number {
440
+ return customer.calculateShippingCost();
441
+ }
442
+ }
443
+
444
+ // SMELL: Primitive Obsession
445
+ // BEFORE
446
+ function validateEmail(email: string): boolean {
447
+ return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
448
+ }
449
+
450
+ let userEmail: string = "test@example.com";
451
+
452
+ // AFTER: Value Object
453
+ class Email {
454
+ private readonly value: string;
455
+
456
+ constructor(email: string) {
457
+ if (!this.isValid(email)) {
458
+ throw new Error("Invalid email format");
459
+ }
460
+ this.value = email;
461
+ }
462
+
463
+ private isValid(email: string): boolean {
464
+ return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
465
+ }
466
+
467
+ toString(): string {
468
+ return this.value;
469
+ }
470
+ }
471
+
472
+ let userEmail = new Email("test@example.com"); // Validation automatic
473
+ ```
474
+
475
+ ### 5. Decision Frameworks
476
+
477
+ **Code Quality Metrics Interpretation Matrix**
478
+
479
+ | Metric | Good | Warning | Critical | Action |
480
+ |--------|------|---------|----------|--------|
481
+ | Cyclomatic Complexity | <10 | 10-15 | >15 | Split into smaller methods |
482
+ | Method Lines | <20 | 20-50 | >50 | Extract methods, apply SRP |
483
+ | Class Lines | <200 | 200-500 | >500 | Decompose into multiple classes |
484
+ | Test Coverage | >80% | 60-80% | <60% | Add unit tests immediately |
485
+ | Code Duplication | <3% | 3-5% | >5% | Extract common code |
486
+ | Comment Ratio | 10-30% | <10% or >50% | N/A | Improve naming or reduce noise |
487
+ | Dependency Count | <5 | 5-10 | >10 | Apply DIP, use facades |
488
+
489
+ **Refactoring ROI Analysis**
490
+
491
+ ```
492
+ Priority = (Business Value × Technical Debt) / (Effort × Risk)
493
+
494
+ Business Value (1-10):
495
+ - Critical path code: 10
496
+ - Frequently changed: 8
497
+ - User-facing features: 7
498
+ - Internal tools: 5
499
+ - Legacy unused: 2
500
+
501
+ Technical Debt (1-10):
502
+ - Causes production bugs: 10
503
+ - Blocks new features: 8
504
+ - Hard to test: 6
505
+ - Style issues only: 2
506
+
507
+ Effort (hours):
508
+ - Rename variables: 1-2
509
+ - Extract methods: 2-4
510
+ - Refactor class: 4-8
511
+ - Architecture change: 40+
512
+
513
+ Risk (1-10):
514
+ - No tests, high coupling: 10
515
+ - Some tests, medium coupling: 5
516
+ - Full tests, loose coupling: 2
517
+ ```
518
+
519
+ **Technical Debt Prioritization Decision Tree**
520
+
521
+ ```
522
+ Is it causing production bugs?
523
+ ├─ YES → Priority: CRITICAL (Fix immediately)
524
+ └─ NO → Is it blocking new features?
525
+ ├─ YES → Priority: HIGH (Schedule this sprint)
526
+ └─ NO → Is it frequently modified?
527
+ ├─ YES → Priority: MEDIUM (Next quarter)
528
+ └─ NO → Is code coverage < 60%?
529
+ ├─ YES → Priority: MEDIUM (Add tests)
530
+ └─ NO → Priority: LOW (Backlog)
531
+ ```
532
+
533
+ ### 6. Modern Code Quality Practices (2024-2025)
534
+
535
+ **AI-Assisted Code Review Integration**
536
+
537
+ ```yaml
538
+ # .github/workflows/ai-review.yml
539
+ name: AI Code Review
540
+ on: [pull_request]
541
+
542
+ jobs:
543
+ ai-review:
544
+ runs-on: ubuntu-latest
545
+ steps:
546
+ - uses: actions/checkout@v4
547
+
548
+ # GitHub Copilot Autofix
549
+ - uses: github/copilot-autofix@v1
550
+ with:
551
+ languages: 'python,typescript,go'
552
+
553
+ # CodeRabbit AI Review
554
+ - uses: coderabbitai/action@v1
555
+ with:
556
+ review_type: 'comprehensive'
557
+ focus: 'security,performance,maintainability'
558
+
559
+ # Codium AI PR-Agent
560
+ - uses: codiumai/pr-agent@v1
561
+ with:
562
+ commands: '/review --pr_reviewer.num_code_suggestions=5'
563
+ ```
564
+
565
+ **Static Analysis Toolchain**
566
+
567
+ ```python
568
+ # pyproject.toml
569
+ [tool.ruff]
570
+ line-length = 100
571
+ select = [
572
+ "E", # pycodestyle errors
573
+ "W", # pycodestyle warnings
574
+ "F", # pyflakes
575
+ "I", # isort
576
+ "C90", # mccabe complexity
577
+ "N", # pep8-naming
578
+ "UP", # pyupgrade
579
+ "B", # flake8-bugbear
580
+ "A", # flake8-builtins
581
+ "C4", # flake8-comprehensions
582
+ "SIM", # flake8-simplify
583
+ "RET", # flake8-return
584
+ ]
585
+
586
+ [tool.mypy]
587
+ strict = true
588
+ warn_unreachable = true
589
+ warn_unused_ignores = true
590
+
591
+ [tool.coverage]
592
+ fail_under = 80
593
+ ```
594
+
595
+ ```javascript
596
+ // .eslintrc.json
597
+ {
598
+ "extends": [
599
+ "eslint:recommended",
600
+ "plugin:@typescript-eslint/recommended-type-checked",
601
+ "plugin:sonarjs/recommended",
602
+ "plugin:security/recommended"
603
+ ],
604
+ "plugins": ["sonarjs", "security", "no-loops"],
605
+ "rules": {
606
+ "complexity": ["error", 10],
607
+ "max-lines-per-function": ["error", 20],
608
+ "max-params": ["error", 3],
609
+ "no-loops/no-loops": "warn",
610
+ "sonarjs/cognitive-complexity": ["error", 15]
611
+ }
612
+ }
613
+ ```
614
+
615
+ **Automated Refactoring Suggestions**
616
+
617
+ ```python
618
+ # Use Sourcery for automatic refactoring suggestions
619
+ # sourcery.yaml
620
+ rules:
621
+ - id: convert-to-list-comprehension
622
+ - id: merge-duplicate-blocks
623
+ - id: use-named-expression
624
+ - id: inline-immediately-returned-variable
625
+
626
+ # Example: Sourcery will suggest
627
+ # BEFORE
628
+ result = []
629
+ for item in items:
630
+ if item.is_active:
631
+ result.append(item.name)
632
+
633
+ # AFTER (auto-suggested)
634
+ result = [item.name for item in items if item.is_active]
635
+ ```
636
+
637
+ **Code Quality Dashboard Configuration**
638
+
639
+ ```yaml
640
+ # sonar-project.properties
641
+ sonar.projectKey=my-project
642
+ sonar.sources=src
643
+ sonar.tests=tests
644
+ sonar.coverage.exclusions=**/*_test.py,**/test_*.py
645
+ sonar.python.coverage.reportPaths=coverage.xml
646
+
647
+ # Quality Gates
648
+ sonar.qualitygate.wait=true
649
+ sonar.qualitygate.timeout=300
650
+
651
+ # Thresholds
652
+ sonar.coverage.threshold=80
653
+ sonar.duplications.threshold=3
654
+ sonar.maintainability.rating=A
655
+ sonar.reliability.rating=A
656
+ sonar.security.rating=A
657
+ ```
658
+
659
+ **Security-Focused Refactoring**
660
+
661
+ ```python
662
+ # Use Semgrep for security-aware refactoring
663
+ # .semgrep.yml
664
+ rules:
665
+ - id: sql-injection-risk
666
+ pattern: execute($QUERY)
667
+ message: Potential SQL injection
668
+ severity: ERROR
669
+ fix: Use parameterized queries
670
+
671
+ - id: hardcoded-secrets
672
+ pattern: password = "..."
673
+ message: Hardcoded password detected
674
+ severity: ERROR
675
+ fix: Use environment variables or secret manager
676
+
677
+ # CodeQL security analysis
678
+ # .github/workflows/codeql.yml
679
+ - uses: github/codeql-action/analyze@v3
680
+ with:
681
+ category: "/language:python"
682
+ queries: security-extended,security-and-quality
683
+ ```
684
+
685
+ ### 7. Refactored Implementation
686
+
687
+ Provide the complete refactored code with:
688
+
689
+ **Clean Code Principles**
690
+ - Meaningful names (searchable, pronounceable, no abbreviations)
691
+ - Functions do one thing well
692
+ - No side effects
693
+ - Consistent abstraction levels
694
+ - DRY (Don't Repeat Yourself)
695
+ - YAGNI (You Aren't Gonna Need It)
696
+
697
+ **Error Handling**
698
+ ```python
699
+ # Use specific exceptions
700
+ class OrderValidationError(Exception):
701
+ pass
702
+
703
+ class InsufficientInventoryError(Exception):
704
+ pass
705
+
706
+ # Fail fast with clear messages
707
+ def validate_order(order):
708
+ if not order.items:
709
+ raise OrderValidationError("Order must contain at least one item")
710
+
711
+ for item in order.items:
712
+ if item.quantity <= 0:
713
+ raise OrderValidationError(f"Invalid quantity for {item.name}")
714
+ ```
715
+
716
+ **Documentation**
717
+ ```python
718
+ def calculate_discount(order: Order, customer: Customer) -> Decimal:
719
+ """
720
+ Calculate the total discount for an order based on customer tier and order value.
721
+
722
+ Args:
723
+ order: The order to calculate discount for
724
+ customer: The customer making the order
725
+
726
+ Returns:
727
+ The discount amount as a Decimal
728
+
729
+ Raises:
730
+ ValueError: If order total is negative
731
+ """
732
+ ```
733
+
734
+ ### 8. Testing Strategy
735
+
736
+ Generate comprehensive tests for the refactored code:
737
+
738
+ **Unit Tests**
739
+ ```python
740
+ class TestOrderProcessor:
741
+ def test_validate_order_empty_items(self):
742
+ order = Order(items=[])
743
+ with pytest.raises(OrderValidationError):
744
+ validate_order(order)
745
+
746
+ def test_calculate_discount_vip_customer(self):
747
+ order = create_test_order(total=1000)
748
+ customer = Customer(tier="VIP")
749
+ discount = calculate_discount(order, customer)
750
+ assert discount == Decimal("100.00") # 10% VIP discount
751
+ ```
752
+
753
+ **Test Coverage**
754
+ - All public methods tested
755
+ - Edge cases covered
756
+ - Error conditions verified
757
+ - Performance benchmarks included
758
+
759
+ ### 9. Before/After Comparison
760
+
761
+ Provide clear comparisons showing improvements:
762
+
763
+ **Metrics**
764
+ - Cyclomatic complexity reduction
765
+ - Lines of code per method
766
+ - Test coverage increase
767
+ - Performance improvements
768
+
769
+ **Example**
770
+ ```
771
+ Before:
772
+ - processData(): 150 lines, complexity: 25
773
+ - 0% test coverage
774
+ - 3 responsibilities mixed
775
+
776
+ After:
777
+ - validateInput(): 20 lines, complexity: 4
778
+ - transformData(): 25 lines, complexity: 5
779
+ - saveResults(): 15 lines, complexity: 3
780
+ - 95% test coverage
781
+ - Clear separation of concerns
782
+ ```
783
+
784
+ ### 10. Migration Guide
785
+
786
+ If breaking changes are introduced:
787
+
788
+ **Step-by-Step Migration**
789
+ 1. Install new dependencies
790
+ 2. Update import statements
791
+ 3. Replace deprecated methods
792
+ 4. Run migration scripts
793
+ 5. Execute test suite
794
+
795
+ **Backward Compatibility**
796
+ ```python
797
+ # Temporary adapter for smooth migration
798
+ class LegacyOrderProcessor:
799
+ def __init__(self):
800
+ self.processor = OrderProcessor()
801
+
802
+ def process(self, order_data):
803
+ # Convert legacy format
804
+ order = Order.from_legacy(order_data)
805
+ return self.processor.process(order)
806
+ ```
807
+
808
+ ### 11. Performance Optimizations
809
+
810
+ Include specific optimizations:
811
+
812
+ **Algorithm Improvements**
813
+ ```python
814
+ # Before: O(n²)
815
+ for item in items:
816
+ for other in items:
817
+ if item.id == other.id:
818
+ # process
819
+
820
+ # After: O(n)
821
+ item_map = {item.id: item for item in items}
822
+ for item_id, item in item_map.items():
823
+ # process
824
+ ```
825
+
826
+ **Caching Strategy**
827
+ ```python
828
+ from functools import lru_cache
829
+
830
+ @lru_cache(maxsize=128)
831
+ def calculate_expensive_metric(data_id: str) -> float:
832
+ # Expensive calculation cached
833
+ return result
834
+ ```
835
+
836
+ ### 12. Code Quality Checklist
837
+
838
+ Ensure the refactored code meets these criteria:
839
+
840
+ - [ ] All methods < 20 lines
841
+ - [ ] All classes < 200 lines
842
+ - [ ] No method has > 3 parameters
843
+ - [ ] Cyclomatic complexity < 10
844
+ - [ ] No nested loops > 2 levels
845
+ - [ ] All names are descriptive
846
+ - [ ] No commented-out code
847
+ - [ ] Consistent formatting
848
+ - [ ] Type hints added (Python/TypeScript)
849
+ - [ ] Error handling comprehensive
850
+ - [ ] Logging added for debugging
851
+ - [ ] Performance metrics included
852
+ - [ ] Documentation complete
853
+ - [ ] Tests achieve > 80% coverage
854
+ - [ ] No security vulnerabilities
855
+ - [ ] AI code review passed
856
+ - [ ] Static analysis clean (SonarQube/CodeQL)
857
+ - [ ] No hardcoded secrets
858
+
859
+ ## Severity Levels
860
+
861
+ Rate issues found and improvements made:
862
+
863
+ **Critical**: Security vulnerabilities, data corruption risks, memory leaks
864
+ **High**: Performance bottlenecks, maintainability blockers, missing tests
865
+ **Medium**: Code smells, minor performance issues, incomplete documentation
866
+ **Low**: Style inconsistencies, minor naming issues, nice-to-have features
867
+
868
+ ## Output Format
869
+
870
+ 1. **Analysis Summary**: Key issues found and their impact
871
+ 2. **Refactoring Plan**: Prioritized list of changes with effort estimates
872
+ 3. **Refactored Code**: Complete implementation with inline comments explaining changes
873
+ 4. **Test Suite**: Comprehensive tests for all refactored components
874
+ 5. **Migration Guide**: Step-by-step instructions for adopting changes
875
+ 6. **Metrics Report**: Before/after comparison of code quality metrics
876
+ 7. **AI Review Results**: Summary of automated code review findings
877
+ 8. **Quality Dashboard**: Link to SonarQube/CodeQL results
878
+
879
+ Focus on delivering practical, incremental improvements that can be adopted immediately while maintaining system stability.