T08 · Insecure Dependencies
- Location
README.md:15- Finding
Unpinned Third-Party Packages and Mutable Repository Sources
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a visible documentation-only skill for Zod schema testing, with install and dependency commands that users should review and pin before running.
Before installing, prefer pinned versions or an immutable commit and consider a project-local install instead of the documented global command. If using the dependency and CI examples, review packages first, commit lockfiles, and keep generated snapshots and git-diff checks limited to the intended project paths.
README.md:15Unpinned Third-Party Packages and Mutable Repository Sources
The README instructs users to run npx skills add anivar/zod-testing -g without pinning the package/tool version. Because npx resolves and executes code from the registry at install time, users may receive a newer or compromised release than the author originally tested, which creates a supply-chain risk even though the content here appears to be ordinary documentation.
The full-URL install example still relies on npx skills add without a pinned version for the skills tool and does not pin the GitHub repository to an immutable commit. That means execution and fetched content can drift over time or be replaced if the upstream package or repository is compromised.
This ecosystem entry advertises npx skills add anivar/jest-skill -g, which again executes an unpinned installer path. Even in a README link table, this normalizes running remote code without version constraints, exposing users to supply-chain compromise or unexpected behavior from future releases.
The msw-skill install command uses npx skills add without version pinning, so users may execute whatever package version is current at install time. This is a common but real documentation-driven supply-chain risk, especially because readers may copy-paste the command directly.
The redux-saga-testing entry repeats the same unpinned npx skills add pattern. Since npx can download and run packages dynamically, users are exposed to any malicious or breaking changes introduced upstream after the README was published.
The zod-skill ecosystem command is another unpinned npx installation example, carrying the same risk of executing altered or compromised upstream code. The surrounding context is a developer skill README, so copy-paste execution by users is plausible and increases practical exposure.
The redux-saga-skill install line documents execution through an unversioned npx skills command. While likely included for convenience rather than abuse, it still creates a supply-chain exposure because the exact code executed is not fixed.
The contributor-codebase-analyzer entry also uses an unpinned npx skills add command, which can fetch and execute changing remote content. In this skill-distribution context, the issue is more dangerous than a passive reference because the README directly instructs execution of a remote installer.
The skill introduces child_process.execSync to run a shell grep command as part of testing guidance, which expands the skill from schema testing into arbitrary command execution. Even though the command string is static in the example, normalizing shell execution in docs increases the chance that users adapt it with variable input or run it in sensitive CI environments, creating command-injection and environment-abuse risk.
npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.
The manifest says the skill triggers on 'test files for Zod schemas' and 'schema testing patterns,' which are not tightly bounded and do not include exclusion conditions or negative examples. Those phrases could cause unintended invocation in broadly relevant testing contexts beyond the intended scope.
The manifest emphasizes Zod testing patterns, including snapshot testing with toJSONSchema(), but this section expands into filesystem mutation and CI git-diff workflow automation. While related, exporting files and enforcing CI repository state are broader operational capabilities not clearly justified by the stated purpose of a testing-pattern skill.