Dependency Guard
Use this skill when dependency changes are in scope for npm, pnpm, yarn, Python packages, or other package ecosystems supported by Socket.
Prerequisites
- The
socketCLI must be installed and onPATH(npm install -g socket). - Authentication is required for CLI-based reviews. See the Authentication section below.
Workflow
- Confirm the exact dependency change being proposed.
- Check whether the feature can be implemented with the standard library or an existing project dependency.
- Prefer MCP
depscoreif the host agent exposes it. - Otherwise run
scripts/check_dependency.sh <ecosystem> <package> [version]. - Apply the policy in
references/policy.md. - Apply the decision rules in
references/decision-matrix.md. - Before making the change, report:
- why the package is needed
- whether an existing alternative exists
- what Socket reported
- whether install scripts, risky capabilities, or transitive risk are present
- If the decision is
allow_with_warning, present the warning clearly before making the change. If the decision isblock_pending_human_revieworblock, stop and propose either:- a safer dependency
- a no-dependency implementation
- explicit human review
Authentication
Three authentication paths are supported, in order of preference:
- MCP
depscore— no local credentials needed; works through the host agent's MCP connection. socket login— interactive CLI login; stores auth locally.- If your CLI supports it, pressing Enter at the token prompt uses limited public access.
- To use a private token, paste it at the prompt instead.
SOCKET_SECURITY_API_TOKENenv var — set this for CI or headless environments.
Security: Never paste private tokens into agent prompts. Use the env var or
socket logininstead.
CI note: GitHub Actions workflows use
SOCKET_SECURITY_API_KEY(a separate GitHub-integration key), notSOCKET_SECURITY_API_TOKEN. Seeexamples/github/dependency-guard.yml.
Reporting Contract
Use the short response template in references/examples.md when presenting the package review to the user.
References
- Read
references/policy.mdfor the canonical guardrail. - Read
references/decision-matrix.mdfor allow/block criteria. - Read
references/examples.mdfor user-facing review examples.
Notes
- Keep
SKILL.mdlean; do not duplicate the full policy here. - OpenClaw and ClawHub expect
metadatato be a single-line JSON object in frontmatter, so keep the OpenClaw metadata compact. - The
versionfield in frontmatter is the single source of truth; usepublish_clawhub.sh --bump patch|minor|majorto auto-increment. - Do not assume system-wide wrapper enforcement or shell-completion setup is desirable; keep CLI setup minimal.
- If Socket tooling is unavailable, require human review before adding the dependency.
- Review manifest and lockfile changes together.