@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,444 @@
1
+ # Advanced RAG Techniques
2
+
3
+ Beyond basic retrieval: hybrid search, reranking, and query optimization.
4
+
5
+ ## 1. Query Understanding
6
+
7
+ ### Intent Classification
8
+
9
+ ```python
10
+ INTENT_TYPES = {
11
+ "factual": "Direct question with specific answer",
12
+ "summarization": "Request for summary or overview",
13
+ "comparison": "Comparing multiple items",
14
+ "procedural": "How-to or step-by-step",
15
+ "analytical": "Requires reasoning over data"
16
+ }
17
+
18
+ def classify_intent(query: str) -> str:
19
+ classification = llm.classify(query, list(INTENT_TYPES.keys()))
20
+ return classification
21
+ ```
22
+
23
+ ### Query Expansion
24
+
25
+ ```python
26
+ def expand_query(query: str, method: str = "hybrid") -> list:
27
+ """Generate multiple query variations for better recall"""
28
+
29
+ expansions = [query]
30
+
31
+ if method in ["synonym", "hybrid"]:
32
+ # Add synonym variations
33
+ synonyms = llm.complete(f"""
34
+ Generate 3 synonym variations of: "{query}"
35
+ Return as JSON list.
36
+ """)
37
+ expansions.extend(json.loads(synonyms))
38
+
39
+ if method in ["hyde", "hybrid"]:
40
+ # Hypothetical Document Embedding
41
+ hypothetical_answer = llm.complete(f"""
42
+ Write a brief answer to: "{query}"
43
+ (This will be used for semantic search, not shown to user)
44
+ """)
45
+ expansions.append(hypothetical_answer)
46
+
47
+ return expansions
48
+ ```
49
+
50
+ ### Sub-query Decomposition
51
+
52
+ ```python
53
+ def decompose_query(complex_query: str) -> list:
54
+ """Break complex query into atomic retrievals"""
55
+
56
+ decomposition = llm.complete(f"""
57
+ Break this complex question into 2-4 simpler sub-questions:
58
+
59
+ Question: "{complex_query}"
60
+
61
+ Each sub-question should retrieve one piece of information.
62
+ Return as JSON list.
63
+ """)
64
+
65
+ sub_queries = json.loads(decomposition)
66
+
67
+ # Retrieve for each sub-query
68
+ results = []
69
+ for sq in sub_queries:
70
+ docs = vector_db.search(sq, top_k=3)
71
+ results.append({"query": sq, "docs": docs})
72
+
73
+ return results
74
+ ```
75
+
76
+ ## 2. Retrieval Strategies
77
+
78
+ ### Hybrid Search (Dense + Sparse)
79
+
80
+ ```python
81
+ class HybridRetriever:
82
+ def __init__(self, vector_db, bm25_index, alpha: float = 0.5):
83
+ self.vector_db = vector_db
84
+ self.bm25 = bm25_index
85
+ self.alpha = alpha # Weight between dense (alpha) and sparse (1-alpha)
86
+
87
+ def search(self, query: str, top_k: int = 10) -> list:
88
+ # Dense retrieval
89
+ query_emb = embed(query)
90
+ dense_results = self.vector_db.search(query_emb, top_k=top_k*2)
91
+
92
+ # Sparse retrieval
93
+ sparse_results = self.bm25.search(query, top_k=top_k*2)
94
+
95
+ # Fusion
96
+ fused = self.reciprocal_rank_fusion(
97
+ dense_results,
98
+ sparse_results,
99
+ k=60 # RRF constant
100
+ )
101
+
102
+ return fused[:top_k]
103
+
104
+ def reciprocal_rank_fusion(self, dense, sparse, k: int = 60):
105
+ """RRF: score = Σ 1/(k + rank)"""
106
+ scores = defaultdict(float)
107
+
108
+ for rank, doc in enumerate(dense):
109
+ scores[doc.id] += 1 / (k + rank)
110
+
111
+ for rank, doc in enumerate(sparse):
112
+ scores[doc.id] += 1 / (k + rank)
113
+
114
+ # Get full documents and sort by score
115
+ sorted_ids = sorted(scores.keys(), key=lambda x: scores[x], reverse=True)
116
+ return [self.get_doc(id) for id in sorted_ids]
117
+ ```
118
+
119
+ ### Multi-Index Retrieval
120
+
121
+ ```python
122
+ class MultiIndexRetriever:
123
+ """Query multiple indices and merge results"""
124
+
125
+ def __init__(self):
126
+ self.indices = {
127
+ "documentation": vector_db_docs,
128
+ "code": vector_db_code,
129
+ "tickets": vector_db_tickets,
130
+ "conversations": vector_db_chat
131
+ }
132
+
133
+ def search(self, query: str, index_filter: list = None) -> dict:
134
+ indices_to_search = index_filter or self.indices.keys()
135
+
136
+ results = {}
137
+ for idx_name in indices_to_search:
138
+ results[idx_name] = self.indices[idx_name].search(query, top_k=5)
139
+
140
+ return results
141
+ ```
142
+
143
+ ### Contextual Retrieval
144
+
145
+ ```python
146
+ def contextual_chunking(documents: list) -> list:
147
+ """Add context to each chunk for better retrieval"""
148
+
149
+ chunks = []
150
+ for doc in documents:
151
+ # Split into base chunks
152
+ base_chunks = split_document(doc)
153
+
154
+ for chunk in base_chunks:
155
+ # Generate context for this chunk
156
+ context = llm.complete(f"""
157
+ Document: {doc.title}
158
+
159
+ This chunk is from the above document:
160
+ {chunk.text}
161
+
162
+ Provide 1-2 sentences of context to situate this chunk:
163
+ """)
164
+
165
+ chunks.append({
166
+ "text": f"{context}\n\n{chunk.text}",
167
+ "metadata": chunk.metadata
168
+ })
169
+
170
+ return chunks
171
+ ```
172
+
173
+ ## 3. Reranking
174
+
175
+ ### Cross-Encoder Reranking
176
+
177
+ ```python
178
+ from sentence_transformers import CrossEncoder
179
+
180
+ class Reranker:
181
+ def __init__(self, model: str = "cross-encoder/ms-marco-MiniLM-L-6-v2"):
182
+ self.model = CrossEncoder(model)
183
+
184
+ def rerank(self, query: str, documents: list, top_k: int = 5) -> list:
185
+ # Create query-doc pairs
186
+ pairs = [[query, doc.text] for doc in documents]
187
+
188
+ # Score
189
+ scores = self.model.predict(pairs)
190
+
191
+ # Sort by score
192
+ scored_docs = list(zip(documents, scores))
193
+ scored_docs.sort(key=lambda x: x[1], reverse=True)
194
+
195
+ return [doc for doc, _ in scored_docs[:top_k]]
196
+ ```
197
+
198
+ ### LLM-based Reranking
199
+
200
+ ```python
201
+ def llm_rerank(query: str, documents: list, top_k: int = 3) -> list:
202
+ """Use LLM to judge relevance"""
203
+
204
+ doc_descriptions = "\n\n".join([
205
+ f"[{i}] {doc.text[:200]}..."
206
+ for i, doc in enumerate(documents)
207
+ ])
208
+
209
+ ranking = llm.complete(f"""
210
+ Query: {query}
211
+
212
+ Documents:
213
+ {doc_descriptions}
214
+
215
+ Rank the top {top_k} most relevant documents by number.
216
+ Return as JSON list of indices.
217
+ """)
218
+
219
+ indices = json.loads(ranking)
220
+ return [documents[i] for i in indices]
221
+ ```
222
+
223
+ ### Diversity Reranking
224
+
225
+ ```python
226
+ def diversify_results(documents: list, lambda_param: float = 0.5) -> list:
227
+ """MMR: Maximal Marginal Relevance
228
+
229
+ Score = λ * Relevance - (1-λ) * max(Similarity to selected)
230
+ """
231
+ selected = []
232
+ candidates = documents.copy()
233
+
234
+ while candidates and len(selected) < len(documents):
235
+ if not selected:
236
+ # Pick most relevant first
237
+ best = max(candidates, key=lambda d: d.relevance_score)
238
+ else:
239
+ # Pick best trade-off between relevance and diversity
240
+ best = max(candidates, key=lambda d:
241
+ lambda_param * d.relevance_score -
242
+ (1 - lambda_param) * max(
243
+ similarity(d, s) for s in selected
244
+ )
245
+ )
246
+
247
+ selected.append(best)
248
+ candidates.remove(best)
249
+
250
+ return selected
251
+ ```
252
+
253
+ ## 4. Context Assembly
254
+
255
+ ### Prompt Compression
256
+
257
+ ```python
258
+ class PromptCompressor:
259
+ def compress(self, context: list, query: str, budget: int) -> list:
260
+ """Compress context to fit token budget"""
261
+
262
+ if self.token_count(context) <= budget:
263
+ return context
264
+
265
+ # Method 1: Truncate least relevant
266
+ scored = [
267
+ (doc, relevance_score(doc, query))
268
+ for doc in context
269
+ ]
270
+ scored.sort(key=lambda x: x[1], reverse=True)
271
+
272
+ selected = []
273
+ tokens = 0
274
+ for doc, score in scored:
275
+ doc_tokens = len(doc.text.split())
276
+ if tokens + doc_tokens > budget:
277
+ # Compress this doc
278
+ compressed = self.summarize(doc.text, ratio=0.5)
279
+ doc_tokens = len(compressed.split())
280
+ doc.text = compressed
281
+
282
+ if tokens + doc_tokens <= budget:
283
+ selected.append(doc)
284
+ tokens += doc_tokens
285
+
286
+ return selected
287
+
288
+ def summarize(self, text: str, ratio: float = 0.3) -> str:
289
+ """Extractive summarization"""
290
+ sentences = sent_tokenize(text)
291
+
292
+ # Score sentences by importance
293
+ word_freq = Counter(word_tokenize(text.lower()))
294
+ scores = [
295
+ sum(word_freq[w] for w in word_tokenize(s.lower()))
296
+ for s in sentences
297
+ ]
298
+
299
+ # Select top sentences
300
+ n = max(1, int(len(sentences) * ratio))
301
+ top_indices = np.argsort(scores)[-n:]
302
+
303
+ return " ".join([sentences[i] for i in sorted(top_indices)])
304
+ ```
305
+
306
+ ### Dynamic Context Window
307
+
308
+ ```python
309
+ def assemble_context(
310
+ query: str,
311
+ retrieved_docs: list,
312
+ max_tokens: int = 4000,
313
+ strategy: str = "hierarchical"
314
+ ) -> str:
315
+ """Build optimal context for LLM"""
316
+
317
+ if strategy == "simple":
318
+ # Concatenate until budget
319
+ context = ""
320
+ for doc in retrieved_docs:
321
+ if tokens(context + doc.text) > max_tokens:
322
+ break
323
+ context += f"\n\n[Source: {doc.source}]\n{doc.text}"
324
+ return context
325
+
326
+ elif strategy == "hierarchical":
327
+ # Summary + full text of most relevant
328
+ summary = generate_summary(retrieved_docs)
329
+
330
+ remaining_budget = max_tokens - tokens(summary)
331
+ full_texts = ""
332
+ for doc in retrieved_docs[:3]: # Top 3 full text
333
+ if tokens(full_texts + doc.text) > remaining_budget:
334
+ break
335
+ full_texts += f"\n\n{doc.text}"
336
+
337
+ return f"Summary:\n{summary}\n\nFull Context:\n{full_texts}"
338
+ ```
339
+
340
+ ## 5. Evaluation
341
+
342
+ ### Retrieval Metrics
343
+
344
+ ```python
345
+ def evaluate_retrieval(
346
+ queries: list,
347
+ ground_truth: dict, # query -> relevant_doc_ids
348
+ retriever
349
+ ) -> dict:
350
+ """Compute retrieval metrics"""
351
+
352
+ metrics = {
353
+ "precision@k": [],
354
+ "recall@k": [],
355
+ "mrr": [], # Mean Reciprocal Rank
356
+ "ndcg": [] # Normalized Discounted Cumulative Gain
357
+ }
358
+
359
+ for query in queries:
360
+ results = retriever.search(query, top_k=10)
361
+ retrieved_ids = [r.id for r in results]
362
+ relevant_ids = set(ground_truth[query])
363
+
364
+ # Precision@k
365
+ for k in [1, 5, 10]:
366
+ retrieved_k = set(retrieved_ids[:k])
367
+ precision = len(retrieved_k & relevant_ids) / k
368
+ metrics[f"precision@{k}"].append(precision)
369
+
370
+ # Recall@k
371
+ for k in [1, 5, 10]:
372
+ retrieved_k = set(retrieved_ids[:k])
373
+ recall = len(retrieved_k & relevant_ids) / len(relevant_ids)
374
+ metrics[f"recall@{k}"].append(recall)
375
+
376
+ # MRR
377
+ for rank, doc_id in enumerate(retrieved_ids, 1):
378
+ if doc_id in relevant_ids:
379
+ metrics["mrr"].append(1 / rank)
380
+ break
381
+ else:
382
+ metrics["mrr"].append(0)
383
+
384
+ # Average metrics
385
+ return {k: np.mean(v) for k, v in metrics.items()}
386
+ ```
387
+
388
+ ### Answer Relevance
389
+
390
+ ```python
391
+ def evaluate_answer_relevance(
392
+ query: str,
393
+ answer: str,
394
+ retrieved_context: list
395
+ ) -> dict:
396
+ """Check if answer is grounded in retrieved context"""
397
+
398
+ # Faithfulness: does answer come from context?
399
+ faithfulness = llm.complete(f"""
400
+ Context: {retrieved_context}
401
+ Answer: {answer}
402
+
403
+ Is this answer fully supported by the context?
404
+ Score 1-5 and explain.
405
+ """)
406
+
407
+ # Answer relevance: does it answer the query?
408
+ relevance = llm.complete(f"""
409
+ Query: {query}
410
+ Answer: {answer}
411
+
412
+ Does this answer directly address the query?
413
+ Score 1-5 and explain.
414
+ """)
415
+
416
+ return {
417
+ "faithfulness": parse_score(faithfulness),
418
+ "relevance": parse_score(relevance)
419
+ }
420
+ ```
421
+
422
+ ## 6. Optimization Tips
423
+
424
+ ### Index Optimization
425
+ - Use appropriate embedding models for domain
426
+ - Normalize embeddings for cosine similarity
427
+ - Consider dimensionality reduction (PCA)
428
+ - Index in batches for large datasets
429
+
430
+ ### Query Optimization
431
+ - Cache common queries
432
+ - Pre-compute query embeddings
433
+ - Use query classification to route to specialized indices
434
+
435
+ ### Latency Optimization
436
+ - Parallel retrieval from multiple sources
437
+ - Async embedding generation
438
+ - Streaming results (don't wait for all)
439
+ - Redis/memory cache for hot queries
440
+
441
+ ### Cost Optimization
442
+ - Smaller embedding models for initial retrieval
443
+ - Larger models only for reranking
444
+ - Quantized embeddings (fp16, int8)