T08 · Insecure Dependencies
- Location
SKILL.md:400- Finding
Unpinned Global npm Package Installation Creates Supply-Chain Risk
- Content
View full analysis
- Remediation
View remediation
\ @commitlint/config-conventional@ \ husky@ \ semantic-release@ \ conventional-changelog-cli@ ``` 2. Pin exact reviewed versions rather than mutable version ranges. 3. Commit `package-lock.json` and use `npm ci` so dependency resolution is reproducible. 4. Review package provenance, maintainers, lifecycle scripts, and transitive dependencies before adoption. 5. Use `npm audit`, dependency monitoring, and lockfile-integrity checks in CI. 6. Where compatible with the selected packages, use `npm ci --ignore-scripts` and explicitly run only required, reviewed setup steps. 7. Invoke local binaries through package scripts or `npx --no-install` instead of installing global executables. 8. Clearly mark these integrations as optional and state that the core Skill requires only Git. 9. Warn users not to run npm installation commands with `sudo` or another elevated account. ]]>
