adding-dependencies — Claude Code skill: dependency checks and setup
This skill helps decide whether a project needs a dependency and how to assess and update it. Use it before adding a package, SDK, or GitHub Action.
npx skills add riekelt/principal-engineer --skill adding-dependencies -a claude-codeWhat adding-dependencies does
The skill starts by checking whether existing code, the standard library, the platform, or an installed dependency can handle the task. If a new package is warranted, it calls for weighing its transitive tree, build and install weight, license, and security record. It also asks you to inspect the API surface you plan to use and document why the package belongs in the project, including when it should be removed.
For updates, the skill recommends pinned versions and committed lockfiles. Before a major bump, read the release notes, run tests, and keep the change in its own commit. Vendored code should carry its origin and version. Remove a dependency in the same change as the feature it served.
The principal-engineering skill is required background. If project rules do not define a dependency policy, the skill advises recording an assumption and assigning someone to track the policy decision. That distinction matters: adding a package still commits the project to a choice, even when its policy is unsettled.
What it helps with
- decide whether a package is necessary
- weigh a dependency's license and transitive tree
- pin versions and test a major update
- document why a dependency was added or removed
Example prompts for the agent
- Check whether this task can be done without adding a dependency.
- Assess this package before we add it and record the reasoning.
- Update this dependency: review its release notes, pin the version, and run the tests.
How to install adding-dependencies
1Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill adding-dependencies -a claude-code2Manually: put the files in place
~/.claude/skills/adding-dependencies/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/adding-dependencies/
1Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill adding-dependencies -a codex2Manually: put the files in place
.agents/skills/adding-dependencies/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill adding-dependencies -a cursor2Manually: put the files in place
.cursor/skills/adding-dependencies/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install riekelt/principal-engineer adding-dependencies2Manually: put the files in place
.github/skills/adding-dependencies/SKILL.md1Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill adding-dependencies -a gemini-cli2Platform CLI
gemini skills install https://github.com/riekelt/principal-engineer --path plugins/principal-engineer/skills/adding-dependenciesManually: put the files in place
.devin/skills/adding-dependencies/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add riekelt/principal-engineer --skill adding-dependencies -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about adding-dependencies
How do I install adding-dependencies in Claude Code?
Run npx skills add riekelt/principal-engineer --skill adding-dependencies -a claude-code. The skill file is at ~/.claude/skills/adding-dependencies/SKILL.md.
What does adding-dependencies do?
It guides dependency decisions: whether to add a package, how to assess its risks, and how to handle updates or removal. It also covers documenting the reasons for the decision.
What does adding-dependencies require?
It requires the principal-engineering skill as background. That skill provides the context for its dependency guidance.