@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,270 @@
1
+ # Native Controls
2
+
3
+ Native iOS controls provide built-in haptics, accessibility, and platform-appropriate styling.
4
+
5
+ ## Switch
6
+
7
+ Use for binary on/off settings. Has built-in haptics.
8
+
9
+ ```tsx
10
+ import { Switch } from "react-native";
11
+ import { useState } from "react";
12
+
13
+ const [enabled, setEnabled] = useState(false);
14
+
15
+ <Switch value={enabled} onValueChange={setEnabled} />;
16
+ ```
17
+
18
+ ### Customization
19
+
20
+ ```tsx
21
+ <Switch
22
+ value={enabled}
23
+ onValueChange={setEnabled}
24
+ trackColor={{ false: "#767577", true: "#81b0ff" }}
25
+ thumbColor={enabled ? "#f5dd4b" : "#f4f3f4"}
26
+ ios_backgroundColor="#3e3e3e"
27
+ />
28
+ ```
29
+
30
+ ## Segmented Control
31
+
32
+ Use for non-navigational tabs or mode selection. Avoid changing default colors.
33
+
34
+ ```tsx
35
+ import SegmentedControl from "@react-native-segmented-control/segmented-control";
36
+ import { useState } from "react";
37
+
38
+ const [index, setIndex] = useState(0);
39
+
40
+ <SegmentedControl
41
+ values={["All", "Active", "Done"]}
42
+ selectedIndex={index}
43
+ onChange={({ nativeEvent }) => setIndex(nativeEvent.selectedSegmentIndex)}
44
+ />;
45
+ ```
46
+
47
+ ### Rules
48
+
49
+ - Maximum 4 options — use a picker for more
50
+ - Keep labels short (1-2 words)
51
+ - Avoid custom colors — native styling adapts to dark mode
52
+
53
+ ### With Icons (iOS 14+)
54
+
55
+ ```tsx
56
+ <SegmentedControl
57
+ values={[
58
+ { label: "List", icon: "list.bullet" },
59
+ { label: "Grid", icon: "square.grid.2x2" },
60
+ ]}
61
+ selectedIndex={index}
62
+ onChange={({ nativeEvent }) => setIndex(nativeEvent.selectedSegmentIndex)}
63
+ />
64
+ ```
65
+
66
+ ## Slider
67
+
68
+ Continuous value selection.
69
+
70
+ ```tsx
71
+ import Slider from "@react-native-community/slider";
72
+ import { useState } from "react";
73
+
74
+ const [value, setValue] = useState(0.5);
75
+
76
+ <Slider
77
+ value={value}
78
+ onValueChange={setValue}
79
+ minimumValue={0}
80
+ maximumValue={1}
81
+ />;
82
+ ```
83
+
84
+ ### Customization
85
+
86
+ ```tsx
87
+ <Slider
88
+ value={value}
89
+ onValueChange={setValue}
90
+ minimumValue={0}
91
+ maximumValue={100}
92
+ step={1}
93
+ minimumTrackTintColor="#007AFF"
94
+ maximumTrackTintColor="#E5E5EA"
95
+ thumbTintColor="#007AFF"
96
+ />
97
+ ```
98
+
99
+ ### Discrete Steps
100
+
101
+ ```tsx
102
+ <Slider
103
+ value={value}
104
+ onValueChange={setValue}
105
+ minimumValue={0}
106
+ maximumValue={10}
107
+ step={1}
108
+ />
109
+ ```
110
+
111
+ ## Date/Time Picker
112
+
113
+ Compact pickers with popovers. Has built-in haptics.
114
+
115
+ ```tsx
116
+ import DateTimePicker from "@react-native-community/datetimepicker";
117
+ import { useState } from "react";
118
+
119
+ const [date, setDate] = useState(new Date());
120
+
121
+ <DateTimePicker
122
+ value={date}
123
+ onChange={(event, selectedDate) => {
124
+ if (selectedDate) setDate(selectedDate);
125
+ }}
126
+ mode="datetime"
127
+ />;
128
+ ```
129
+
130
+ ### Modes
131
+
132
+ - `date` — Date only
133
+ - `time` — Time only
134
+ - `datetime` — Date and time
135
+
136
+ ### Display Styles
137
+
138
+ ```tsx
139
+ // Compact inline (default)
140
+ <DateTimePicker value={date} mode="date" />
141
+
142
+ // Spinner wheel
143
+ <DateTimePicker
144
+ value={date}
145
+ mode="date"
146
+ display="spinner"
147
+ style={{ width: 200, height: 150 }}
148
+ />
149
+
150
+ // Full calendar
151
+ <DateTimePicker value={date} mode="date" display="inline" />
152
+ ```
153
+
154
+ ### Time Intervals
155
+
156
+ ```tsx
157
+ <DateTimePicker
158
+ value={date}
159
+ mode="time"
160
+ minuteInterval={15}
161
+ />
162
+ ```
163
+
164
+ ### Min/Max Dates
165
+
166
+ ```tsx
167
+ <DateTimePicker
168
+ value={date}
169
+ mode="date"
170
+ minimumDate={new Date(2020, 0, 1)}
171
+ maximumDate={new Date(2030, 11, 31)}
172
+ />
173
+ ```
174
+
175
+ ## Stepper
176
+
177
+ Increment/decrement numeric values.
178
+
179
+ ```tsx
180
+ import { Stepper } from "react-native";
181
+ import { useState } from "react";
182
+
183
+ const [count, setCount] = useState(0);
184
+
185
+ <Stepper
186
+ value={count}
187
+ onValueChange={setCount}
188
+ minimumValue={0}
189
+ maximumValue={10}
190
+ />;
191
+ ```
192
+
193
+ ## TextInput
194
+
195
+ Native text input with various keyboard types.
196
+
197
+ ```tsx
198
+ import { TextInput } from "react-native";
199
+
200
+ <TextInput
201
+ placeholder="Enter text..."
202
+ placeholderTextColor="#999"
203
+ style={{
204
+ padding: 12,
205
+ fontSize: 16,
206
+ borderRadius: 8,
207
+ backgroundColor: "#f0f0f0",
208
+ }}
209
+ />
210
+ ```
211
+
212
+ ### Keyboard Types
213
+
214
+ ```tsx
215
+ // Email
216
+ <TextInput keyboardType="email-address" autoCapitalize="none" />
217
+
218
+ // Phone
219
+ <TextInput keyboardType="phone-pad" />
220
+
221
+ // Number
222
+ <TextInput keyboardType="numeric" />
223
+
224
+ // Password
225
+ <TextInput secureTextEntry />
226
+
227
+ // Search
228
+ <TextInput
229
+ returnKeyType="search"
230
+ enablesReturnKeyAutomatically
231
+ />
232
+ ```
233
+
234
+ ### Multiline
235
+
236
+ ```tsx
237
+ <TextInput
238
+ multiline
239
+ numberOfLines={4}
240
+ textAlignVertical="top"
241
+ style={{ minHeight: 100 }}
242
+ />
243
+ ```
244
+
245
+ ## Picker (Wheel)
246
+
247
+ For selection from many options (5+ items).
248
+
249
+ ```tsx
250
+ import { Picker } from "@react-native-picker/picker";
251
+ import { useState } from "react";
252
+
253
+ const [selected, setSelected] = useState("js");
254
+
255
+ <Picker selectedValue={selected} onValueChange={setSelected}>
256
+ <Picker.Item label="JavaScript" value="js" />
257
+ <Picker.Item label="TypeScript" value="ts" />
258
+ <Picker.Item label="Python" value="py" />
259
+ <Picker.Item label="Go" value="go" />
260
+ </Picker>;
261
+ ```
262
+
263
+ ## Best Practices
264
+
265
+ - **Haptics**: Switch and DateTimePicker have built-in haptics — don't add extra
266
+ - **Accessibility**: Native controls have proper accessibility labels by default
267
+ - **Dark Mode**: Avoid custom colors — native styling adapts automatically
268
+ - **Spacing**: Use consistent padding around controls (12-16pt)
269
+ - **Labels**: Place labels above or to the left of controls
270
+ - **Grouping**: Group related controls in sections with headers
@@ -0,0 +1,227 @@
1
+ # Form Sheets in Expo Router
2
+
3
+ This skill covers implementing form sheets with footers using Expo Router's Stack navigator and react-native-screens.
4
+
5
+ ## Overview
6
+
7
+ Form sheets are modal presentations that appear as a card sliding up from the bottom of the screen. They're ideal for:
8
+
9
+ - Quick actions and confirmations
10
+ - Settings panels
11
+ - Login/signup flows
12
+ - Action sheets with custom content
13
+
14
+ **Requirements:**
15
+
16
+ - Expo Router Stack navigator
17
+
18
+ ## Basic Usage
19
+
20
+ ### Form Sheet with Footer
21
+
22
+ Configure the Stack.Screen with transparent backgrounds and sheet presentation:
23
+
24
+ ```tsx
25
+ // app/_layout.tsx
26
+ import { Stack } from "expo-router";
27
+
28
+ export default function Layout() {
29
+ return (
30
+ <Stack>
31
+ <Stack.Screen name="index" />
32
+ <Stack.Screen
33
+ name="about"
34
+ options={{
35
+ presentation: "formSheet",
36
+ sheetAllowedDetents: [0.25],
37
+ headerTransparent: true,
38
+ contentStyle: { backgroundColor: "transparent" },
39
+ sheetGrabberVisible: true,
40
+ }}
41
+ >
42
+ <Stack.Header style={{ backgroundColor: "transparent" }}></Stack.Header>
43
+ </Stack.Screen>
44
+ </Stack>
45
+ );
46
+ }
47
+ ```
48
+
49
+ ### Form Sheet Screen Content
50
+
51
+ > Requires Expo SDK 55 or later.
52
+
53
+ Use `flex: 1` to allow the content to fill available space, enabling footer positioning:
54
+
55
+ ```tsx
56
+ // app/about.tsx
57
+ import { View, Text, StyleSheet } from "react-native";
58
+
59
+ export default function AboutSheet() {
60
+ return (
61
+ <View style={styles.container}>
62
+ {/* Main content */}
63
+ <View style={styles.content}>
64
+ <Text>Sheet Content</Text>
65
+ </View>
66
+
67
+ {/* Footer - stays at bottom */}
68
+ <View style={styles.footer}>
69
+ <Text>Footer Content</Text>
70
+ </View>
71
+ </View>
72
+ );
73
+ }
74
+
75
+ const styles = StyleSheet.create({
76
+ container: {
77
+ flex: 1,
78
+ },
79
+ content: {
80
+ flex: 1,
81
+ padding: 16,
82
+ },
83
+ footer: {
84
+ padding: 16,
85
+ },
86
+ });
87
+ ```
88
+
89
+ ## Key Options
90
+
91
+ | Option | Type | Description |
92
+ | --------------------- | ---------- | ----------------------------------------------------------- |
93
+ | `presentation` | `string` | Set to `'formSheet'` for sheet presentation |
94
+ | `sheetGrabberVisible` | `boolean` | Shows the drag handle at the top of the sheet |
95
+ | `sheetAllowedDetents` | `number[]` | Array of detent heights (0-1 range, e.g., `[0.25]` for 25%) |
96
+ | `headerTransparent` | `boolean` | Makes header background transparent |
97
+ | `contentStyle` | `object` | Style object for the screen content container |
98
+ | `title` | `string` | Screen title (set to `''` for no title) |
99
+
100
+ ## Common Detent Values
101
+
102
+ - `[0.25]` - Quarter sheet (compact actions)
103
+ - `[0.5]` - Half sheet (medium content)
104
+ - `[0.75]` - Three-quarter sheet (detailed forms)
105
+ - `[0.25, 0.5, 1]` - Multiple stops (expandable sheet)
106
+
107
+ ## Complete Example
108
+
109
+ ```tsx
110
+ // _layout.tsx
111
+ import { Stack } from "expo-router";
112
+
113
+ export default function Layout() {
114
+ return (
115
+ <Stack>
116
+ <Stack.Screen name="index" options={{ title: "Home" }} />
117
+ <Stack.Screen
118
+ name="confirm"
119
+ options={{
120
+ contentStyle: { backgroundColor: "transparent" },
121
+ presentation: "formSheet",
122
+ title: "",
123
+ sheetGrabberVisible: true,
124
+ sheetAllowedDetents: [0.25],
125
+ headerTransparent: true,
126
+ }}
127
+ >
128
+ <Stack.Header style={{ backgroundColor: "transparent" }}>
129
+ <Stack.Header.Right />
130
+ </Stack.Header>
131
+ </Stack.Screen>
132
+ </Stack>
133
+ );
134
+ }
135
+ ```
136
+
137
+ ```tsx
138
+ // app/confirm.tsx
139
+ import { View, Text, Pressable, StyleSheet } from "react-native";
140
+ import { router } from "expo-router";
141
+
142
+ export default function ConfirmSheet() {
143
+ return (
144
+ <View style={styles.container}>
145
+ <View style={styles.content}>
146
+ <Text style={styles.title}>Confirm Action</Text>
147
+ <Text style={styles.description}>
148
+ Are you sure you want to proceed?
149
+ </Text>
150
+ </View>
151
+
152
+ <View style={styles.footer}>
153
+ <Pressable style={styles.cancelButton} onPress={() => router.back()}>
154
+ <Text style={styles.cancelText}>Cancel</Text>
155
+ </Pressable>
156
+ <Pressable style={styles.confirmButton} onPress={() => router.back()}>
157
+ <Text style={styles.confirmText}>Confirm</Text>
158
+ </Pressable>
159
+ </View>
160
+ </View>
161
+ );
162
+ }
163
+
164
+ const styles = StyleSheet.create({
165
+ container: {
166
+ flex: 1,
167
+ },
168
+ content: {
169
+ flex: 1,
170
+ padding: 20,
171
+ alignItems: "center",
172
+ justifyContent: "center",
173
+ },
174
+ title: {
175
+ fontSize: 18,
176
+ fontWeight: "600",
177
+ marginBottom: 8,
178
+ },
179
+ description: {
180
+ fontSize: 14,
181
+ color: "#666",
182
+ textAlign: "center",
183
+ },
184
+ footer: {
185
+ flexDirection: "row",
186
+ padding: 16,
187
+ gap: 12,
188
+ },
189
+ cancelButton: {
190
+ flex: 1,
191
+ padding: 14,
192
+ borderRadius: 10,
193
+ backgroundColor: "#f0f0f0",
194
+ alignItems: "center",
195
+ },
196
+ cancelText: {
197
+ fontSize: 16,
198
+ fontWeight: "500",
199
+ },
200
+ confirmButton: {
201
+ flex: 1,
202
+ padding: 14,
203
+ borderRadius: 10,
204
+ backgroundColor: "#007AFF",
205
+ alignItems: "center",
206
+ },
207
+ confirmText: {
208
+ fontSize: 16,
209
+ fontWeight: "500",
210
+ color: "white",
211
+ },
212
+ });
213
+ ```
214
+
215
+ ## Troubleshooting
216
+
217
+ ### Content not filling sheet
218
+
219
+ Make sure the root View uses `flex: 1`:
220
+
221
+ ```tsx
222
+ <View style={{ flex: 1 }}>{/* content */}</View>
223
+ ```
224
+
225
+ ### Sheet background showing through
226
+
227
+ Set `contentStyle: { backgroundColor: 'transparent' }` in options and style your content container with the desired background color instead.
@@ -0,0 +1,106 @@
1
+ # CSS Gradients
2
+
3
+ > **New Architecture Only**: CSS gradients require React Native's New Architecture (Fabric). They are not available in the old architecture or Expo Go.
4
+
5
+ Use CSS gradients with the `experimental_backgroundImage` style property.
6
+
7
+ ## Linear Gradients
8
+
9
+ ```tsx
10
+ // Top to bottom
11
+ <View style={{
12
+ experimental_backgroundImage: 'linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%)'
13
+ }} />
14
+
15
+ // Left to right
16
+ <View style={{
17
+ experimental_backgroundImage: 'linear-gradient(to right, #ff0000 0%, #0000ff 100%)'
18
+ }} />
19
+
20
+ // Diagonal
21
+ <View style={{
22
+ experimental_backgroundImage: 'linear-gradient(45deg, #ff0000 0%, #00ff00 50%, #0000ff 100%)'
23
+ }} />
24
+
25
+ // Using degrees
26
+ <View style={{
27
+ experimental_backgroundImage: 'linear-gradient(135deg, transparent 0%, black 100%)'
28
+ }} />
29
+ ```
30
+
31
+ ## Radial Gradients
32
+
33
+ ```tsx
34
+ // Circle at center
35
+ <View style={{
36
+ experimental_backgroundImage: 'radial-gradient(circle at center, rgba(255, 0, 0, 1) 0%, rgba(0, 0, 255, 1) 100%)'
37
+ }} />
38
+
39
+ // Ellipse
40
+ <View style={{
41
+ experimental_backgroundImage: 'radial-gradient(ellipse at center, #fff 0%, #000 100%)'
42
+ }} />
43
+
44
+ // Positioned
45
+ <View style={{
46
+ experimental_backgroundImage: 'radial-gradient(circle at top left, #ff0000 0%, transparent 70%)'
47
+ }} />
48
+ ```
49
+
50
+ ## Multiple Gradients
51
+
52
+ Stack multiple gradients by comma-separating them:
53
+
54
+ ```tsx
55
+ <View style={{
56
+ experimental_backgroundImage: `
57
+ linear-gradient(to bottom, transparent 0%, black 100%),
58
+ radial-gradient(circle at top right, rgba(255, 0, 0, 0.5) 0%, transparent 50%)
59
+ `
60
+ }} />
61
+ ```
62
+
63
+ ## Common Patterns
64
+
65
+ ### Overlay on Image
66
+
67
+ ```tsx
68
+ <View style={{ position: 'relative' }}>
69
+ <Image source={{ uri: '...' }} style={{ width: '100%', height: 200 }} />
70
+ <View style={{
71
+ position: 'absolute',
72
+ inset: 0,
73
+ experimental_backgroundImage: 'linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, transparent 50%)'
74
+ }} />
75
+ </View>
76
+ ```
77
+
78
+ ### Frosted Glass Effect
79
+
80
+ ```tsx
81
+ <View style={{
82
+ experimental_backgroundImage: 'linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.05) 100%)',
83
+ backdropFilter: 'blur(10px)',
84
+ }} />
85
+ ```
86
+
87
+ ### Button Gradient
88
+
89
+ ```tsx
90
+ <Pressable style={{
91
+ experimental_backgroundImage: 'linear-gradient(to bottom, #4CAF50 0%, #388E3C 100%)',
92
+ padding: 16,
93
+ borderRadius: 8,
94
+ }}>
95
+ <Text style={{ color: 'white', textAlign: 'center' }}>Submit</Text>
96
+ </Pressable>
97
+ ```
98
+
99
+ ## Important Notes
100
+
101
+ - Do NOT use `expo-linear-gradient` — use CSS gradients instead
102
+ - Gradients are strings, not objects
103
+ - Use `rgba()` for transparency, or `transparent` keyword
104
+ - Color stops use percentages (0%, 50%, 100%)
105
+ - Direction keywords: `to top`, `to bottom`, `to left`, `to right`, `to top left`, etc.
106
+ - Degree values: `45deg`, `90deg`, `135deg`, etc.