@jhm1909/ag-kit 0.1.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 (320) hide show
  1. package/.agent/ARCHITECTURE.md +189 -0
  2. package/.agent/known-registries.json +181 -0
  3. package/.agent/mcp_config.json +19 -0
  4. package/.agent/rules/clean-code.md +107 -0
  5. package/.agent/rules/documents.md +177 -0
  6. package/.agent/rules/git-workflow.md +68 -0
  7. package/.agent/rules/nano-banana.md +46 -0
  8. package/.agent/rules/research.md +35 -0
  9. package/.agent/rules/skill-loading.md +100 -0
  10. package/.agent/rules/skill-suggestion.md +47 -0
  11. package/.agent/rules/testing.md +52 -0
  12. package/.agent/rules/workflow-advisor.md +108 -0
  13. package/.agent/rules/workflow-skill-convention.md +127 -0
  14. package/.agent/skills/ai-engineer/SKILL.md +824 -0
  15. package/.agent/skills/ai-engineer/references/agentic-patterns.md +329 -0
  16. package/.agent/skills/ai-engineer/references/evaluation.md +493 -0
  17. package/.agent/skills/ai-engineer/references/llm.md +490 -0
  18. package/.agent/skills/ai-engineer/references/rag-advanced.md +444 -0
  19. package/.agent/skills/ai-engineer/references/serving-optimization.md +531 -0
  20. package/.agent/skills/ai-engineer/vector-db/README.md +137 -0
  21. package/.agent/skills/app-builder/SKILL.md +75 -0
  22. package/.agent/skills/app-builder/agent-coordination.md +71 -0
  23. package/.agent/skills/app-builder/feature-building.md +53 -0
  24. package/.agent/skills/app-builder/project-detection.md +34 -0
  25. package/.agent/skills/app-builder/scaffolding.md +118 -0
  26. package/.agent/skills/app-builder/tech-stack.md +41 -0
  27. package/.agent/skills/app-builder/templates/SKILL.md +39 -0
  28. package/.agent/skills/app-builder/templates/astro-static/TEMPLATE.md +76 -0
  29. package/.agent/skills/app-builder/templates/chrome-extension/TEMPLATE.md +92 -0
  30. package/.agent/skills/app-builder/templates/cli-tool/TEMPLATE.md +88 -0
  31. package/.agent/skills/app-builder/templates/electron-desktop/TEMPLATE.md +88 -0
  32. package/.agent/skills/app-builder/templates/express-api/TEMPLATE.md +83 -0
  33. package/.agent/skills/app-builder/templates/flutter-app/TEMPLATE.md +90 -0
  34. package/.agent/skills/app-builder/templates/monorepo-turborepo/TEMPLATE.md +90 -0
  35. package/.agent/skills/app-builder/templates/nextjs-fullstack/TEMPLATE.md +122 -0
  36. package/.agent/skills/app-builder/templates/nextjs-saas/TEMPLATE.md +122 -0
  37. package/.agent/skills/app-builder/templates/nextjs-static/TEMPLATE.md +169 -0
  38. package/.agent/skills/app-builder/templates/nuxt-app/TEMPLATE.md +134 -0
  39. package/.agent/skills/app-builder/templates/python-fastapi/TEMPLATE.md +83 -0
  40. package/.agent/skills/app-builder/templates/react-native-app/TEMPLATE.md +119 -0
  41. package/.agent/skills/backend-developer/SKILL.md +763 -0
  42. package/.agent/skills/backend-developer/references/general-patterns.md +65 -0
  43. package/.agent/skills/backend-developer/references/go-echo.md +68 -0
  44. package/.agent/skills/backend-developer/references/go-gin.md +76 -0
  45. package/.agent/skills/backend-developer/references/java-springboot.md +83 -0
  46. package/.agent/skills/backend-developer/references/node-express.md +64 -0
  47. package/.agent/skills/backend-developer/references/node-nestjs.md +69 -0
  48. package/.agent/skills/backend-developer/references/python-django.md +67 -0
  49. package/.agent/skills/backend-developer/references/python-fastapi.md +80 -0
  50. package/.agent/skills/blockchain-engineer/SKILL.md +975 -0
  51. package/.agent/skills/blockchain-engineer/references/deployment.md +28 -0
  52. package/.agent/skills/blockchain-engineer/references/evm.md +14 -0
  53. package/.agent/skills/blockchain-engineer/references/mechanisms.md +32 -0
  54. package/.agent/skills/blockchain-engineer/references/solidity.md +32 -0
  55. package/.agent/skills/business-analysis/SKILL.md +85 -0
  56. package/.agent/skills/business-analysis/references/best-practices/diagrams.md +141 -0
  57. package/.agent/skills/business-analysis/references/domains/ai-agent.md +94 -0
  58. package/.agent/skills/business-analysis/references/domains/blockchain-dapp.md +86 -0
  59. package/.agent/skills/business-analysis/references/domains/ecommerce.md +77 -0
  60. package/.agent/skills/business-analysis/references/domains/education.md +42 -0
  61. package/.agent/skills/business-analysis/references/domains/fintech.md +44 -0
  62. package/.agent/skills/business-analysis/references/domains/fnb.md +82 -0
  63. package/.agent/skills/business-analysis/references/domains/healthtech.md +44 -0
  64. package/.agent/skills/business-analysis/references/domains/internal-tools.md +38 -0
  65. package/.agent/skills/business-analysis/references/domains/marketplace.md +52 -0
  66. package/.agent/skills/business-analysis/references/domains/saas.md +36 -0
  67. package/.agent/skills/business-analysis/references/workflows/collaboration.md +41 -0
  68. package/.agent/skills/business-analysis/scripts/verify_mermaid.py +86 -0
  69. package/.agent/skills/business-analysis/templates/brd.md +46 -0
  70. package/.agent/skills/business-analysis/templates/change-request.md +41 -0
  71. package/.agent/skills/business-analysis/templates/prd-functional.md +38 -0
  72. package/.agent/skills/business-analysis/templates/use-case.md +40 -0
  73. package/.agent/skills/business-analysis/templates/user-story-detailed.md +36 -0
  74. package/.agent/skills/code-review/SKILL.md +113 -0
  75. package/.agent/skills/code-review/references/code-review-reception.md +209 -0
  76. package/.agent/skills/code-review/references/differential_review.md +59 -0
  77. package/.agent/skills/code-review/references/requesting-code-review.md +105 -0
  78. package/.agent/skills/code-review/references/spec_compliance.md +43 -0
  79. package/.agent/skills/code-review/references/verification-before-completion.md +139 -0
  80. package/.agent/skills/context-engineering/SKILL.md +68 -0
  81. package/.agent/skills/context-engineering/references/context-compression.md +84 -0
  82. package/.agent/skills/context-engineering/references/context-degradation.md +93 -0
  83. package/.agent/skills/context-engineering/references/context-fundamentals.md +75 -0
  84. package/.agent/skills/context-engineering/references/context-optimization.md +82 -0
  85. package/.agent/skills/context-engineering/references/evaluation.md +89 -0
  86. package/.agent/skills/context-engineering/references/memory-systems.md +88 -0
  87. package/.agent/skills/context-engineering/references/multi-agent-patterns.md +90 -0
  88. package/.agent/skills/context-engineering/references/project-development.md +97 -0
  89. package/.agent/skills/context-engineering/references/tool-design.md +86 -0
  90. package/.agent/skills/debugging/SKILL.md +60 -0
  91. package/.agent/skills/debugging/references/defense-in-depth.md +130 -0
  92. package/.agent/skills/debugging/references/root-cause-tracing.md +177 -0
  93. package/.agent/skills/debugging/references/systematic-debugging.md +295 -0
  94. package/.agent/skills/debugging/references/verification-before-completion.md +142 -0
  95. package/.agent/skills/designer/SKILL.md +159 -0
  96. package/.agent/skills/designer/concepts/apple-glass.md +48 -0
  97. package/.agent/skills/designer/concepts/aurora-gradients.md +26 -0
  98. package/.agent/skills/designer/concepts/bento-grids.md +14 -0
  99. package/.agent/skills/designer/concepts/claymorphism.md +27 -0
  100. package/.agent/skills/designer/concepts/neo-brutalism.md +32 -0
  101. package/.agent/skills/designer/data/app-interface.csv +31 -0
  102. package/.agent/skills/designer/data/charts.csv +26 -0
  103. package/.agent/skills/designer/data/colors.csv +162 -0
  104. package/.agent/skills/designer/data/design.csv +1776 -0
  105. package/.agent/skills/designer/data/icons.csv +106 -0
  106. package/.agent/skills/designer/data/landing.csv +35 -0
  107. package/.agent/skills/designer/data/products.csv +162 -0
  108. package/.agent/skills/designer/data/react-performance.csv +45 -0
  109. package/.agent/skills/designer/data/styles.csv +85 -0
  110. package/.agent/skills/designer/data/typography.csv +74 -0
  111. package/.agent/skills/designer/data/ui-reasoning.csv +162 -0
  112. package/.agent/skills/designer/data/ux-guidelines.csv +100 -0
  113. package/.agent/skills/designer/references/accessibility.md +172 -0
  114. package/.agent/skills/designer/references/branding.md +88 -0
  115. package/.agent/skills/designer/references/color-theory.md +139 -0
  116. package/.agent/skills/designer/references/creation.md +118 -0
  117. package/.agent/skills/designer/references/design-systems.md +219 -0
  118. package/.agent/skills/designer/references/frontend_design_aesthetics.md +57 -0
  119. package/.agent/skills/designer/references/layout.md +200 -0
  120. package/.agent/skills/designer/references/motion.md +92 -0
  121. package/.agent/skills/designer/references/review.md +100 -0
  122. package/.agent/skills/designer/references/trends.md +209 -0
  123. package/.agent/skills/designer/references/typography.md +190 -0
  124. package/.agent/skills/designer/scripts/remove_background.py +135 -0
  125. package/.agent/skills/designer/scripts/ui-search/__pycache__/core.cpython-314.pyc +0 -0
  126. package/.agent/skills/designer/scripts/ui-search/__pycache__/design_system.cpython-314.pyc +0 -0
  127. package/.agent/skills/designer/scripts/ui-search/core.py +217 -0
  128. package/.agent/skills/designer/scripts/ui-search/design_system.py +1067 -0
  129. package/.agent/skills/designer/scripts/ui-search/search.py +114 -0
  130. package/.agent/skills/designer/templates/design-motion-spec.md +30 -0
  131. package/.agent/skills/devops-engineer/SKILL.md +90 -0
  132. package/.agent/skills/devops-engineer/docker-compose/README.md +47 -0
  133. package/.agent/skills/devops-engineer/references/ci-cd-pipelines.md +76 -0
  134. package/.agent/skills/devops-engineer/references/cloud-providers.md +57 -0
  135. package/.agent/skills/devops-engineer/references/codebase-normalization.md +104 -0
  136. package/.agent/skills/devops-engineer/references/container-orchestration.md +69 -0
  137. package/.agent/skills/devops-engineer/references/iac-tools.md +63 -0
  138. package/.agent/skills/devops-engineer/references/observability-security.md +45 -0
  139. package/.agent/skills/devops-engineer/references/vercel-supabase.md +17 -0
  140. package/.agent/skills/devops-engineer/templates/release-notes.md +8 -0
  141. package/.agent/skills/frontend-developer/SKILL.md +125 -0
  142. package/.agent/skills/frontend-developer/react-nextjs/README.md +90 -0
  143. package/.agent/skills/frontend-developer/references/angular.md +52 -0
  144. package/.agent/skills/frontend-developer/references/composition_patterns.md +60 -0
  145. package/.agent/skills/frontend-developer/references/core-performance.md +68 -0
  146. package/.agent/skills/frontend-developer/references/modern-signals.md +43 -0
  147. package/.agent/skills/frontend-developer/references/react_performance_rules.md +55 -0
  148. package/.agent/skills/frontend-developer/references/vue-nuxt.md +55 -0
  149. package/.agent/skills/frontend-developer/scripts/validate_compliance.py +65 -0
  150. package/.agent/skills/frontend-developer/threejs/README.md +89 -0
  151. package/.agent/skills/frontend-developer/threejs/animation.md +552 -0
  152. package/.agent/skills/frontend-developer/threejs/fundamentals.md +488 -0
  153. package/.agent/skills/frontend-developer/threejs/geometry.md +548 -0
  154. package/.agent/skills/frontend-developer/threejs/interaction.md +660 -0
  155. package/.agent/skills/frontend-developer/threejs/lighting.md +481 -0
  156. package/.agent/skills/frontend-developer/threejs/loaders.md +623 -0
  157. package/.agent/skills/frontend-developer/threejs/materials.md +520 -0
  158. package/.agent/skills/frontend-developer/threejs/postprocessing.md +602 -0
  159. package/.agent/skills/frontend-developer/threejs/router.json +181 -0
  160. package/.agent/skills/frontend-developer/threejs/shaders.md +642 -0
  161. package/.agent/skills/frontend-developer/threejs/textures.md +628 -0
  162. package/.agent/skills/game-development/2d-games/SKILL.md +119 -0
  163. package/.agent/skills/game-development/3d-games/SKILL.md +135 -0
  164. package/.agent/skills/game-development/SKILL.md +167 -0
  165. package/.agent/skills/game-development/game-art/SKILL.md +185 -0
  166. package/.agent/skills/game-development/game-audio/SKILL.md +190 -0
  167. package/.agent/skills/game-development/game-design/SKILL.md +129 -0
  168. package/.agent/skills/game-development/mobile-games/SKILL.md +108 -0
  169. package/.agent/skills/game-development/multiplayer/SKILL.md +132 -0
  170. package/.agent/skills/game-development/pc-games/SKILL.md +144 -0
  171. package/.agent/skills/game-development/vr-ar/SKILL.md +123 -0
  172. package/.agent/skills/game-development/web-games/SKILL.md +150 -0
  173. package/.agent/skills/lead-architect/SKILL.md +85 -0
  174. package/.agent/skills/lead-architect/references/application-architecture.md +70 -0
  175. package/.agent/skills/lead-architect/references/infrastructure.md +51 -0
  176. package/.agent/skills/lead-architect/references/process.md +42 -0
  177. package/.agent/skills/lead-architect/references/system-architecture.md +62 -0
  178. package/.agent/skills/lead-architect/references/web-fullstack.md +82 -0
  179. package/.agent/skills/lead-architect/templates/adr.md +62 -0
  180. package/.agent/skills/lead-architect/templates/rfc.md +46 -0
  181. package/.agent/skills/lead-architect/templates/sdd.md +62 -0
  182. package/.agent/skills/lead-architect/templates/technical-spec.md +61 -0
  183. package/.agent/skills/marketer/SKILL.md +66 -0
  184. package/.agent/skills/marketer/remotion-best-practices/SKILL.md +58 -0
  185. package/.agent/skills/marketer/remotion-best-practices/rules/3d.md +86 -0
  186. package/.agent/skills/marketer/remotion-best-practices/rules/animations.md +29 -0
  187. package/.agent/skills/marketer/remotion-best-practices/rules/assets/charts-bar-chart.tsx +173 -0
  188. package/.agent/skills/marketer/remotion-best-practices/rules/assets/text-animations-typewriter.tsx +100 -0
  189. package/.agent/skills/marketer/remotion-best-practices/rules/assets/text-animations-word-highlight.tsx +108 -0
  190. package/.agent/skills/marketer/remotion-best-practices/rules/assets.md +78 -0
  191. package/.agent/skills/marketer/remotion-best-practices/rules/audio.md +172 -0
  192. package/.agent/skills/marketer/remotion-best-practices/rules/calculate-metadata.md +104 -0
  193. package/.agent/skills/marketer/remotion-best-practices/rules/can-decode.md +75 -0
  194. package/.agent/skills/marketer/remotion-best-practices/rules/charts.md +58 -0
  195. package/.agent/skills/marketer/remotion-best-practices/rules/compositions.md +146 -0
  196. package/.agent/skills/marketer/remotion-best-practices/rules/display-captions.md +126 -0
  197. package/.agent/skills/marketer/remotion-best-practices/rules/extract-frames.md +229 -0
  198. package/.agent/skills/marketer/remotion-best-practices/rules/fonts.md +152 -0
  199. package/.agent/skills/marketer/remotion-best-practices/rules/get-audio-duration.md +58 -0
  200. package/.agent/skills/marketer/remotion-best-practices/rules/get-video-dimensions.md +68 -0
  201. package/.agent/skills/marketer/remotion-best-practices/rules/get-video-duration.md +58 -0
  202. package/.agent/skills/marketer/remotion-best-practices/rules/gifs.md +138 -0
  203. package/.agent/skills/marketer/remotion-best-practices/rules/images.md +130 -0
  204. package/.agent/skills/marketer/remotion-best-practices/rules/import-srt-captions.md +67 -0
  205. package/.agent/skills/marketer/remotion-best-practices/rules/lottie.md +68 -0
  206. package/.agent/skills/marketer/remotion-best-practices/rules/measuring-dom-nodes.md +35 -0
  207. package/.agent/skills/marketer/remotion-best-practices/rules/measuring-text.md +143 -0
  208. package/.agent/skills/marketer/remotion-best-practices/rules/sequencing.md +106 -0
  209. package/.agent/skills/marketer/remotion-best-practices/rules/tailwind.md +11 -0
  210. package/.agent/skills/marketer/remotion-best-practices/rules/text-animations.md +20 -0
  211. package/.agent/skills/marketer/remotion-best-practices/rules/timing.md +179 -0
  212. package/.agent/skills/marketer/remotion-best-practices/rules/transcribe-captions.md +19 -0
  213. package/.agent/skills/marketer/remotion-best-practices/rules/transitions.md +122 -0
  214. package/.agent/skills/marketer/remotion-best-practices/rules/trimming.md +53 -0
  215. package/.agent/skills/marketer/remotion-best-practices/rules/videos.md +171 -0
  216. package/.agent/skills/mcp-builder/SKILL.md +76 -0
  217. package/.agent/skills/mcp-builder/references/evaluation.md +602 -0
  218. package/.agent/skills/mcp-builder/references/mcp_best_practices.md +249 -0
  219. package/.agent/skills/mcp-builder/references/node_mcp_server.md +970 -0
  220. package/.agent/skills/mcp-builder/references/python_mcp_server.md +719 -0
  221. package/.agent/skills/mobile-developer/SKILL.md +83 -0
  222. package/.agent/skills/mobile-developer/api-routes/SKILL.md +389 -0
  223. package/.agent/skills/mobile-developer/building-ui/SKILL.md +335 -0
  224. package/.agent/skills/mobile-developer/building-ui/references/animations.md +220 -0
  225. package/.agent/skills/mobile-developer/building-ui/references/controls.md +270 -0
  226. package/.agent/skills/mobile-developer/building-ui/references/form-sheet.md +227 -0
  227. package/.agent/skills/mobile-developer/building-ui/references/gradients.md +106 -0
  228. package/.agent/skills/mobile-developer/building-ui/references/icons.md +213 -0
  229. package/.agent/skills/mobile-developer/building-ui/references/media.md +198 -0
  230. package/.agent/skills/mobile-developer/building-ui/references/route-structure.md +229 -0
  231. package/.agent/skills/mobile-developer/building-ui/references/search.md +248 -0
  232. package/.agent/skills/mobile-developer/building-ui/references/storage.md +121 -0
  233. package/.agent/skills/mobile-developer/building-ui/references/tabs.md +368 -0
  234. package/.agent/skills/mobile-developer/building-ui/references/visual-effects.md +197 -0
  235. package/.agent/skills/mobile-developer/building-ui/references/webgpu-three.md +605 -0
  236. package/.agent/skills/mobile-developer/cicd-workflows/SKILL.md +107 -0
  237. package/.agent/skills/mobile-developer/cicd-workflows/scripts/fetch.js +109 -0
  238. package/.agent/skills/mobile-developer/cicd-workflows/scripts/package.json +11 -0
  239. package/.agent/skills/mobile-developer/cicd-workflows/scripts/validate.js +84 -0
  240. package/.agent/skills/mobile-developer/data-fetching/SKILL.md +508 -0
  241. package/.agent/skills/mobile-developer/deployment/SKILL.md +207 -0
  242. package/.agent/skills/mobile-developer/deployment/references/app-store-metadata.md +479 -0
  243. package/.agent/skills/mobile-developer/deployment/references/ios-app-store.md +355 -0
  244. package/.agent/skills/mobile-developer/deployment/references/play-store.md +246 -0
  245. package/.agent/skills/mobile-developer/deployment/references/testflight.md +58 -0
  246. package/.agent/skills/mobile-developer/deployment/references/workflows.md +200 -0
  247. package/.agent/skills/mobile-developer/dev-client/SKILL.md +181 -0
  248. package/.agent/skills/mobile-developer/tailwind-setup/SKILL.md +501 -0
  249. package/.agent/skills/mobile-developer/upgrading-expo/SKILL.md +116 -0
  250. package/.agent/skills/mobile-developer/upgrading-expo/references/new-architecture.md +79 -0
  251. package/.agent/skills/mobile-developer/upgrading-expo/references/react-19.md +79 -0
  252. package/.agent/skills/mobile-developer/upgrading-expo/references/react-compiler.md +59 -0
  253. package/.agent/skills/mobile-developer/use-dom/SKILL.md +434 -0
  254. package/.agent/skills/modern-python/SKILL.md +122 -0
  255. package/.agent/skills/project-manager/SKILL.md +110 -0
  256. package/.agent/skills/project-manager/references/ba-collaboration.md +62 -0
  257. package/.agent/skills/project-manager/references/discovery_process.md +52 -0
  258. package/.agent/skills/project-manager/references/jobs_to_be_done.md +51 -0
  259. package/.agent/skills/project-manager/references/prd_development.md +52 -0
  260. package/.agent/skills/project-manager/references/rules-guide.md +55 -0
  261. package/.agent/skills/project-manager/references/skill-creation.md +98 -0
  262. package/.agent/skills/project-manager/references/strategic-frameworks.md +62 -0
  263. package/.agent/skills/project-manager/references/task-decomposition.md +194 -0
  264. package/.agent/skills/project-manager/references/workflows-guide.md +44 -0
  265. package/.agent/skills/project-manager/router.json +160 -0
  266. package/.agent/skills/project-manager/scripts/compare_skill.py +177 -0
  267. package/.agent/skills/project-manager/scripts/encoding_utils.py +36 -0
  268. package/.agent/skills/project-manager/scripts/init_skill.py +190 -0
  269. package/.agent/skills/project-manager/scripts/quick_validate.py +123 -0
  270. package/.agent/skills/project-manager/templates/pm-strategy-one-pager.md +6 -0
  271. package/.agent/skills/project-manager/templates/prd-strategic.md +38 -0
  272. package/.agent/skills/project-manager/templates/skill-questionnaire.md +118 -0
  273. package/.agent/skills/project-manager/templates/user-story-simple.md +14 -0
  274. package/.agent/skills/prompt-engineer/SKILL.md +319 -0
  275. package/.agent/skills/prompt-engineer/skill-creator/README.md +47 -0
  276. package/.agent/skills/qa-tester/SKILL.md +142 -0
  277. package/.agent/skills/qa-tester/assets/README.md +8 -0
  278. package/.agent/skills/qa-tester/references/accessibility_testing.md +35 -0
  279. package/.agent/skills/qa-tester/references/agent_browser.md +38 -0
  280. package/.agent/skills/qa-tester/references/automation/api_testing.md +23 -0
  281. package/.agent/skills/qa-tester/references/automation/best_practices.md +14 -0
  282. package/.agent/skills/qa-tester/references/automation/jest_vitest.md +26 -0
  283. package/.agent/skills/qa-tester/references/automation/playwright.md +30 -0
  284. package/.agent/skills/qa-tester/references/e2e_testing.md +46 -0
  285. package/.agent/skills/qa-tester/references/integration_testing.md +39 -0
  286. package/.agent/skills/qa-tester/references/performance_testing.md +44 -0
  287. package/.agent/skills/qa-tester/references/property_based_testing.md +44 -0
  288. package/.agent/skills/qa-tester/references/security_audit.md +53 -0
  289. package/.agent/skills/qa-tester/references/security_testing.md +30 -0
  290. package/.agent/skills/qa-tester/references/sharp_edges.md +49 -0
  291. package/.agent/skills/qa-tester/references/static_analysis.md +52 -0
  292. package/.agent/skills/qa-tester/references/supply_chain_audit.md +54 -0
  293. package/.agent/skills/qa-tester/references/test_case_standards.md +96 -0
  294. package/.agent/skills/qa-tester/references/test_report_template.md +32 -0
  295. package/.agent/skills/qa-tester/references/unit_testing.md +50 -0
  296. package/.agent/skills/qa-tester/references/visual_testing.md +32 -0
  297. package/.agent/skills/qa-tester/templates/uat-plan.md +34 -0
  298. package/.agent/skills/research-first/SKILL.md +118 -0
  299. package/.agent/skills-manifest.json +264 -0
  300. package/.agent/workflows/absorb.md +176 -0
  301. package/.agent/workflows/bootstrap.md +91 -0
  302. package/.agent/workflows/brainstorm.md +168 -0
  303. package/.agent/workflows/break-tasks.md +77 -0
  304. package/.agent/workflows/commit.md +349 -0
  305. package/.agent/workflows/custom-behavior.md +64 -0
  306. package/.agent/workflows/debug.md +65 -0
  307. package/.agent/workflows/development.md +49 -0
  308. package/.agent/workflows/documentation.md +221 -0
  309. package/.agent/workflows/gen-tests.md +53 -0
  310. package/.agent/workflows/guide.md +196 -0
  311. package/.agent/workflows/implement-feature.md +182 -0
  312. package/.agent/workflows/install-skill.md +193 -0
  313. package/.agent/workflows/qa.md +54 -0
  314. package/.agent/workflows/ui-ux-design.md +108 -0
  315. package/LICENSE +21 -0
  316. package/README.md +258 -0
  317. package/cli/index.js +345 -0
  318. package/cli/migrate-skills.js +113 -0
  319. package/cli/verify.js +291 -0
  320. package/package.json +49 -0
@@ -0,0 +1,319 @@
1
+ ---
2
+ name: prompt-engineer
3
+ description: >
4
+ prompt-engineer skill for AI-powered development.
5
+ license: MIT
6
+ compatibility: Claude Code, Cursor, Gemini CLI, GitHub Copilot
7
+ metadata:
8
+ author: jhm1909
9
+ version: "2.0.0"
10
+ domain: ai
11
+ estimated_tokens: 25000
12
+ ---
13
+
14
+ # Prompt Engineer
15
+
16
+ Designing effective prompts and agent skills for AI-driven development.
17
+
18
+ ## Knowledge Graph
19
+
20
+ - **extends**: [[ai-engineer]]
21
+ - **suggests**: [[frontend-developer]], [[backend-developer]]
22
+ - **enhances**: [[project-manager]], [[lead-architect]]
23
+ - **moc**: [[ai-development-moc]]
24
+
25
+ ## Sub-capabilities
26
+
27
+ | Capability | Location | Use For |
28
+ |:-----------|:---------|:--------|
29
+ | Skill Creator | `skill-creator/` | Authoring new skills for the framework |
30
+ | Prompt Templates | `references/prompt-templates.md` | Reusable prompt patterns |
31
+
32
+ ## Using Sub-capabilities
33
+
34
+ When asked to create a new skill:
35
+
36
+ 1. Load `skill-creator/README.md` from this skill directory
37
+ 2. Follow the SKILL.md v2 specification
38
+ 3. Use provided templates and examples
39
+ 4. Validate against graph requirements
40
+
41
+ Example workflow:
42
+ ```
43
+ User: "Create a skill for Stripe payment integration"
44
+ → Load prompt-engineer/skill-creator/README.md
45
+ → Apply SKILL.md v2 template
46
+ → Define Knowledge Graph relationships
47
+ → Generate skill files
48
+ ```
49
+
50
+ ## Role Definition
51
+
52
+ You are a **Prompt Engineer** specializing in:
53
+ - Crafting precise, actionable prompts for AI agents
54
+ - Designing SKILL.md files following Anti-Chaotic v2 specification
55
+ - Optimizing context windows through skill graph architecture
56
+ - Creating reusable prompt templates and workflows
57
+
58
+ ## Core Principles
59
+
60
+ ### 1. Clarity Over Cleverness
61
+ - **Be explicit**: State exactly what you want
62
+ - **Use examples**: Show, don't just tell
63
+ - **Avoid ambiguity**: One interpretation only
64
+
65
+ ### 2. Context Budget Awareness
66
+ ```
67
+ Total Context Window
68
+ ├── System Instructions (skill loading)
69
+ ├── Conversation History
70
+ ├── Current Request
71
+ └── Output Buffer (leave 20%)
72
+ ```
73
+
74
+ ### 3. Progressive Disclosure
75
+ - Load base skills first
76
+ - Add capabilities as needed
77
+ - Suggest enhancements contextually
78
+
79
+ ## SKILL.md v2 Authoring
80
+
81
+ ### Required Structure
82
+
83
+ ```markdown
84
+ ---
85
+ name: skill-name
86
+ type: skill | capability | moc
87
+ domain: web | mobile | ai | infra
88
+ status: stable | draft | deprecated
89
+ version: "2.0.0"
90
+ estimated_tokens: 15000
91
+ ---
92
+
93
+ # Skill Title
94
+
95
+ Clear description of what this skill enables.
96
+
97
+ ## Knowledge Graph
98
+
99
+ - **extends**: [[parent-skill]] — Why this inheritance
100
+ - **requires**: [[hard-dep]] — Cannot function without
101
+ - **suggests**: [[optional-1]], [[optional-2]] — Nice to have
102
+ - **conflicts**: [[incompatible]] — Mutual exclusion
103
+ - **enhances**: [[base-skill]] — Add-on capability
104
+ - **moc**: [[domain-moc]] — Domain membership
105
+
106
+ ## Triggers (Optional)
107
+
108
+ Auto-detection patterns:
109
+ - pattern: "regex" → confidence: high/medium/low
110
+ - file: "filename.ext" → confidence: high
111
+
112
+ ## Core Content
113
+
114
+ ### Rules / Guidelines / Patterns
115
+ 1. **Bold key terms** — Make them scannable
116
+ 2. Use tables for comparisons
117
+ 3. Code examples for patterns
118
+
119
+ ## Related Skills
120
+
121
+ - [[related-skill]] — Why related
122
+ ```
123
+
124
+ ### Relationship Design
125
+
126
+ | Relationship | When to Use | Example |
127
+ |:-------------|:------------|:--------|
128
+ | `extends` | Specialization inherits all patterns | `react-nextjs` extends `frontend-developer` |
129
+ | `requires` | Hard dependency | `ai-engineer` requires `backend-developer` |
130
+ | `suggests` | Optional enhancement | `react-nextjs` suggests `threejs` |
131
+ | `conflicts` | Mutual exclusion | `vue-developer` conflicts `react-nextjs` |
132
+ | `enhances` | Capability add-on | `tailwind-setup` enhances any frontend |
133
+
134
+ ### Common Mistakes
135
+
136
+ ❌ **Vague descriptions**
137
+ ```markdown
138
+ ## Core Rules
139
+ 1. Write clean code
140
+ ```
141
+
142
+ ✅ **Specific, actionable rules**
143
+ ```markdown
144
+ ## Core Rules
145
+ 1. **Use Server Components by default** — Only add 'use client' when interactivity required
146
+ 2. **File naming**: kebab-case for all files, PascalCase for components
147
+ ```
148
+
149
+ ❌ **Missing context estimates**
150
+ ```yaml
151
+ # No estimated_tokens
152
+ ---
153
+ name: my-skill
154
+ type: skill
155
+ ---
156
+ ```
157
+
158
+ ✅ **Always include token budget**
159
+ ```yaml
160
+ ---
161
+ name: my-skill
162
+ type: skill
163
+ estimated_tokens: 12000 # Helps users plan context
164
+ ---
165
+ ```
166
+
167
+ ❌ **Human learning timelines in MOCs**
168
+ ```markdown
169
+ ## Learning Path
170
+ Week 1-2: Learn basics
171
+ Week 3-4: Advanced topics
172
+ ```
173
+
174
+ ✅ **Agent load orders with context**
175
+ ```markdown
176
+ ## Load Order
177
+ [[foundation]] (~2k tokens)
178
+ ↓ extends
179
+ [[specialization]] (~1k tokens)
180
+ ↓ suggests
181
+ [[capability]] (~0.5k tokens)
182
+ ───────────────────────────────
183
+ Total: ~3.5k tokens
184
+ ```
185
+
186
+ ## Prompt Patterns
187
+
188
+ ### Pattern 1: Structured Output
189
+
190
+ ```markdown
191
+ ## Request Format
192
+
193
+ **Task**: {clear description}
194
+
195
+ **Context**:
196
+ - Current state: {what exists}
197
+ - Constraints: {limitations}
198
+ - Goals: {desired outcome}
199
+
200
+ **Output Format**:
201
+ ```yaml
202
+ result:
203
+ summary: "brief description"
204
+ files:
205
+ - path: "relative/path"
206
+ content: "..."
207
+ next_steps:
208
+ - "action item"
209
+ ```
210
+ ```
211
+
212
+ ### Pattern 2: Chain-of-Thought
213
+
214
+ ```markdown
215
+ ## Reasoning Process
216
+
217
+ Before responding, analyze:
218
+ 1. What is the core problem?
219
+ 2. What constraints apply?
220
+ 3. What patterns are relevant?
221
+ 4. What could go wrong?
222
+ 5. What is the minimal viable solution?
223
+
224
+ Then proceed with implementation.
225
+ ```
226
+
227
+ ### Pattern 3: Few-Shot Examples
228
+
229
+ ```markdown
230
+ ## Examples
231
+
232
+ ### Example 1: Simple Case
233
+ Input: {simple input}
234
+ Output: {expected output}
235
+
236
+ ### Example 2: Edge Case
237
+ Input: {complex input}
238
+ Output: {expected output}
239
+
240
+ ### Example 3: Error Handling
241
+ Input: {invalid input}
242
+ Output: {error message + correction}
243
+ ```
244
+
245
+ ## Context Optimization
246
+
247
+ ### Token Budgeting
248
+
249
+ | Skill Size | Tokens | Use Case |
250
+ |:-----------|:-------|:---------|
251
+ | Minimal | 1-3k | Simple utilities |
252
+ | Standard | 5-10k | Core skills |
253
+ | Comprehensive | 15-25k | Complex domains |
254
+ | Reference | 30k+ | Documentation, API specs |
255
+
256
+ ### Graph Depth Guidelines
257
+
258
+ ```
259
+ Max Recommended Chain Length: 3-4 skills
260
+
261
+ Good:
262
+ [[frontend]] → [[react]] → [[nextjs]]
263
+
264
+ Too Deep:
265
+ [[frontend]] → [[react]] → [[nextjs]] → [[app-router]] → [[rsc-patterns]] → [[streaming]]
266
+ ```
267
+
268
+ ### Conflict Resolution
269
+
270
+ When designing `conflicts`:
271
+ 1. Must be **bidirectional** (A conflicts B → B conflicts A)
272
+ 2. Explain **why** in description
273
+ 3. Suggest **alternative** if possible
274
+
275
+ ```markdown
276
+ ## Knowledge Graph
277
+ - **conflicts**: [[vue-developer]] — Different component patterns, choose one framework
278
+ - Alternative: Use [[frontend-developer]] base if undecided
279
+ ```
280
+
281
+ ## Skill Testing Checklist
282
+
283
+ Before publishing a skill:
284
+
285
+ - [ ] Frontmatter complete (name, type, domain, version, estimated_tokens)
286
+ - [ ] Knowledge Graph section with valid relationships
287
+ - [ ] All wiki-links resolve to existing skills
288
+ - [ ] No circular dependencies in graph
289
+ - [ ] Conflicts are bidirectional
290
+ - [ ] Token estimate is accurate (±20%)
291
+ - [ ] Examples are runnable/testable
292
+ - [ ] No human learning timelines (unless educational skill)
293
+
294
+ ## Anti-Patterns
295
+
296
+ ### 1. Prompt Injection Vulnerabilities
297
+ ❌ Don't use: `User input: {{user_input}}` without validation
298
+ ✅ Do: Define allowed values, validate patterns
299
+
300
+ ### 2. Context Leaks
301
+ ❌ Don't: Load unrelated skills "just in case"
302
+ ✅ Do: Use `suggests` for optional capabilities
303
+
304
+ ### 3. Over-Specialization
305
+ ❌ Don't: Create skill for every micro-task
306
+ ✅ Do: Group related capabilities, use `extends` for variations
307
+
308
+ ### 4. Implicit Assumptions
309
+ ❌ Don't: Assume user knows jargon
310
+ ✅ Do: Define terms, link to explanations
311
+
312
+ ## Related Skills
313
+
314
+ - [[ai-engineer]] — LLM integration patterns
315
+ - [[backend-developer]] — API development for AI services
316
+
317
+ ---
318
+
319
+ *Part of [[ai-development-moc]] | Skill creator guide in `skill-creator/` sub-directory*
@@ -0,0 +1,47 @@
1
+ ---
2
+ name: skill-creator
3
+ type: skill
4
+ domain: general
5
+ status: draft
6
+ version: "1.0.0"
7
+ estimated_tokens: 10000
8
+ description: Creating and publishing skills for the Anti-Chaotic Agent Kit.
9
+ ---
10
+
11
+ # Skill Creator
12
+
13
+ Building and publishing agent skills.
14
+
15
+ ## Knowledge Graph
16
+
17
+ - **extends**: []
18
+ - **requires": [[prompt-engineer]]
19
+ - **suggests": []
20
+ - **conflicts": []
21
+ - **enhances": [[knowledge-graph]]
22
+ - **moc**: []
23
+
24
+ ## Overview
25
+
26
+ This skill covers:
27
+ - SKILL.md v2 specification
28
+ - Knowledge graph design
29
+ - Publishing to npm/GitHub
30
+ - Testing and validation
31
+
32
+ ## Creating a Skill
33
+
34
+ 1. Define relationships (extends/requires/suggests)
35
+ 2. Write SKILL.md with frontmatter
36
+ 3. Add rules/workflows if needed
37
+ 4. Test with graph resolver
38
+ 5. Publish
39
+
40
+ ## Related
41
+
42
+ - [[prompt-engineer]] — Prompt design
43
+ - [[knowledge-graph]] — Graph validation
44
+
45
+ ---
46
+
47
+ *Meta skill for skill development*
@@ -0,0 +1,142 @@
1
+ ---
2
+ name: qa-tester
3
+ description: >
4
+ Test planning, test cases, bug reporting, automation, and security auditing.
5
+ Use for Unit/E2E/Security/Performance/Property-Based testing and supply chain audits.
6
+ Upgraded with Trail of Bits security methodology.
7
+ license: MIT
8
+ compatibility: Claude Code, Cursor, Gemini CLI, GitHub Copilot
9
+ metadata:
10
+ author: jhm1909
11
+ version: "3.0.0"
12
+ domain: qa
13
+ estimated_tokens: 12000
14
+ sources:
15
+ - trailofbits/skills (insecure-defaults, sharp-edges, property-based-testing, supply-chain-risk-auditor, semgrep)
16
+ ---
17
+
18
+ # QA Tester
19
+
20
+ Comprehensive testing + security auditing for high-quality software delivery.
21
+
22
+ ## Knowledge Graph
23
+
24
+ - **extends**: []
25
+ - **requires**: []
26
+ - **suggests**: [[frontend-developer]], [[backend-developer]], [[devops-engineer]], [[mobile-developer]]
27
+ - **conflicts**: []
28
+ - **enhances**: [[project-manager]] (quality metrics), [[business-analysis]] (acceptance criteria), [[code-review]] (verification gates)
29
+ - **moc**: [[quality-assurance-moc]]
30
+
31
+ ## Core Philosophy
32
+
33
+ 1. **Docs First** — Base all testing on `docs/` folder requirements
34
+ 2. **No Assumptions** — Missing docs? STOP and CONFIRM with user
35
+ 3. **Verify Everything** — Happy path, negative path, boundaries, edges
36
+ 4. **Trust No Input** — Every input is a potential attack vector
37
+ 5. **Pit of Success** — Secure usage should be the path of least resistance
38
+
39
+ ## Decision Tree
40
+
41
+ ```
42
+ What testing is needed?
43
+
44
+ ├─ Functional testing?
45
+ │ └─ Read: test_case_standards.md, unit_testing.md, e2e_testing.md
46
+
47
+ ├─ Security audit?
48
+ │ ├─ Insecure defaults/hardcoded secrets? → Read: security_audit.md
49
+ │ ├─ API footgun analysis? → Read: sharp_edges.md
50
+ │ ├─ Dependency risk? → Read: supply_chain_audit.md
51
+ │ └─ Static analysis scan? → Read: static_analysis.md
52
+
53
+ ├─ Property-based testing?
54
+ │ └─ Read: property_based_testing.md
55
+
56
+ └─ Performance testing?
57
+ └─ Read: performance_testing.md
58
+ ```
59
+
60
+ ## Test Types
61
+
62
+ | Type | Focus | Tool Examples |
63
+ |:-----|:------|:-------------|
64
+ | **Unit** | Logic verification | Jest, Vitest |
65
+ | **Integration** | Module handshake | Supertest, MSW |
66
+ | **E2E** | User flows | Playwright, Cypress |
67
+ | **Security** | Vulnerabilities | Semgrep, OWASP ZAP |
68
+ | **Performance** | Load, responsiveness | k6, Lighthouse |
69
+ | **Property-Based** | Invariants, roundtrips | Hypothesis, fast-check |
70
+ | **Supply Chain** | Dependency risk | gh CLI, npm audit |
71
+ | **Visual** | UI regression | Chromatic, Percy |
72
+ | **Accessibility** | WCAG compliance | axe, Pa11y |
73
+
74
+ ## Test Design Techniques
75
+
76
+ ### Noun-Verb Extraction
77
+ Scan docs for **Nouns** (User, Order) and **Verbs** (Register, Checkout)
78
+ → Each Action = At least 1 Test Case
79
+
80
+ ### Keyword Permutations
81
+ Look for "MUST", "CANNOT", "ONLY IF"
82
+ → Test constraint met AND violated
83
+
84
+ ### State Transition Mapping
85
+ Entity states (Pending → Paid → Shipped)
86
+ → Test valid AND invalid transitions
87
+
88
+ ### Property Detection (PBT)
89
+ | Pattern | Property | Priority |
90
+ |---------|----------|----------|
91
+ | encode/decode pair | Roundtrip | HIGH |
92
+ | Normalization | Idempotence | MEDIUM |
93
+ | Sorting/ordering | Idempotence + ordering | MEDIUM |
94
+ | Pure function | Multiple | HIGH |
95
+
96
+ ## Security Audit Quick Checklist
97
+
98
+ When auditing code security, check:
99
+
100
+ - [ ] **Insecure defaults**: `env.get(X) or 'fallback'` — fail-open patterns
101
+ - [ ] **Hardcoded secrets**: `password = "..."`, `API_KEY = "..."`
102
+ - [ ] **Weak crypto**: MD5, SHA1, DES, RC4, ECB in security contexts
103
+ - [ ] **Permissive CORS**: `Access-Control-Allow-Origin: *`
104
+ - [ ] **Debug in prod**: `DEBUG = True`, stack traces exposed
105
+ - [ ] **Sharp edges**: APIs where easy path leads to insecurity
106
+ - [ ] **Supply chain**: Single-maintainer deps, stale packages, CVE history
107
+
108
+ ## Coverage Requirements
109
+
110
+ - ✅ **Happy Path** — Golden flow
111
+ - ✅ **Negative Path** — Error handling
112
+ - ✅ **Boundary** — Off-by-one (0, 1, Max)
113
+ - ✅ **Edge Cases** — Timeouts, failures, concurrency
114
+ - ✅ **Integration** — Cross-module flows
115
+ - ✅ **Security** — Injection, auth bypass, data leaks
116
+
117
+ ## References
118
+
119
+ | Reference | Purpose |
120
+ |:----------|:--------|
121
+ | `test_case_standards.md` | "No Ambiguity" philosophy |
122
+ | `unit_testing.md` | "Test Behavior, Not Implementation" |
123
+ | `integration_testing.md` | "Verify the Handshake" |
124
+ | `e2e_testing.md` | "Simulate the Real User" |
125
+ | `security_testing.md` | "Trust No Input" |
126
+ | `performance_testing.md` | "Performance is a Feature" |
127
+ | `security_audit.md` | Insecure defaults detection (Trail of Bits) |
128
+ | `sharp_edges.md` | API footgun analysis (Trail of Bits) |
129
+ | `property_based_testing.md` | PBT methodology (Trail of Bits) |
130
+ | `supply_chain_audit.md` | Dependency risk scoring (Trail of Bits) |
131
+ | `static_analysis.md` | Semgrep scanning workflow (Trail of Bits) |
132
+
133
+ ## Related Skills
134
+
135
+ - [[frontend-developer]] — Component testing
136
+ - [[backend-developer]] — API testing
137
+ - [[code-review]] — Security-focused PR review
138
+ - [[project-manager]] — Quality metrics, UAT
139
+
140
+ ---
141
+
142
+ *Quality assurance + Security auditing | Trail of Bits methodology integrated*
@@ -0,0 +1,8 @@
1
+ # Asset Placeholder
2
+
3
+ Replace with actual assets (templates, images, fonts, etc.) or delete this file.
4
+
5
+ Common asset types:
6
+ - Templates: .pptx, .docx, boilerplate directories
7
+ - Images: .png, .jpg, .svg
8
+ - Data: .csv, .json, .yaml
@@ -0,0 +1,35 @@
1
+ # Accessibility (A11y) Testing Guide
2
+
3
+ > **Optional Module**: Consult this guide when accessibility compliance (WCAG) is required.
4
+
5
+ ## Core Tools
6
+
7
+ - **axe-core**: The engine for finding accessibility defects.
8
+ - **jest-axe**: For unit/integration level checks.
9
+ - **cypress-axe** / **@axe-core/playwright**: For E2E injection.
10
+
11
+ ## Implementation Pattern (Playwright)
12
+
13
+ ```typescript
14
+ import { test, expect } from "@playwright/test";
15
+ import AxeBuilder from "@axe-core/playwright";
16
+
17
+ test("landing page should not have any automatically detectable accessibility issues", async ({
18
+ page,
19
+ }) => {
20
+ await page.goto("/");
21
+
22
+ const accessibilityScanResults = await new AxeBuilder({ page })
23
+ .withTags(["wcag2a", "wcag2aa", "wcag21a", "wcag21aa"])
24
+ .analyze();
25
+
26
+ expect(accessibilityScanResults.violations).toEqual([]);
27
+ });
28
+ ```
29
+
30
+ ## Common Violations to Watch
31
+
32
+ 1. **Color Contrast**: Text vs Background ratio must be at least 4.5:1.
33
+ 2. **Alt Text**: All non-decorative images must have `alt` attributes.
34
+ 3. **Labels**: Form inputs must have implicit or explicit `<label>` or `aria-label`.
35
+ 4. **Interactive Roles**: Divs behaving like buttons must have `role="button"` and keyboard handlers.
@@ -0,0 +1,38 @@
1
+ # Agent Browser / Human Simulation Guide
2
+
3
+ The **Browser Subagent** allows you to interact with the web application just like a human user. This is powerful for **Exploratory Testing**, **Visual Verification**, and **Complex Flow Validation** that is hard to script blindly.
4
+
5
+ ## When to Use
6
+
7
+ | Use Case | Tool | Why? |
8
+ | :------------------ | :------------------- | :---------------------------------------------- |
9
+ | **Regression / CI** | Playwright (Code) | Fast, deterministic, repeatable. |
10
+ | **Exploratory** | **Browser Subagent** | "Try to break this," "See if this feels right." |
11
+ | **Visual Check** | **Browser Subagent** | "Does the modal overlap the header?" |
12
+ | **Debugging** | **Browser Subagent** | "Go to the failed page and inspect the DOM." |
13
+
14
+ ## How to Use
15
+
16
+ When you need to "see" or "act" as a human:
17
+
18
+ 1. **Call the Tool**: Use `browser_subagent` with a clear `Task`.
19
+ 2. **Be Specific**: Give the subagent a persona and a goal.
20
+
21
+ ### Example Prompts
22
+
23
+ **Scenario: verifying a login flow manually**
24
+
25
+ > "Open `local.dev:3000/login`, enter username 'admin' and password 'secret', and verify that the dashboard loads and the 'Welcome Admin' toast appears."
26
+
27
+ **Scenario: Exploratory "Monkey Testing"**
28
+
29
+ > "Go to the Checkout page. Try clicking on 'Place Order' without filling any fields. Then try filling invalid emails. Report what validation errors you see."
30
+
31
+ ## Best Practices
32
+
33
+ 1. **State the Goal**: Start with "Navigate to..." and end with "Verify that..."
34
+ 2. **Define Success**: Tell the subagent what "success" looks like (e.g., "URL changes to /dashboard").
35
+ 3. **Capture Evidence**: The subagent records sessions. Use these as proof of verification for your reports.
36
+ 4. **Hybrid Approach**:
37
+ - Use the Browser Subagent to **learn** the valid selectors and flow.
38
+ - Use that knowledge to **write** the robust Playwright script.
@@ -0,0 +1,23 @@
1
+ # API Automation Guide (Supertest/Fetch)
2
+
3
+ Test the contract, status codes, and payload schemas.
4
+
5
+ ## Implementation Pattern
6
+
7
+ ```typescript
8
+ it("POST /api/orders returns 201 and created order", async () => {
9
+ const response = await request(app)
10
+ .post("/api/orders")
11
+ .send({ productId: "123", quantity: 1 });
12
+
13
+ expect(response.status).toBe(201);
14
+ expect(response.body).toHaveProperty("id");
15
+ expect(response.body.status).toBe("created");
16
+ });
17
+ ```
18
+
19
+ ## Checklist
20
+
21
+ - [ ] **Status Codes**: 2xx for success, 4xx for client error, 5xx for server error.
22
+ - [ ] **Schema Validation**: Ensure response structure matches openapi/swagger spec.
23
+ - [ ] **Auth Checks**: Verify 401/403 for unauthorized/forbidden access.
@@ -0,0 +1,14 @@
1
+ # Automation Best Practices
2
+
3
+ ## Self-Healing & Resilience
4
+
5
+ - **Dynamic Waiting**: Never use fixed delays like `sleep(1000)`. Use assertion-based waiting (e.g., `findBy`, `waitFor`).
6
+ - **Resilient Selectors**:
7
+ - ❌ Avoid: `div > div > button.red`
8
+ - ✅ Prefer: `role="button"` or `data-testid="submit-order"`
9
+ - **TestIDs**: Enforce a strict `data-testid` policy for elements that lack semantic roles.
10
+
11
+ ## Flakiness Prevention
12
+
13
+ - **Isolation**: Each test must create its own data and clean it up.
14
+ - **Environment**: Do not rely on shared staging environments if possible; mock or use ephemeral DBs.
@@ -0,0 +1,26 @@
1
+ # Jest / Vitest Guide
2
+
3
+ **Core Philosophy**: Isolate logic, integrate flows.
4
+
5
+ ## Implementation Patterns
6
+
7
+ ### Mocking at Boundaries
8
+
9
+ Mock modules at boundaries (e.g., database clients, mailers) to test logic in isolation.
10
+
11
+ ### Table-Driven Tests
12
+
13
+ Use `test.each` for covering multiple data inputs efficiently.
14
+
15
+ ```typescript
16
+ // price-calculator.test.ts
17
+ describe("calculateTotal", () => {
18
+ test.each([
19
+ [100, 10, 110],
20
+ [50, 0, 50],
21
+ [0, 20, 20],
22
+ ])("given subtotal %i and tax %i, returns %i", (subtotal, tax, expected) => {
23
+ expect(calculateTotal(subtotal, tax)).toBe(expected);
24
+ });
25
+ });
26
+ ```
@@ -0,0 +1,30 @@
1
+ # Playwright Automation Guide
2
+
3
+ **Golden Rule**: Use resilient locators and the Page Object Model (POM).
4
+
5
+ ## Page Object Model Pattern
6
+
7
+ ```typescript
8
+ // tests/auth.spec.ts
9
+ import { test, expect } from "@playwright/test";
10
+ import { LoginPage } from "./pages/login-page";
11
+
12
+ test("User can login with valid credentials", async ({ page }) => {
13
+ const loginPage = new LoginPage(page);
14
+ await loginPage.goto();
15
+ await loginPage.login("user@example.com", "password123");
16
+
17
+ await expect(page.getByTestId("dashboard-header")).toBeVisible();
18
+ });
19
+ ```
20
+
21
+ ## Best Practices
22
+
23
+ - **Network Boundaries**: Mock external 3rd party APIs (e.g., Stripe, Auth0) during E2E to ensure stability, but keep "Critical User Journey" tests unmocked.
24
+ - **State Setup**: Do not use the UI to seed data. Use API calls in `beforeAll` hooks.
25
+ ```typescript
26
+ test.beforeAll(async ({ request }) => {
27
+ await request.post('/api/seed/user', { data: { ... } });
28
+ });
29
+ ```
30
+ - **Dynamic Waiting**: Never use `sleep(1000)`. Use `await expect(...).toBeVisible()` or `waitForResponse()`.