T08 · Insecure Dependencies
- Location
README.md:17- Finding
Unpinned Third-Party Package Execution in Installation Instructions
- Content
View full analysis
Vulnerability Details
File Location:
README.md, lines 17-34
Vulnerability Type: Unpinned third-party dependency execution and mutable supply-chain source
Risk Level: MediumVulnerable Code
markdown The [skills CLI](https://github.com/vercel-labs/skills) is the standard package manager for the open agent skills ecosystem. It works with Claude Code, Cursor, Codex CLI, and [35+ other agents](https://skills.sh). ```bash # Install to your current project npx skills add ZhangHanDong/agent-estimation # Install globally (available across all projects) npx skills add ZhangHanDong/agent-estimation -g # Install for a specific agent npx skills add ZhangHanDong/agent-estimation -a claude-code # Non-interactive npx skills add ZhangHanDong/agent-estimation -g -a claude-code -ytext ### Technical Analysis The installation instructions invoke `npx skills` without specifying an exact package version or integrity digest. Depending on local npm behavior and cache state, `npx` can retrieve the currently published version of the `skills` package and execute its package code with the invoking user's privileges. The CLI subsequently retrieves Skill content from the mutable personal GitHub repository `ZhangHanDong/agent-estimation`. Neither the CLI package nor the Skill source is pinned to a reviewed immutable version or commit. Consequently, the code and instructions executed or installed at a later date may differ from the content reviewed during this audit. The global (`-g`) and non-interactive (`-y`) variants increase exposure. Global installation can make remotely retrieved Skill instructions available across projects, while `-y` removes an interactive confirmation opportunity. The project itself contains no executable scripts, credential access, persistence mechanism, or malicious payload; the risk arises specifically from the installation process and its mutable third-party dependencies. The hyperli ...[truncated 1819 chars]- Remediation
View remediation
Remediation Suggestions
- Pin the CLI to an exact reviewed version, for example
npx skills@<reviewed-version>, rather than resolving the latest mutable release. - Verify and document the expected npm package publisher, repository, and package identity to reduce dependency-confusion and package-impersonation risk.
- Pin the Skill source to an immutable Git commit or signed release instead of installing directly from a mutable repository branch.
- Where supported, verify package integrity using a lockfile, npm integrity metadata, release signatures, or published checksums.
- Recommend project-local installation by default. Present global installation as an optional action with an explicit explanation of its broader scope.
- Avoid recommending
-yin the primary installation path so users retain an opportunity to inspect and confirm the operation. - Instruct users to inspect the downloaded
SKILL.mdand any scripts before activation, particularly when installing from a personal repository. - Document that installation commands should not be run with
sudoor another elevated account.
- Pin the CLI to an exact reviewed version, for example
