@trieungoctam/vibekit 1.0.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 (352) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +85 -0
  3. package/agents/debugger.md +158 -0
  4. package/agents/docs-manager.md +220 -0
  5. package/agents/planner.md +129 -0
  6. package/agents/researcher.md +58 -0
  7. package/agents/reviewer.md +152 -0
  8. package/agents/tester.md +126 -0
  9. package/bin/vibekit.js +18 -0
  10. package/hooks/lib/ck-config-utils.cjs +831 -0
  11. package/hooks/lib/colors.cjs +95 -0
  12. package/hooks/lib/config-counter.cjs +103 -0
  13. package/hooks/lib/context-builder.cjs +616 -0
  14. package/hooks/lib/git-info-cache.cjs +143 -0
  15. package/hooks/lib/hook-logger.cjs +92 -0
  16. package/hooks/lib/privacy-checker.cjs +297 -0
  17. package/hooks/lib/project-detector.cjs +474 -0
  18. package/hooks/lib/scout-checker.cjs +263 -0
  19. package/hooks/lib/transcript-parser.cjs +181 -0
  20. package/hooks/post-edit-simplify-reminder.cjs +156 -0
  21. package/hooks/privacy-block.cjs +166 -0
  22. package/hooks/scout-block.cjs +147 -0
  23. package/hooks/session-init.cjs +360 -0
  24. package/package.json +41 -0
  25. package/rules/development-rules.md +52 -0
  26. package/rules/documentation-management.md +121 -0
  27. package/rules/orchestration-protocol.md +43 -0
  28. package/rules/primary-workflow.md +57 -0
  29. package/rules/team-coordination-rules.md +90 -0
  30. package/skills/ai/agent-browser/SKILL.md +294 -0
  31. package/skills/ai/agent-browser/references/.gitkeep +0 -0
  32. package/skills/ai/agent-browser/references/agent-browser-vs-chrome-devtools.md +112 -0
  33. package/skills/ai/agent-browser/references/browserbase-cloud-setup.md +161 -0
  34. package/skills/ai/ai-artist/SKILL.md +122 -0
  35. package/skills/ai/ai-artist/data/awesome-prompts.csv +3592 -0
  36. package/skills/ai/ai-artist/data/lighting.csv +19 -0
  37. package/skills/ai/ai-artist/data/nano-banana-templates.csv +17 -0
  38. package/skills/ai/ai-artist/data/platforms.csv +11 -0
  39. package/skills/ai/ai-artist/data/styles.csv +26 -0
  40. package/skills/ai/ai-artist/data/techniques.csv +19 -0
  41. package/skills/ai/ai-artist/data/use-cases.csv +16 -0
  42. package/skills/ai/ai-artist/references/advanced-techniques.md +184 -0
  43. package/skills/ai/ai-artist/references/awesome-nano-banana-pro-prompts.md +8575 -0
  44. package/skills/ai/ai-artist/references/domain-code.md +66 -0
  45. package/skills/ai/ai-artist/references/domain-data.md +72 -0
  46. package/skills/ai/ai-artist/references/domain-marketing.md +66 -0
  47. package/skills/ai/ai-artist/references/domain-patterns.md +33 -0
  48. package/skills/ai/ai-artist/references/domain-writing.md +68 -0
  49. package/skills/ai/ai-artist/references/image-prompting.md +141 -0
  50. package/skills/ai/ai-artist/references/llm-prompting.md +165 -0
  51. package/skills/ai/ai-artist/references/nano-banana.md +136 -0
  52. package/skills/ai/ai-artist/references/reasoning-techniques.md +201 -0
  53. package/skills/ai/ai-artist/references/validation-workflow.md +117 -0
  54. package/skills/ai/ai-artist/scripts/core.py +197 -0
  55. package/skills/ai/ai-artist/scripts/extract_prompts.py +102 -0
  56. package/skills/ai/ai-artist/scripts/generate.py +370 -0
  57. package/skills/ai/ai-artist/scripts/search.py +147 -0
  58. package/skills/ai/ai-multimodal/.env.example +204 -0
  59. package/skills/ai/ai-multimodal/SKILL.md +110 -0
  60. package/skills/ai/ai-multimodal/references/audio-processing.md +387 -0
  61. package/skills/ai/ai-multimodal/references/image-generation.md +939 -0
  62. package/skills/ai/ai-multimodal/references/music-generation.md +311 -0
  63. package/skills/ai/ai-multimodal/references/video-analysis.md +515 -0
  64. package/skills/ai/ai-multimodal/references/video-generation.md +457 -0
  65. package/skills/ai/ai-multimodal/references/vision-understanding.md +492 -0
  66. package/skills/ai/ai-multimodal/scripts/.coverage +0 -0
  67. package/skills/ai/ai-multimodal/scripts/check_setup.py +315 -0
  68. package/skills/ai/ai-multimodal/scripts/document_converter.py +395 -0
  69. package/skills/ai/ai-multimodal/scripts/gemini_batch_process.py +1185 -0
  70. package/skills/ai/ai-multimodal/scripts/media_optimizer.py +506 -0
  71. package/skills/ai/ai-multimodal/scripts/requirements.txt +26 -0
  72. package/skills/ai/ai-multimodal/scripts/tests/.coverage +0 -0
  73. package/skills/ai/ai-multimodal/scripts/tests/requirements.txt +20 -0
  74. package/skills/ai/ai-multimodal/scripts/tests/test_document_converter.py +74 -0
  75. package/skills/ai/ai-multimodal/scripts/tests/test_gemini_batch_process.py +362 -0
  76. package/skills/ai/ai-multimodal/scripts/tests/test_media_optimizer.py +373 -0
  77. package/skills/ai/mcp-management/README.md +219 -0
  78. package/skills/ai/mcp-management/SKILL.md +210 -0
  79. package/skills/ai/mcp-management/assets/tools.json +3146 -0
  80. package/skills/ai/mcp-management/references/configuration.md +114 -0
  81. package/skills/ai/mcp-management/references/gemini-cli-integration.md +221 -0
  82. package/skills/ai/mcp-management/references/mcp-protocol.md +116 -0
  83. package/skills/ai/mcp-management/scripts/.env.example +10 -0
  84. package/skills/ai/mcp-management/scripts/cli.ts +195 -0
  85. package/skills/ai/mcp-management/scripts/dist/analyze-tools.js +70 -0
  86. package/skills/ai/mcp-management/scripts/dist/cli.js +160 -0
  87. package/skills/ai/mcp-management/scripts/dist/mcp-client.js +183 -0
  88. package/skills/ai/mcp-management/scripts/mcp-client.ts +230 -0
  89. package/skills/ai/mcp-management/scripts/package.json +20 -0
  90. package/skills/ai/mcp-management/scripts/tsconfig.json +15 -0
  91. package/skills/core/brainstorm/SKILL.md +164 -0
  92. package/skills/core/brainstorm/scripts/frame-template.html +214 -0
  93. package/skills/core/brainstorm/scripts/helper.js +88 -0
  94. package/skills/core/brainstorm/scripts/server.cjs +338 -0
  95. package/skills/core/brainstorm/scripts/start-server.sh +153 -0
  96. package/skills/core/brainstorm/scripts/stop-server.sh +55 -0
  97. package/skills/core/brainstorm/spec-document-reviewer-prompt.md +49 -0
  98. package/skills/core/brainstorm/visual-companion.md +286 -0
  99. package/skills/core/code-review/SKILL.md +147 -0
  100. package/skills/core/code-review/references/code-review-reception.md +113 -0
  101. package/skills/core/code-review/references/codebase-scan-workflow.md +29 -0
  102. package/skills/core/code-review/references/edge-case-scouting.md +119 -0
  103. package/skills/core/code-review/references/parallel-review-workflow.md +69 -0
  104. package/skills/core/code-review/references/requesting-code-review.md +116 -0
  105. package/skills/core/code-review/references/task-management-reviews.md +140 -0
  106. package/skills/core/code-review/references/verification-before-completion.md +139 -0
  107. package/skills/core/cook/README.md +86 -0
  108. package/skills/core/cook/SKILL.md +113 -0
  109. package/skills/core/cook/references/intent-detection.md +101 -0
  110. package/skills/core/cook/references/review-cycle.md +75 -0
  111. package/skills/core/cook/references/subagent-patterns.md +75 -0
  112. package/skills/core/cook/references/workflow-steps.md +172 -0
  113. package/skills/core/debug/SKILL.md +121 -0
  114. package/skills/core/debug/references/defense-in-depth.md +124 -0
  115. package/skills/core/debug/references/frontend-verification.md +103 -0
  116. package/skills/core/debug/references/investigation-methodology.md +101 -0
  117. package/skills/core/debug/references/log-and-ci-analysis.md +97 -0
  118. package/skills/core/debug/references/performance-diagnostics.md +113 -0
  119. package/skills/core/debug/references/reporting-standards.md +122 -0
  120. package/skills/core/debug/references/root-cause-tracing.md +122 -0
  121. package/skills/core/debug/references/systematic-debugging.md +102 -0
  122. package/skills/core/debug/references/task-management-debugging.md +155 -0
  123. package/skills/core/debug/references/verification.md +123 -0
  124. package/skills/core/debug/scripts/find-polluter.sh +63 -0
  125. package/skills/core/debug/scripts/find-polluter.test.md +102 -0
  126. package/skills/core/execute/SKILL.md +70 -0
  127. package/skills/core/fix/SKILL.md +111 -0
  128. package/skills/core/fix/references/complexity-assessment.md +72 -0
  129. package/skills/core/fix/references/mode-selection.md +46 -0
  130. package/skills/core/fix/references/parallel-exploration.md +100 -0
  131. package/skills/core/fix/references/review-cycle.md +77 -0
  132. package/skills/core/fix/references/skill-activation-matrix.md +78 -0
  133. package/skills/core/fix/references/task-orchestration.md +103 -0
  134. package/skills/core/fix/references/workflow-ci.md +28 -0
  135. package/skills/core/fix/references/workflow-deep.md +122 -0
  136. package/skills/core/fix/references/workflow-logs.md +72 -0
  137. package/skills/core/fix/references/workflow-quick.md +59 -0
  138. package/skills/core/fix/references/workflow-standard.md +111 -0
  139. package/skills/core/fix/references/workflow-test.md +75 -0
  140. package/skills/core/fix/references/workflow-types.md +33 -0
  141. package/skills/core/fix/references/workflow-ui.md +75 -0
  142. package/skills/core/plan/SKILL.md +145 -0
  143. package/skills/core/plan/plan-document-reviewer-prompt.md +49 -0
  144. package/skills/core/subagent-dev/SKILL.md +277 -0
  145. package/skills/core/subagent-dev/code-quality-reviewer-prompt.md +26 -0
  146. package/skills/core/subagent-dev/implementer-prompt.md +113 -0
  147. package/skills/core/subagent-dev/spec-reviewer-prompt.md +61 -0
  148. package/skills/core/tdd/SKILL.md +371 -0
  149. package/skills/core/tdd/testing-anti-patterns.md +299 -0
  150. package/skills/core/test/SKILL.md +109 -0
  151. package/skills/core/test/references/report-format.md +58 -0
  152. package/skills/core/test/references/test-execution-workflow.md +103 -0
  153. package/skills/core/test/references/ui-testing-workflow.md +65 -0
  154. package/skills/core/verify/SKILL.md +139 -0
  155. package/skills/dev/backend-dev/SKILL.md +96 -0
  156. package/skills/dev/backend-dev/references/backend-api-design.md +495 -0
  157. package/skills/dev/backend-dev/references/backend-architecture.md +454 -0
  158. package/skills/dev/backend-dev/references/backend-authentication.md +338 -0
  159. package/skills/dev/backend-dev/references/backend-code-quality.md +659 -0
  160. package/skills/dev/backend-dev/references/backend-debugging.md +904 -0
  161. package/skills/dev/backend-dev/references/backend-devops.md +494 -0
  162. package/skills/dev/backend-dev/references/backend-mindset.md +387 -0
  163. package/skills/dev/backend-dev/references/backend-performance.md +397 -0
  164. package/skills/dev/backend-dev/references/backend-security.md +290 -0
  165. package/skills/dev/backend-dev/references/backend-technologies.md +256 -0
  166. package/skills/dev/backend-dev/references/backend-testing.md +429 -0
  167. package/skills/dev/context-engineering/SKILL.md +108 -0
  168. package/skills/dev/context-engineering/references/context-compression.md +84 -0
  169. package/skills/dev/context-engineering/references/context-degradation.md +93 -0
  170. package/skills/dev/context-engineering/references/context-fundamentals.md +75 -0
  171. package/skills/dev/context-engineering/references/context-optimization.md +82 -0
  172. package/skills/dev/context-engineering/references/evaluation.md +89 -0
  173. package/skills/dev/context-engineering/references/memory-systems.md +88 -0
  174. package/skills/dev/context-engineering/references/multi-agent-patterns.md +90 -0
  175. package/skills/dev/context-engineering/references/project-development.md +97 -0
  176. package/skills/dev/context-engineering/references/runtime-awareness.md +202 -0
  177. package/skills/dev/context-engineering/references/tool-design.md +86 -0
  178. package/skills/dev/context-engineering/scripts/compression_evaluator.py +349 -0
  179. package/skills/dev/context-engineering/scripts/context_analyzer.py +317 -0
  180. package/skills/dev/context-engineering/scripts/tests/test_edge_cases.py +246 -0
  181. package/skills/dev/databases/SKILL.md +84 -0
  182. package/skills/dev/databases/analytics.md +198 -0
  183. package/skills/dev/databases/db-design.md +188 -0
  184. package/skills/dev/databases/incremental-etl.md +213 -0
  185. package/skills/dev/databases/references/mongodb-aggregation.md +447 -0
  186. package/skills/dev/databases/references/mongodb-atlas.md +465 -0
  187. package/skills/dev/databases/references/mongodb-crud.md +408 -0
  188. package/skills/dev/databases/references/mongodb-indexing.md +442 -0
  189. package/skills/dev/databases/references/postgresql-administration.md +594 -0
  190. package/skills/dev/databases/references/postgresql-performance.md +527 -0
  191. package/skills/dev/databases/references/postgresql-psql-cli.md +467 -0
  192. package/skills/dev/databases/references/postgresql-queries.md +475 -0
  193. package/skills/dev/databases/scripts/.coverage +0 -0
  194. package/skills/dev/databases/scripts/db_backup.py +502 -0
  195. package/skills/dev/databases/scripts/db_migrate.py +426 -0
  196. package/skills/dev/databases/scripts/db_performance_check.py +457 -0
  197. package/skills/dev/databases/scripts/requirements.txt +20 -0
  198. package/skills/dev/databases/scripts/tests/coverage-db.json +1 -0
  199. package/skills/dev/databases/scripts/tests/requirements.txt +4 -0
  200. package/skills/dev/databases/scripts/tests/test_db_backup.py +340 -0
  201. package/skills/dev/databases/scripts/tests/test_db_migrate.py +277 -0
  202. package/skills/dev/databases/scripts/tests/test_db_performance_check.py +370 -0
  203. package/skills/dev/databases/stacks/bigquery.md +231 -0
  204. package/skills/dev/databases/stacks/d1_cloudflare.md +137 -0
  205. package/skills/dev/databases/stacks/mysql.md +216 -0
  206. package/skills/dev/databases/stacks/postgres.md +235 -0
  207. package/skills/dev/databases/stacks/sqlite.md +244 -0
  208. package/skills/dev/databases/transactional.md +176 -0
  209. package/skills/dev/devops/.env.example +76 -0
  210. package/skills/dev/devops/SKILL.md +97 -0
  211. package/skills/dev/devops/references/browser-rendering.md +305 -0
  212. package/skills/dev/devops/references/cloudflare-d1-kv.md +123 -0
  213. package/skills/dev/devops/references/cloudflare-platform.md +271 -0
  214. package/skills/dev/devops/references/cloudflare-r2-storage.md +280 -0
  215. package/skills/dev/devops/references/cloudflare-workers-advanced.md +312 -0
  216. package/skills/dev/devops/references/cloudflare-workers-apis.md +309 -0
  217. package/skills/dev/devops/references/cloudflare-workers-basics.md +418 -0
  218. package/skills/dev/devops/references/docker-basics.md +297 -0
  219. package/skills/dev/devops/references/docker-compose.md +292 -0
  220. package/skills/dev/devops/references/gcloud-platform.md +297 -0
  221. package/skills/dev/devops/references/gcloud-services.md +304 -0
  222. package/skills/dev/devops/references/kubernetes-basics.md +99 -0
  223. package/skills/dev/devops/references/kubernetes-helm-advanced.md +75 -0
  224. package/skills/dev/devops/references/kubernetes-helm.md +81 -0
  225. package/skills/dev/devops/references/kubernetes-kubectl.md +74 -0
  226. package/skills/dev/devops/references/kubernetes-security-advanced.md +98 -0
  227. package/skills/dev/devops/references/kubernetes-security.md +95 -0
  228. package/skills/dev/devops/references/kubernetes-troubleshooting-advanced.md +74 -0
  229. package/skills/dev/devops/references/kubernetes-troubleshooting.md +49 -0
  230. package/skills/dev/devops/references/kubernetes-workflows-advanced.md +75 -0
  231. package/skills/dev/devops/references/kubernetes-workflows.md +78 -0
  232. package/skills/dev/devops/scripts/cloudflare_deploy.py +269 -0
  233. package/skills/dev/devops/scripts/docker_optimize.py +332 -0
  234. package/skills/dev/devops/scripts/requirements.txt +20 -0
  235. package/skills/dev/devops/scripts/tests/requirements.txt +3 -0
  236. package/skills/dev/devops/scripts/tests/test_cloudflare_deploy.py +285 -0
  237. package/skills/dev/devops/scripts/tests/test_docker_optimize.py +436 -0
  238. package/skills/dev/frontend-design/SKILL.md +78 -0
  239. package/skills/dev/frontend-design/references/ai-multimodal-overview.md +165 -0
  240. package/skills/dev/frontend-design/references/analysis-best-practices.md +80 -0
  241. package/skills/dev/frontend-design/references/analysis-prompts.md +141 -0
  242. package/skills/dev/frontend-design/references/analysis-techniques.md +118 -0
  243. package/skills/dev/frontend-design/references/animejs.md +396 -0
  244. package/skills/dev/frontend-design/references/asset-generation.md +337 -0
  245. package/skills/dev/frontend-design/references/design-extraction-overview.md +71 -0
  246. package/skills/dev/frontend-design/references/extraction-best-practices.md +141 -0
  247. package/skills/dev/frontend-design/references/extraction-output-templates.md +162 -0
  248. package/skills/dev/frontend-design/references/extraction-prompts.md +127 -0
  249. package/skills/dev/frontend-design/references/technical-accessibility.md +119 -0
  250. package/skills/dev/frontend-design/references/technical-best-practices.md +97 -0
  251. package/skills/dev/frontend-design/references/technical-optimization.md +44 -0
  252. package/skills/dev/frontend-design/references/technical-overview.md +90 -0
  253. package/skills/dev/frontend-design/references/technical-workflows.md +150 -0
  254. package/skills/dev/frontend-design/references/visual-analysis-overview.md +95 -0
  255. package/skills/dev/frontend-design/references/workflow-3d.md +102 -0
  256. package/skills/dev/frontend-design/references/workflow-describe.md +87 -0
  257. package/skills/dev/frontend-design/references/workflow-immersive.md +87 -0
  258. package/skills/dev/frontend-design/references/workflow-quick.md +57 -0
  259. package/skills/dev/frontend-design/references/workflow-screenshot.md +63 -0
  260. package/skills/dev/frontend-design/references/workflow-video.md +74 -0
  261. package/skills/dev/frontend-dev/SKILL.md +400 -0
  262. package/skills/dev/frontend-dev/resources/common-patterns.md +331 -0
  263. package/skills/dev/frontend-dev/resources/complete-examples.md +872 -0
  264. package/skills/dev/frontend-dev/resources/component-patterns.md +502 -0
  265. package/skills/dev/frontend-dev/resources/data-fetching.md +767 -0
  266. package/skills/dev/frontend-dev/resources/file-organization.md +502 -0
  267. package/skills/dev/frontend-dev/resources/loading-and-error-states.md +501 -0
  268. package/skills/dev/frontend-dev/resources/performance.md +406 -0
  269. package/skills/dev/frontend-dev/resources/routing-guide.md +364 -0
  270. package/skills/dev/frontend-dev/resources/styling-guide.md +428 -0
  271. package/skills/dev/frontend-dev/resources/typescript-standards.md +418 -0
  272. package/skills/dev/git/SKILL.md +114 -0
  273. package/skills/dev/git/references/branch-management.md +88 -0
  274. package/skills/dev/git/references/commit-standards.md +46 -0
  275. package/skills/dev/git/references/gh-cli-guide.md +109 -0
  276. package/skills/dev/git/references/safety-protocols.md +69 -0
  277. package/skills/dev/git/references/workflow-commit.md +58 -0
  278. package/skills/dev/git/references/workflow-merge.md +48 -0
  279. package/skills/dev/git/references/workflow-pr.md +58 -0
  280. package/skills/dev/git/references/workflow-push.md +52 -0
  281. package/skills/dev/git-worktree/SKILL.md +218 -0
  282. package/skills/utils/ask/SKILL.md +58 -0
  283. package/skills/utils/bootstrap/SKILL.md +101 -0
  284. package/skills/utils/bootstrap/references/shared-phases.md +59 -0
  285. package/skills/utils/bootstrap/references/workflow-auto.md +52 -0
  286. package/skills/utils/bootstrap/references/workflow-fast.md +50 -0
  287. package/skills/utils/bootstrap/references/workflow-full.md +60 -0
  288. package/skills/utils/bootstrap/references/workflow-parallel.md +59 -0
  289. package/skills/utils/ck-help/SKILL.md +102 -0
  290. package/skills/utils/ck-help/scripts/ck-help.py +1321 -0
  291. package/skills/utils/ck-help/scripts/commands_data.yaml +3 -0
  292. package/skills/utils/ck-help/scripts/skills_data.yaml +593 -0
  293. package/skills/utils/copywriting/SKILL.md +94 -0
  294. package/skills/utils/copywriting/references/copy-formulas.md +150 -0
  295. package/skills/utils/copywriting/references/cta-patterns.md +168 -0
  296. package/skills/utils/copywriting/references/email-copy.md +193 -0
  297. package/skills/utils/copywriting/references/headline-templates.md +140 -0
  298. package/skills/utils/copywriting/references/landing-page-copy.md +175 -0
  299. package/skills/utils/copywriting/references/power-words.md +189 -0
  300. package/skills/utils/copywriting/references/social-media-copy.md +222 -0
  301. package/skills/utils/copywriting/references/workflow-cro.md +83 -0
  302. package/skills/utils/copywriting/references/workflow-enhance.md +32 -0
  303. package/skills/utils/copywriting/references/workflow-fast.md +29 -0
  304. package/skills/utils/copywriting/references/workflow-good.md +39 -0
  305. package/skills/utils/copywriting/references/writing-styles.md +247 -0
  306. package/skills/utils/copywriting/scripts/extract-writing-styles.py +308 -0
  307. package/skills/utils/copywriting/templates/copy-brief.md +49 -0
  308. package/skills/utils/docs/SKILL.md +55 -0
  309. package/skills/utils/docs/references/init-workflow.md +32 -0
  310. package/skills/utils/docs/references/summarize-workflow.md +18 -0
  311. package/skills/utils/docs/references/update-workflow.md +59 -0
  312. package/skills/utils/journal/SKILL.md +11 -0
  313. package/skills/utils/kanban/SKILL.md +99 -0
  314. package/skills/utils/preview/SKILL.md +75 -0
  315. package/skills/utils/preview/references/generation-modes.md +95 -0
  316. package/skills/utils/preview/references/view-mode.md +42 -0
  317. package/skills/utils/repomix/SKILL.md +248 -0
  318. package/skills/utils/repomix/references/configuration.md +211 -0
  319. package/skills/utils/repomix/references/usage-patterns.md +232 -0
  320. package/skills/utils/repomix/scripts/.coverage +0 -0
  321. package/skills/utils/repomix/scripts/README.md +179 -0
  322. package/skills/utils/repomix/scripts/repomix_batch.py +455 -0
  323. package/skills/utils/repomix/scripts/repos.example.json +15 -0
  324. package/skills/utils/repomix/scripts/requirements.txt +15 -0
  325. package/skills/utils/repomix/scripts/tests/test_repomix_batch.py +531 -0
  326. package/skills/utils/research/SKILL.md +171 -0
  327. package/skills/utils/scout/SKILL.md +89 -0
  328. package/skills/utils/scout/references/external-scouting.md +140 -0
  329. package/skills/utils/scout/references/internal-scouting.md +119 -0
  330. package/skills/utils/scout/references/task-management-scouting.md +125 -0
  331. package/skills/utils/sequential-thinking/.env.example +8 -0
  332. package/skills/utils/sequential-thinking/README.md +183 -0
  333. package/skills/utils/sequential-thinking/SKILL.md +95 -0
  334. package/skills/utils/sequential-thinking/package.json +31 -0
  335. package/skills/utils/sequential-thinking/references/advanced-strategies.md +79 -0
  336. package/skills/utils/sequential-thinking/references/advanced-techniques.md +76 -0
  337. package/skills/utils/sequential-thinking/references/core-patterns.md +95 -0
  338. package/skills/utils/sequential-thinking/references/examples-api.md +88 -0
  339. package/skills/utils/sequential-thinking/references/examples-architecture.md +94 -0
  340. package/skills/utils/sequential-thinking/references/examples-debug.md +90 -0
  341. package/skills/utils/sequential-thinking/scripts/format-thought.js +159 -0
  342. package/skills/utils/sequential-thinking/scripts/process-thought.js +236 -0
  343. package/skills/utils/sequential-thinking/tests/format-thought.test.js +133 -0
  344. package/skills/utils/sequential-thinking/tests/process-thought.test.js +215 -0
  345. package/skills/utils/write-skill/SKILL.md +655 -0
  346. package/skills/utils/write-skill/anthropic-best-practices.md +1150 -0
  347. package/skills/utils/write-skill/examples/CLAUDE_MD_TESTING.md +189 -0
  348. package/skills/utils/write-skill/graphviz-conventions.dot +172 -0
  349. package/skills/utils/write-skill/persuasion-principles.md +187 -0
  350. package/skills/utils/write-skill/render-graphs.js +168 -0
  351. package/skills/utils/write-skill/testing-skills-with-subagents.md +384 -0
  352. package/src/commands/init.js +238 -0
@@ -0,0 +1,447 @@
1
+ # MongoDB Aggregation Pipeline
2
+
3
+ Aggregation pipeline for complex data transformations, analytics, and multi-stage processing.
4
+
5
+ ## Pipeline Concept
6
+
7
+ Aggregation processes documents through multiple stages. Each stage transforms documents and passes results to next stage.
8
+
9
+ ```javascript
10
+ db.collection.aggregate([
11
+ { /* Stage 1 */ },
12
+ { /* Stage 2 */ },
13
+ { /* Stage 3 */ }
14
+ ])
15
+ ```
16
+
17
+ ## Core Pipeline Stages
18
+
19
+ ### $match (Filter Documents)
20
+ ```javascript
21
+ // Filter early in pipeline for efficiency
22
+ db.orders.aggregate([
23
+ { $match: { status: "completed", total: { $gte: 100 } } },
24
+ // Subsequent stages process only matched documents
25
+ ])
26
+
27
+ // Multiple conditions
28
+ db.orders.aggregate([
29
+ { $match: {
30
+ $and: [
31
+ { orderDate: { $gte: startDate } },
32
+ { status: { $in: ["completed", "shipped"] } }
33
+ ]
34
+ }}
35
+ ])
36
+ ```
37
+
38
+ ### $project (Reshape Documents)
39
+ ```javascript
40
+ // Select and reshape fields
41
+ db.orders.aggregate([
42
+ { $project: {
43
+ orderNumber: 1,
44
+ total: 1,
45
+ customerName: "$customer.name",
46
+ year: { $year: "$orderDate" },
47
+ _id: 0 // Exclude _id
48
+ }}
49
+ ])
50
+
51
+ // Computed fields
52
+ db.orders.aggregate([
53
+ { $project: {
54
+ total: 1,
55
+ tax: { $multiply: ["$total", 0.1] },
56
+ grandTotal: { $add: ["$total", { $multiply: ["$total", 0.1] }] }
57
+ }}
58
+ ])
59
+ ```
60
+
61
+ ### $group (Aggregate Data)
62
+ ```javascript
63
+ // Group and count
64
+ db.orders.aggregate([
65
+ { $group: {
66
+ _id: "$status",
67
+ count: { $sum: 1 }
68
+ }}
69
+ ])
70
+
71
+ // Multiple aggregations
72
+ db.orders.aggregate([
73
+ { $group: {
74
+ _id: "$customerId",
75
+ totalSpent: { $sum: "$total" },
76
+ orderCount: { $sum: 1 },
77
+ avgOrderValue: { $avg: "$total" },
78
+ maxOrder: { $max: "$total" },
79
+ minOrder: { $min: "$total" }
80
+ }}
81
+ ])
82
+
83
+ // Group by multiple fields
84
+ db.sales.aggregate([
85
+ { $group: {
86
+ _id: {
87
+ year: { $year: "$date" },
88
+ month: { $month: "$date" },
89
+ product: "$productId"
90
+ },
91
+ revenue: { $sum: "$amount" }
92
+ }}
93
+ ])
94
+ ```
95
+
96
+ ### $sort (Order Results)
97
+ ```javascript
98
+ // Sort by field
99
+ db.orders.aggregate([
100
+ { $sort: { total: -1 } } // -1: descending, 1: ascending
101
+ ])
102
+
103
+ // Sort by multiple fields
104
+ db.orders.aggregate([
105
+ { $sort: { status: 1, orderDate: -1 } }
106
+ ])
107
+ ```
108
+
109
+ ### $limit / $skip (Pagination)
110
+ ```javascript
111
+ // Limit results
112
+ db.orders.aggregate([
113
+ { $sort: { orderDate: -1 } },
114
+ { $limit: 10 }
115
+ ])
116
+
117
+ // Pagination
118
+ const page = 2;
119
+ const pageSize = 20;
120
+ db.orders.aggregate([
121
+ { $sort: { orderDate: -1 } },
122
+ { $skip: (page - 1) * pageSize },
123
+ { $limit: pageSize }
124
+ ])
125
+ ```
126
+
127
+ ### $lookup (Join Collections)
128
+ ```javascript
129
+ // Simple join
130
+ db.orders.aggregate([
131
+ { $lookup: {
132
+ from: "customers",
133
+ localField: "customerId",
134
+ foreignField: "_id",
135
+ as: "customer"
136
+ }},
137
+ { $unwind: "$customer" } // Convert array to object
138
+ ])
139
+
140
+ // Pipeline join (more powerful)
141
+ db.orders.aggregate([
142
+ { $lookup: {
143
+ from: "products",
144
+ let: { items: "$items" },
145
+ pipeline: [
146
+ { $match: { $expr: { $in: ["$_id", "$$items.productId"] } } },
147
+ { $project: { name: 1, price: 1 } }
148
+ ],
149
+ as: "productDetails"
150
+ }}
151
+ ])
152
+ ```
153
+
154
+ ### $unwind (Deconstruct Arrays)
155
+ ```javascript
156
+ // Unwind array field
157
+ db.orders.aggregate([
158
+ { $unwind: "$items" }
159
+ ])
160
+
161
+ // Preserve null/empty arrays
162
+ db.orders.aggregate([
163
+ { $unwind: {
164
+ path: "$items",
165
+ preserveNullAndEmptyArrays: true
166
+ }}
167
+ ])
168
+
169
+ // Include array index
170
+ db.orders.aggregate([
171
+ { $unwind: {
172
+ path: "$items",
173
+ includeArrayIndex: "itemIndex"
174
+ }}
175
+ ])
176
+ ```
177
+
178
+ ### $addFields (Add New Fields)
179
+ ```javascript
180
+ // Add computed fields
181
+ db.orders.aggregate([
182
+ { $addFields: {
183
+ totalWithTax: { $multiply: ["$total", 1.1] },
184
+ year: { $year: "$orderDate" }
185
+ }}
186
+ ])
187
+ ```
188
+
189
+ ### $replaceRoot (Replace Document Root)
190
+ ```javascript
191
+ // Promote subdocument to root
192
+ db.orders.aggregate([
193
+ { $replaceRoot: { newRoot: "$customer" } }
194
+ ])
195
+
196
+ // Merge fields
197
+ db.orders.aggregate([
198
+ { $replaceRoot: {
199
+ newRoot: { $mergeObjects: ["$customer", { orderId: "$_id" }] }
200
+ }}
201
+ ])
202
+ ```
203
+
204
+ ## Aggregation Operators
205
+
206
+ ### Arithmetic Operators
207
+ ```javascript
208
+ // Basic math
209
+ db.products.aggregate([
210
+ { $project: {
211
+ name: 1,
212
+ profit: { $subtract: ["$price", "$cost"] },
213
+ margin: { $multiply: [
214
+ { $divide: [
215
+ { $subtract: ["$price", "$cost"] },
216
+ "$price"
217
+ ]},
218
+ 100
219
+ ]}
220
+ }}
221
+ ])
222
+
223
+ // Other operators: $add, $multiply, $divide, $mod, $abs, $ceil, $floor, $round
224
+ ```
225
+
226
+ ### String Operators
227
+ ```javascript
228
+ // String manipulation
229
+ db.users.aggregate([
230
+ { $project: {
231
+ fullName: { $concat: ["$firstName", " ", "$lastName"] },
232
+ email: { $toLower: "$email" },
233
+ initials: { $concat: [
234
+ { $substr: ["$firstName", 0, 1] },
235
+ { $substr: ["$lastName", 0, 1] }
236
+ ]}
237
+ }}
238
+ ])
239
+
240
+ // Other: $toUpper, $trim, $split, $substr, $regexMatch
241
+ ```
242
+
243
+ ### Date Operators
244
+ ```javascript
245
+ // Date extraction
246
+ db.events.aggregate([
247
+ { $project: {
248
+ event: 1,
249
+ year: { $year: "$timestamp" },
250
+ month: { $month: "$timestamp" },
251
+ day: { $dayOfMonth: "$timestamp" },
252
+ hour: { $hour: "$timestamp" },
253
+ dayOfWeek: { $dayOfWeek: "$timestamp" }
254
+ }}
255
+ ])
256
+
257
+ // Date math
258
+ db.events.aggregate([
259
+ { $project: {
260
+ event: 1,
261
+ expiresAt: { $add: ["$createdAt", 1000 * 60 * 60 * 24 * 30] }, // +30 days
262
+ ageInDays: { $divide: [
263
+ { $subtract: [new Date(), "$createdAt"] },
264
+ 1000 * 60 * 60 * 24
265
+ ]}
266
+ }}
267
+ ])
268
+ ```
269
+
270
+ ### Array Operators
271
+ ```javascript
272
+ // Array operations
273
+ db.posts.aggregate([
274
+ { $project: {
275
+ title: 1,
276
+ tagCount: { $size: "$tags" },
277
+ firstTag: { $arrayElemAt: ["$tags", 0] },
278
+ lastTag: { $arrayElemAt: ["$tags", -1] },
279
+ hasMongoDBTag: { $in: ["mongodb", "$tags"] }
280
+ }}
281
+ ])
282
+
283
+ // Array filtering
284
+ db.posts.aggregate([
285
+ { $project: {
286
+ title: 1,
287
+ activeTags: {
288
+ $filter: {
289
+ input: "$tags",
290
+ as: "tag",
291
+ cond: { $ne: ["$$tag.status", "deprecated"] }
292
+ }
293
+ }
294
+ }}
295
+ ])
296
+ ```
297
+
298
+ ### Conditional Operators
299
+ ```javascript
300
+ // $cond (ternary)
301
+ db.products.aggregate([
302
+ { $project: {
303
+ name: 1,
304
+ status: {
305
+ $cond: {
306
+ if: { $gte: ["$stock", 10] },
307
+ then: "In Stock",
308
+ else: "Low Stock"
309
+ }
310
+ }
311
+ }}
312
+ ])
313
+
314
+ // $switch (multiple conditions)
315
+ db.orders.aggregate([
316
+ { $project: {
317
+ status: 1,
318
+ priority: {
319
+ $switch: {
320
+ branches: [
321
+ { case: { $gte: ["$total", 1000] }, then: "High" },
322
+ { case: { $gte: ["$total", 100] }, then: "Medium" }
323
+ ],
324
+ default: "Low"
325
+ }
326
+ }
327
+ }}
328
+ ])
329
+ ```
330
+
331
+ ## Advanced Patterns
332
+
333
+ ### Time-Based Aggregation
334
+ ```javascript
335
+ // Daily sales
336
+ db.orders.aggregate([
337
+ { $match: { orderDate: { $gte: startDate } } },
338
+ { $group: {
339
+ _id: {
340
+ year: { $year: "$orderDate" },
341
+ month: { $month: "$orderDate" },
342
+ day: { $dayOfMonth: "$orderDate" }
343
+ },
344
+ revenue: { $sum: "$total" },
345
+ orderCount: { $sum: 1 }
346
+ }},
347
+ { $sort: { "_id.year": 1, "_id.month": 1, "_id.day": 1 } }
348
+ ])
349
+ ```
350
+
351
+ ### Faceted Search
352
+ ```javascript
353
+ // Multiple aggregations in one query
354
+ db.products.aggregate([
355
+ { $match: { category: "electronics" } },
356
+ { $facet: {
357
+ priceRanges: [
358
+ { $bucket: {
359
+ groupBy: "$price",
360
+ boundaries: [0, 100, 500, 1000, 5000],
361
+ default: "5000+",
362
+ output: { count: { $sum: 1 } }
363
+ }}
364
+ ],
365
+ topBrands: [
366
+ { $group: { _id: "$brand", count: { $sum: 1 } } },
367
+ { $sort: { count: -1 } },
368
+ { $limit: 5 }
369
+ ],
370
+ avgPrice: [
371
+ { $group: { _id: null, avg: { $avg: "$price" } } }
372
+ ]
373
+ }}
374
+ ])
375
+ ```
376
+
377
+ ### Window Functions
378
+ ```javascript
379
+ // Running totals and moving averages
380
+ db.sales.aggregate([
381
+ { $setWindowFields: {
382
+ partitionBy: "$region",
383
+ sortBy: { date: 1 },
384
+ output: {
385
+ runningTotal: {
386
+ $sum: "$amount",
387
+ window: { documents: ["unbounded", "current"] }
388
+ },
389
+ movingAvg: {
390
+ $avg: "$amount",
391
+ window: { documents: [-7, 0] } // Last 7 days
392
+ }
393
+ }
394
+ }}
395
+ ])
396
+ ```
397
+
398
+ ### Text Search with Aggregation
399
+ ```javascript
400
+ // Full-text search (requires text index)
401
+ db.articles.aggregate([
402
+ { $match: { $text: { $search: "mongodb database" } } },
403
+ { $addFields: { score: { $meta: "textScore" } } },
404
+ { $sort: { score: -1 } },
405
+ { $limit: 10 }
406
+ ])
407
+ ```
408
+
409
+ ### Geospatial Aggregation
410
+ ```javascript
411
+ // Find nearby locations
412
+ db.places.aggregate([
413
+ { $geoNear: {
414
+ near: { type: "Point", coordinates: [lon, lat] },
415
+ distanceField: "distance",
416
+ maxDistance: 5000,
417
+ spherical: true
418
+ }},
419
+ { $limit: 10 }
420
+ ])
421
+ ```
422
+
423
+ ## Performance Tips
424
+
425
+ 1. **$match early** - Filter documents before other stages
426
+ 2. **$project early** - Reduce document size
427
+ 3. **Index usage** - $match and $sort can use indexes (only at start)
428
+ 4. **$limit after $sort** - Reduce memory usage
429
+ 5. **Avoid $lookup** - Prefer embedded documents when possible
430
+ 6. **Use $facet sparingly** - Can be memory intensive
431
+ 7. **allowDiskUse** - Enable for large datasets
432
+ ```javascript
433
+ db.collection.aggregate(pipeline, { allowDiskUse: true })
434
+ ```
435
+
436
+ ## Best Practices
437
+
438
+ 1. **Order stages efficiently** - $match → $project → $group → $sort → $limit
439
+ 2. **Use $expr carefully** - Can prevent index usage
440
+ 3. **Monitor memory** - Default limit: 100MB per stage
441
+ 4. **Test with explain** - Analyze pipeline performance
442
+ ```javascript
443
+ db.collection.explain("executionStats").aggregate(pipeline)
444
+ ```
445
+ 5. **Break complex pipelines** - Use $out/$merge for intermediate results
446
+ 6. **Use $sample** - For random document selection
447
+ 7. **Leverage $addFields** - Cleaner than $project for adding fields