Skip to content

Guide · Agent skill

How to use the Dependency Doctor agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

Dependency Doctor is an agent skill that inspects one dependency file in your project, such as requirements.txt, pyproject.toml or package.json, and flags direct, surface-level problems. It explains each finding in plain language and proposes a small fix that you approve before anything is edited. This guide covers what an agent skill is, how to install this one, how to trigger it with ordinary requests, and what it can and cannot tell you.

Dependency DoctorShubhamsaboo/awesome-llm-apps · Apache-2.0

Quick start

  1. 1Download and unzip the skill. Download the ZIP from this page and unzip it, which gives you a dependency-doctor folder.
  2. 2Place it where your agent can see it. Move the folder to ~/.claude/skills/ for all projects, or to .claude/skills/ inside one project. Alternatively, upload it in the Claude apps under Settings, then Capabilities, then Skills.
  3. 3Make sure Python 3.11 or newer is installed. The offline script uses only the Python standard library, so no extra packages are needed.
  4. 4Ask for a check by file name. Tell the agent something like 'check my requirements.txt for dependency problems' and name the file.
  5. 5Read the findings. Review the high-severity items first, along with the line, the reason and the suggested fix.
  6. 6Approve or decline each fix. The agent waits for your approval before editing. After an approved change, the offline check and your existing install or test command are rerun.

What is an agent skill, and what does Dependency Doctor make the agent do?

An agent skill is a folder containing instructions and sometimes scripts that an AI agent can load when a request matches the skill's purpose. Dependency Doctor's SKILL.md tells the agent to inspect one dependency manifest on your machine for direct, surface-level footguns, then explain the results.

The checks cover Python standard-library names published as packages, known backports that should not be installed on supported Python versions, dependencies with no usable version constraint, repeated package entries, and conflicting exact pins for the same package. For package.json, only the unpinned and repeated-entry checks apply.

Install Dependency Doctor with a ZIP or the Claude apps

Download the ZIP of the skill from this page and unzip it. To make it available across all your projects, place the unzipped folder in ~/.claude/skills/. To make it available only inside one project, place it in that project's .claude/skills/ folder.

If you use the Claude apps, you can instead upload the skill under Settings, then Capabilities, then Skills.

  • Personal: ~/.claude/skills/dependency-doctor
  • Single project: .claude/skills/dependency-doctor inside your project folder

Check what you need before running it

The offline diagnosis runs scripts/dep_doctor.py, which uses only the Python standard library. You need Python 3.11 or newer. The default run is fully offline and reads only the manifest you point it at.

The optional yank check sends package names and exact pinned versions to pypi.org. It needs network access to that one site, and the agent will ask your permission first. No API keys or accounts are required.

  • Python 3.11 or newer
  • No API keys or accounts
  • Network access to pypi.org only if you approve the --online check

Trigger the skill with natural requests

You do not need special syntax. Name the file you want checked, and describe the problem in your own words. The skill is meant to run on a path you choose, so if you do not name a file and several exist, the agent will ask which one to inspect. It will not sweep your repository or edit anything just because the skill was triggered.

  • Check my requirements.txt for dependency problems.
  • Why won't my dependencies install? Do a dependency autopsy on pyproject.toml.
  • Look at package.json for stale or duplicated pins.
  • Is anything wrong with the dependencies in this project?

Run the offline diagnosis yourself

The agent runs the script for you, but you can run it directly from the skill directory. The --json flag returns a structured report with a file path, a list of findings each with severity, kind, package, line, why and fix, and a summary that includes whether online mode was used.

python3 scripts/dep_doctor.py /path/to/requirements.txt --json

Add the optional PyPI yank check only when you approve it

The --online option checks PyPI for exact Python releases where every file is marked yanked. It reports a release only in that case. The agent must ask for permission before enabling it, even if you asked for an offline diagnosis earlier. If the network check fails, that failure is reported as a low-severity finding and the offline results still appear.

python3 scripts/dep_doctor.py /path/to/requirements.txt --json --online

Review findings and approve fixes

Findings are presented from high to medium to low severity. For each one, the agent names the package and source line, explains what can break, and suggests a fix. The skill does not call every range a conflict. Conflicting constraints are reported only when exact pins disagree, and compatible constraints split across lines are treated as duplicates to combine.

The agent offers edits but waits for your approval before changing the manifest. After an approved edit, it reruns the offline diagnosis and your project's existing install or test command. It does not add a CI gate.

  • Remove standard-library packages from supported Python projects
  • Remove obsolete backports, or add a Python-version marker if an old runtime needs one
  • Replace an unpinned dependency with an exact pin after checking the installed version
  • Keep one entry for duplicates and combine compatible constraints
  • Replace a yanked pin with a tested, non-yanked release

What people use it for

  • Sanity-checking a requirements.txt before debugging a failed install
  • Cleaning up stale or duplicated pins in an old Python or Node project
  • Removing standard-library names, such as pathlib, that were accidentally added as packages
  • Getting a quick local, offline first pass before running a heavier audit

Frequently asked questions

How do I install the Dependency Doctor agent skill?

Download the ZIP from this page and unzip it. Place the folder in ~/.claude/skills/ for all your projects, or in a project's .claude/skills/ folder for one project. You can also upload it in the Claude apps under Settings, then Capabilities, then Skills.

What does Dependency Doctor require?

It requires Python 3.11 or newer to run scripts/dep_doctor.py. The offline check needs no network access, and no API keys or accounts are needed. Network access to pypi.org is used only if you approve the optional --online yank check.

Is Dependency Doctor free to use?

The source material for this page does not state pricing. It is published under the Apache-2.0 licence, which is listed on the skill's page.

Does Dependency Doctor find security vulnerabilities?

No. It does not perform CVE auditing. For vulnerability coverage, use pip-audit, npm audit, or your approved security scanner.

Why won't my pip or uv install work, and can this skill fix it?

This skill does not diagnose failed pip or uv resolutions in depth. It checks the single manifest for direct, surface-level problems. A clean report is not a full dependency resolver check, so use it as a first pass before deeper debugging.

Can I run Dependency Doctor in CI?

It is designed as a user-invoked local tool for one file you choose. It only sees the file you point it at, so it is not intended for repository-wide policy enforcement or CI gates.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Dependency Doctor suits Python or Node developers who want a quick, local, offline check of one dependency file before digging into an install failure, and maintainers tidying old pins. It is not the right tool for CVE scanning, deep resolver debugging, or enforcing policy across a repository, so use pip-audit, npm audit or your approved scanner for those jobs.

Download the skill