@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,219 @@
1
+ # Design Systems Guide
2
+
3
+ Expert guide for creating and maintaining scalable design systems.
4
+
5
+ ## Design Tokens
6
+
7
+ ### Token Hierarchy
8
+
9
+ ```
10
+ Global Tokens (primitives)
11
+
12
+ Semantic Tokens (purpose)
13
+
14
+ Component Tokens (specific)
15
+ ```
16
+
17
+ ### Token Categories
18
+
19
+ | Category | Examples |
20
+ | ----------- | ----------------------------------------- |
21
+ | Color | `color.blue.500`, `color.surface.primary` |
22
+ | Typography | `font.family.body`, `font.size.lg` |
23
+ | Spacing | `space.4`, `space.8` |
24
+ | Border | `border.radius.md`, `border.width.thin` |
25
+ | Shadow | `shadow.sm`, `shadow.lg` |
26
+ | Motion | `duration.fast`, `ease.out` |
27
+ | Breakpoints | `breakpoint.md`, `breakpoint.lg` |
28
+ | Z-index | `z.modal`, `z.tooltip` |
29
+
30
+ ### Token Naming Convention
31
+
32
+ ```
33
+ {category}.{property}.{variant}.{state}
34
+
35
+ Examples:
36
+ color.background.surface
37
+ color.background.surface.hover
38
+ font.size.heading.xl
39
+ space.padding.component.md
40
+ ```
41
+
42
+ ### CSS Implementation
43
+
44
+ ```css
45
+ :root {
46
+ /* Primitives */
47
+ --color-blue-500: #3b82f6;
48
+ --color-blue-600: #2563eb;
49
+
50
+ /* Semantic */
51
+ --color-primary: var(--color-blue-500);
52
+ --color-primary-hover: var(--color-blue-600);
53
+
54
+ /* Component-specific (optional) */
55
+ --button-bg: var(--color-primary);
56
+ --button-bg-hover: var(--color-primary-hover);
57
+ }
58
+ ```
59
+
60
+ ## Component Architecture
61
+
62
+ ### Atomic Design Levels
63
+
64
+ | Level | Description | Examples |
65
+ | --------- | ------------------- | ---------------------- |
66
+ | Atoms | Basic elements | Button, Input, Icon |
67
+ | Molecules | Simple combinations | Search bar, Form field |
68
+ | Organisms | Complex sections | Header, Card, Modal |
69
+ | Templates | Page layouts | Dashboard, Settings |
70
+ | Pages | Specific instances | Home, Profile |
71
+
72
+ ### Component API Design
73
+
74
+ ```typescript
75
+ interface ButtonProps {
76
+ // Variants (visual)
77
+ variant: "primary" | "secondary" | "ghost" | "danger";
78
+ size: "sm" | "md" | "lg";
79
+
80
+ // States
81
+ isLoading?: boolean;
82
+ isDisabled?: boolean;
83
+
84
+ // Content
85
+ children: ReactNode;
86
+ leftIcon?: ReactNode;
87
+ rightIcon?: ReactNode;
88
+
89
+ // Behavior
90
+ onClick?: () => void;
91
+ type?: "button" | "submit" | "reset";
92
+ }
93
+ ```
94
+
95
+ ### Variant Strategy
96
+
97
+ ```
98
+ Base styles (always applied)
99
+ + Variant styles (visual appearance)
100
+ + Size styles (dimensions)
101
+ + State styles (hover, focus, disabled)
102
+ ```
103
+
104
+ ## Documentation Standards
105
+
106
+ ### Component Doc Template
107
+
108
+ ```markdown
109
+ # Button
110
+
111
+ Primary action element for user interactions.
112
+
113
+ ## Usage Guidelines
114
+
115
+ - Use primary for main CTAs (1 per view)
116
+ - Use secondary for alternative actions
117
+ - Use ghost for tertiary/toolbar actions
118
+
119
+ ## Variants
120
+
121
+ [Visual examples of each variant]
122
+
123
+ ## Props
124
+
125
+ | Prop | Type | Default | Description |
126
+ | ---- | ---- | ------- | ----------- |
127
+
128
+ ## Accessibility
129
+
130
+ - Uses native `<button>` element
131
+ - Focus visible by default
132
+ - Loading state announces via aria-busy
133
+
134
+ ## Examples
135
+
136
+ [Code snippets for common use cases]
137
+ ```
138
+
139
+ ## Figma ↔ Code Sync
140
+
141
+ ### Token Export Format
142
+
143
+ ```json
144
+ {
145
+ "color": {
146
+ "primary": {
147
+ "value": "#3b82f6",
148
+ "type": "color"
149
+ }
150
+ },
151
+ "spacing": {
152
+ "4": {
153
+ "value": "16px",
154
+ "type": "spacing"
155
+ }
156
+ }
157
+ }
158
+ ```
159
+
160
+ ### Sync Workflow
161
+
162
+ 1. Designers update tokens in Figma
163
+ 2. Export via Tokens Studio / Style Dictionary
164
+ 3. Generate CSS/JS token files
165
+ 4. Review PR with visual diff
166
+ 5. Merge and deploy
167
+
168
+ ## Versioning & Changelog
169
+
170
+ ### Semantic Versioning
171
+
172
+ ```
173
+ MAJOR.MINOR.PATCH
174
+
175
+ 1.0.0 → 1.0.1 (patch: bug fix)
176
+ 1.0.0 → 1.1.0 (minor: new component)
177
+ 1.0.0 → 2.0.0 (major: breaking change)
178
+ ```
179
+
180
+ ### Breaking Changes
181
+
182
+ - Removed component/prop
183
+ - Changed prop name/type
184
+ - Visual changes affecting layout
185
+ - Token name changes
186
+
187
+ ### Changelog Format
188
+
189
+ ```markdown
190
+ ## [1.2.0] - 2024-01-15
191
+
192
+ ### Added
193
+
194
+ - New `Tooltip` component
195
+
196
+ ### Changed
197
+
198
+ - Button hover states now use scale transform
199
+
200
+ ### Deprecated
201
+
202
+ - `Button` `loading` prop → use `isLoading`
203
+
204
+ ### Fixed
205
+
206
+ - Modal focus trap edge case
207
+ ```
208
+
209
+ ## Quality Checklist
210
+
211
+ ### For Each Component
212
+
213
+ - [ ] Follows token system (no hard-coded values)
214
+ - [ ] All variants documented
215
+ - [ ] Accessibility tested
216
+ - [ ] Dark mode compatible
217
+ - [ ] RTL tested (if applicable)
218
+ - [ ] Unit tests for logic
219
+ - [ ] Visual regression tests
@@ -0,0 +1,57 @@
1
+ # Frontend Design Aesthetics — Anti-AI-Slop Guide
2
+
3
+ > Source: [Anthropic Official Skills](https://github.com/anthropics/skills) (Apache 2.0)
4
+
5
+ ## Design Thinking
6
+
7
+ Before coding, understand the context and commit to a **BOLD** aesthetic direction:
8
+
9
+ - **Purpose**: What problem does this interface solve? Who uses it?
10
+ - **Tone**: Pick an extreme — brutally minimal, maximalist chaos, retro-futuristic, organic/natural, luxury/refined, playful/toy-like, editorial/magazine, brutalist/raw, art deco/geometric, soft/pastel, industrial/utilitarian
11
+ - **Constraints**: Technical requirements (framework, performance, accessibility)
12
+ - **Differentiation**: What makes this UNFORGETTABLE? What's the one thing someone will remember?
13
+
14
+ **CRITICAL**: Choose a clear conceptual direction and execute it with precision. Bold maximalism and refined minimalism both work — the key is **intentionality**, not intensity.
15
+
16
+ ## Anti-AI-Slop Aesthetics
17
+
18
+ ### Typography
19
+ - Choose fonts that are **beautiful, unique, and interesting**
20
+ - AVOID generic fonts: Arial, Inter, Roboto
21
+ - Pair a distinctive display font with a refined body font
22
+ - **NEVER** converge on common AI choices (e.g., Space Grotesk) across generations
23
+
24
+ ### Color & Theme
25
+ - Commit to a cohesive aesthetic via CSS variables
26
+ - Dominant colors with sharp accents > timid, evenly-distributed palettes
27
+ - AVOID cliched color schemes (particularly purple gradients on white)
28
+
29
+ ### Motion
30
+ - CSS-only solutions for HTML, Motion library for React
31
+ - Focus on high-impact moments: **one well-orchestrated page load with staggered reveals** > scattered micro-interactions
32
+ - Use scroll-triggering and hover states that surprise
33
+
34
+ ### Spatial Composition
35
+ - Unexpected layouts. Asymmetry. Overlap. Diagonal flow.
36
+ - Grid-breaking elements. Generous negative space OR controlled density.
37
+
38
+ ### Backgrounds & Visual Details
39
+ - Create atmosphere and depth — never default to solid colors
40
+ - Gradient meshes, noise textures, geometric patterns, layered transparencies
41
+ - Dramatic shadows, decorative borders, custom cursors, grain overlays
42
+
43
+ ## The NEVER List
44
+
45
+ ❌ Overused font families (Inter, Roboto, Arial, system fonts)
46
+ ❌ Cliched color schemes (purple gradients on white backgrounds)
47
+ ❌ Predictable layouts and component patterns
48
+ ❌ Cookie-cutter design lacking context-specific character
49
+ ❌ Same design choices across different generations
50
+
51
+ ## The ALWAYS List
52
+
53
+ ✅ Match implementation complexity to the aesthetic vision
54
+ ✅ Maximalist designs → elaborate code, extensive animations
55
+ ✅ Minimalist designs → restraint, precision, subtle details
56
+ ✅ Every design should be contextually unique
57
+ ✅ Vary between light/dark themes, different fonts, different aesthetics
@@ -0,0 +1,200 @@
1
+ # Layout & Composition
2
+
3
+ Expert spatial design principles for creating balanced, functional layouts.
4
+
5
+ ## Grid Systems
6
+
7
+ ### 8-Point Grid (Recommended)
8
+
9
+ All spacing and sizing divisible by 8:
10
+
11
+ ```
12
+ 4px - micro (border, small gaps)
13
+ 8px - base unit
14
+ 16px - component padding
15
+ 24px - section gaps
16
+ 32px - large gaps
17
+ 48px - section spacing
18
+ 64px - major sections
19
+ ```
20
+
21
+ ### Why 8-Point?
22
+
23
+ - Scales cleanly (÷2, ×2)
24
+ - Works with common screen densities (1x, 1.5x, 2x, 3x)
25
+ - Aligns with most system fonts' baselines
26
+
27
+ ### Responsive Column Grids
28
+
29
+ | Breakpoint | Columns | Gutter | Margin |
30
+ | --------------------- | ------- | ------ | --------------- |
31
+ | Mobile (<640px) | 4 | 16px | 16px |
32
+ | Tablet (640-1024px) | 8 | 24px | 32px |
33
+ | Desktop (1024-1440px) | 12 | 24px | 64px |
34
+ | Large (>1440px) | 12 | 32px | auto (centered) |
35
+
36
+ ## Composition Principles
37
+
38
+ ### Visual Hierarchy
39
+
40
+ 1. **Size**: Larger = more important
41
+ 2. **Color**: Saturated/contrasting = attention
42
+ 3. **Position**: Top-left (LTR) = first seen
43
+ 4. **Whitespace**: Isolated = prominent
44
+ 5. **Typography**: Weight, style variations
45
+
46
+ ### The Rule of Thirds
47
+
48
+ Divide canvas into 3×3 grid, place key elements at intersections.
49
+
50
+ - Hero images: subject at intersection
51
+ - CTAs: right-third for natural eye flow
52
+
53
+ ### Gestalt Principles
54
+
55
+ | Principle | Description | Application |
56
+ | ------------- | -------------------------- | ------------------------ |
57
+ | Proximity | Close items seem related | Group related controls |
58
+ | Similarity | Similar items seem related | Consistent button styles |
59
+ | Continuity | Eye follows paths | Align elements |
60
+ | Closure | Mind completes shapes | Icon design |
61
+ | Figure/Ground | Foreground vs background | Cards, modals |
62
+
63
+ ## Whitespace Strategy
64
+
65
+ ### Types of Space
66
+
67
+ - **Micro**: Within components (padding, letter-spacing)
68
+ - **Macro**: Between components/sections
69
+ - **Negative**: Empty space that shapes perception
70
+
71
+ ### Breathing Room Guidelines
72
+
73
+ ```
74
+ Component padding: 16-24px
75
+ Section spacing: 48-96px
76
+ Page margins: 16px (mobile) → 64px+ (desktop)
77
+ ```
78
+
79
+ ### Active vs Passive Space
80
+
81
+ - **Active**: Intentionally empty, guides attention
82
+ - **Passive**: Leftover, feels unfinished
83
+ - Always design space, never leave leftovers
84
+
85
+ ## Layout Patterns
86
+
87
+ ### Common Page Layouts
88
+
89
+ ```
90
+ ┌──────────────────────────┐
91
+ │ Header │
92
+ ├──────────────────────────┤
93
+ │ │
94
+ │ Hero │
95
+ │ │
96
+ ├──────────────────────────┤
97
+ │ Card │ Card │ Card │
98
+ ├──────────────────────────┤
99
+ │ Feature Section │
100
+ ├──────────────────────────┤
101
+ │ Footer │
102
+ └──────────────────────────┘
103
+ ```
104
+
105
+ ### Dashboard Layout
106
+
107
+ ```
108
+ ┌────────┬─────────────────┐
109
+ │ │ Topbar │
110
+ │ Side ├─────────────────┤
111
+ │ bar │ │
112
+ │ │ Main Content │
113
+ │ │ │
114
+ └────────┴─────────────────┘
115
+ ```
116
+
117
+ ## Responsive Strategies
118
+
119
+ ### Mobile-First Breakpoints
120
+
121
+ ```css
122
+ /* Base: Mobile */
123
+ .container {
124
+ padding: 16px;
125
+ }
126
+
127
+ /* Tablet */
128
+ @media (min-width: 640px) {
129
+ .container {
130
+ padding: 32px;
131
+ }
132
+ }
133
+
134
+ /* Desktop */
135
+ @media (min-width: 1024px) {
136
+ .container {
137
+ padding: 64px;
138
+ max-width: 1280px;
139
+ }
140
+ }
141
+ ```
142
+
143
+ ### Container Queries (Modern)
144
+
145
+ ```css
146
+ .card {
147
+ container-type: inline-size;
148
+ }
149
+
150
+ @container (min-width: 400px) {
151
+ .card-content {
152
+ flex-direction: row;
153
+ }
154
+ }
155
+ ```
156
+
157
+ ## Advanced Techniques
158
+
159
+ ### CSS Grid for Complex Layouts
160
+
161
+ ```css
162
+ .bento-grid {
163
+ display: grid;
164
+ grid-template-columns: repeat(4, 1fr);
165
+ grid-auto-rows: 200px;
166
+ gap: 16px;
167
+ }
168
+
169
+ .featured {
170
+ grid-column: span 2;
171
+ grid-row: span 2;
172
+ }
173
+ ```
174
+
175
+ ### Subgrid for Alignment
176
+
177
+ ```css
178
+ .card-grid {
179
+ display: grid;
180
+ grid-template-columns: repeat(3, 1fr);
181
+ gap: 24px;
182
+ }
183
+
184
+ .card {
185
+ display: grid;
186
+ grid-template-rows: subgrid;
187
+ grid-row: span 3; /* header, content, footer */
188
+ }
189
+ ```
190
+
191
+ ## Safe Areas (Mobile)
192
+
193
+ ```css
194
+ .full-bleed {
195
+ padding-top: env(safe-area-inset-top);
196
+ padding-right: env(safe-area-inset-right);
197
+ padding-bottom: env(safe-area-inset-bottom);
198
+ padding-left: env(safe-area-inset-left);
199
+ }
200
+ ```
@@ -0,0 +1,92 @@
1
+ # Motion & Animation Design
2
+
3
+ Expert guidelines for specifying purposeful, meaningful, and performant motion.
4
+
5
+ **ROLE:** As a designer, your job is to **choreograph and specify** motion, not implement it. Use the provided templates to communicate your intent to the Frontend Developer.
6
+
7
+ ## I. Motion Design Strategy
8
+
9
+ Before animating, define the **purpose** of the motion.
10
+
11
+ ### 1. Orientation (The "Where")
12
+
13
+ Use motion to help users build a mental model of the interface.
14
+
15
+ - **entering**: Elements should appear from where they were triggered.
16
+ - **exiting**: Elements should return to their source or exit in the direction of intended flow.
17
+ - **transitional**: Shared element transitions connect screens seamlessly.
18
+
19
+ ### 2. Feedback (The "What Happened")
20
+
21
+ Use motion to acknowledge user interaction immediately.
22
+
23
+ - **hover**: Subtle scale or lift (e.g., scale 1.0 -> 1.02).
24
+ - **active/press**: Scale down (e.g., scale 1.0 -> 0.98).
25
+ - **confetti/burst**: For high-value success states only.
26
+
27
+ ### 3. Focus (The "Look Here")
28
+
29
+ Use motion to direct attention.
30
+
31
+ - **shimmer**: Suggest loading or high-value content.
32
+ - **pulse**: Gentle attention grab for notifications.
33
+
34
+ ## II. Functionality Specification
35
+
36
+ To specify an animation, you must define **Trigger**, **Properties**, and **Timing**.
37
+
38
+ **Template Location**: `../templates/design-motion-spec.md`
39
+ **Output Location**: `docs/040-Design/Specs/`
40
+
41
+ ### 1. Triggers
42
+
43
+ - **Load**: When the component mounts/appears.
44
+ - **Hover**: Cursor interaction.
45
+ - **Click/Tap**: Active interaction.
46
+ - **Scroll**: Viewport entry or scroll-linked.
47
+ - **State Change**: Success, Error, Loading.
48
+
49
+ ### 2. Properties (What changes?)
50
+
51
+ Describe the specific visual change.
52
+
53
+ - **Opacity**: 0% to 100%.
54
+ - **Scale**: 0.9 to 1.0.
55
+ - **Position**: Y+20px to Y-0px.
56
+ - **Rotation**: 0deg to 180deg.
57
+
58
+ ### 3. Timing & Easing (The "Feel")
59
+
60
+ Use standard easing names to communicate the feel.
61
+
62
+ | Easing Name | Description | Use Case |
63
+ | :------------- | :------------------- | :----------------------------------------------- |
64
+ | **Decelerate** | Start fast, end slow | **Entrances**. Natural feel for appearing items. |
65
+ | **Accelerate** | Start slow, end fast | **Exits**. Items leaving the screen. |
66
+ | **Standard** | Fast-Slow-Fast | **Movement**. Moving from point A to B. |
67
+ | **Spring** | Overshoot and settle | **Playful/High-Focus**. Attention grabbing. |
68
+
69
+ | Duration | Scale |
70
+ | :--------- | :---------------------------------------- |
71
+ | **Short** | 100-200ms (Micro-interactions, Hover) |
72
+ | **Medium** | 250-350ms (Dialogs, Toasts, List Items) |
73
+ | **Long** | 400-600ms (Page Transitions, Full Screen) |
74
+
75
+ ## III. Choreography Rules
76
+
77
+ Specify how multiple elements move together.
78
+
79
+ - **Stagger**: "Items should appear one after another with a 50ms delay."
80
+ - **Sequence**: "Container expands FIRST (300ms), THEN content fades in (200ms)."
81
+ - **Group**: "Avatar and Name move as a single unit."
82
+
83
+ ## IV. Design Handoff
84
+
85
+ When a user asks for animation, **DO NOT write CSS**. Instead:
86
+
87
+ 1. **Analyze** the interaction.
88
+ 2. **Select** the appropriate parameters (Trigger, Easing, Duration).
89
+ 3. **Generate a Motion Spec** using the template at `../templates/design-motion-spec.md`.
90
+ 4. **Save** it to `docs/040-Design/Specs/Motion-[FeatureName].md`.
91
+
92
+ This spec is the deliverable for the Frontend Developer.
@@ -0,0 +1,100 @@
1
+ # UI Review & Auditing
2
+
3
+ Expert guidelines for auditing UI code and ensuring production quality.
4
+
5
+ ## Guidelines Source
6
+
7
+ Fetch fresh guidelines before each review:
8
+
9
+ ```
10
+ https://raw.githubusercontent.com/vercel-labs/web-interface-guidelines/main/command.md
11
+ ```
12
+
13
+ Use `read_url_content` to retrieve. The content contains full rules and output format.
14
+
15
+ ## Audit Decision Table
16
+
17
+ Select which standards to apply:
18
+
19
+ | Project Type | Apply Standards |
20
+ | ------------- | --------------------------- |
21
+ | Personal/demo | Basic review only |
22
+ | Commercial | Full WIG + WCAG AA |
23
+ | Enterprise | WIG + WCAG AA + performance |
24
+ | Public/Gov | WIG + WCAG AAA + security |
25
+
26
+ ## Review Workflow
27
+
28
+ 1. **Determine scope**: Which files? Which standards?
29
+ 2. **Fetch guidelines**: Get latest from URL above
30
+ 3. **Load references**: `@references/accessibility.md` for a11y checks
31
+ 4. **Analyze code**: Apply all applicable rules
32
+ 5. **Report findings**: Use format below
33
+
34
+ ## Standard Audit Checklist
35
+
36
+ These rules always apply:
37
+
38
+ ### Interactive States
39
+
40
+ - [ ] All buttons/links have `:hover` state
41
+ - [ ] All interactive elements have visible `:focus-visible`
42
+ - [ ] No `outline: none` without replacement
43
+
44
+ ### Form Quality
45
+
46
+ - [ ] Inputs have `autocomplete` attribute
47
+ - [ ] Labels are clickable (`for` or wrapped)
48
+ - [ ] Placeholders end with `…`
49
+ - [ ] Errors announced to screen readers
50
+
51
+ ### Typography
52
+
53
+ - [ ] Proper glyphs: `…` not `...`, curly quotes
54
+ - [ ] `text-wrap: balance` on headings
55
+ - [ ] `tabular-nums` on numeric tables
56
+
57
+ ### Performance
58
+
59
+ - [ ] Images have explicit `width`/`height`
60
+ - [ ] Large lists (>50) virtualized
61
+ - [ ] No `transition: all`
62
+ - [ ] Animations use transform/opacity only
63
+
64
+ ### Accessibility
65
+
66
+ - [ ] Semantic HTML (buttons, links, sections)
67
+ - [ ] Icon buttons have `aria-label`
68
+ - [ ] Color not sole indicator
69
+ - [ ] Contrast meets target level
70
+
71
+ ## Severity Levels
72
+
73
+ | Level | Symbol | When to Use |
74
+ | ------- | ------ | ------------------------------------- |
75
+ | Error | 🔴 | Breaks functionality or accessibility |
76
+ | Warning | 🟡 | Best practice violation |
77
+ | Info | 🔵 | Suggestion for improvement |
78
+
79
+ ## Output Format
80
+
81
+ Group by file. Use clickable `file:line` format.
82
+
83
+ ```text
84
+ ## src/components/Button.tsx
85
+
86
+ 🔴 src/components/Button.tsx:42 - icon button missing aria-label
87
+ 🟡 src/components/Button.tsx:18 - transition: all → specify properties
88
+ 🔵 src/components/Button.tsx:25 - consider adding loading state
89
+
90
+ ## src/layout/Header.tsx
91
+
92
+ ✓ pass
93
+ ```
94
+
95
+ **Rules:**
96
+
97
+ - State issue + location only
98
+ - Skip preamble
99
+ - Explanations only if fix is non-obvious
100
+ - End with pass/fail summary