Automated dependency conflict detection and resolution. Detects local vs CI environment mismatches, compares versions, and generates pinning recommendations. Run as pre-push check to catch issues early.
View on GitHub.claude/skills/dependency-resolver/SKILL.md
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/rysweet/amplihack/blob/main/.claude/skills/dependency-resolver/SKILL.md -a claude-code --skill dependency-resolverInstallation paths:
.claude/skills/dependency-resolver/# Dependency Resolver Skill
## Purpose
This skill detects and resolves local vs CI environment mismatches BEFORE push, preventing the 20-45 minute debug cycles documented in DISCOVERIES.md ("CI Failure Resolution Process Analysis" entry).
The skill addresses a critical gap: existing tools (ci-diagnostic-workflow, pre-commit-diagnostic) fix issues AFTER they occur. This skill catches mismatches BEFORE push.
## Problem Statement
From DISCOVERIES.md analysis:
- Environment mismatches (Local Python 3.12 vs CI Python 3.11) cause 20-25 min investigation overhead
- Version drift (local ruff 0.12.7 vs CI ruff 0.13.0) causes silent failures
- 45-minute complex debugging sessions traced to dependency conflicts
- No automated pre-push environment comparison exists
## Execution Instructions
When activated, execute these steps autonomously:
### Step 1: Collect Local Environment
```bash
# Python version
python --version
# Installed tool versions
pip show ruff black pyright mypy 2>/dev/null | grep -E "^(Name|Version):"
# Pre-commit hook versions (if available)
cat .pre-commit-config.yaml 2>/dev/null | grep -E "rev:|repo:"
```
### Step 2: Read CI Configuration
```
Read(file_path=".github/workflows/ci.yml")
Read(file_path="pyproject.toml")
Read(file_path=".pre-commit-config.yaml")
```
Extract:
- CI Python version (look for `python-version:`)
- Required tool versions from pyproject.toml
- Pre-commit hook versions from .pre-commit-config.yaml
### Step 3: Compare Environments
Build comparison table:
| Component | Local | CI | Status |
| --------- | ------- | ------ | -------- |
| Python | 3.12.10 | 3.11 | MISMATCH |
| ruff | 0.12.7 | 0.13.0 | MISMATCH |
| black | 24.3.0 | 24.3.0 | OK |
### Step 4: Generate Recommendations
For each mismatch, provide actionable fix:
**Python Version Mismatch:**
```bash
# Option A: Use pyenv to match CI version
pyenv install 3.11
pyenv local 3.11
# Option B: Update CI to match local (if local is intent