cfsa-antigravity 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 (378) hide show
  1. package/bin/cli.mjs +324 -0
  2. package/package.json +34 -0
  3. package/template/.agent/instructions/commands.md +48 -0
  4. package/template/.agent/instructions/patterns.md +61 -0
  5. package/template/.agent/instructions/structure.md +29 -0
  6. package/template/.agent/instructions/tech-stack.md +43 -0
  7. package/template/.agent/instructions/workflow.md +41 -0
  8. package/template/.agent/kit-sync.md +15 -0
  9. package/template/.agent/rules/boundary-not-placeholder.md +146 -0
  10. package/template/.agent/rules/completion-checklist.md +48 -0
  11. package/template/.agent/rules/decision-classification.md +103 -0
  12. package/template/.agent/rules/extensibility.md +47 -0
  13. package/template/.agent/rules/question-vs-command.md +81 -0
  14. package/template/.agent/rules/security-first.md +43 -0
  15. package/template/.agent/rules/specificity-standards.md +54 -0
  16. package/template/.agent/rules/tdd-contract-first.md +57 -0
  17. package/template/.agent/rules/vertical-slices.md +42 -0
  18. package/template/.agent/skill-library/MANIFEST.md +480 -0
  19. package/template/.agent/skill-library/README.md +38 -0
  20. package/template/.agent/skill-library/meta/brand-guidelines/SKILL.md +73 -0
  21. package/template/.agent/skill-library/meta/claude-code/README.md +9 -0
  22. package/template/.agent/skill-library/meta/claude-code/agent-development/SKILL.md +415 -0
  23. package/template/.agent/skill-library/meta/claude-code/hook-development/SKILL.md +712 -0
  24. package/template/.agent/skill-library/meta/claude-code/plugin-structure/SKILL.md +476 -0
  25. package/template/.agent/skill-library/meta/git-advanced/SKILL.md +972 -0
  26. package/template/.agent/skill-library/meta/mcp-builder/SKILL.md +236 -0
  27. package/template/.agent/skill-library/meta/product-marketing-context/SKILL.md +241 -0
  28. package/template/.agent/skill-library/meta/regex-patterns/SKILL.md +751 -0
  29. package/template/.agent/skill-library/meta/tmux-processes/SKILL.md +210 -0
  30. package/template/.agent/skill-library/meta/using-tmux-for-interactive-commands/SKILL.md +178 -0
  31. package/template/.agent/skill-library/stack/3d/threejs-pro/SKILL.md +300 -0
  32. package/template/.agent/skill-library/stack/ai/ai-sdk/SKILL.md +77 -0
  33. package/template/.agent/skill-library/stack/ai/langchain/SKILL.md +530 -0
  34. package/template/.agent/skill-library/stack/ai/ollama/SKILL.md +321 -0
  35. package/template/.agent/skill-library/stack/ai/openai-sdk/SKILL.md +549 -0
  36. package/template/.agent/skill-library/stack/analytics/google-analytics/SKILL.md +153 -0
  37. package/template/.agent/skill-library/stack/api/graphql/SKILL.md +1061 -0
  38. package/template/.agent/skill-library/stack/api/trpc/SKILL.md +576 -0
  39. package/template/.agent/skill-library/stack/auth/authjs/SKILL.md +569 -0
  40. package/template/.agent/skill-library/stack/auth/clerk/SKILL.md +590 -0
  41. package/template/.agent/skill-library/stack/auth/firebase-auth/SKILL.md +734 -0
  42. package/template/.agent/skill-library/stack/cms/payload-cms/SKILL.md +573 -0
  43. package/template/.agent/skill-library/stack/cms/shopify/SKILL.md +1193 -0
  44. package/template/.agent/skill-library/stack/cms/wordpress/SKILL.md +1104 -0
  45. package/template/.agent/skill-library/stack/css/sass-scss/SKILL.md +1121 -0
  46. package/template/.agent/skill-library/stack/css/tailwind-css-patterns/SKILL.md +863 -0
  47. package/template/.agent/skill-library/stack/css/tailwind-design-system/SKILL.md +490 -0
  48. package/template/.agent/skill-library/stack/css/vanilla-css/SKILL.md +1078 -0
  49. package/template/.agent/skill-library/stack/databases/clickhouse/SKILL.md +311 -0
  50. package/template/.agent/skill-library/stack/databases/influxdb/SKILL.md +280 -0
  51. package/template/.agent/skill-library/stack/databases/lancedb/SKILL.md +415 -0
  52. package/template/.agent/skill-library/stack/databases/mongodb/SKILL.md +1169 -0
  53. package/template/.agent/skill-library/stack/databases/neo4j/SKILL.md +839 -0
  54. package/template/.agent/skill-library/stack/databases/pgvector/SKILL.md +241 -0
  55. package/template/.agent/skill-library/stack/databases/pinecone/SKILL.md +212 -0
  56. package/template/.agent/skill-library/stack/databases/postgresql/SKILL.md +658 -0
  57. package/template/.agent/skill-library/stack/databases/qdrant/SKILL.md +312 -0
  58. package/template/.agent/skill-library/stack/databases/redis/SKILL.md +1079 -0
  59. package/template/.agent/skill-library/stack/databases/spacetimedb/SKILL.md +532 -0
  60. package/template/.agent/skill-library/stack/databases/sqlite/SKILL.md +1132 -0
  61. package/template/.agent/skill-library/stack/databases/supabase/SKILL.md +640 -0
  62. package/template/.agent/skill-library/stack/databases/surrealdb-expert/SKILL.md +945 -0
  63. package/template/.agent/skill-library/stack/databases/timescaledb/SKILL.md +745 -0
  64. package/template/.agent/skill-library/stack/databases/weaviate/SKILL.md +218 -0
  65. package/template/.agent/skill-library/stack/devops/github-actions/SKILL.md +554 -0
  66. package/template/.agent/skill-library/stack/devops/kubernetes/SKILL.md +950 -0
  67. package/template/.agent/skill-library/stack/devops/nginx/SKILL.md +841 -0
  68. package/template/.agent/skill-library/stack/devops/terraform/SKILL.md +860 -0
  69. package/template/.agent/skill-library/stack/email/resend/SKILL.md +391 -0
  70. package/template/.agent/skill-library/stack/engines/godot/SKILL.md +488 -0
  71. package/template/.agent/skill-library/stack/extensions/chrome-extension/SKILL.md +375 -0
  72. package/template/.agent/skill-library/stack/extensions/vscode-extension/SKILL.md +453 -0
  73. package/template/.agent/skill-library/stack/frameworks/astro-framework/SKILL.md +162 -0
  74. package/template/.agent/skill-library/stack/frameworks/electron/SKILL.md +1286 -0
  75. package/template/.agent/skill-library/stack/frameworks/fastapi/SKILL.md +650 -0
  76. package/template/.agent/skill-library/stack/frameworks/hono/SKILL.md +90 -0
  77. package/template/.agent/skill-library/stack/frameworks/nestjs/SKILL.md +878 -0
  78. package/template/.agent/skill-library/stack/frameworks/nextjs/SKILL.md +635 -0
  79. package/template/.agent/skill-library/stack/frameworks/nuxt/SKILL.md +564 -0
  80. package/template/.agent/skill-library/stack/frameworks/sveltekit/SKILL.md +614 -0
  81. package/template/.agent/skill-library/stack/frameworks/tauri/SKILL.md +920 -0
  82. package/template/.agent/skill-library/stack/gamedev/godot/SKILL.md +1032 -0
  83. package/template/.agent/skill-library/stack/gamedev/unity/SKILL.md +1175 -0
  84. package/template/.agent/skill-library/stack/hosting/aws/SKILL.md +467 -0
  85. package/template/.agent/skill-library/stack/hosting/cloudflare/SKILL.md +201 -0
  86. package/template/.agent/skill-library/stack/hosting/docker-expert/SKILL.md +409 -0
  87. package/template/.agent/skill-library/stack/hosting/vercel/SKILL.md +484 -0
  88. package/template/.agent/skill-library/stack/languages/bash-scripting/SKILL.md +773 -0
  89. package/template/.agent/skill-library/stack/languages/c-cpp/SKILL.md +712 -0
  90. package/template/.agent/skill-library/stack/languages/gdscript/SKILL.md +789 -0
  91. package/template/.agent/skill-library/stack/languages/go/SKILL.md +664 -0
  92. package/template/.agent/skill-library/stack/languages/java/SKILL.md +778 -0
  93. package/template/.agent/skill-library/stack/languages/kotlin/SKILL.md +665 -0
  94. package/template/.agent/skill-library/stack/languages/python/SKILL.md +678 -0
  95. package/template/.agent/skill-library/stack/languages/rust/SKILL.md +673 -0
  96. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/SKILL.md +141 -0
  97. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/advanced-generics.md +90 -0
  98. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/branded-types.md +57 -0
  99. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/builder-pattern.md +71 -0
  100. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/common-pitfalls.md +135 -0
  101. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/conditional-types.md +27 -0
  102. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/decorators.md +98 -0
  103. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/discriminated-unions.md +62 -0
  104. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/mapped-types.md +53 -0
  105. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/performance-best-practices.md +104 -0
  106. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/template-literal-types.md +49 -0
  107. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/testing-types.md +112 -0
  108. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/type-guards.md +70 -0
  109. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/type-inference.md +101 -0
  110. package/template/.agent/skill-library/stack/languages/typescript-advanced-patterns/references/utility-types.md +98 -0
  111. package/template/.agent/skill-library/stack/languages/vanilla-javascript/SKILL.md +803 -0
  112. package/template/.agent/skill-library/stack/messaging/kafka/SKILL.md +235 -0
  113. package/template/.agent/skill-library/stack/mobile/expo-react-native/SKILL.md +665 -0
  114. package/template/.agent/skill-library/stack/mobile/flutter/SKILL.md +316 -0
  115. package/template/.agent/skill-library/stack/mobile/react-native/SKILL.md +337 -0
  116. package/template/.agent/skill-library/stack/monitoring/posthog/SKILL.md +396 -0
  117. package/template/.agent/skill-library/stack/monitoring/sentry/SKILL.md +509 -0
  118. package/template/.agent/skill-library/stack/observability/datadog/SKILL.md +179 -0
  119. package/template/.agent/skill-library/stack/observability/distributed-tracing/SKILL.md +140 -0
  120. package/template/.agent/skill-library/stack/observability/logging-best-practices/SKILL.md +168 -0
  121. package/template/.agent/skill-library/stack/observability/opentelemetry/SKILL.md +164 -0
  122. package/template/.agent/skill-library/stack/observability/prometheus-grafana/SKILL.md +246 -0
  123. package/template/.agent/skill-library/stack/observability/python-observability/SKILL.md +158 -0
  124. package/template/.agent/skill-library/stack/orm/drizzle-orm/SKILL.md +613 -0
  125. package/template/.agent/skill-library/stack/orm/prisma/SKILL.md +744 -0
  126. package/template/.agent/skill-library/stack/payments/lemonsqueezy/SKILL.md +393 -0
  127. package/template/.agent/skill-library/stack/payments/stripe-integration/SKILL.md +457 -0
  128. package/template/.agent/skill-library/stack/queue/bullmq/SKILL.md +385 -0
  129. package/template/.agent/skill-library/stack/queue/inngest/SKILL.md +438 -0
  130. package/template/.agent/skill-library/stack/realtime/socketio/SKILL.md +595 -0
  131. package/template/.agent/skill-library/stack/search/elasticsearch/SKILL.md +248 -0
  132. package/template/.agent/skill-library/stack/search/meilisearch/SKILL.md +385 -0
  133. package/template/.agent/skill-library/stack/security/crypto-patterns/SKILL.md +437 -0
  134. package/template/.agent/skill-library/stack/security/csp-cors-headers/SKILL.md +588 -0
  135. package/template/.agent/skill-library/stack/security/dependency-auditing/SKILL.md +560 -0
  136. package/template/.agent/skill-library/stack/security/input-sanitization/SKILL.md +430 -0
  137. package/template/.agent/skill-library/stack/security/owasp-web-security/SKILL.md +421 -0
  138. package/template/.agent/skill-library/stack/state/tanstack-query/SKILL.md +637 -0
  139. package/template/.agent/skill-library/stack/state/zustand/SKILL.md +483 -0
  140. package/template/.agent/skill-library/stack/storage/aws-s3/SKILL.md +415 -0
  141. package/template/.agent/skill-library/stack/testing/playwright/SKILL.md +641 -0
  142. package/template/.agent/skill-library/stack/testing/storybook/SKILL.md +923 -0
  143. package/template/.agent/skill-library/stack/testing/testing-library/SKILL.md +872 -0
  144. package/template/.agent/skill-library/stack/testing/vitest/SKILL.md +714 -0
  145. package/template/.agent/skill-library/stack/ui/react-best-practices/SKILL.md +877 -0
  146. package/template/.agent/skill-library/stack/ui/react-composition-patterns/SKILL.md +1107 -0
  147. package/template/.agent/skill-library/stack/ui/react-flow/SKILL.md +425 -0
  148. package/template/.agent/skill-library/stack/ui/shadcn-ui/SKILL.md +703 -0
  149. package/template/.agent/skill-library/surface/api/api-caching/SKILL.md +458 -0
  150. package/template/.agent/skill-library/surface/api/api-documentation-openapi/SKILL.md +697 -0
  151. package/template/.agent/skill-library/surface/api/api-error-handling/SKILL.md +478 -0
  152. package/template/.agent/skill-library/surface/api/api-security-checklist/SKILL.md +147 -0
  153. package/template/.agent/skill-library/surface/api/api-versioning/SKILL.md +420 -0
  154. package/template/.agent/skill-library/surface/api/email-best-practices/SKILL.md +59 -0
  155. package/template/.agent/skill-library/surface/api/rate-limiting-abuse-protection/SKILL.md +147 -0
  156. package/template/.agent/skill-library/surface/api/rest-api-design/SKILL.md +478 -0
  157. package/template/.agent/skill-library/surface/api/webhook-design/SKILL.md +752 -0
  158. package/template/.agent/skill-library/surface/cli/cli-configuration-management/SKILL.md +445 -0
  159. package/template/.agent/skill-library/surface/cli/cli-error-diagnostics/SKILL.md +515 -0
  160. package/template/.agent/skill-library/surface/cli/cli-shell-integration/SKILL.md +479 -0
  161. package/template/.agent/skill-library/surface/cli/cli-ux-design/SKILL.md +477 -0
  162. package/template/.agent/skill-library/surface/desktop/desktop-app-distribution/SKILL.md +416 -0
  163. package/template/.agent/skill-library/surface/desktop/desktop-security-sandboxing/SKILL.md +407 -0
  164. package/template/.agent/skill-library/surface/desktop/desktop-ux-conventions/SKILL.md +361 -0
  165. package/template/.agent/skill-library/surface/desktop/native-os-integration/SKILL.md +563 -0
  166. package/template/.agent/skill-library/surface/extension/browser-extension-patterns/SKILL.md +482 -0
  167. package/template/.agent/skill-library/surface/extension/plugin-architecture-design/SKILL.md +632 -0
  168. package/template/.agent/skill-library/surface/extension/vscode-extension-development/SKILL.md +728 -0
  169. package/template/.agent/skill-library/surface/mobile/app-store-submission/SKILL.md +304 -0
  170. package/template/.agent/skill-library/surface/mobile/mobile-offline-sync/SKILL.md +443 -0
  171. package/template/.agent/skill-library/surface/mobile/mobile-responsive-patterns/SKILL.md +432 -0
  172. package/template/.agent/skill-library/surface/mobile/push-notifications/SKILL.md +495 -0
  173. package/template/.agent/skill-library/surface/web/accessibility-compliance/SKILL.md +827 -0
  174. package/template/.agent/skill-library/surface/web/ai-seo/SKILL.md +398 -0
  175. package/template/.agent/skill-library/surface/web/ai-seo/references/content-patterns.md +285 -0
  176. package/template/.agent/skill-library/surface/web/ai-seo/references/platform-ranking-factors.md +152 -0
  177. package/template/.agent/skill-library/surface/web/analytics-tracking/SKILL.md +309 -0
  178. package/template/.agent/skill-library/surface/web/analytics-tracking/references/event-library.md +260 -0
  179. package/template/.agent/skill-library/surface/web/analytics-tracking/references/ga4-implementation.md +300 -0
  180. package/template/.agent/skill-library/surface/web/analytics-tracking/references/gtm-implementation.md +390 -0
  181. package/template/.agent/skill-library/surface/web/authentication-ui-flows/SKILL.md +530 -0
  182. package/template/.agent/skill-library/surface/web/dark-mode-theming/SKILL.md +516 -0
  183. package/template/.agent/skill-library/surface/web/design-reference-data/SKILL.md +105 -0
  184. package/template/.agent/skill-library/surface/web/design-reference-data/data/charts.csv +26 -0
  185. package/template/.agent/skill-library/surface/web/design-reference-data/data/colors.csv +97 -0
  186. package/template/.agent/skill-library/surface/web/design-reference-data/data/landing.csv +31 -0
  187. package/template/.agent/skill-library/surface/web/design-reference-data/data/styles.csv +59 -0
  188. package/template/.agent/skill-library/surface/web/design-reference-data/data/typography.csv +58 -0
  189. package/template/.agent/skill-library/surface/web/design-reference-data/data/ux-guidelines.csv +100 -0
  190. package/template/.agent/skill-library/surface/web/design-reference-data/scripts/core.py +258 -0
  191. package/template/.agent/skill-library/surface/web/design-reference-data/scripts/design_system.py +1067 -0
  192. package/template/.agent/skill-library/surface/web/design-reference-data/scripts/search.py +106 -0
  193. package/template/.agent/skill-library/surface/web/form-handling-validation/SKILL.md +675 -0
  194. package/template/.agent/skill-library/surface/web/frontend-design/SKILL.md +1393 -0
  195. package/template/.agent/skill-library/surface/web/frontend-design/templates/cppn-hero.tsx +299 -0
  196. package/template/.agent/skill-library/surface/web/frontend-design/templates/wave-hero.tsx +875 -0
  197. package/template/.agent/skill-library/surface/web/frontend-verification/SKILL.md +111 -0
  198. package/template/.agent/skill-library/surface/web/frontend-verification/scripts/ux_audit.py +739 -0
  199. package/template/.agent/skill-library/surface/web/i18n-localization/SKILL.md +154 -0
  200. package/template/.agent/skill-library/surface/web/offline-first-pwa/SKILL.md +657 -0
  201. package/template/.agent/skill-library/surface/web/page-cro/SKILL.md +182 -0
  202. package/template/.agent/skill-library/surface/web/page-cro/references/experiments.md +248 -0
  203. package/template/.agent/skill-library/surface/web/programmatic-seo/SKILL.md +238 -0
  204. package/template/.agent/skill-library/surface/web/programmatic-seo/references/playbooks.md +308 -0
  205. package/template/.agent/skill-library/surface/web/schema-markup/SKILL.md +179 -0
  206. package/template/.agent/skill-library/surface/web/schema-markup/references/schema-examples.md +398 -0
  207. package/template/.agent/skill-library/surface/web/seo-audit/SKILL.md +394 -0
  208. package/template/.agent/skill-library/surface/web/seo-audit/references/ai-writing-detection.md +200 -0
  209. package/template/.agent/skill-library/surface/web/web-performance-optimization/SKILL.md +646 -0
  210. package/template/.agent/skill-library/surface/web/web-scraping/SKILL.md +58 -0
  211. package/template/.agent/skills/accessibility/SKILL.md +522 -0
  212. package/template/.agent/skills/accessibility/references/WCAG.md +162 -0
  213. package/template/.agent/skills/adversarial-review/SKILL.md +90 -0
  214. package/template/.agent/skills/antigravity-workflows/SKILL.md +81 -0
  215. package/template/.agent/skills/antigravity-workflows/resources/implementation-playbook.md +36 -0
  216. package/template/.agent/skills/api-design-principles/SKILL.md +37 -0
  217. package/template/.agent/skills/api-design-principles/assets/api-design-checklist.md +155 -0
  218. package/template/.agent/skills/api-design-principles/assets/rest-api-template.py +182 -0
  219. package/template/.agent/skills/api-design-principles/references/graphql-schema-design.md +583 -0
  220. package/template/.agent/skills/api-design-principles/references/rest-best-practices.md +408 -0
  221. package/template/.agent/skills/api-design-principles/resources/implementation-playbook.md +513 -0
  222. package/template/.agent/skills/api-versioning/SKILL.md +420 -0
  223. package/template/.agent/skills/architecture-mapping/SKILL.md +219 -0
  224. package/template/.agent/skills/bootstrap-agents/SKILL.md +259 -0
  225. package/template/.agent/skills/brainstorming/SKILL.md +236 -0
  226. package/template/.agent/skills/brand-guidelines/SKILL.md +44 -0
  227. package/template/.agent/skills/clean-code/SKILL.md +94 -0
  228. package/template/.agent/skills/code-review-pro/SKILL.md +152 -0
  229. package/template/.agent/skills/concise-planning/SKILL.md +68 -0
  230. package/template/.agent/skills/cross-layer-consistency/SKILL.md +117 -0
  231. package/template/.agent/skills/database-schema-design/SKILL.md +429 -0
  232. package/template/.agent/skills/deployment-procedures/SKILL.md +241 -0
  233. package/template/.agent/skills/design-anti-cliche/SKILL.md +159 -0
  234. package/template/.agent/skills/design-direction/SKILL.md +45 -0
  235. package/template/.agent/skills/error-handling-patterns/SKILL.md +721 -0
  236. package/template/.agent/skills/find-skills/SKILL.md +145 -0
  237. package/template/.agent/skills/git-advanced/SKILL.md +972 -0
  238. package/template/.agent/skills/git-workflow/SKILL.md +420 -0
  239. package/template/.agent/skills/idea-extraction/SKILL.md +271 -0
  240. package/template/.agent/skills/logging-best-practices/SKILL.md +851 -0
  241. package/template/.agent/skills/migration-management/SKILL.md +384 -0
  242. package/template/.agent/skills/minimalist-surgical-development/SKILL.md +69 -0
  243. package/template/.agent/skills/parallel-agents/SKILL.md +165 -0
  244. package/template/.agent/skills/parallel-debugging/SKILL.md +135 -0
  245. package/template/.agent/skills/parallel-feature-development/SKILL.md +166 -0
  246. package/template/.agent/skills/performance-budgeting/SKILL.md +144 -0
  247. package/template/.agent/skills/pipeline-rubrics/SKILL.md +51 -0
  248. package/template/.agent/skills/pipeline-rubrics/references/architecture-rubric.md +19 -0
  249. package/template/.agent/skills/pipeline-rubrics/references/be-rubric.md +21 -0
  250. package/template/.agent/skills/pipeline-rubrics/references/fe-rubric.md +20 -0
  251. package/template/.agent/skills/pipeline-rubrics/references/ia-rubric.md +19 -0
  252. package/template/.agent/skills/pipeline-rubrics/references/scoring.md +28 -0
  253. package/template/.agent/skills/pipeline-rubrics/references/vision-rubric.md +11 -0
  254. package/template/.agent/skills/prd-templates/SKILL.md +88 -0
  255. package/template/.agent/skills/prd-templates/references/architecture-design-template.md +88 -0
  256. package/template/.agent/skills/prd-templates/references/be-spec-template.md +101 -0
  257. package/template/.agent/skills/prd-templates/references/data-placement-template.md +74 -0
  258. package/template/.agent/skills/prd-templates/references/decomposition-templates.md +211 -0
  259. package/template/.agent/skills/prd-templates/references/design-system-decisions.md +198 -0
  260. package/template/.agent/skills/prd-templates/references/engineering-standards-template.md +124 -0
  261. package/template/.agent/skills/prd-templates/references/fe-classification-procedures.md +47 -0
  262. package/template/.agent/skills/prd-templates/references/fe-spec-template.md +84 -0
  263. package/template/.agent/skills/prd-templates/references/infrastructure-report-template.md +71 -0
  264. package/template/.agent/skills/prd-templates/references/operational-templates.md +116 -0
  265. package/template/.agent/skills/prd-templates/references/placeholder-guard-template.md +21 -0
  266. package/template/.agent/skills/prd-templates/references/surface-model.md +61 -0
  267. package/template/.agent/skills/prd-templates/references/vision-template.md +66 -0
  268. package/template/.agent/skills/prompt-engineer/README.md +659 -0
  269. package/template/.agent/skills/prompt-engineer/SKILL.md +249 -0
  270. package/template/.agent/skills/regex-patterns/SKILL.md +751 -0
  271. package/template/.agent/skills/resolve-ambiguity/SKILL.md +278 -0
  272. package/template/.agent/skills/rest-api-design/SKILL.md +478 -0
  273. package/template/.agent/skills/security-scanning-security-hardening/SKILL.md +231 -0
  274. package/template/.agent/skills/session-continuity/SKILL.md +730 -0
  275. package/template/.agent/skills/session-continuity/protocols/01-session-resumption.md +38 -0
  276. package/template/.agent/skills/session-continuity/protocols/02-progress-generation.md +85 -0
  277. package/template/.agent/skills/session-continuity/protocols/03-progress-update.md +70 -0
  278. package/template/.agent/skills/session-continuity/protocols/04-pattern-extraction.md +60 -0
  279. package/template/.agent/skills/session-continuity/protocols/05-session-close.md +37 -0
  280. package/template/.agent/skills/session-continuity/protocols/06-decision-analysis.md +84 -0
  281. package/template/.agent/skills/session-continuity/protocols/07-spec-pipeline-generation.md +48 -0
  282. package/template/.agent/skills/session-continuity/protocols/08-spec-pipeline-update.md +43 -0
  283. package/template/.agent/skills/session-continuity/protocols/09-parallel-claim.md +122 -0
  284. package/template/.agent/skills/session-continuity/protocols/10-placeholder-verification-gate.md +104 -0
  285. package/template/.agent/skills/session-continuity/protocols/ambiguity-gates.md +48 -0
  286. package/template/.agent/skills/skill-creator/LICENSE.txt +202 -0
  287. package/template/.agent/skills/skill-creator/README.md +270 -0
  288. package/template/.agent/skills/skill-creator/SKILL.md +590 -0
  289. package/template/.agent/skills/skill-creator/references/output-patterns.md +82 -0
  290. package/template/.agent/skills/skill-creator/references/workflows.md +28 -0
  291. package/template/.agent/skills/skill-creator/scripts/init_skill.py +303 -0
  292. package/template/.agent/skills/skill-creator/scripts/package_skill.py +110 -0
  293. package/template/.agent/skills/skill-creator/scripts/quick_validate.py +95 -0
  294. package/template/.agent/skills/spec-writing/SKILL.md +110 -0
  295. package/template/.agent/skills/systematic-debugging/CREATION-LOG.md +119 -0
  296. package/template/.agent/skills/systematic-debugging/SKILL.md +297 -0
  297. package/template/.agent/skills/systematic-debugging/condition-based-waiting-example.ts +158 -0
  298. package/template/.agent/skills/systematic-debugging/condition-based-waiting.md +115 -0
  299. package/template/.agent/skills/systematic-debugging/defense-in-depth.md +122 -0
  300. package/template/.agent/skills/systematic-debugging/find-polluter.sh +63 -0
  301. package/template/.agent/skills/systematic-debugging/root-cause-tracing.md +169 -0
  302. package/template/.agent/skills/systematic-debugging/test-academic.md +14 -0
  303. package/template/.agent/skills/systematic-debugging/test-pressure-1.md +58 -0
  304. package/template/.agent/skills/systematic-debugging/test-pressure-2.md +68 -0
  305. package/template/.agent/skills/systematic-debugging/test-pressure-3.md +69 -0
  306. package/template/.agent/skills/tdd-workflow/SKILL.md +409 -0
  307. package/template/.agent/skills/tech-stack-catalog/SKILL.md +49 -0
  308. package/template/.agent/skills/tech-stack-catalog/references/constraint-questions.md +21 -0
  309. package/template/.agent/skills/tech-stack-catalog/references/dev-tooling-decisions.md +37 -0
  310. package/template/.agent/skills/tech-stack-catalog/references/surface-decision-tables.md +69 -0
  311. package/template/.agent/skills/technical-writer/SKILL.md +242 -0
  312. package/template/.agent/skills/testing-strategist/SKILL.md +932 -0
  313. package/template/.agent/skills/verification-before-completion/SKILL.md +145 -0
  314. package/template/.agent/skills/workflow-automation/SKILL.md +73 -0
  315. package/template/.agent/workflows/audit-ambiguity-execute.md +165 -0
  316. package/template/.agent/workflows/audit-ambiguity-rubrics.md +83 -0
  317. package/template/.agent/workflows/audit-ambiguity.md +64 -0
  318. package/template/.agent/workflows/bootstrap-agents-fill.md +201 -0
  319. package/template/.agent/workflows/bootstrap-agents-provision.md +197 -0
  320. package/template/.agent/workflows/bootstrap-agents.md +66 -0
  321. package/template/.agent/workflows/create-prd-architecture.md +119 -0
  322. package/template/.agent/workflows/create-prd-compile.md +138 -0
  323. package/template/.agent/workflows/create-prd-design-system.md +135 -0
  324. package/template/.agent/workflows/create-prd-security.md +113 -0
  325. package/template/.agent/workflows/create-prd-stack.md +91 -0
  326. package/template/.agent/workflows/create-prd.md +168 -0
  327. package/template/.agent/workflows/decompose-architecture-structure.md +82 -0
  328. package/template/.agent/workflows/decompose-architecture-validate.md +119 -0
  329. package/template/.agent/workflows/decompose-architecture.md +111 -0
  330. package/template/.agent/workflows/evolve-contract.md +98 -0
  331. package/template/.agent/workflows/evolve-feature-cascade.md +140 -0
  332. package/template/.agent/workflows/evolve-feature-classify.md +116 -0
  333. package/template/.agent/workflows/evolve-feature.md +56 -0
  334. package/template/.agent/workflows/ideate-discover.md +144 -0
  335. package/template/.agent/workflows/ideate-extract.md +129 -0
  336. package/template/.agent/workflows/ideate-validate.md +117 -0
  337. package/template/.agent/workflows/ideate.md +113 -0
  338. package/template/.agent/workflows/implement-slice-setup.md +113 -0
  339. package/template/.agent/workflows/implement-slice-tdd.md +198 -0
  340. package/template/.agent/workflows/implement-slice.md +50 -0
  341. package/template/.agent/workflows/plan-phase.md +202 -0
  342. package/template/.agent/workflows/propagate-decision-apply.md +135 -0
  343. package/template/.agent/workflows/propagate-decision-scan.md +147 -0
  344. package/template/.agent/workflows/propagate-decision.md +56 -0
  345. package/template/.agent/workflows/remediate-pipeline-assess.md +138 -0
  346. package/template/.agent/workflows/remediate-pipeline-execute.md +135 -0
  347. package/template/.agent/workflows/remediate-pipeline.md +55 -0
  348. package/template/.agent/workflows/resolve-ambiguity.md +82 -0
  349. package/template/.agent/workflows/sync-kit.md +209 -0
  350. package/template/.agent/workflows/update-architecture-map.md +74 -0
  351. package/template/.agent/workflows/validate-phase.md +219 -0
  352. package/template/.agent/workflows/verify-infrastructure.md +207 -0
  353. package/template/.agent/workflows/write-architecture-spec-deepen.md +139 -0
  354. package/template/.agent/workflows/write-architecture-spec-design.md +202 -0
  355. package/template/.agent/workflows/write-architecture-spec.md +63 -0
  356. package/template/.agent/workflows/write-be-spec-classify.md +165 -0
  357. package/template/.agent/workflows/write-be-spec-write.md +98 -0
  358. package/template/.agent/workflows/write-be-spec.md +76 -0
  359. package/template/.agent/workflows/write-fe-spec-classify.md +170 -0
  360. package/template/.agent/workflows/write-fe-spec-write.md +94 -0
  361. package/template/.agent/workflows/write-fe-spec.md +71 -0
  362. package/template/AGENTS.md +176 -0
  363. package/template/GEMINI.md +177 -0
  364. package/template/docs/README.md +187 -0
  365. package/template/docs/audits/.gitkeep +0 -0
  366. package/template/docs/audits/README.md +10 -0
  367. package/template/docs/plans/.gitkeep +0 -0
  368. package/template/docs/plans/README.md +21 -0
  369. package/template/docs/plans/be/.gitkeep +0 -0
  370. package/template/docs/plans/be/README.md +11 -0
  371. package/template/docs/plans/fe/.gitkeep +0 -0
  372. package/template/docs/plans/fe/README.md +11 -0
  373. package/template/docs/plans/ia/.gitkeep +0 -0
  374. package/template/docs/plans/ia/README.md +17 -0
  375. package/template/docs/plans/ia/deep-dives/.gitkeep +0 -0
  376. package/template/docs/plans/ia/deep-dives/README.md +5 -0
  377. package/template/docs/plans/phases/.gitkeep +0 -0
  378. package/template/docs/plans/phases/README.md +11 -0
@@ -0,0 +1,560 @@
1
+ ---
2
+ name: dependency-auditing
3
+ description: "Dependency security auditing: npm audit, Snyk, Socket.dev, Dependabot, supply chain attack prevention, lockfile integrity, SBOM generation, CVE monitoring, and CI integration for blocking vulnerable dependencies. Use when auditing project dependencies, setting up automated security scanning, or responding to vulnerability alerts."
4
+ version: 1.0.0
5
+ ---
6
+
7
+ # Dependency Security Auditing
8
+
9
+ **Status**: Production Ready
10
+ **Last Updated**: 2026-02-17
11
+ **Dependencies**: None (standalone skill)
12
+
13
+ ---
14
+
15
+ ## Use This Skill When
16
+
17
+ - Auditing project dependencies for known vulnerabilities
18
+ - Setting up automated dependency security scanning in CI/CD
19
+ - Responding to CVE alerts or vulnerability disclosures
20
+ - Evaluating new dependencies before adding them to a project
21
+ - Implementing supply chain security controls
22
+ - Generating Software Bills of Materials (SBOMs)
23
+ - Configuring Dependabot, Renovate, or similar update tools
24
+
25
+ ## Do Not Use This Skill When
26
+
27
+ - You need application-level security patterns (use owasp-web-security skill)
28
+ - You need to configure CSP or CORS headers (use csp-cors-headers skill)
29
+ - You need cryptographic implementation guidance (use crypto-patterns skill)
30
+
31
+ ---
32
+
33
+ ## npm audit
34
+
35
+ Built into npm. Checks installed packages against the npm advisory database.
36
+
37
+ ### Running Audits
38
+
39
+ ```bash
40
+ # Basic audit -- shows all known vulnerabilities
41
+ npm audit
42
+
43
+ # JSON output for programmatic processing
44
+ npm audit --json
45
+
46
+ # Only show production dependencies (skip devDependencies)
47
+ npm audit --omit=dev
48
+
49
+ # Automatically fix vulnerabilities where possible
50
+ npm audit fix
51
+
52
+ # Force major version bumps if needed (review changes carefully)
53
+ npm audit fix --force
54
+
55
+ # Audit specific severity levels
56
+ npm audit --audit-level=high
57
+ ```
58
+
59
+ ### CI Integration
60
+
61
+ ```yaml
62
+ # GitHub Actions -- fail build on high/critical vulnerabilities
63
+ name: Security Audit
64
+ on: [push, pull_request]
65
+
66
+ jobs:
67
+ audit:
68
+ runs-on: ubuntu-latest
69
+ steps:
70
+ - uses: actions/checkout@v4
71
+ - uses: actions/setup-node@v4
72
+ with:
73
+ node-version: 20
74
+ - run: npm ci
75
+ - run: npm audit --audit-level=high
76
+ ```
77
+
78
+ ### Understanding Audit Output
79
+
80
+ ```
81
+ # Example output
82
+ high Prototype Pollution in lodash
83
+ Package lodash
84
+ Patched in >=4.17.21
85
+ Dependency of my-app > old-lib > lodash
86
+ Path my-app > old-lib > lodash
87
+ More info https://github.com/advisories/GHSA-xxxx
88
+ ```
89
+
90
+ Key fields:
91
+ - **Severity**: critical, high, moderate, low
92
+ - **Patched in**: Version range that includes the fix
93
+ - **Path**: The dependency chain that pulls in the vulnerable package
94
+ - **More info**: Link to the full advisory
95
+
96
+ ### Handling Audit Results
97
+
98
+ ```typescript
99
+ // scripts/audit-check.ts -- custom audit processing
100
+ import { execSync } from "child_process";
101
+
102
+ interface AuditResult {
103
+ vulnerabilities: Record<string, {
104
+ severity: "critical" | "high" | "moderate" | "low";
105
+ via: string[];
106
+ fixAvailable: boolean;
107
+ }>;
108
+ }
109
+
110
+ function checkAudit(): void {
111
+ try {
112
+ execSync("npm audit --json", { encoding: "utf8" });
113
+ console.log("No vulnerabilities found.");
114
+ } catch (error: any) {
115
+ const result: AuditResult = JSON.parse(error.stdout);
116
+ const critical = Object.entries(result.vulnerabilities)
117
+ .filter(([, v]) => v.severity === "critical" || v.severity === "high");
118
+
119
+ if (critical.length > 0) {
120
+ console.error(`Found ${critical.length} high/critical vulnerabilities:`);
121
+ for (const [name, info] of critical) {
122
+ console.error(` - ${name} (${info.severity}), fix available: ${info.fixAvailable}`);
123
+ }
124
+ process.exit(1);
125
+ }
126
+
127
+ console.warn("Only moderate/low vulnerabilities found. Proceeding.");
128
+ }
129
+ }
130
+
131
+ checkAudit();
132
+ ```
133
+
134
+ ---
135
+
136
+ ## Snyk
137
+
138
+ Commercial vulnerability scanner with a free tier. Provides deeper analysis
139
+ than npm audit, including license compliance and fix PRs.
140
+
141
+ ### Setup
142
+
143
+ ```bash
144
+ # Install Snyk CLI
145
+ npm install -g snyk
146
+
147
+ # Authenticate
148
+ snyk auth
149
+
150
+ # Test project for vulnerabilities
151
+ snyk test
152
+
153
+ # Monitor project (creates a snapshot in Snyk dashboard)
154
+ snyk monitor
155
+
156
+ # Test a specific package before installing
157
+ snyk test lodash@4.17.20
158
+
159
+ # Test only production dependencies
160
+ snyk test --production
161
+
162
+ # Output as JSON
163
+ snyk test --json
164
+
165
+ # Set severity threshold
166
+ snyk test --severity-threshold=high
167
+ ```
168
+
169
+ ### CI Integration
170
+
171
+ ```yaml
172
+ # GitHub Actions with Snyk
173
+ name: Snyk Security
174
+ on: [push, pull_request]
175
+
176
+ jobs:
177
+ snyk:
178
+ runs-on: ubuntu-latest
179
+ steps:
180
+ - uses: actions/checkout@v4
181
+ - uses: snyk/actions/node@master
182
+ env:
183
+ SNYK_TOKEN: ${{ secrets.SNYK_TOKEN }}
184
+ with:
185
+ args: --severity-threshold=high
186
+ ```
187
+
188
+ ### Snyk Configuration
189
+
190
+ ```yaml
191
+ # .snyk file -- policy configuration
192
+ version: v1.25.0
193
+ ignore:
194
+ SNYK-JS-LODASH-590103:
195
+ - "*":
196
+ reason: "Not exploitable in our usage context"
197
+ expires: "2026-06-01T00:00:00.000Z"
198
+ patch: {}
199
+ ```
200
+
201
+ ---
202
+
203
+ ## Socket.dev
204
+
205
+ Focuses on supply chain security -- detects malicious packages, typosquatting,
206
+ install scripts, and suspicious behavior patterns that traditional vulnerability
207
+ scanners miss.
208
+
209
+ ### What Socket Detects
210
+
211
+ | Threat | Description | Example |
212
+ |--------|-------------|---------|
213
+ | Typosquatting | Packages with names similar to popular ones | `lodahs` instead of `lodash` |
214
+ | Install scripts | Packages that run code during `npm install` | `postinstall` scripts that exfiltrate env vars |
215
+ | Obfuscated code | Minified or encoded code in published packages | Base64-encoded payloads |
216
+ | Network access | Packages that make HTTP requests | Telemetry or data exfiltration |
217
+ | Shell access | Packages that spawn shell commands | `child_process.exec()` calls |
218
+ | Environment access | Packages that read environment variables | Stealing API keys from `process.env` |
219
+ | Filesystem access | Packages that read/write unexpected files | Reading SSH keys or credentials |
220
+
221
+ ### GitHub Integration
222
+
223
+ Socket.dev provides a GitHub App that automatically comments on PRs when new
224
+ dependencies are added. Install from: https://github.com/apps/socket-security
225
+
226
+ ### Manual Checks
227
+
228
+ ```bash
229
+ # Check a specific package on socket.dev
230
+ # Visit: https://socket.dev/npm/package/<package-name>
231
+
232
+ # Review before installing
233
+ # Look for:
234
+ # - Number of maintainers (single maintainer = higher risk)
235
+ # - Recent ownership transfers
236
+ # - Install scripts
237
+ # - Network/filesystem access patterns
238
+ ```
239
+
240
+ ---
241
+
242
+ ## GitHub Dependabot
243
+
244
+ Automated dependency update PRs with vulnerability alerts.
245
+
246
+ ### Configuration
247
+
248
+ ```yaml
249
+ # .github/dependabot.yml
250
+ version: 2
251
+ updates:
252
+ # npm dependencies
253
+ - package-ecosystem: "npm"
254
+ directory: "/"
255
+ schedule:
256
+ interval: "weekly"
257
+ day: "monday"
258
+ time: "09:00"
259
+ timezone: "America/New_York"
260
+ open-pull-requests-limit: 10
261
+ reviewers:
262
+ - "security-team"
263
+ labels:
264
+ - "dependencies"
265
+ - "security"
266
+ # Group minor and patch updates together
267
+ groups:
268
+ production-dependencies:
269
+ dependency-type: "production"
270
+ update-types:
271
+ - "minor"
272
+ - "patch"
273
+ dev-dependencies:
274
+ dependency-type: "development"
275
+ update-types:
276
+ - "minor"
277
+ - "patch"
278
+ # Ignore specific packages
279
+ ignore:
280
+ - dependency-name: "aws-sdk"
281
+ update-types: ["version-update:semver-major"]
282
+ # Allow only specific update types
283
+ allow:
284
+ - dependency-type: "direct"
285
+
286
+ # GitHub Actions
287
+ - package-ecosystem: "github-actions"
288
+ directory: "/"
289
+ schedule:
290
+ interval: "weekly"
291
+
292
+ # Docker
293
+ - package-ecosystem: "docker"
294
+ directory: "/"
295
+ schedule:
296
+ interval: "weekly"
297
+ ```
298
+
299
+ ### Dependabot Security Updates vs Version Updates
300
+
301
+ | Feature | Security Updates | Version Updates |
302
+ |---------|-----------------|-----------------|
303
+ | Triggered by | CVE advisory | Scheduled check |
304
+ | Auto-enabled | Yes (for public repos) | No (requires config) |
305
+ | Scope | Vulnerable packages only | All outdated packages |
306
+ | Priority | Immediate | Scheduled |
307
+
308
+ ---
309
+
310
+ ## Supply Chain Attack Prevention
311
+
312
+ ### Dependency Confusion
313
+
314
+ Attackers publish public packages with the same name as internal/private packages.
315
+ npm resolves the public registry version, pulling in malicious code.
316
+
317
+ ```json
318
+ // .npmrc -- prevent dependency confusion
319
+ // Scope your private packages and use a private registry
320
+ @mycompany:registry=https://npm.mycompany.com/
321
+ //npm.mycompany.com/:_authToken=${NPM_TOKEN}
322
+
323
+ // Disable public fallback for scoped packages
324
+ @mycompany:always-auth=true
325
+ ```
326
+
327
+ ```json
328
+ // package.json -- use scoped packages for internal code
329
+ {
330
+ "name": "@mycompany/web-app",
331
+ "dependencies": {
332
+ "@mycompany/shared-utils": "^1.0.0",
333
+ "@mycompany/auth-lib": "^2.0.0"
334
+ }
335
+ }
336
+ ```
337
+
338
+ ### Typosquatting Prevention
339
+
340
+ ```bash
341
+ # Before installing any package, verify:
342
+ # 1. Package name is spelled correctly
343
+ # 2. Package has significant download numbers
344
+ # 3. Package is maintained by expected author/org
345
+ # 4. Package has a public repository linked
346
+
347
+ # Use npx to check package info before installing
348
+ npm info <package-name>
349
+
350
+ # Check for known typosquats
351
+ # Visit: https://socket.dev/npm/package/<package-name>
352
+ ```
353
+
354
+ ### Lockfile Integrity
355
+
356
+ ```bash
357
+ # ALWAYS use npm ci in CI/CD (respects lockfile exactly)
358
+ npm ci
359
+
360
+ # NEVER use npm install in CI/CD (may modify lockfile)
361
+ # npm install <-- DO NOT USE IN CI
362
+
363
+ # Verify lockfile integrity
364
+ npm audit signatures
365
+
366
+ # Git hook to prevent unlocked dependencies
367
+ # .husky/pre-commit
368
+ npm ci --ignore-scripts && git diff --exit-code package-lock.json
369
+ ```
370
+
371
+ ```yaml
372
+ # CI pipeline -- verify lockfile has not been tampered with
373
+ - name: Verify lockfile integrity
374
+ run: |
375
+ npm ci
376
+ git diff --exit-code package-lock.json || (echo "Lockfile was modified unexpectedly" && exit 1)
377
+ ```
378
+
379
+ ### Pinning Strategies
380
+
381
+ | Strategy | Syntax | Pros | Cons |
382
+ |----------|--------|------|------|
383
+ | Exact pinning | `"lodash": "4.17.21"` | Maximum reproducibility | Manual updates needed |
384
+ | Tilde (patch) | `"lodash": "~4.17.21"` | Auto-patch updates | Minor versions skipped |
385
+ | Caret (minor) | `"lodash": "^4.17.21"` | Auto-minor+patch updates | More risk than pinning |
386
+ | Lockfile-only | `"lodash": "^4.17.21"` + lockfile | Flexibility + reproducibility | Requires `npm ci` discipline |
387
+
388
+ **Recommendation**: Use caret ranges in `package.json` with strict lockfile
389
+ enforcement (`npm ci` in CI). This gives you Dependabot-friendly updates with
390
+ reproducible builds.
391
+
392
+ ---
393
+
394
+ ## Software Bill of Materials (SBOM)
395
+
396
+ An SBOM is a complete inventory of all software components in your application.
397
+ Required for supply chain transparency and some compliance frameworks.
398
+
399
+ ### Generating SBOMs
400
+
401
+ ```bash
402
+ # CycloneDX format (recommended)
403
+ npx @cyclonedx/cyclonedx-npm --output-file sbom.json
404
+
405
+ # SPDX format
406
+ npx spdx-sbom-generator -o sbom-spdx.json
407
+
408
+ # GitHub automatically generates SBOMs
409
+ # Settings > Code security and analysis > Dependency graph
410
+ ```
411
+
412
+ ### SBOM in CI/CD
413
+
414
+ ```yaml
415
+ # Generate and upload SBOM as build artifact
416
+ - name: Generate SBOM
417
+ run: npx @cyclonedx/cyclonedx-npm --output-file sbom.json
418
+
419
+ - name: Upload SBOM
420
+ uses: actions/upload-artifact@v4
421
+ with:
422
+ name: sbom
423
+ path: sbom.json
424
+ retention-days: 90
425
+ ```
426
+
427
+ ---
428
+
429
+ ## License Compliance
430
+
431
+ ### SPDX License Identifiers
432
+
433
+ | License | SPDX ID | Commercial Use | Copyleft |
434
+ |---------|---------|----------------|----------|
435
+ | MIT | MIT | Yes | No |
436
+ | Apache 2.0 | Apache-2.0 | Yes | No |
437
+ | BSD 2-Clause | BSD-2-Clause | Yes | No |
438
+ | ISC | ISC | Yes | No |
439
+ | GPL 3.0 | GPL-3.0-only | Yes (with conditions) | Yes (strong) |
440
+ | LGPL 3.0 | LGPL-3.0-only | Yes | Yes (weak) |
441
+ | AGPL 3.0 | AGPL-3.0-only | Yes (with conditions) | Yes (network) |
442
+ | Unlicense | Unlicense | Yes | No |
443
+
444
+ ### Checking Licenses
445
+
446
+ ```bash
447
+ # Check all dependency licenses
448
+ npx license-checker --summary
449
+
450
+ # Check for problematic licenses
451
+ npx license-checker --failOn "GPL-3.0-only;AGPL-3.0-only"
452
+
453
+ # Output as CSV for review
454
+ npx license-checker --csv --out licenses.csv
455
+
456
+ # Check specific production dependencies only
457
+ npx license-checker --production --summary
458
+ ```
459
+
460
+ ```yaml
461
+ # CI integration -- block copyleft licenses
462
+ - name: License Check
463
+ run: npx license-checker --production --failOn "GPL-3.0-only;AGPL-3.0-only;AGPL-3.0-or-later"
464
+ ```
465
+
466
+ ---
467
+
468
+ ## CVE Database Monitoring
469
+
470
+ ### Key Databases
471
+
472
+ | Database | URL | Scope |
473
+ |----------|-----|-------|
474
+ | NVD (NIST) | https://nvd.nist.gov/ | All software |
475
+ | GitHub Advisory Database | https://github.com/advisories | Open source packages |
476
+ | npm Advisories | https://www.npmjs.com/advisories | npm packages |
477
+ | Snyk Vulnerability DB | https://snyk.io/vuln/ | Multi-ecosystem |
478
+ | OSV (Google) | https://osv.dev/ | Open source |
479
+
480
+ ### Monitoring Setup
481
+
482
+ ```yaml
483
+ # GitHub Actions -- scheduled vulnerability scan
484
+ name: Scheduled Security Scan
485
+ on:
486
+ schedule:
487
+ - cron: "0 8 * * 1-5" # Weekdays at 8 AM UTC
488
+ workflow_dispatch: {}
489
+
490
+ jobs:
491
+ scan:
492
+ runs-on: ubuntu-latest
493
+ steps:
494
+ - uses: actions/checkout@v4
495
+ - uses: actions/setup-node@v4
496
+ with:
497
+ node-version: 20
498
+ - run: npm ci
499
+ - run: npm audit --audit-level=high
500
+ - name: Notify on failure
501
+ if: failure()
502
+ uses: slackapi/slack-github-action@v1
503
+ with:
504
+ payload: |
505
+ {
506
+ "text": "Security audit failed. Check: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
507
+ }
508
+ env:
509
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
510
+ ```
511
+
512
+ ---
513
+
514
+ ## Pre-Install Evaluation Checklist
515
+
516
+ Before adding any new dependency, evaluate:
517
+
518
+ - [ ] Is the package name spelled correctly? (typosquatting check)
519
+ - [ ] Does it have significant weekly downloads? (>1000 for utilities)
520
+ - [ ] Is it actively maintained? (commits in last 6 months)
521
+ - [ ] Does it have multiple maintainers? (bus factor)
522
+ - [ ] Is the license compatible with your project?
523
+ - [ ] Does it have install scripts? (check `scripts` in its package.json)
524
+ - [ ] What are its transitive dependencies? (`npm info <pkg> dependencies`)
525
+ - [ ] Has it had recent security advisories?
526
+ - [ ] Is there a lighter alternative? (fewer deps = smaller attack surface)
527
+ - [ ] Can you vendor it instead? (copy source for small utilities)
528
+
529
+ ---
530
+
531
+ ## Anti-Patterns
532
+
533
+ | Anti-Pattern | Risk | Fix |
534
+ |-------------|------|-----|
535
+ | `npm install` in CI | Non-deterministic builds | Always use `npm ci` |
536
+ | Ignoring audit warnings | Known vulnerabilities in production | Fix or explicitly acknowledge with timeline |
537
+ | No lockfile in repo | Different installs on different machines | Commit package-lock.json |
538
+ | Star (`*`) version ranges | Completely unpinned dependencies | Use caret (`^`) or exact versions |
539
+ | No scheduled scans | New CVEs go unnoticed | Weekly automated audits |
540
+ | Blind `npm audit fix --force` | May break functionality | Review each fix individually |
541
+ | No SBOM generation | No supply chain visibility | Generate and archive SBOMs |
542
+ | Ignoring license compliance | Legal liability | Automated license checking in CI |
543
+ | Installing from tarballs/URLs | Bypasses registry integrity | Use registry packages only |
544
+ | No private registry for internal packages | Dependency confusion risk | Scope and configure private registry |
545
+
546
+ ---
547
+
548
+ ## References
549
+
550
+ - **npm audit Documentation**: https://docs.npmjs.com/cli/commands/npm-audit
551
+ - **Snyk Documentation**: https://docs.snyk.io/
552
+ - **Socket.dev**: https://socket.dev/
553
+ - **Dependabot Configuration**: https://docs.github.com/en/code-security/dependabot
554
+ - **CycloneDX SBOM Specification**: https://cyclonedx.org/
555
+ - **SPDX License List**: https://spdx.org/licenses/
556
+ - **OpenSSF Scorecard**: https://securityscorecards.dev/
557
+
558
+ ---
559
+
560
+ **Last verified**: 2026-02-17 | **Skill version**: 1.0.0