dependency-confusion

Detect dependency confusion exposure by analyzing package names and registry resolution.

11|4|Updated Jun 7, 2026
One-click install
npx skills add https://github.com/sayseven7/frameseven --skill dependency-confusion-sayseven7
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dependency-confusion
Source: https://github.com/sayseven7/frameseven/tree/main/internal/mcp/skills/dependency-confusion
Command: npx skills add https://github.com/sayseven7/frameseven --skill dependency-confusion-sayseven7

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Dependency confusion can let public packages override internal ones and run attacker-controlled install scripts during builds or developer installs. This Skill helps you identify that risk before it becomes a supply-chain incident.

Core Features & Use Cases

  • Reviews manifests and dependency naming patterns for package collisions across private and public registries.
  • Evaluates ecosystem-specific risks in npm, pip, RubyGems, Maven, Composer, and container image workflows.
  • Guides safe, authorized testing with callback-only proof-of-concept checks and defensive remediation such as scoped packages and lockfiles.
  • Use it when auditing CI pipelines, third-party build systems, or repos that may leak internal package names.

Quick Start

Use the dependency-confusion skill to inspect the target manifests and registry settings for squattable internal package names, then recommend a safe callback-only proof of concept if the environment is explicitly authorized.

Frequently Asked Questions about dependency-confusion

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What is dependency confusion and how does it compromise a software supply chain?

Dependency confusion is a supply chain attack where public packages override internal ones, executing attacker-controlled install scripts during builds. It exploits package registry resolution to run malicious code in CI pipelines or developer environments.

How do I detect squattable internal package names in npm or pip manifests?

You can detect squattable package names by analyzing manifests, lockfiles, and registry-order settings for collisions across private and public registries. This process evaluates package naming patterns to identify internal names exposed in public registries.

Can I audit CI pipelines for dependency confusion risks across multiple ecosystems?

Yes, you can audit CI pipelines for dependency confusion across npm, pip, RubyGems, Maven, Composer, and Docker workflows. The assessment inspects manifest files, registry resolution paths, and version selection logic during pipeline reviews.

How do I safely test for dependency confusion vulnerabilities without disrupting builds?

You can safely test for dependency confusion by using callback-only proof-of-concept checks that verify exposure without destructive behavior. This authorized testing method confirms if internal package names are squattable without executing harmful payloads.

Does dependency confusion detection require lockfile and registry-order assessment?

Yes, lockfile and registry-order assessment is required to accurately detect dependency confusion exposure. Evaluating package version selection paths and registry resolution settings identifies where public packages can override internal dependencies.

What are the limitations of using dependency confusion detection for supply chain security?

Detection requires authorized environments for proof-of-concept validation and cannot remediate risks autonomously. It identifies squattable packages and recommends defensive measures like scoped packages and lockfiles, but does not enforce registry configuration changes.