Claude-skill-registry ln-713-pip-upgrader

Upgrades Python pip/poetry/pipenv dependencies with breaking change handling

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/ln-713-pip-upgrader" ~/.claude/skills/majiayu000-claude-skill-registry-ln-713-pip-upgrader-43d65d && rm -rf "$T"
manifest: skills/data/ln-713-pip-upgrader/SKILL.md
source content

ln-713-pip-upgrader

Type: L3 Worker Category: 7XX Project Bootstrap Parent: ln-710-dependency-upgrader

Upgrades Python dependencies with automatic breaking change detection.


Overview

AspectDetails
InputProject path, package manager type
OutputUpdated requirements.txt/pyproject.toml
Supportspip, poetry, pipenv

Workflow

See diagram.html for visual workflow.

Phases: Pre-flight → Detect Manager → Security Audit → Check Outdated → Apply Upgrades → Verify Installation → Report


Phase 0: Pre-flight Checks

CheckRequiredAction if Missing
requirements.txt OR pyproject.toml OR PipfileYesBlock upgrade
Virtual environment activeNoWarn user (risk of system pollution)

Workers assume coordinator (ln-710) already verified git state and created backup.


Phase 1: Detect Manager

ManagerIndicator Files
piprequirements.txt
poetrypyproject.toml + poetry.lock
pipenvPipfile + Pipfile.lock

Phase 2: Security Audit

Commands

ManagerCommand
pip
pip-audit --json
poetry
poetry audit
(via plugin)
pipenv
pipenv check

Actions

SeverityAction
CriticalBlock upgrade, report
HighWarn, continue
Moderate/LowLog only

Phase 3: Check Outdated

Commands

ManagerCommand
pip
pip list --outdated --format=json
poetry
poetry show --outdated
pipenv
pipenv update --outdated

Phase 4: Apply Upgrades

Commands

ManagerCommand
pip
pip install --upgrade <package>
pip (freeze)
pip freeze > requirements.txt
poetry
poetry update
pipenv
pipenv update

MCP Tools for Migration Search

Priority Order (Fallback Strategy)

PriorityToolWhen to Use
1mcp__context7__query-docsFirst choice for library docs
2mcp__Ref__ref_search_documentationOfficial docs and PyPI
3WebSearchLatest info, community solutions

Context7 Usage

StepToolParameters
1. Find librarymcp__context7__resolve-library-idlibraryName: "pydantic"
2. Query docsmcp__context7__query-docsquery: "pydantic v1 to v2 migration breaking changes"

MCP Ref Usage

ActionToolQuery Example
Searchmcp__Ref__ref_search_documentation"python pydantic 2 migration guide"
Readmcp__Ref__ref_read_urlURL from search results

WebSearch Fallback

Use when Context7/Ref return no results:

  • "<package> python <version> breaking changes migration"
  • "<ImportError message> <package> fix"

Phase 5: Verify Installation

Commands

CheckCommand
Import test
python -c "import <package>"
Tests
pytest
or
python -m pytest

Phase 6: Report Results

Report Schema

FieldDescription
projectProject path
packageManagerpip, poetry, or pipenv
durationTotal time
upgrades[]Applied upgrades
verificationPASSED or FAILED

Common Breaking Changes

See breaking_changes_patterns.md for full patterns.

PackageBreaking VersionKey Changes
pydantic1 → 2V1 compatibility layer needed
sqlalchemy1 → 2Query syntax changes
fastapi0.99 → 0.100+Pydantic v2 required

Configuration

Options:
  # Upgrade scope
  upgradeType: major          # major | minor | patch

  # Security
  auditLevel: high
  minimumReleaseAge: 14

  # Python specific
  pythonVersion: "3.12"
  useVirtualenv: true

  # Verification
  runTests: true

Error Handling

ErrorCauseSolution
ImportErrorBreaking API changeSearch Context7/Ref for migration
Dependency conflictVersion mismatchTry pip-compile or poetry lock

References


Version: 1.1.0 Last Updated: 2026-01-10