@ruaruababa/vibe-kit 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 (462) hide show
  1. package/CATALOG.md +317 -0
  2. package/README.md +121 -0
  3. package/aliases.json +65 -0
  4. package/bin/vibe.js +2 -0
  5. package/bundles.json +265 -0
  6. package/catalog.json +1560 -0
  7. package/dist/antigravity-skills/bin/cli.js +438 -0
  8. package/dist/antigravity-skills/lib/skill-utils.js +158 -0
  9. package/dist/antigravity-skills/scripts/build-catalog.js +305 -0
  10. package/dist/antigravity-skills/scripts/normalize-frontmatter.js +144 -0
  11. package/dist/antigravity-skills/scripts/validate-skills.js +230 -0
  12. package/dist/bin/vibe.js +2 -0
  13. package/dist/dist/src/cli/index.js +26 -0
  14. package/dist/lib/skill-utils.js +158 -0
  15. package/dist/scripts/build-catalog.js +50 -0
  16. package/dist/scripts/normalize-frontmatter.js +144 -0
  17. package/dist/scripts/validate-skills.js +56 -0
  18. package/dist/src/cli/index.js +146 -0
  19. package/dist/src/types/index.js +13 -0
  20. package/dist/src/utils/fs.js +1 -0
  21. package/package.json +43 -0
  22. package/skills/accessibility-compliance-accessibility-audit/SKILL.md +42 -0
  23. package/skills/accessibility-compliance-accessibility-audit/resources/implementation-playbook.md +502 -0
  24. package/skills/agent-orchestration-improve-agent/SKILL.md +349 -0
  25. package/skills/agent-orchestration-multi-agent-optimize/SKILL.md +239 -0
  26. package/skills/agent-orchestrator/SKILL.md +24 -0
  27. package/skills/ai-engineer/SKILL.md +171 -0
  28. package/skills/airflow-dag-patterns/SKILL.md +41 -0
  29. package/skills/airflow-dag-patterns/resources/implementation-playbook.md +509 -0
  30. package/skills/angular-migration/SKILL.md +428 -0
  31. package/skills/anti-reversing-techniques/SKILL.md +42 -0
  32. package/skills/anti-reversing-techniques/resources/implementation-playbook.md +539 -0
  33. package/skills/api-design-principles/SKILL.md +37 -0
  34. package/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  35. package/skills/api-design-principles/assets/rest-api-template.py +182 -0
  36. package/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  37. package/skills/api-design-principles/references/rest-best-practices.md +408 -0
  38. package/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  39. package/skills/api-documenter/SKILL.md +184 -0
  40. package/skills/api-testing-observability-api-mock/SKILL.md +46 -0
  41. package/skills/api-testing-observability-api-mock/resources/implementation-playbook.md +1327 -0
  42. package/skills/application-performance-performance-optimization/SKILL.md +154 -0
  43. package/skills/architect-review/SKILL.md +174 -0
  44. package/skills/architecture-decision-records/SKILL.md +441 -0
  45. package/skills/architecture-patterns/SKILL.md +37 -0
  46. package/skills/architecture-patterns/resources/implementation-playbook.md +479 -0
  47. package/skills/arm-cortex-expert/SKILL.md +306 -0
  48. package/skills/async-python-patterns/SKILL.md +39 -0
  49. package/skills/async-python-patterns/resources/implementation-playbook.md +678 -0
  50. package/skills/attack-tree-construction/SKILL.md +38 -0
  51. package/skills/attack-tree-construction/resources/implementation-playbook.md +671 -0
  52. package/skills/auth-implementation-patterns/SKILL.md +39 -0
  53. package/skills/auth-implementation-patterns/resources/implementation-playbook.md +618 -0
  54. package/skills/backend-architect/SKILL.md +333 -0
  55. package/skills/backend-development-feature-development/SKILL.md +180 -0
  56. package/skills/backend-security-coder/SKILL.md +156 -0
  57. package/skills/backtesting-frameworks/SKILL.md +39 -0
  58. package/skills/backtesting-frameworks/resources/implementation-playbook.md +647 -0
  59. package/skills/bash-defensive-patterns/SKILL.md +43 -0
  60. package/skills/bash-defensive-patterns/resources/implementation-playbook.md +517 -0
  61. package/skills/bash-pro/SKILL.md +310 -0
  62. package/skills/bats-testing-patterns/SKILL.md +34 -0
  63. package/skills/bats-testing-patterns/resources/implementation-playbook.md +614 -0
  64. package/skills/bazel-build-optimization/SKILL.md +397 -0
  65. package/skills/billing-automation/SKILL.md +42 -0
  66. package/skills/billing-automation/resources/implementation-playbook.md +544 -0
  67. package/skills/binary-analysis-patterns/SKILL.md +450 -0
  68. package/skills/blockchain-developer/SKILL.md +208 -0
  69. package/skills/business-analyst/SKILL.md +182 -0
  70. package/skills/c-pro/SKILL.md +56 -0
  71. package/skills/c4-architecture-c4-architecture/SKILL.md +389 -0
  72. package/skills/c4-code/SKILL.md +244 -0
  73. package/skills/c4-component/SKILL.md +153 -0
  74. package/skills/c4-container/SKILL.md +171 -0
  75. package/skills/c4-context/SKILL.md +150 -0
  76. package/skills/changelog-automation/SKILL.md +38 -0
  77. package/skills/changelog-automation/resources/implementation-playbook.md +538 -0
  78. package/skills/cicd-automation-workflow-automate/SKILL.md +51 -0
  79. package/skills/cicd-automation-workflow-automate/resources/implementation-playbook.md +1333 -0
  80. package/skills/clean-markdown/SKILL.md +23 -0
  81. package/skills/cloud-architect/SKILL.md +135 -0
  82. package/skills/code-documentation-code-explain/SKILL.md +46 -0
  83. package/skills/code-documentation-code-explain/resources/implementation-playbook.md +802 -0
  84. package/skills/code-documentation-doc-generate/SKILL.md +48 -0
  85. package/skills/code-documentation-doc-generate/resources/implementation-playbook.md +640 -0
  86. package/skills/code-refactoring-context-restore/SKILL.md +179 -0
  87. package/skills/code-refactoring-refactor-clean/SKILL.md +51 -0
  88. package/skills/code-refactoring-refactor-clean/resources/implementation-playbook.md +879 -0
  89. package/skills/code-refactoring-tech-debt/SKILL.md +386 -0
  90. package/skills/code-review-ai-ai-review/SKILL.md +450 -0
  91. package/skills/code-review-excellence/SKILL.md +40 -0
  92. package/skills/code-review-excellence/resources/implementation-playbook.md +515 -0
  93. package/skills/code-reviewer/SKILL.md +178 -0
  94. package/skills/codebase-cleanup-deps-audit/SKILL.md +51 -0
  95. package/skills/codebase-cleanup-deps-audit/resources/implementation-playbook.md +766 -0
  96. package/skills/codebase-cleanup-refactor-clean/SKILL.md +51 -0
  97. package/skills/codebase-cleanup-refactor-clean/resources/implementation-playbook.md +879 -0
  98. package/skills/codebase-cleanup-tech-debt/SKILL.md +386 -0
  99. package/skills/competitive-landscape/SKILL.md +34 -0
  100. package/skills/competitive-landscape/resources/implementation-playbook.md +494 -0
  101. package/skills/comprehensive-review-full-review/SKILL.md +146 -0
  102. package/skills/comprehensive-review-pr-enhance/SKILL.md +46 -0
  103. package/skills/comprehensive-review-pr-enhance/resources/implementation-playbook.md +691 -0
  104. package/skills/conductor-implement/SKILL.md +388 -0
  105. package/skills/conductor-manage/SKILL.md +39 -0
  106. package/skills/conductor-manage/resources/implementation-playbook.md +1120 -0
  107. package/skills/conductor-new-track/SKILL.md +433 -0
  108. package/skills/conductor-revert/SKILL.md +372 -0
  109. package/skills/conductor-setup/SKILL.md +426 -0
  110. package/skills/conductor-status/SKILL.md +338 -0
  111. package/skills/conductor-validator/SKILL.md +62 -0
  112. package/skills/content-marketer/SKILL.md +170 -0
  113. package/skills/context-driven-development/SKILL.md +400 -0
  114. package/skills/context-management-context-restore/SKILL.md +179 -0
  115. package/skills/context-management-context-save/SKILL.md +177 -0
  116. package/skills/context-manager/SKILL.md +185 -0
  117. package/skills/cost-optimization/SKILL.md +286 -0
  118. package/skills/cpp-pro/SKILL.md +59 -0
  119. package/skills/cqrs-implementation/SKILL.md +35 -0
  120. package/skills/cqrs-implementation/resources/implementation-playbook.md +540 -0
  121. package/skills/csharp-pro/SKILL.md +59 -0
  122. package/skills/customer-support/SKILL.md +170 -0
  123. package/skills/data-engineer/SKILL.md +224 -0
  124. package/skills/data-engineering-data-driven-feature/SKILL.md +182 -0
  125. package/skills/data-engineering-data-pipeline/SKILL.md +201 -0
  126. package/skills/data-quality-frameworks/SKILL.md +40 -0
  127. package/skills/data-quality-frameworks/resources/implementation-playbook.md +573 -0
  128. package/skills/data-scientist/SKILL.md +199 -0
  129. package/skills/data-storytelling/SKILL.md +465 -0
  130. package/skills/database-admin/SKILL.md +165 -0
  131. package/skills/database-architect/SKILL.md +268 -0
  132. package/skills/database-cloud-optimization-cost-optimize/SKILL.md +44 -0
  133. package/skills/database-cloud-optimization-cost-optimize/resources/implementation-playbook.md +1441 -0
  134. package/skills/database-migration/SKILL.md +436 -0
  135. package/skills/database-migrations-migration-observability/SKILL.md +420 -0
  136. package/skills/database-migrations-sql-migrations/SKILL.md +53 -0
  137. package/skills/database-migrations-sql-migrations/resources/implementation-playbook.md +499 -0
  138. package/skills/database-optimizer/SKILL.md +167 -0
  139. package/skills/dbt-transformation-patterns/SKILL.md +34 -0
  140. package/skills/dbt-transformation-patterns/resources/implementation-playbook.md +547 -0
  141. package/skills/debugger/SKILL.md +49 -0
  142. package/skills/debugging-strategies/SKILL.md +34 -0
  143. package/skills/debugging-strategies/resources/implementation-playbook.md +511 -0
  144. package/skills/debugging-toolkit-smart-debug/SKILL.md +197 -0
  145. package/skills/defi-protocol-templates/SKILL.md +466 -0
  146. package/skills/dependency-management-deps-audit/SKILL.md +44 -0
  147. package/skills/dependency-management-deps-audit/resources/implementation-playbook.md +766 -0
  148. package/skills/dependency-upgrade/SKILL.md +421 -0
  149. package/skills/deployment-engineer/SKILL.md +170 -0
  150. package/skills/deployment-pipeline-design/SKILL.md +371 -0
  151. package/skills/deployment-validation-config-validate/SKILL.md +496 -0
  152. package/skills/devops-troubleshooter/SKILL.md +161 -0
  153. package/skills/distributed-debugging-debug-trace/SKILL.md +44 -0
  154. package/skills/distributed-debugging-debug-trace/resources/implementation-playbook.md +1307 -0
  155. package/skills/distributed-tracing/SKILL.md +450 -0
  156. package/skills/django-pro/SKILL.md +180 -0
  157. package/skills/docs-architect/SKILL.md +98 -0
  158. package/skills/documentation-generation-doc-generate/SKILL.md +48 -0
  159. package/skills/documentation-generation-doc-generate/resources/implementation-playbook.md +640 -0
  160. package/skills/dotnet-architect/SKILL.md +197 -0
  161. package/skills/dotnet-backend-patterns/SKILL.md +37 -0
  162. package/skills/dotnet-backend-patterns/assets/repository-template.cs +523 -0
  163. package/skills/dotnet-backend-patterns/assets/service-template.cs +336 -0
  164. package/skills/dotnet-backend-patterns/references/dapper-patterns.md +544 -0
  165. package/skills/dotnet-backend-patterns/references/ef-core-best-practices.md +355 -0
  166. package/skills/dotnet-backend-patterns/resources/implementation-playbook.md +799 -0
  167. package/skills/dummy-skill/SKILL.md +5 -0
  168. package/skills/dx-optimizer/SKILL.md +83 -0
  169. package/skills/e2e-testing-patterns/SKILL.md +41 -0
  170. package/skills/e2e-testing-patterns/resources/implementation-playbook.md +531 -0
  171. package/skills/elixir-pro/SKILL.md +59 -0
  172. package/skills/embedding-strategies/SKILL.md +491 -0
  173. package/skills/employment-contract-templates/SKILL.md +39 -0
  174. package/skills/employment-contract-templates/resources/implementation-playbook.md +493 -0
  175. package/skills/error-debugging-error-analysis/SKILL.md +47 -0
  176. package/skills/error-debugging-error-analysis/resources/implementation-playbook.md +1143 -0
  177. package/skills/error-debugging-error-trace/SKILL.md +43 -0
  178. package/skills/error-debugging-error-trace/resources/implementation-playbook.md +1361 -0
  179. package/skills/error-debugging-multi-agent-review/SKILL.md +216 -0
  180. package/skills/error-detective/SKILL.md +53 -0
  181. package/skills/error-diagnostics-error-analysis/SKILL.md +47 -0
  182. package/skills/error-diagnostics-error-analysis/resources/implementation-playbook.md +1143 -0
  183. package/skills/error-diagnostics-error-trace/SKILL.md +48 -0
  184. package/skills/error-diagnostics-error-trace/resources/implementation-playbook.md +1371 -0
  185. package/skills/error-diagnostics-smart-debug/SKILL.md +197 -0
  186. package/skills/error-handling-patterns/SKILL.md +35 -0
  187. package/skills/error-handling-patterns/resources/implementation-playbook.md +635 -0
  188. package/skills/event-sourcing-architect/SKILL.md +58 -0
  189. package/skills/event-store-design/SKILL.md +449 -0
  190. package/skills/fastapi-pro/SKILL.md +192 -0
  191. package/skills/fastapi-templates/SKILL.md +32 -0
  192. package/skills/fastapi-templates/resources/implementation-playbook.md +566 -0
  193. package/skills/final-test/SKILL.md +5 -0
  194. package/skills/firmware-analyst/SKILL.md +320 -0
  195. package/skills/flutter-expert/SKILL.md +200 -0
  196. package/skills/framework-migration-code-migrate/SKILL.md +48 -0
  197. package/skills/framework-migration-code-migrate/resources/implementation-playbook.md +1052 -0
  198. package/skills/framework-migration-deps-upgrade/SKILL.md +48 -0
  199. package/skills/framework-migration-deps-upgrade/resources/implementation-playbook.md +755 -0
  200. package/skills/framework-migration-legacy-modernize/SKILL.md +132 -0
  201. package/skills/frontend-developer/SKILL.md +171 -0
  202. package/skills/frontend-mobile-development-component-scaffold/SKILL.md +403 -0
  203. package/skills/frontend-mobile-security-xss-scan/SKILL.md +322 -0
  204. package/skills/frontend-security-coder/SKILL.md +170 -0
  205. package/skills/full-stack-orchestration-full-stack-feature/SKILL.md +135 -0
  206. package/skills/gdpr-data-handling/SKILL.md +33 -0
  207. package/skills/gdpr-data-handling/resources/implementation-playbook.md +615 -0
  208. package/skills/git-advanced-workflows/SKILL.md +412 -0
  209. package/skills/git-pr-workflows-git-workflow/SKILL.md +140 -0
  210. package/skills/git-pr-workflows-onboard/SKILL.md +416 -0
  211. package/skills/git-pr-workflows-pr-enhance/SKILL.md +48 -0
  212. package/skills/git-pr-workflows-pr-enhance/resources/implementation-playbook.md +701 -0
  213. package/skills/github-actions-templates/SKILL.md +345 -0
  214. package/skills/gitlab-ci-patterns/SKILL.md +283 -0
  215. package/skills/gitops-workflow/SKILL.md +303 -0
  216. package/skills/gitops-workflow/references/argocd-setup.md +134 -0
  217. package/skills/gitops-workflow/references/sync-policies.md +131 -0
  218. package/skills/go-concurrency-patterns/SKILL.md +33 -0
  219. package/skills/go-concurrency-patterns/resources/implementation-playbook.md +654 -0
  220. package/skills/godot-gdscript-patterns/SKILL.md +33 -0
  221. package/skills/godot-gdscript-patterns/resources/implementation-playbook.md +804 -0
  222. package/skills/golang-pro/SKILL.md +179 -0
  223. package/skills/grafana-dashboards/SKILL.md +381 -0
  224. package/skills/graphql-architect/SKILL.md +182 -0
  225. package/skills/haskell-pro/SKILL.md +56 -0
  226. package/skills/helm-chart-scaffolding/SKILL.md +34 -0
  227. package/skills/helm-chart-scaffolding/assets/Chart.yaml.template +42 -0
  228. package/skills/helm-chart-scaffolding/assets/values.yaml.template +185 -0
  229. package/skills/helm-chart-scaffolding/references/chart-structure.md +500 -0
  230. package/skills/helm-chart-scaffolding/resources/implementation-playbook.md +543 -0
  231. package/skills/helm-chart-scaffolding/scripts/validate-chart.sh +244 -0
  232. package/skills/hr-pro/SKILL.md +126 -0
  233. package/skills/hybrid-cloud-architect/SKILL.md +168 -0
  234. package/skills/hybrid-cloud-networking/SKILL.md +238 -0
  235. package/skills/hybrid-search-implementation/SKILL.md +32 -0
  236. package/skills/hybrid-search-implementation/resources/implementation-playbook.md +567 -0
  237. package/skills/incident-responder/SKILL.md +213 -0
  238. package/skills/incident-response-incident-response/SKILL.md +168 -0
  239. package/skills/incident-response-smart-fix/SKILL.md +29 -0
  240. package/skills/incident-response-smart-fix/resources/implementation-playbook.md +838 -0
  241. package/skills/incident-runbook-templates/SKILL.md +395 -0
  242. package/skills/ios-developer/SKILL.md +219 -0
  243. package/skills/istio-traffic-management/SKILL.md +337 -0
  244. package/skills/java-pro/SKILL.md +177 -0
  245. package/skills/javascript-pro/SKILL.md +57 -0
  246. package/skills/javascript-testing-patterns/SKILL.md +35 -0
  247. package/skills/javascript-testing-patterns/resources/implementation-playbook.md +1024 -0
  248. package/skills/javascript-typescript-typescript-scaffold/SKILL.md +361 -0
  249. package/skills/julia-pro/SKILL.md +209 -0
  250. package/skills/k8s-manifest-generator/SKILL.md +35 -0
  251. package/skills/k8s-manifest-generator/assets/configmap-template.yaml +296 -0
  252. package/skills/k8s-manifest-generator/assets/deployment-template.yaml +203 -0
  253. package/skills/k8s-manifest-generator/assets/service-template.yaml +171 -0
  254. package/skills/k8s-manifest-generator/references/deployment-spec.md +753 -0
  255. package/skills/k8s-manifest-generator/references/service-spec.md +724 -0
  256. package/skills/k8s-manifest-generator/resources/implementation-playbook.md +510 -0
  257. package/skills/k8s-security-policies/SKILL.md +346 -0
  258. package/skills/k8s-security-policies/assets/network-policy-template.yaml +177 -0
  259. package/skills/k8s-security-policies/references/rbac-patterns.md +187 -0
  260. package/skills/kpi-dashboard-design/SKILL.md +440 -0
  261. package/skills/kubernetes-architect/SKILL.md +170 -0
  262. package/skills/langchain-architecture/SKILL.md +350 -0
  263. package/skills/legacy-modernizer/SKILL.md +53 -0
  264. package/skills/legal-advisor/SKILL.md +70 -0
  265. package/skills/linkerd-patterns/SKILL.md +321 -0
  266. package/skills/llm-application-dev-ai-assistant/SKILL.md +35 -0
  267. package/skills/llm-application-dev-ai-assistant/resources/implementation-playbook.md +1236 -0
  268. package/skills/llm-application-dev-langchain-agent/SKILL.md +246 -0
  269. package/skills/llm-application-dev-prompt-optimize/SKILL.md +37 -0
  270. package/skills/llm-application-dev-prompt-optimize/resources/implementation-playbook.md +591 -0
  271. package/skills/llm-evaluation/SKILL.md +483 -0
  272. package/skills/machine-learning-ops-ml-pipeline/SKILL.md +314 -0
  273. package/skills/malware-analyst/SKILL.md +247 -0
  274. package/skills/market-sizing-analysis/SKILL.md +425 -0
  275. package/skills/market-sizing-analysis/examples/saas-market-sizing.md +349 -0
  276. package/skills/market-sizing-analysis/references/data-sources.md +360 -0
  277. package/skills/memory-forensics/SKILL.md +491 -0
  278. package/skills/memory-safety-patterns/SKILL.md +33 -0
  279. package/skills/memory-safety-patterns/resources/implementation-playbook.md +603 -0
  280. package/skills/mermaid-expert/SKILL.md +59 -0
  281. package/skills/microservices-patterns/SKILL.md +35 -0
  282. package/skills/microservices-patterns/resources/implementation-playbook.md +607 -0
  283. package/skills/minecraft-bukkit-pro/SKILL.md +126 -0
  284. package/skills/ml-engineer/SKILL.md +168 -0
  285. package/skills/ml-pipeline-workflow/SKILL.md +257 -0
  286. package/skills/mlops-engineer/SKILL.md +219 -0
  287. package/skills/mobile-developer/SKILL.md +205 -0
  288. package/skills/mobile-security-coder/SKILL.md +184 -0
  289. package/skills/modern-javascript-patterns/SKILL.md +35 -0
  290. package/skills/modern-javascript-patterns/resources/implementation-playbook.md +910 -0
  291. package/skills/monorepo-architect/SKILL.md +61 -0
  292. package/skills/monorepo-management/SKILL.md +35 -0
  293. package/skills/monorepo-management/resources/implementation-playbook.md +621 -0
  294. package/skills/mtls-configuration/SKILL.md +359 -0
  295. package/skills/multi-cloud-architecture/SKILL.md +189 -0
  296. package/skills/multi-platform-apps-multi-platform/SKILL.md +203 -0
  297. package/skills/network-engineer/SKILL.md +169 -0
  298. package/skills/nextjs-app-router-patterns/SKILL.md +33 -0
  299. package/skills/nextjs-app-router-patterns/resources/implementation-playbook.md +543 -0
  300. package/skills/nft-standards/SKILL.md +395 -0
  301. package/skills/node-expert/SKILL.md +23 -0
  302. package/skills/nodejs-backend-patterns/SKILL.md +35 -0
  303. package/skills/nodejs-backend-patterns/resources/implementation-playbook.md +1019 -0
  304. package/skills/nx-workspace-patterns/SKILL.md +464 -0
  305. package/skills/observability-engineer/SKILL.md +237 -0
  306. package/skills/observability-monitoring-monitor-setup/SKILL.md +48 -0
  307. package/skills/observability-monitoring-monitor-setup/resources/implementation-playbook.md +505 -0
  308. package/skills/observability-monitoring-slo-implement/SKILL.md +43 -0
  309. package/skills/observability-monitoring-slo-implement/resources/implementation-playbook.md +1077 -0
  310. package/skills/on-call-handoff-patterns/SKILL.md +453 -0
  311. package/skills/openapi-spec-generation/SKILL.md +33 -0
  312. package/skills/openapi-spec-generation/resources/implementation-playbook.md +1027 -0
  313. package/skills/payment-integration/SKILL.md +77 -0
  314. package/skills/paypal-integration/SKILL.md +479 -0
  315. package/skills/pci-compliance/SKILL.md +478 -0
  316. package/skills/performance-engineer/SKILL.md +180 -0
  317. package/skills/performance-testing-review-ai-review/SKILL.md +450 -0
  318. package/skills/performance-testing-review-multi-agent-review/SKILL.md +216 -0
  319. package/skills/php-pro/SKILL.md +63 -0
  320. package/skills/posix-shell-pro/SKILL.md +304 -0
  321. package/skills/postgresql/SKILL.md +230 -0
  322. package/skills/postmortem-writing/SKILL.md +386 -0
  323. package/skills/projection-patterns/SKILL.md +33 -0
  324. package/skills/projection-patterns/resources/implementation-playbook.md +501 -0
  325. package/skills/prometheus-configuration/SKILL.md +404 -0
  326. package/skills/prompt-engineer/SKILL.md +272 -0
  327. package/skills/prompt-engineering-patterns/SKILL.md +213 -0
  328. package/skills/prompt-engineering-patterns/assets/few-shot-examples.json +106 -0
  329. package/skills/prompt-engineering-patterns/assets/prompt-template-library.md +246 -0
  330. package/skills/prompt-engineering-patterns/references/chain-of-thought.md +399 -0
  331. package/skills/prompt-engineering-patterns/references/few-shot-learning.md +369 -0
  332. package/skills/prompt-engineering-patterns/references/prompt-optimization.md +414 -0
  333. package/skills/prompt-engineering-patterns/references/prompt-templates.md +470 -0
  334. package/skills/prompt-engineering-patterns/references/system-prompts.md +189 -0
  335. package/skills/prompt-engineering-patterns/scripts/optimize-prompt.py +279 -0
  336. package/skills/protocol-reverse-engineering/SKILL.md +29 -0
  337. package/skills/protocol-reverse-engineering/resources/implementation-playbook.md +509 -0
  338. package/skills/python-development-python-scaffold/SKILL.md +331 -0
  339. package/skills/python-packaging/SKILL.md +36 -0
  340. package/skills/python-packaging/resources/implementation-playbook.md +869 -0
  341. package/skills/python-performance-optimization/SKILL.md +36 -0
  342. package/skills/python-performance-optimization/resources/implementation-playbook.md +868 -0
  343. package/skills/python-pro/SKILL.md +158 -0
  344. package/skills/python-testing-patterns/SKILL.md +37 -0
  345. package/skills/python-testing-patterns/resources/implementation-playbook.md +906 -0
  346. package/skills/quant-analyst/SKILL.md +53 -0
  347. package/skills/rag-implementation/SKILL.md +421 -0
  348. package/skills/react-modernization/SKILL.md +34 -0
  349. package/skills/react-modernization/resources/implementation-playbook.md +512 -0
  350. package/skills/react-native-architecture/SKILL.md +33 -0
  351. package/skills/react-native-architecture/resources/implementation-playbook.md +670 -0
  352. package/skills/react-state-management/SKILL.md +441 -0
  353. package/skills/reference-builder/SKILL.md +188 -0
  354. package/skills/reverse-engineer/SKILL.md +173 -0
  355. package/skills/risk-manager/SKILL.md +61 -0
  356. package/skills/risk-metrics-calculation/SKILL.md +33 -0
  357. package/skills/risk-metrics-calculation/resources/implementation-playbook.md +554 -0
  358. package/skills/ruby-pro/SKILL.md +56 -0
  359. package/skills/rust-async-patterns/SKILL.md +33 -0
  360. package/skills/rust-async-patterns/resources/implementation-playbook.md +516 -0
  361. package/skills/rust-pro/SKILL.md +178 -0
  362. package/skills/saga-orchestration/SKILL.md +496 -0
  363. package/skills/sales-automator/SKILL.md +55 -0
  364. package/skills/sast-configuration/SKILL.md +212 -0
  365. package/skills/scala-pro/SKILL.md +82 -0
  366. package/skills/screen-reader-testing/SKILL.md +33 -0
  367. package/skills/screen-reader-testing/resources/implementation-playbook.md +544 -0
  368. package/skills/search-specialist/SKILL.md +80 -0
  369. package/skills/secrets-management/SKILL.md +364 -0
  370. package/skills/security-auditor/SKILL.md +169 -0
  371. package/skills/security-compliance-compliance-check/SKILL.md +55 -0
  372. package/skills/security-compliance-compliance-check/resources/implementation-playbook.md +963 -0
  373. package/skills/security-requirement-extraction/SKILL.md +33 -0
  374. package/skills/security-requirement-extraction/resources/implementation-playbook.md +676 -0
  375. package/skills/security-scanning-security-dependencies/SKILL.md +43 -0
  376. package/skills/security-scanning-security-dependencies/resources/implementation-playbook.md +544 -0
  377. package/skills/security-scanning-security-hardening/SKILL.md +147 -0
  378. package/skills/security-scanning-security-sast/SKILL.md +495 -0
  379. package/skills/seo-authority-builder/SKILL.md +136 -0
  380. package/skills/seo-cannibalization-detector/SKILL.md +123 -0
  381. package/skills/seo-content-auditor/SKILL.md +83 -0
  382. package/skills/seo-content-planner/SKILL.md +108 -0
  383. package/skills/seo-content-refresher/SKILL.md +118 -0
  384. package/skills/seo-content-writer/SKILL.md +96 -0
  385. package/skills/seo-keyword-strategist/SKILL.md +95 -0
  386. package/skills/seo-meta-optimizer/SKILL.md +92 -0
  387. package/skills/seo-snippet-hunter/SKILL.md +114 -0
  388. package/skills/seo-structure-architect/SKILL.md +108 -0
  389. package/skills/service-mesh-expert/SKILL.md +58 -0
  390. package/skills/service-mesh-observability/SKILL.md +395 -0
  391. package/skills/shellcheck-configuration/SKILL.md +466 -0
  392. package/skills/similarity-search-patterns/SKILL.md +33 -0
  393. package/skills/similarity-search-patterns/resources/implementation-playbook.md +557 -0
  394. package/skills/slo-implementation/SKILL.md +341 -0
  395. package/skills/solidity-security/SKILL.md +34 -0
  396. package/skills/solidity-security/resources/implementation-playbook.md +524 -0
  397. package/skills/spark-optimization/SKILL.md +427 -0
  398. package/skills/sql-optimization-patterns/SKILL.md +35 -0
  399. package/skills/sql-optimization-patterns/resources/implementation-playbook.md +504 -0
  400. package/skills/sql-pro/SKILL.md +173 -0
  401. package/skills/startup-analyst/SKILL.md +328 -0
  402. package/skills/startup-business-analyst-business-case/SKILL.md +487 -0
  403. package/skills/startup-business-analyst-financial-projections/SKILL.md +353 -0
  404. package/skills/startup-business-analyst-market-opportunity/SKILL.md +240 -0
  405. package/skills/startup-financial-modeling/SKILL.md +467 -0
  406. package/skills/startup-metrics-framework/SKILL.md +34 -0
  407. package/skills/startup-metrics-framework/resources/implementation-playbook.md +500 -0
  408. package/skills/stride-analysis-patterns/SKILL.md +33 -0
  409. package/skills/stride-analysis-patterns/resources/implementation-playbook.md +655 -0
  410. package/skills/stripe-integration/SKILL.md +454 -0
  411. package/skills/systems-programming-rust-project/SKILL.md +440 -0
  412. package/skills/tailwind-design-system/SKILL.md +33 -0
  413. package/skills/tailwind-design-system/resources/implementation-playbook.md +665 -0
  414. package/skills/tdd-orchestrator/SKILL.md +205 -0
  415. package/skills/tdd-workflows-tdd-cycle/SKILL.md +221 -0
  416. package/skills/tdd-workflows-tdd-green/SKILL.md +73 -0
  417. package/skills/tdd-workflows-tdd-green/resources/implementation-playbook.md +870 -0
  418. package/skills/tdd-workflows-tdd-red/SKILL.md +164 -0
  419. package/skills/tdd-workflows-tdd-refactor/SKILL.md +187 -0
  420. package/skills/team-collaboration-issue/SKILL.md +37 -0
  421. package/skills/team-collaboration-issue/resources/implementation-playbook.md +640 -0
  422. package/skills/team-collaboration-standup-notes/SKILL.md +44 -0
  423. package/skills/team-collaboration-standup-notes/resources/implementation-playbook.md +768 -0
  424. package/skills/team-composition-analysis/SKILL.md +413 -0
  425. package/skills/temporal-python-pro/SKILL.md +370 -0
  426. package/skills/temporal-python-testing/SKILL.md +170 -0
  427. package/skills/temporal-python-testing/resources/integration-testing.md +455 -0
  428. package/skills/temporal-python-testing/resources/local-setup.md +553 -0
  429. package/skills/temporal-python-testing/resources/replay-testing.md +462 -0
  430. package/skills/temporal-python-testing/resources/unit-testing.md +328 -0
  431. package/skills/terraform-module-library/SKILL.md +261 -0
  432. package/skills/terraform-module-library/references/aws-modules.md +63 -0
  433. package/skills/terraform-specialist/SKILL.md +166 -0
  434. package/skills/test-automator/SKILL.md +224 -0
  435. package/skills/threat-mitigation-mapping/SKILL.md +33 -0
  436. package/skills/threat-mitigation-mapping/resources/implementation-playbook.md +744 -0
  437. package/skills/threat-modeling-expert/SKILL.md +60 -0
  438. package/skills/track-management/SKILL.md +38 -0
  439. package/skills/track-management/resources/implementation-playbook.md +591 -0
  440. package/skills/turborepo-caching/SKILL.md +419 -0
  441. package/skills/tutorial-engineer/SKILL.md +139 -0
  442. package/skills/typescript-advanced-types/SKILL.md +35 -0
  443. package/skills/typescript-advanced-types/resources/implementation-playbook.md +716 -0
  444. package/skills/typescript-pro/SKILL.md +55 -0
  445. package/skills/ui-minimal/SKILL.md +23 -0
  446. package/skills/ui-ux-designer/SKILL.md +209 -0
  447. package/skills/ui-visual-validator/SKILL.md +214 -0
  448. package/skills/unit-testing-test-generate/SKILL.md +319 -0
  449. package/skills/unity-developer/SKILL.md +230 -0
  450. package/skills/unity-ecs-patterns/SKILL.md +33 -0
  451. package/skills/unity-ecs-patterns/resources/implementation-playbook.md +625 -0
  452. package/skills/uv-package-manager/SKILL.md +37 -0
  453. package/skills/uv-package-manager/resources/implementation-playbook.md +830 -0
  454. package/skills/vector-database-engineer/SKILL.md +60 -0
  455. package/skills/vector-index-tuning/SKILL.md +42 -0
  456. package/skills/vector-index-tuning/resources/implementation-playbook.md +507 -0
  457. package/skills/wcag-audit-patterns/SKILL.md +41 -0
  458. package/skills/wcag-audit-patterns/resources/implementation-playbook.md +541 -0
  459. package/skills/web3-testing/SKILL.md +427 -0
  460. package/skills/workflow-orchestration-patterns/SKILL.md +333 -0
  461. package/skills/workflow-patterns/SKILL.md +38 -0
  462. package/skills/workflow-patterns/resources/implementation-playbook.md +621 -0
@@ -0,0 +1,766 @@
1
+ # Dependency Audit and Security Analysis Implementation Playbook
2
+
3
+ This file contains detailed patterns, checklists, and code samples referenced by the skill.
4
+
5
+ ## Instructions
6
+
7
+ ### 1. Dependency Discovery
8
+
9
+ Scan and inventory all project dependencies:
10
+
11
+ **Multi-Language Detection**
12
+ ```python
13
+ import os
14
+ import json
15
+ import toml
16
+ import yaml
17
+ from pathlib import Path
18
+
19
+ class DependencyDiscovery:
20
+ def __init__(self, project_path):
21
+ self.project_path = Path(project_path)
22
+ self.dependency_files = {
23
+ 'npm': ['package.json', 'package-lock.json', 'yarn.lock'],
24
+ 'python': ['requirements.txt', 'Pipfile', 'Pipfile.lock', 'pyproject.toml', 'poetry.lock'],
25
+ 'ruby': ['Gemfile', 'Gemfile.lock'],
26
+ 'java': ['pom.xml', 'build.gradle', 'build.gradle.kts'],
27
+ 'go': ['go.mod', 'go.sum'],
28
+ 'rust': ['Cargo.toml', 'Cargo.lock'],
29
+ 'php': ['composer.json', 'composer.lock'],
30
+ 'dotnet': ['*.csproj', 'packages.config', 'project.json']
31
+ }
32
+
33
+ def discover_all_dependencies(self):
34
+ """
35
+ Discover all dependencies across different package managers
36
+ """
37
+ dependencies = {}
38
+
39
+ # NPM/Yarn dependencies
40
+ if (self.project_path / 'package.json').exists():
41
+ dependencies['npm'] = self._parse_npm_dependencies()
42
+
43
+ # Python dependencies
44
+ if (self.project_path / 'requirements.txt').exists():
45
+ dependencies['python'] = self._parse_requirements_txt()
46
+ elif (self.project_path / 'Pipfile').exists():
47
+ dependencies['python'] = self._parse_pipfile()
48
+ elif (self.project_path / 'pyproject.toml').exists():
49
+ dependencies['python'] = self._parse_pyproject_toml()
50
+
51
+ # Go dependencies
52
+ if (self.project_path / 'go.mod').exists():
53
+ dependencies['go'] = self._parse_go_mod()
54
+
55
+ return dependencies
56
+
57
+ def _parse_npm_dependencies(self):
58
+ """
59
+ Parse NPM package.json and lock files
60
+ """
61
+ with open(self.project_path / 'package.json', 'r') as f:
62
+ package_json = json.load(f)
63
+
64
+ deps = {}
65
+
66
+ # Direct dependencies
67
+ for dep_type in ['dependencies', 'devDependencies', 'peerDependencies']:
68
+ if dep_type in package_json:
69
+ for name, version in package_json[dep_type].items():
70
+ deps[name] = {
71
+ 'version': version,
72
+ 'type': dep_type,
73
+ 'direct': True
74
+ }
75
+
76
+ # Parse lock file for exact versions
77
+ if (self.project_path / 'package-lock.json').exists():
78
+ with open(self.project_path / 'package-lock.json', 'r') as f:
79
+ lock_data = json.load(f)
80
+ self._parse_npm_lock(lock_data, deps)
81
+
82
+ return deps
83
+ ```
84
+
85
+ **Dependency Tree Analysis**
86
+ ```python
87
+ def build_dependency_tree(dependencies):
88
+ """
89
+ Build complete dependency tree including transitive dependencies
90
+ """
91
+ tree = {
92
+ 'root': {
93
+ 'name': 'project',
94
+ 'version': '1.0.0',
95
+ 'dependencies': {}
96
+ }
97
+ }
98
+
99
+ def add_dependencies(node, deps, visited=None):
100
+ if visited is None:
101
+ visited = set()
102
+
103
+ for dep_name, dep_info in deps.items():
104
+ if dep_name in visited:
105
+ # Circular dependency detected
106
+ node['dependencies'][dep_name] = {
107
+ 'circular': True,
108
+ 'version': dep_info['version']
109
+ }
110
+ continue
111
+
112
+ visited.add(dep_name)
113
+
114
+ node['dependencies'][dep_name] = {
115
+ 'version': dep_info['version'],
116
+ 'type': dep_info.get('type', 'runtime'),
117
+ 'dependencies': {}
118
+ }
119
+
120
+ # Recursively add transitive dependencies
121
+ if 'dependencies' in dep_info:
122
+ add_dependencies(
123
+ node['dependencies'][dep_name],
124
+ dep_info['dependencies'],
125
+ visited.copy()
126
+ )
127
+
128
+ add_dependencies(tree['root'], dependencies)
129
+ return tree
130
+ ```
131
+
132
+ ### 2. Vulnerability Scanning
133
+
134
+ Check dependencies against vulnerability databases:
135
+
136
+ **CVE Database Check**
137
+ ```python
138
+ import requests
139
+ from datetime import datetime
140
+
141
+ class VulnerabilityScanner:
142
+ def __init__(self):
143
+ self.vulnerability_apis = {
144
+ 'npm': 'https://registry.npmjs.org/-/npm/v1/security/advisories/bulk',
145
+ 'pypi': 'https://pypi.org/pypi/{package}/json',
146
+ 'rubygems': 'https://rubygems.org/api/v1/gems/{package}.json',
147
+ 'maven': 'https://ossindex.sonatype.org/api/v3/component-report'
148
+ }
149
+
150
+ def scan_vulnerabilities(self, dependencies):
151
+ """
152
+ Scan dependencies for known vulnerabilities
153
+ """
154
+ vulnerabilities = []
155
+
156
+ for package_name, package_info in dependencies.items():
157
+ vulns = self._check_package_vulnerabilities(
158
+ package_name,
159
+ package_info['version'],
160
+ package_info.get('ecosystem', 'npm')
161
+ )
162
+
163
+ if vulns:
164
+ vulnerabilities.extend(vulns)
165
+
166
+ return self._analyze_vulnerabilities(vulnerabilities)
167
+
168
+ def _check_package_vulnerabilities(self, name, version, ecosystem):
169
+ """
170
+ Check specific package for vulnerabilities
171
+ """
172
+ if ecosystem == 'npm':
173
+ return self._check_npm_vulnerabilities(name, version)
174
+ elif ecosystem == 'pypi':
175
+ return self._check_python_vulnerabilities(name, version)
176
+ elif ecosystem == 'maven':
177
+ return self._check_java_vulnerabilities(name, version)
178
+
179
+ def _check_npm_vulnerabilities(self, name, version):
180
+ """
181
+ Check NPM package vulnerabilities
182
+ """
183
+ # Using npm audit API
184
+ response = requests.post(
185
+ 'https://registry.npmjs.org/-/npm/v1/security/advisories/bulk',
186
+ json={name: [version]}
187
+ )
188
+
189
+ vulnerabilities = []
190
+ if response.status_code == 200:
191
+ data = response.json()
192
+ if name in data:
193
+ for advisory in data[name]:
194
+ vulnerabilities.append({
195
+ 'package': name,
196
+ 'version': version,
197
+ 'severity': advisory['severity'],
198
+ 'title': advisory['title'],
199
+ 'cve': advisory.get('cves', []),
200
+ 'description': advisory['overview'],
201
+ 'recommendation': advisory['recommendation'],
202
+ 'patched_versions': advisory['patched_versions'],
203
+ 'published': advisory['created']
204
+ })
205
+
206
+ return vulnerabilities
207
+ ```
208
+
209
+ **Severity Analysis**
210
+ ```python
211
+ def analyze_vulnerability_severity(vulnerabilities):
212
+ """
213
+ Analyze and prioritize vulnerabilities by severity
214
+ """
215
+ severity_scores = {
216
+ 'critical': 9.0,
217
+ 'high': 7.0,
218
+ 'moderate': 4.0,
219
+ 'low': 1.0
220
+ }
221
+
222
+ analysis = {
223
+ 'total': len(vulnerabilities),
224
+ 'by_severity': {
225
+ 'critical': [],
226
+ 'high': [],
227
+ 'moderate': [],
228
+ 'low': []
229
+ },
230
+ 'risk_score': 0,
231
+ 'immediate_action_required': []
232
+ }
233
+
234
+ for vuln in vulnerabilities:
235
+ severity = vuln['severity'].lower()
236
+ analysis['by_severity'][severity].append(vuln)
237
+
238
+ # Calculate risk score
239
+ base_score = severity_scores.get(severity, 0)
240
+
241
+ # Adjust score based on factors
242
+ if vuln.get('exploit_available', False):
243
+ base_score *= 1.5
244
+ if vuln.get('publicly_disclosed', True):
245
+ base_score *= 1.2
246
+ if 'remote_code_execution' in vuln.get('description', '').lower():
247
+ base_score *= 2.0
248
+
249
+ vuln['risk_score'] = base_score
250
+ analysis['risk_score'] += base_score
251
+
252
+ # Flag immediate action items
253
+ if severity in ['critical', 'high'] or base_score > 8.0:
254
+ analysis['immediate_action_required'].append({
255
+ 'package': vuln['package'],
256
+ 'severity': severity,
257
+ 'action': f"Update to {vuln['patched_versions']}"
258
+ })
259
+
260
+ # Sort by risk score
261
+ for severity in analysis['by_severity']:
262
+ analysis['by_severity'][severity].sort(
263
+ key=lambda x: x.get('risk_score', 0),
264
+ reverse=True
265
+ )
266
+
267
+ return analysis
268
+ ```
269
+
270
+ ### 3. License Compliance
271
+
272
+ Analyze dependency licenses for compatibility:
273
+
274
+ **License Detection**
275
+ ```python
276
+ class LicenseAnalyzer:
277
+ def __init__(self):
278
+ self.license_compatibility = {
279
+ 'MIT': ['MIT', 'BSD', 'Apache-2.0', 'ISC'],
280
+ 'Apache-2.0': ['Apache-2.0', 'MIT', 'BSD'],
281
+ 'GPL-3.0': ['GPL-3.0', 'GPL-2.0'],
282
+ 'BSD-3-Clause': ['BSD-3-Clause', 'MIT', 'Apache-2.0'],
283
+ 'proprietary': []
284
+ }
285
+
286
+ self.license_restrictions = {
287
+ 'GPL-3.0': 'Copyleft - requires source code disclosure',
288
+ 'AGPL-3.0': 'Strong copyleft - network use requires source disclosure',
289
+ 'proprietary': 'Cannot be used without explicit license',
290
+ 'unknown': 'License unclear - legal review required'
291
+ }
292
+
293
+ def analyze_licenses(self, dependencies, project_license='MIT'):
294
+ """
295
+ Analyze license compatibility
296
+ """
297
+ issues = []
298
+ license_summary = {}
299
+
300
+ for package_name, package_info in dependencies.items():
301
+ license_type = package_info.get('license', 'unknown')
302
+
303
+ # Track license usage
304
+ if license_type not in license_summary:
305
+ license_summary[license_type] = []
306
+ license_summary[license_type].append(package_name)
307
+
308
+ # Check compatibility
309
+ if not self._is_compatible(project_license, license_type):
310
+ issues.append({
311
+ 'package': package_name,
312
+ 'license': license_type,
313
+ 'issue': f'Incompatible with project license {project_license}',
314
+ 'severity': 'high',
315
+ 'recommendation': self._get_license_recommendation(
316
+ license_type,
317
+ project_license
318
+ )
319
+ })
320
+
321
+ # Check for restrictive licenses
322
+ if license_type in self.license_restrictions:
323
+ issues.append({
324
+ 'package': package_name,
325
+ 'license': license_type,
326
+ 'issue': self.license_restrictions[license_type],
327
+ 'severity': 'medium',
328
+ 'recommendation': 'Review usage and ensure compliance'
329
+ })
330
+
331
+ return {
332
+ 'summary': license_summary,
333
+ 'issues': issues,
334
+ 'compliance_status': 'FAIL' if issues else 'PASS'
335
+ }
336
+ ```
337
+
338
+ **License Report**
339
+ ```markdown
340
+ ## License Compliance Report
341
+
342
+ ### Summary
343
+ - **Project License**: MIT
344
+ - **Total Dependencies**: 245
345
+ - **License Issues**: 3
346
+ - **Compliance Status**: ⚠️ REVIEW REQUIRED
347
+
348
+ ### License Distribution
349
+ | License | Count | Packages |
350
+ |---------|-------|----------|
351
+ | MIT | 180 | express, lodash, ... |
352
+ | Apache-2.0 | 45 | aws-sdk, ... |
353
+ | BSD-3-Clause | 15 | ... |
354
+ | GPL-3.0 | 3 | [ISSUE] package1, package2, package3 |
355
+ | Unknown | 2 | [ISSUE] mystery-lib, old-package |
356
+
357
+ ### Compliance Issues
358
+
359
+ #### High Severity
360
+ 1. **GPL-3.0 Dependencies**
361
+ - Packages: package1, package2, package3
362
+ - Issue: GPL-3.0 is incompatible with MIT license
363
+ - Risk: May require open-sourcing your entire project
364
+ - Recommendation:
365
+ - Replace with MIT/Apache licensed alternatives
366
+ - Or change project license to GPL-3.0
367
+
368
+ #### Medium Severity
369
+ 2. **Unknown Licenses**
370
+ - Packages: mystery-lib, old-package
371
+ - Issue: Cannot determine license compatibility
372
+ - Risk: Potential legal exposure
373
+ - Recommendation:
374
+ - Contact package maintainers
375
+ - Review source code for license information
376
+ - Consider replacing with known alternatives
377
+ ```
378
+
379
+ ### 4. Outdated Dependencies
380
+
381
+ Identify and prioritize dependency updates:
382
+
383
+ **Version Analysis**
384
+ ```python
385
+ def analyze_outdated_dependencies(dependencies):
386
+ """
387
+ Check for outdated dependencies
388
+ """
389
+ outdated = []
390
+
391
+ for package_name, package_info in dependencies.items():
392
+ current_version = package_info['version']
393
+ latest_version = fetch_latest_version(package_name, package_info['ecosystem'])
394
+
395
+ if is_outdated(current_version, latest_version):
396
+ # Calculate how outdated
397
+ version_diff = calculate_version_difference(current_version, latest_version)
398
+
399
+ outdated.append({
400
+ 'package': package_name,
401
+ 'current': current_version,
402
+ 'latest': latest_version,
403
+ 'type': version_diff['type'], # major, minor, patch
404
+ 'releases_behind': version_diff['count'],
405
+ 'age_days': get_version_age(package_name, current_version),
406
+ 'breaking_changes': version_diff['type'] == 'major',
407
+ 'update_effort': estimate_update_effort(version_diff),
408
+ 'changelog': fetch_changelog(package_name, current_version, latest_version)
409
+ })
410
+
411
+ return prioritize_updates(outdated)
412
+
413
+ def prioritize_updates(outdated_deps):
414
+ """
415
+ Prioritize updates based on multiple factors
416
+ """
417
+ for dep in outdated_deps:
418
+ score = 0
419
+
420
+ # Security updates get highest priority
421
+ if dep.get('has_security_fix', False):
422
+ score += 100
423
+
424
+ # Major version updates
425
+ if dep['type'] == 'major':
426
+ score += 20
427
+ elif dep['type'] == 'minor':
428
+ score += 10
429
+ else:
430
+ score += 5
431
+
432
+ # Age factor
433
+ if dep['age_days'] > 365:
434
+ score += 30
435
+ elif dep['age_days'] > 180:
436
+ score += 20
437
+ elif dep['age_days'] > 90:
438
+ score += 10
439
+
440
+ # Number of releases behind
441
+ score += min(dep['releases_behind'] * 2, 20)
442
+
443
+ dep['priority_score'] = score
444
+ dep['priority'] = 'critical' if score > 80 else 'high' if score > 50 else 'medium'
445
+
446
+ return sorted(outdated_deps, key=lambda x: x['priority_score'], reverse=True)
447
+ ```
448
+
449
+ ### 5. Dependency Size Analysis
450
+
451
+ Analyze bundle size impact:
452
+
453
+ **Bundle Size Impact**
454
+ ```javascript
455
+ // Analyze NPM package sizes
456
+ const analyzeBundleSize = async (dependencies) => {
457
+ const sizeAnalysis = {
458
+ totalSize: 0,
459
+ totalGzipped: 0,
460
+ packages: [],
461
+ recommendations: []
462
+ };
463
+
464
+ for (const [packageName, info] of Object.entries(dependencies)) {
465
+ try {
466
+ // Fetch package stats
467
+ const response = await fetch(
468
+ `https://bundlephobia.com/api/size?package=${packageName}@${info.version}`
469
+ );
470
+ const data = await response.json();
471
+
472
+ const packageSize = {
473
+ name: packageName,
474
+ version: info.version,
475
+ size: data.size,
476
+ gzip: data.gzip,
477
+ dependencyCount: data.dependencyCount,
478
+ hasJSNext: data.hasJSNext,
479
+ hasSideEffects: data.hasSideEffects
480
+ };
481
+
482
+ sizeAnalysis.packages.push(packageSize);
483
+ sizeAnalysis.totalSize += data.size;
484
+ sizeAnalysis.totalGzipped += data.gzip;
485
+
486
+ // Size recommendations
487
+ if (data.size > 1000000) { // 1MB
488
+ sizeAnalysis.recommendations.push({
489
+ package: packageName,
490
+ issue: 'Large bundle size',
491
+ size: `${(data.size / 1024 / 1024).toFixed(2)} MB`,
492
+ suggestion: 'Consider lighter alternatives or lazy loading'
493
+ });
494
+ }
495
+ } catch (error) {
496
+ console.error(`Failed to analyze ${packageName}:`, error);
497
+ }
498
+ }
499
+
500
+ // Sort by size
501
+ sizeAnalysis.packages.sort((a, b) => b.size - a.size);
502
+
503
+ // Add top offenders
504
+ sizeAnalysis.topOffenders = sizeAnalysis.packages.slice(0, 10);
505
+
506
+ return sizeAnalysis;
507
+ };
508
+ ```
509
+
510
+ ### 6. Supply Chain Security
511
+
512
+ Check for dependency hijacking and typosquatting:
513
+
514
+ **Supply Chain Checks**
515
+ ```python
516
+ def check_supply_chain_security(dependencies):
517
+ """
518
+ Perform supply chain security checks
519
+ """
520
+ security_issues = []
521
+
522
+ for package_name, package_info in dependencies.items():
523
+ # Check for typosquatting
524
+ typo_check = check_typosquatting(package_name)
525
+ if typo_check['suspicious']:
526
+ security_issues.append({
527
+ 'type': 'typosquatting',
528
+ 'package': package_name,
529
+ 'severity': 'high',
530
+ 'similar_to': typo_check['similar_packages'],
531
+ 'recommendation': 'Verify package name spelling'
532
+ })
533
+
534
+ # Check maintainer changes
535
+ maintainer_check = check_maintainer_changes(package_name)
536
+ if maintainer_check['recent_changes']:
537
+ security_issues.append({
538
+ 'type': 'maintainer_change',
539
+ 'package': package_name,
540
+ 'severity': 'medium',
541
+ 'details': maintainer_check['changes'],
542
+ 'recommendation': 'Review recent package changes'
543
+ })
544
+
545
+ # Check for suspicious patterns
546
+ if contains_suspicious_patterns(package_info):
547
+ security_issues.append({
548
+ 'type': 'suspicious_behavior',
549
+ 'package': package_name,
550
+ 'severity': 'high',
551
+ 'patterns': package_info['suspicious_patterns'],
552
+ 'recommendation': 'Audit package source code'
553
+ })
554
+
555
+ return security_issues
556
+
557
+ def check_typosquatting(package_name):
558
+ """
559
+ Check if package name might be typosquatting
560
+ """
561
+ common_packages = [
562
+ 'react', 'express', 'lodash', 'axios', 'webpack',
563
+ 'babel', 'jest', 'typescript', 'eslint', 'prettier'
564
+ ]
565
+
566
+ for legit_package in common_packages:
567
+ distance = levenshtein_distance(package_name.lower(), legit_package)
568
+ if 0 < distance <= 2: # Close but not exact match
569
+ return {
570
+ 'suspicious': True,
571
+ 'similar_packages': [legit_package],
572
+ 'distance': distance
573
+ }
574
+
575
+ return {'suspicious': False}
576
+ ```
577
+
578
+ ### 7. Automated Remediation
579
+
580
+ Generate automated fixes:
581
+
582
+ **Update Scripts**
583
+ ```bash
584
+ #!/bin/bash
585
+ # Auto-update dependencies with security fixes
586
+
587
+ echo "🔒 Security Update Script"
588
+ echo "========================"
589
+
590
+ # NPM/Yarn updates
591
+ if [ -f "package.json" ]; then
592
+ echo "📦 Updating NPM dependencies..."
593
+
594
+ # Audit and auto-fix
595
+ npm audit fix --force
596
+
597
+ # Update specific vulnerable packages
598
+ npm update package1@^2.0.0 package2@~3.1.0
599
+
600
+ # Run tests
601
+ npm test
602
+
603
+ if [ $? -eq 0 ]; then
604
+ echo "✅ NPM updates successful"
605
+ else
606
+ echo "❌ Tests failed, reverting..."
607
+ git checkout package-lock.json
608
+ fi
609
+ fi
610
+
611
+ # Python updates
612
+ if [ -f "requirements.txt" ]; then
613
+ echo "🐍 Updating Python dependencies..."
614
+
615
+ # Create backup
616
+ cp requirements.txt requirements.txt.backup
617
+
618
+ # Update vulnerable packages
619
+ pip-compile --upgrade-package package1 --upgrade-package package2
620
+
621
+ # Test installation
622
+ pip install -r requirements.txt --dry-run
623
+
624
+ if [ $? -eq 0 ]; then
625
+ echo "✅ Python updates successful"
626
+ else
627
+ echo "❌ Update failed, reverting..."
628
+ mv requirements.txt.backup requirements.txt
629
+ fi
630
+ fi
631
+ ```
632
+
633
+ **Pull Request Generation**
634
+ ```python
635
+ def generate_dependency_update_pr(updates):
636
+ """
637
+ Generate PR with dependency updates
638
+ """
639
+ pr_body = f"""
640
+ ## 🔒 Dependency Security Update
641
+
642
+ This PR updates {len(updates)} dependencies to address security vulnerabilities and outdated packages.
643
+
644
+ ### Security Fixes ({sum(1 for u in updates if u['has_security'])})
645
+
646
+ | Package | Current | Updated | Severity | CVE |
647
+ |---------|---------|---------|----------|-----|
648
+ """
649
+
650
+ for update in updates:
651
+ if update['has_security']:
652
+ pr_body += f"| {update['package']} | {update['current']} | {update['target']} | {update['severity']} | {', '.join(update['cves'])} |\n"
653
+
654
+ pr_body += """
655
+
656
+ ### Other Updates
657
+
658
+ | Package | Current | Updated | Type | Age |
659
+ |---------|---------|---------|------|-----|
660
+ """
661
+
662
+ for update in updates:
663
+ if not update['has_security']:
664
+ pr_body += f"| {update['package']} | {update['current']} | {update['target']} | {update['type']} | {update['age_days']} days |\n"
665
+
666
+ pr_body += """
667
+
668
+ ### Testing
669
+ - [ ] All tests pass
670
+ - [ ] No breaking changes identified
671
+ - [ ] Bundle size impact reviewed
672
+
673
+ ### Review Checklist
674
+ - [ ] Security vulnerabilities addressed
675
+ - [ ] License compliance maintained
676
+ - [ ] No unexpected dependencies added
677
+ - [ ] Performance impact assessed
678
+
679
+ cc @security-team
680
+ """
681
+
682
+ return {
683
+ 'title': f'chore(deps): Security update for {len(updates)} dependencies',
684
+ 'body': pr_body,
685
+ 'branch': f'deps/security-update-{datetime.now().strftime("%Y%m%d")}',
686
+ 'labels': ['dependencies', 'security']
687
+ }
688
+ ```
689
+
690
+ ### 8. Monitoring and Alerts
691
+
692
+ Set up continuous dependency monitoring:
693
+
694
+ **GitHub Actions Workflow**
695
+ ```yaml
696
+ name: Dependency Audit
697
+
698
+ on:
699
+ schedule:
700
+ - cron: '0 0 * * *' # Daily
701
+ push:
702
+ paths:
703
+ - 'package*.json'
704
+ - 'requirements.txt'
705
+ - 'Gemfile*'
706
+ - 'go.mod'
707
+ workflow_dispatch:
708
+
709
+ jobs:
710
+ security-audit:
711
+ runs-on: ubuntu-latest
712
+
713
+ steps:
714
+ - uses: actions/checkout@v3
715
+
716
+ - name: Run NPM Audit
717
+ if: hashFiles('package.json')
718
+ run: |
719
+ npm audit --json > npm-audit.json
720
+ if [ $(jq '.vulnerabilities.total' npm-audit.json) -gt 0 ]; then
721
+ echo "::error::Found $(jq '.vulnerabilities.total' npm-audit.json) vulnerabilities"
722
+ exit 1
723
+ fi
724
+
725
+ - name: Run Python Safety Check
726
+ if: hashFiles('requirements.txt')
727
+ run: |
728
+ pip install safety
729
+ safety check --json > safety-report.json
730
+
731
+ - name: Check Licenses
732
+ run: |
733
+ npx license-checker --json > licenses.json
734
+ python scripts/check_license_compliance.py
735
+
736
+ - name: Create Issue for Critical Vulnerabilities
737
+ if: failure()
738
+ uses: actions/github-script@v6
739
+ with:
740
+ script: |
741
+ const audit = require('./npm-audit.json');
742
+ const critical = audit.vulnerabilities.critical;
743
+
744
+ if (critical > 0) {
745
+ github.rest.issues.create({
746
+ owner: context.repo.owner,
747
+ repo: context.repo.repo,
748
+ title: `🚨 ${critical} critical vulnerabilities found`,
749
+ body: 'Dependency audit found critical vulnerabilities. See workflow run for details.',
750
+ labels: ['security', 'dependencies', 'critical']
751
+ });
752
+ }
753
+ ```
754
+
755
+ ## Output Format
756
+
757
+ 1. **Executive Summary**: High-level risk assessment and action items
758
+ 2. **Vulnerability Report**: Detailed CVE analysis with severity ratings
759
+ 3. **License Compliance**: Compatibility matrix and legal risks
760
+ 4. **Update Recommendations**: Prioritized list with effort estimates
761
+ 5. **Supply Chain Analysis**: Typosquatting and hijacking risks
762
+ 6. **Remediation Scripts**: Automated update commands and PR generation
763
+ 7. **Size Impact Report**: Bundle size analysis and optimization tips
764
+ 8. **Monitoring Setup**: CI/CD integration for continuous scanning
765
+
766
+ Focus on actionable insights that help maintain secure, compliant, and efficient dependency management.