@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,479 @@
1
+ # Architecture Patterns Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Core Concepts
6
+
7
+ ### 1. Clean Architecture (Uncle Bob)
8
+
9
+ **Layers (dependency flows inward):**
10
+
11
+ - **Entities**: Core business models
12
+ - **Use Cases**: Application business rules
13
+ - **Interface Adapters**: Controllers, presenters, gateways
14
+ - **Frameworks & Drivers**: UI, database, external services
15
+
16
+ **Key Principles:**
17
+
18
+ - Dependencies point inward
19
+ - Inner layers know nothing about outer layers
20
+ - Business logic independent of frameworks
21
+ - Testable without UI, database, or external services
22
+
23
+ ### 2. Hexagonal Architecture (Ports and Adapters)
24
+
25
+ **Components:**
26
+
27
+ - **Domain Core**: Business logic
28
+ - **Ports**: Interfaces defining interactions
29
+ - **Adapters**: Implementations of ports (database, REST, message queue)
30
+
31
+ **Benefits:**
32
+
33
+ - Swap implementations easily (mock for testing)
34
+ - Technology-agnostic core
35
+ - Clear separation of concerns
36
+
37
+ ### 3. Domain-Driven Design (DDD)
38
+
39
+ **Strategic Patterns:**
40
+
41
+ - **Bounded Contexts**: Separate models for different domains
42
+ - **Context Mapping**: How contexts relate
43
+ - **Ubiquitous Language**: Shared terminology
44
+
45
+ **Tactical Patterns:**
46
+
47
+ - **Entities**: Objects with identity
48
+ - **Value Objects**: Immutable objects defined by attributes
49
+ - **Aggregates**: Consistency boundaries
50
+ - **Repositories**: Data access abstraction
51
+ - **Domain Events**: Things that happened
52
+
53
+ ## Clean Architecture Pattern
54
+
55
+ ### Directory Structure
56
+
57
+ ```
58
+ app/
59
+ ├── domain/ # Entities & business rules
60
+ │ ├── entities/
61
+ │ │ ├── user.py
62
+ │ │ └── order.py
63
+ │ ├── value_objects/
64
+ │ │ ├── email.py
65
+ │ │ └── money.py
66
+ │ └── interfaces/ # Abstract interfaces
67
+ │ ├── user_repository.py
68
+ │ └── payment_gateway.py
69
+ ├── use_cases/ # Application business rules
70
+ │ ├── create_user.py
71
+ │ ├── process_order.py
72
+ │ └── send_notification.py
73
+ ├── adapters/ # Interface implementations
74
+ │ ├── repositories/
75
+ │ │ ├── postgres_user_repository.py
76
+ │ │ └── redis_cache_repository.py
77
+ │ ├── controllers/
78
+ │ │ └── user_controller.py
79
+ │ └── gateways/
80
+ │ ├── stripe_payment_gateway.py
81
+ │ └── sendgrid_email_gateway.py
82
+ └── infrastructure/ # Framework & external concerns
83
+ ├── database.py
84
+ ├── config.py
85
+ └── logging.py
86
+ ```
87
+
88
+ ### Implementation Example
89
+
90
+ ```python
91
+ # domain/entities/user.py
92
+ from dataclasses import dataclass
93
+ from datetime import datetime
94
+ from typing import Optional
95
+
96
+ @dataclass
97
+ class User:
98
+ """Core user entity - no framework dependencies."""
99
+ id: str
100
+ email: str
101
+ name: str
102
+ created_at: datetime
103
+ is_active: bool = True
104
+
105
+ def deactivate(self):
106
+ """Business rule: deactivating user."""
107
+ self.is_active = False
108
+
109
+ def can_place_order(self) -> bool:
110
+ """Business rule: active users can order."""
111
+ return self.is_active
112
+
113
+ # domain/interfaces/user_repository.py
114
+ from abc import ABC, abstractmethod
115
+ from typing import Optional, List
116
+ from domain.entities.user import User
117
+
118
+ class IUserRepository(ABC):
119
+ """Port: defines contract, no implementation."""
120
+
121
+ @abstractmethod
122
+ async def find_by_id(self, user_id: str) -> Optional[User]:
123
+ pass
124
+
125
+ @abstractmethod
126
+ async def find_by_email(self, email: str) -> Optional[User]:
127
+ pass
128
+
129
+ @abstractmethod
130
+ async def save(self, user: User) -> User:
131
+ pass
132
+
133
+ @abstractmethod
134
+ async def delete(self, user_id: str) -> bool:
135
+ pass
136
+
137
+ # use_cases/create_user.py
138
+ from domain.entities.user import User
139
+ from domain.interfaces.user_repository import IUserRepository
140
+ from dataclasses import dataclass
141
+ from datetime import datetime
142
+ import uuid
143
+
144
+ @dataclass
145
+ class CreateUserRequest:
146
+ email: str
147
+ name: str
148
+
149
+ @dataclass
150
+ class CreateUserResponse:
151
+ user: User
152
+ success: bool
153
+ error: Optional[str] = None
154
+
155
+ class CreateUserUseCase:
156
+ """Use case: orchestrates business logic."""
157
+
158
+ def __init__(self, user_repository: IUserRepository):
159
+ self.user_repository = user_repository
160
+
161
+ async def execute(self, request: CreateUserRequest) -> CreateUserResponse:
162
+ # Business validation
163
+ existing = await self.user_repository.find_by_email(request.email)
164
+ if existing:
165
+ return CreateUserResponse(
166
+ user=None,
167
+ success=False,
168
+ error="Email already exists"
169
+ )
170
+
171
+ # Create entity
172
+ user = User(
173
+ id=str(uuid.uuid4()),
174
+ email=request.email,
175
+ name=request.name,
176
+ created_at=datetime.now(),
177
+ is_active=True
178
+ )
179
+
180
+ # Persist
181
+ saved_user = await self.user_repository.save(user)
182
+
183
+ return CreateUserResponse(
184
+ user=saved_user,
185
+ success=True
186
+ )
187
+
188
+ # adapters/repositories/postgres_user_repository.py
189
+ from domain.interfaces.user_repository import IUserRepository
190
+ from domain.entities.user import User
191
+ from typing import Optional
192
+ import asyncpg
193
+
194
+ class PostgresUserRepository(IUserRepository):
195
+ """Adapter: PostgreSQL implementation."""
196
+
197
+ def __init__(self, pool: asyncpg.Pool):
198
+ self.pool = pool
199
+
200
+ async def find_by_id(self, user_id: str) -> Optional[User]:
201
+ async with self.pool.acquire() as conn:
202
+ row = await conn.fetchrow(
203
+ "SELECT * FROM users WHERE id = $1", user_id
204
+ )
205
+ return self._to_entity(row) if row else None
206
+
207
+ async def find_by_email(self, email: str) -> Optional[User]:
208
+ async with self.pool.acquire() as conn:
209
+ row = await conn.fetchrow(
210
+ "SELECT * FROM users WHERE email = $1", email
211
+ )
212
+ return self._to_entity(row) if row else None
213
+
214
+ async def save(self, user: User) -> User:
215
+ async with self.pool.acquire() as conn:
216
+ await conn.execute(
217
+ """
218
+ INSERT INTO users (id, email, name, created_at, is_active)
219
+ VALUES ($1, $2, $3, $4, $5)
220
+ ON CONFLICT (id) DO UPDATE
221
+ SET email = $2, name = $3, is_active = $5
222
+ """,
223
+ user.id, user.email, user.name, user.created_at, user.is_active
224
+ )
225
+ return user
226
+
227
+ async def delete(self, user_id: str) -> bool:
228
+ async with self.pool.acquire() as conn:
229
+ result = await conn.execute(
230
+ "DELETE FROM users WHERE id = $1", user_id
231
+ )
232
+ return result == "DELETE 1"
233
+
234
+ def _to_entity(self, row) -> User:
235
+ """Map database row to entity."""
236
+ return User(
237
+ id=row["id"],
238
+ email=row["email"],
239
+ name=row["name"],
240
+ created_at=row["created_at"],
241
+ is_active=row["is_active"]
242
+ )
243
+
244
+ # adapters/controllers/user_controller.py
245
+ from fastapi import APIRouter, Depends, HTTPException
246
+ from use_cases.create_user import CreateUserUseCase, CreateUserRequest
247
+ from pydantic import BaseModel
248
+
249
+ router = APIRouter()
250
+
251
+ class CreateUserDTO(BaseModel):
252
+ email: str
253
+ name: str
254
+
255
+ @router.post("/users")
256
+ async def create_user(
257
+ dto: CreateUserDTO,
258
+ use_case: CreateUserUseCase = Depends(get_create_user_use_case)
259
+ ):
260
+ """Controller: handles HTTP concerns only."""
261
+ request = CreateUserRequest(email=dto.email, name=dto.name)
262
+ response = await use_case.execute(request)
263
+
264
+ if not response.success:
265
+ raise HTTPException(status_code=400, detail=response.error)
266
+
267
+ return {"user": response.user}
268
+ ```
269
+
270
+ ## Hexagonal Architecture Pattern
271
+
272
+ ```python
273
+ # Core domain (hexagon center)
274
+ class OrderService:
275
+ """Domain service - no infrastructure dependencies."""
276
+
277
+ def __init__(
278
+ self,
279
+ order_repository: OrderRepositoryPort,
280
+ payment_gateway: PaymentGatewayPort,
281
+ notification_service: NotificationPort
282
+ ):
283
+ self.orders = order_repository
284
+ self.payments = payment_gateway
285
+ self.notifications = notification_service
286
+
287
+ async def place_order(self, order: Order) -> OrderResult:
288
+ # Business logic
289
+ if not order.is_valid():
290
+ return OrderResult(success=False, error="Invalid order")
291
+
292
+ # Use ports (interfaces)
293
+ payment = await self.payments.charge(
294
+ amount=order.total,
295
+ customer=order.customer_id
296
+ )
297
+
298
+ if not payment.success:
299
+ return OrderResult(success=False, error="Payment failed")
300
+
301
+ order.mark_as_paid()
302
+ saved_order = await self.orders.save(order)
303
+
304
+ await self.notifications.send(
305
+ to=order.customer_email,
306
+ subject="Order confirmed",
307
+ body=f"Order {order.id} confirmed"
308
+ )
309
+
310
+ return OrderResult(success=True, order=saved_order)
311
+
312
+ # Ports (interfaces)
313
+ class OrderRepositoryPort(ABC):
314
+ @abstractmethod
315
+ async def save(self, order: Order) -> Order:
316
+ pass
317
+
318
+ class PaymentGatewayPort(ABC):
319
+ @abstractmethod
320
+ async def charge(self, amount: Money, customer: str) -> PaymentResult:
321
+ pass
322
+
323
+ class NotificationPort(ABC):
324
+ @abstractmethod
325
+ async def send(self, to: str, subject: str, body: str):
326
+ pass
327
+
328
+ # Adapters (implementations)
329
+ class StripePaymentAdapter(PaymentGatewayPort):
330
+ """Primary adapter: connects to Stripe API."""
331
+
332
+ def __init__(self, api_key: str):
333
+ self.stripe = stripe
334
+ self.stripe.api_key = api_key
335
+
336
+ async def charge(self, amount: Money, customer: str) -> PaymentResult:
337
+ try:
338
+ charge = self.stripe.Charge.create(
339
+ amount=amount.cents,
340
+ currency=amount.currency,
341
+ customer=customer
342
+ )
343
+ return PaymentResult(success=True, transaction_id=charge.id)
344
+ except stripe.error.CardError as e:
345
+ return PaymentResult(success=False, error=str(e))
346
+
347
+ class MockPaymentAdapter(PaymentGatewayPort):
348
+ """Test adapter: no external dependencies."""
349
+
350
+ async def charge(self, amount: Money, customer: str) -> PaymentResult:
351
+ return PaymentResult(success=True, transaction_id="mock-123")
352
+ ```
353
+
354
+ ## Domain-Driven Design Pattern
355
+
356
+ ```python
357
+ # Value Objects (immutable)
358
+ from dataclasses import dataclass
359
+ from typing import Optional
360
+
361
+ @dataclass(frozen=True)
362
+ class Email:
363
+ """Value object: validated email."""
364
+ value: str
365
+
366
+ def __post_init__(self):
367
+ if "@" not in self.value:
368
+ raise ValueError("Invalid email")
369
+
370
+ @dataclass(frozen=True)
371
+ class Money:
372
+ """Value object: amount with currency."""
373
+ amount: int # cents
374
+ currency: str
375
+
376
+ def add(self, other: "Money") -> "Money":
377
+ if self.currency != other.currency:
378
+ raise ValueError("Currency mismatch")
379
+ return Money(self.amount + other.amount, self.currency)
380
+
381
+ # Entities (with identity)
382
+ class Order:
383
+ """Entity: has identity, mutable state."""
384
+
385
+ def __init__(self, id: str, customer: Customer):
386
+ self.id = id
387
+ self.customer = customer
388
+ self.items: List[OrderItem] = []
389
+ self.status = OrderStatus.PENDING
390
+ self._events: List[DomainEvent] = []
391
+
392
+ def add_item(self, product: Product, quantity: int):
393
+ """Business logic in entity."""
394
+ item = OrderItem(product, quantity)
395
+ self.items.append(item)
396
+ self._events.append(ItemAddedEvent(self.id, item))
397
+
398
+ def total(self) -> Money:
399
+ """Calculated property."""
400
+ return sum(item.subtotal() for item in self.items)
401
+
402
+ def submit(self):
403
+ """State transition with business rules."""
404
+ if not self.items:
405
+ raise ValueError("Cannot submit empty order")
406
+ if self.status != OrderStatus.PENDING:
407
+ raise ValueError("Order already submitted")
408
+
409
+ self.status = OrderStatus.SUBMITTED
410
+ self._events.append(OrderSubmittedEvent(self.id))
411
+
412
+ # Aggregates (consistency boundary)
413
+ class Customer:
414
+ """Aggregate root: controls access to entities."""
415
+
416
+ def __init__(self, id: str, email: Email):
417
+ self.id = id
418
+ self.email = email
419
+ self._addresses: List[Address] = []
420
+ self._orders: List[str] = [] # Order IDs, not full objects
421
+
422
+ def add_address(self, address: Address):
423
+ """Aggregate enforces invariants."""
424
+ if len(self._addresses) >= 5:
425
+ raise ValueError("Maximum 5 addresses allowed")
426
+ self._addresses.append(address)
427
+
428
+ @property
429
+ def primary_address(self) -> Optional[Address]:
430
+ return next((a for a in self._addresses if a.is_primary), None)
431
+
432
+ # Domain Events
433
+ @dataclass
434
+ class OrderSubmittedEvent:
435
+ order_id: str
436
+ occurred_at: datetime = field(default_factory=datetime.now)
437
+
438
+ # Repository (aggregate persistence)
439
+ class OrderRepository:
440
+ """Repository: persist/retrieve aggregates."""
441
+
442
+ async def find_by_id(self, order_id: str) -> Optional[Order]:
443
+ """Reconstitute aggregate from storage."""
444
+ pass
445
+
446
+ async def save(self, order: Order):
447
+ """Persist aggregate and publish events."""
448
+ await self._persist(order)
449
+ await self._publish_events(order._events)
450
+ order._events.clear()
451
+ ```
452
+
453
+ ## Resources
454
+
455
+ - **references/clean-architecture-guide.md**: Detailed layer breakdown
456
+ - **references/hexagonal-architecture-guide.md**: Ports and adapters patterns
457
+ - **references/ddd-tactical-patterns.md**: Entities, value objects, aggregates
458
+ - **assets/clean-architecture-template/**: Complete project structure
459
+ - **assets/ddd-examples/**: Domain modeling examples
460
+
461
+ ## Best Practices
462
+
463
+ 1. **Dependency Rule**: Dependencies always point inward
464
+ 2. **Interface Segregation**: Small, focused interfaces
465
+ 3. **Business Logic in Domain**: Keep frameworks out of core
466
+ 4. **Test Independence**: Core testable without infrastructure
467
+ 5. **Bounded Contexts**: Clear domain boundaries
468
+ 6. **Ubiquitous Language**: Consistent terminology
469
+ 7. **Thin Controllers**: Delegate to use cases
470
+ 8. **Rich Domain Models**: Behavior with data
471
+
472
+ ## Common Pitfalls
473
+
474
+ - **Anemic Domain**: Entities with only data, no behavior
475
+ - **Framework Coupling**: Business logic depends on frameworks
476
+ - **Fat Controllers**: Business logic in controllers
477
+ - **Repository Leakage**: Exposing ORM objects
478
+ - **Missing Abstractions**: Concrete dependencies in core
479
+ - **Over-Engineering**: Clean architecture for simple CRUD