@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,368 @@
1
+ # Native Tabs
2
+
3
+ Always prefer NativeTabs from 'expo-router/unstable-native-tabs' for the best iOS experience.
4
+
5
+ **Requires SDK 54+**
6
+
7
+ ## Basic Usage
8
+
9
+ ```tsx
10
+ import {
11
+ NativeTabs,
12
+ Icon,
13
+ Label,
14
+ Badge,
15
+ } from "expo-router/unstable-native-tabs";
16
+
17
+ export default function TabLayout() {
18
+ return (
19
+ <NativeTabs minimizeBehavior="onScrollDown">
20
+ <NativeTabs.Trigger name="index">
21
+ <Label>Home</Label>
22
+ <Icon sf="house.fill" />
23
+ <Badge>9+</Badge>
24
+ </NativeTabs.Trigger>
25
+ <NativeTabs.Trigger name="settings">
26
+ <Icon sf="gear" />
27
+ <Label>Settings</Label>
28
+ </NativeTabs.Trigger>
29
+ <NativeTabs.Trigger name="(search)" role="search">
30
+ <Label>Search</Label>
31
+ </NativeTabs.Trigger>
32
+ </NativeTabs>
33
+ );
34
+ }
35
+ ```
36
+
37
+ ## Rules
38
+
39
+ - You must include a trigger for each tab
40
+ - The `NativeTabs.Trigger` 'name' must match the route name, including parentheses (e.g. `<NativeTabs.Trigger name="(search)">`)
41
+ - Prefer search tab to be last in the list so it can combine with the search bar
42
+ - Use the 'role' prop for common tab types
43
+
44
+ ## Platform Features
45
+
46
+ Native Tabs use platform-specific tab bar implementations:
47
+
48
+ - **iOS 26+**: Liquid glass effects with system-native appearance
49
+ - **Android**: Material 3 bottom navigation
50
+ - Better performance and native feel
51
+
52
+ ## Icon Component
53
+
54
+ ```tsx
55
+ // SF Symbol only (iOS)
56
+ <Icon sf="house.fill" />
57
+
58
+ // With Android drawable
59
+ <Icon sf="house.fill" drawable="ic_home" />
60
+
61
+ // Custom image source
62
+ <Icon src={require('./icon.png')} />
63
+
64
+ // State variants (default/selected)
65
+ <Icon sf={{ default: "house", selected: "house.fill" }} />
66
+ ```
67
+
68
+ ## Label Component
69
+
70
+ ```tsx
71
+ // Basic label
72
+ <Label>Home</Label>
73
+
74
+ // Hidden label (icon only)
75
+ <Label hidden>Home</Label>
76
+ ```
77
+
78
+ ## Badge Component
79
+
80
+ ```tsx
81
+ // Numeric badge
82
+ <Badge>9+</Badge>
83
+
84
+ // Dot indicator (empty badge)
85
+ <Badge />
86
+ ```
87
+
88
+ ## iOS 26 Features
89
+
90
+ ### Liquid Glass Tab Bar
91
+
92
+ The tab bar automatically adopts liquid glass appearance on iOS 26+.
93
+
94
+ ### Minimize on Scroll
95
+
96
+ ```tsx
97
+ <NativeTabs minimizeBehavior="onScrollDown">
98
+ ```
99
+
100
+ ### Search Tab
101
+
102
+ Add a dedicated search tab that integrates with the tab bar search field:
103
+
104
+ ```tsx
105
+ <NativeTabs.Trigger name="(search)" role="search">
106
+ <Label>Search</Label>
107
+ </NativeTabs.Trigger>
108
+ ```
109
+
110
+ **Note**: Place search tab last for best UX.
111
+
112
+ ### Role Prop
113
+
114
+ Use semantic roles for special tab types:
115
+
116
+ ```tsx
117
+ <NativeTabs.Trigger name="search" role="search" />
118
+ <NativeTabs.Trigger name="favorites" role="favorites" />
119
+ <NativeTabs.Trigger name="more" role="more" />
120
+ ```
121
+
122
+ Available roles: `search` | `more` | `favorites` | `bookmarks` | `contacts` | `downloads` | `featured` | `history` | `mostRecent` | `mostViewed` | `recents` | `topRated`
123
+
124
+ ## Customization
125
+
126
+ ### Tint Color
127
+
128
+ ```tsx
129
+ <NativeTabs tintColor="#007AFF">
130
+ ```
131
+
132
+ ### Dynamic Colors (iOS)
133
+
134
+ Use DynamicColorIOS for colors that adapt to liquid glass:
135
+
136
+ ```tsx
137
+ import { DynamicColorIOS, Platform } from 'react-native';
138
+
139
+ const adaptiveBlue = Platform.select({
140
+ ios: DynamicColorIOS({ light: '#007AFF', dark: '#0A84FF' }),
141
+ default: '#007AFF',
142
+ });
143
+
144
+ <NativeTabs tintColor={adaptiveBlue}>
145
+ ```
146
+
147
+ ## Conditional Tabs
148
+
149
+ Hide tabs conditionally:
150
+
151
+ ```tsx
152
+ <NativeTabs.Trigger name="admin" hidden={!isAdmin}>
153
+ <Label>Admin</Label>
154
+ <Icon sf="shield.fill" />
155
+ </NativeTabs.Trigger>
156
+ ```
157
+
158
+ ## Behavior Options
159
+
160
+ ```tsx
161
+ <NativeTabs.Trigger
162
+ name="home"
163
+ disablePopToTop // Don't pop stack when tapping active tab
164
+ disableScrollToTop // Don't scroll to top when tapping active tab
165
+ >
166
+ ```
167
+
168
+ ## Using Vector Icons
169
+
170
+ If you must use @expo/vector-icons instead of SF Symbols:
171
+
172
+ ```tsx
173
+ import { VectorIcon } from "expo-router/unstable-native-tabs";
174
+ import Ionicons from "@expo/vector-icons/Ionicons";
175
+
176
+ <NativeTabs.Trigger name="home">
177
+ <VectorIcon vector={Ionicons} name="home" />
178
+ <Label>Home</Label>
179
+ </NativeTabs.Trigger>;
180
+ ```
181
+
182
+ **Prefer SF Symbols over vector icons for native feel on Apple platforms.**
183
+
184
+ ## Structure with Stacks
185
+
186
+ Native tabs don't render headers. Nest Stacks inside each tab for navigation headers:
187
+
188
+ ```tsx
189
+ // app/(tabs)/_layout.tsx
190
+ import { NativeTabs, Icon, Label } from "expo-router/unstable-native-tabs";
191
+
192
+ export default function TabLayout() {
193
+ return (
194
+ <NativeTabs>
195
+ <NativeTabs.Trigger name="(home)">
196
+ <Label>Home</Label>
197
+ <Icon sf="house.fill" />
198
+ </NativeTabs.Trigger>
199
+ </NativeTabs>
200
+ );
201
+ }
202
+
203
+ // app/(tabs)/(home)/_layout.tsx
204
+ import Stack from "expo-router/stack";
205
+
206
+ export default function HomeStack() {
207
+ return (
208
+ <Stack>
209
+ <Stack.Screen
210
+ name="index"
211
+ options={{ title: "Home", headerLargeTitle: true }}
212
+ />
213
+ <Stack.Screen name="details" options={{ title: "Details" }} />
214
+ </Stack>
215
+ );
216
+ }
217
+ ```
218
+
219
+ ## Migration from JS Tabs
220
+
221
+ ### Before (JS Tabs)
222
+
223
+ ```tsx
224
+ import { Tabs } from "expo-router";
225
+
226
+ export default function TabLayout() {
227
+ return (
228
+ <Tabs>
229
+ <Tabs.Screen
230
+ name="index"
231
+ options={{
232
+ title: "Home",
233
+ tabBarIcon: ({ color }) => (
234
+ <IconSymbol name="house.fill" color={color} />
235
+ ),
236
+ }}
237
+ />
238
+ <Tabs.Screen
239
+ name="settings"
240
+ options={{
241
+ title: "Settings",
242
+ tabBarIcon: ({ color }) => <IconSymbol name="gear" color={color} />,
243
+ }}
244
+ />
245
+ </Tabs>
246
+ );
247
+ }
248
+ ```
249
+
250
+ ### After (Native Tabs)
251
+
252
+ ```tsx
253
+ import { NativeTabs, Icon, Label } from "expo-router/unstable-native-tabs";
254
+
255
+ export default function TabLayout() {
256
+ return (
257
+ <NativeTabs>
258
+ <NativeTabs.Trigger name="index">
259
+ <Label>Home</Label>
260
+ <Icon sf="house.fill" />
261
+ </NativeTabs.Trigger>
262
+ <NativeTabs.Trigger name="settings">
263
+ <Label>Settings</Label>
264
+ <Icon sf="gear" />
265
+ </NativeTabs.Trigger>
266
+ </NativeTabs>
267
+ );
268
+ }
269
+ ```
270
+
271
+ ### Key Differences
272
+
273
+ | JS Tabs | Native Tabs |
274
+ | -------------------------- | ------------------------- |
275
+ | `<Tabs.Screen>` | `<NativeTabs.Trigger>` |
276
+ | `options={{ title }}` | `<Label>Title</Label>` |
277
+ | `options={{ tabBarIcon }}` | `<Icon sf="symbol" />` |
278
+ | Props-based API | React component-based API |
279
+ | `tabBarBadge` option | `<Badge>` component |
280
+
281
+ ### Migration Steps
282
+
283
+ 1. **Change imports**
284
+
285
+ ```tsx
286
+ // Remove
287
+ import { Tabs } from "expo-router";
288
+
289
+ // Add
290
+ import {
291
+ NativeTabs,
292
+ Icon,
293
+ Label,
294
+ Badge,
295
+ } from "expo-router/unstable-native-tabs";
296
+ ```
297
+
298
+ 2. **Replace Tabs with NativeTabs**
299
+
300
+ ```tsx
301
+ // Before
302
+ <Tabs screenOptions={{ ... }}>
303
+
304
+ // After
305
+ <NativeTabs>
306
+ ```
307
+
308
+ 3. **Convert each Screen to Trigger**
309
+
310
+ ```tsx
311
+ // Before
312
+ <Tabs.Screen
313
+ name="home"
314
+ options={{
315
+ title: 'Home',
316
+ tabBarIcon: ({ color }) => <Icon name="house" color={color} />,
317
+ tabBarBadge: 3,
318
+ }}
319
+ />
320
+
321
+ // After
322
+ <NativeTabs.Trigger name="home">
323
+ <Label>Home</Label>
324
+ <Icon sf="house.fill" />
325
+ <Badge>3</Badge>
326
+ </NativeTabs.Trigger>
327
+ ```
328
+
329
+ 4. **Move headers to nested Stack** - Native tabs don't render headers
330
+ ```
331
+ app/
332
+ (tabs)/
333
+ _layout.tsx <- NativeTabs
334
+ (home)/
335
+ _layout.tsx <- Stack with headers
336
+ index.tsx
337
+ (settings)/
338
+ _layout.tsx <- Stack with headers
339
+ index.tsx
340
+ ```
341
+
342
+ ## Limitations
343
+
344
+ - **Android**: Maximum 5 tabs (Material Design constraint)
345
+ - **Nesting**: Native tabs cannot nest inside other native tabs
346
+ - **Tab bar height**: Cannot be measured programmatically
347
+ - **FlatList transparency**: Use `disableTransparentOnScrollEdge` to fix issues
348
+
349
+ ## Keyboard Handling (Android)
350
+
351
+ Configure in app.json:
352
+
353
+ ```json
354
+ {
355
+ "expo": {
356
+ "android": {
357
+ "softwareKeyboardLayoutMode": "resize"
358
+ }
359
+ }
360
+ }
361
+ ```
362
+
363
+ ## Common Issues
364
+
365
+ 1. **Icons not showing on Android**: Add `drawable` prop or use `VectorIcon`
366
+ 2. **Headers missing**: Nest a Stack inside each tab group
367
+ 3. **Trigger name mismatch**: Ensure `name` matches exact route name including parentheses
368
+ 4. **Badge not visible**: Badge must be a child of Trigger, not a prop
@@ -0,0 +1,197 @@
1
+ # Visual Effects
2
+
3
+ ## Backdrop Blur
4
+
5
+ Use `expo-blur` for blur effects. Prefer systemMaterial tints as they adapt to dark mode.
6
+
7
+ ```tsx
8
+ import { BlurView } from "expo-blur";
9
+
10
+ <BlurView tint="systemMaterial" intensity={100} />;
11
+ ```
12
+
13
+ ### Tint Options
14
+
15
+ ```tsx
16
+ // System materials (adapt to dark mode)
17
+ <BlurView tint="systemMaterial" />
18
+ <BlurView tint="systemThinMaterial" />
19
+ <BlurView tint="systemUltraThinMaterial" />
20
+ <BlurView tint="systemThickMaterial" />
21
+ <BlurView tint="systemChromeMaterial" />
22
+
23
+ // Basic tints
24
+ <BlurView tint="light" />
25
+ <BlurView tint="dark" />
26
+ <BlurView tint="default" />
27
+
28
+ // Prominent (more visible)
29
+ <BlurView tint="prominent" />
30
+
31
+ // Extra light/dark
32
+ <BlurView tint="extraLight" />
33
+ ```
34
+
35
+ ### Intensity
36
+
37
+ Control blur strength with `intensity` (0-100):
38
+
39
+ ```tsx
40
+ <BlurView tint="systemMaterial" intensity={50} /> // Subtle
41
+ <BlurView tint="systemMaterial" intensity={100} /> // Full
42
+ ```
43
+
44
+ ### Rounded Corners
45
+
46
+ BlurView requires `overflow: 'hidden'` to clip rounded corners:
47
+
48
+ ```tsx
49
+ <BlurView
50
+ tint="systemMaterial"
51
+ intensity={100}
52
+ style={{
53
+ borderRadius: 16,
54
+ overflow: 'hidden',
55
+ }}
56
+ />
57
+ ```
58
+
59
+ ### Overlay Pattern
60
+
61
+ Common pattern for overlaying blur on content:
62
+
63
+ ```tsx
64
+ <View style={{ position: 'relative' }}>
65
+ <Image source={{ uri: '...' }} style={{ width: '100%', height: 200 }} />
66
+ <BlurView
67
+ tint="systemUltraThinMaterial"
68
+ intensity={80}
69
+ style={{
70
+ position: 'absolute',
71
+ bottom: 0,
72
+ left: 0,
73
+ right: 0,
74
+ padding: 16,
75
+ }}
76
+ >
77
+ <Text style={{ color: 'white' }}>Caption</Text>
78
+ </BlurView>
79
+ </View>
80
+ ```
81
+
82
+ ## Glass Effects (iOS 26+)
83
+
84
+ Use `expo-glass-effect` for liquid glass backdrops on iOS 26+.
85
+
86
+ ```tsx
87
+ import { GlassView } from "expo-glass-effect";
88
+
89
+ <GlassView style={{ borderRadius: 16, padding: 16 }}>
90
+ <Text>Content inside glass</Text>
91
+ </GlassView>
92
+ ```
93
+
94
+ ### Interactive Glass
95
+
96
+ Add `isInteractive` for buttons and pressable glass:
97
+
98
+ ```tsx
99
+ import { GlassView } from "expo-glass-effect";
100
+ import { SymbolView } from "expo-symbols";
101
+ import { PlatformColor } from "react-native";
102
+
103
+ <GlassView isInteractive style={{ borderRadius: 50 }}>
104
+ <Pressable style={{ padding: 12 }} onPress={handlePress}>
105
+ <SymbolView name="plus" tintColor={PlatformColor("label")} size={36} />
106
+ </Pressable>
107
+ </GlassView>
108
+ ```
109
+
110
+ ### Glass Buttons
111
+
112
+ Create liquid glass buttons:
113
+
114
+ ```tsx
115
+ function GlassButton({ icon, onPress }) {
116
+ return (
117
+ <GlassView isInteractive style={{ borderRadius: 50 }}>
118
+ <Pressable style={{ padding: 12 }} onPress={onPress}>
119
+ <SymbolView name={icon} tintColor={PlatformColor("label")} size={24} />
120
+ </Pressable>
121
+ </GlassView>
122
+ );
123
+ }
124
+
125
+ // Usage
126
+ <GlassButton icon="plus" onPress={handleAdd} />
127
+ <GlassButton icon="gear" onPress={handleSettings} />
128
+ ```
129
+
130
+ ### Glass Card
131
+
132
+ ```tsx
133
+ <GlassView style={{ borderRadius: 20, padding: 20 }}>
134
+ <Text style={{ fontSize: 18, fontWeight: '600', color: PlatformColor("label") }}>
135
+ Card Title
136
+ </Text>
137
+ <Text style={{ color: PlatformColor("secondaryLabel"), marginTop: 8 }}>
138
+ Card content goes here
139
+ </Text>
140
+ </GlassView>
141
+ ```
142
+
143
+ ### Checking Availability
144
+
145
+ ```tsx
146
+ import { isLiquidGlassAvailable } from "expo-glass-effect";
147
+
148
+ if (isLiquidGlassAvailable()) {
149
+ // Use GlassView
150
+ } else {
151
+ // Fallback to BlurView or solid background
152
+ }
153
+ ```
154
+
155
+ ### Fallback Pattern
156
+
157
+ ```tsx
158
+ import { GlassView, isLiquidGlassAvailable } from "expo-glass-effect";
159
+ import { BlurView } from "expo-blur";
160
+
161
+ function AdaptiveGlass({ children, style }) {
162
+ if (isLiquidGlassAvailable()) {
163
+ return <GlassView style={style}>{children}</GlassView>;
164
+ }
165
+
166
+ return (
167
+ <BlurView tint="systemMaterial" intensity={80} style={style}>
168
+ {children}
169
+ </BlurView>
170
+ );
171
+ }
172
+ ```
173
+
174
+ ## Sheet with Glass Background
175
+
176
+ Make sheet backgrounds liquid glass on iOS 26+:
177
+
178
+ ```tsx
179
+ <Stack.Screen
180
+ name="sheet"
181
+ options={{
182
+ presentation: "formSheet",
183
+ sheetGrabberVisible: true,
184
+ sheetAllowedDetents: [0.5, 1.0],
185
+ contentStyle: { backgroundColor: "transparent" },
186
+ }}
187
+ />
188
+ ```
189
+
190
+ ## Best Practices
191
+
192
+ - Use `systemMaterial` tints for automatic dark mode support
193
+ - Always set `overflow: 'hidden'` on BlurView for rounded corners
194
+ - Use `isInteractive` on GlassView for buttons and pressables
195
+ - Check `isLiquidGlassAvailable()` and provide fallbacks
196
+ - Avoid nesting blur views (performance impact)
197
+ - Keep blur intensity reasonable (50-100) for readability