Ln 823 Pip Upgrader
Upgrades Python pip/poetry/pipenv dependencies with breaking change handling. Use when updating Python dependencies.
MCP get_skill({ skillId: "ln-823-pip-upgrader-6afe7d80" })Use this skill with your agent
Create a free account and connect via MCP
> **Paths:** File paths (`references/`, `../ln-*`) are relative to this skill directory.
# ln-823-pip-upgrader
**Type:** L3 Worker
**Category:** 8XX Optimization
Upgrades Python dependencies with automatic breaking change detection.
---
## Overview
| Aspect | Details |
|--------|---------|
| **Input** | Project path plus package manager type |
| **Output** | Updated dependency manifests and a machine-readable dependency upgrade summary |
| **Supports** | pip, poetry, pipenv |
---
## Workflow
**Phases:** Pre-flight -> Detect Manager -> Security Audit -> Check Outdated -> Apply Upgrades -> Verify Installation -> Report
---
## Phase 0: Pre-flight Checks
| Check | Required | Action if Missing |
|-------|----------|-------------------|
| `requirements.txt`, `pyproject.toml`, or `Pipfile` | Yes | Block upgrade |
| Python package manager available | Yes | Block upgrade |
| Virtual environment active | No | Warn user if managed environment is unclear |
| Workspace baseline safe | Yes | In managed runs coordinator already prepared it; in standalone runs protect rollback locally |
### Runtime Coordination
Managed runs receive deterministic `runId` and exact `summaryArtifactPath` from `ln-820`.
Standalone runs remain supported; if runtime arguments are omitted, generate a standalone run-scoped artifact before returning.
---
## Phase 1: Detect Manager
| Manager | Indicator Files |
|---------|-----------------|
| pip | `requirements.txt` |
| poetry | `pyproject.toml` + `poetry.lock` |
| pipenv | `Pipfile` + `Pipfile.lock` |
---
## Phase 2: Security Audit
| Manager | Command |
|---------|---------|
| pip | `pip-audit --json` |
| poetry | `poetry audit` |
| pipenv | `pipenv check` |
Actions:
| Severity | Action |
|----------|--------|
| Critical | Block and report |
| High | Warn and continue |
| Moderate/Low | Log only |
---
## Phase 3: Check Outdated
| Manager | Command |
|---------|---------|
| pip | `pip list --outdated --format=json` |
| poetry | `poetry show --outdated` |
| pipenv | `pipenv update --outdated` |
---
## Phase 4: Apply Upgrades
| Manager | Command |
|---------|---------|
| pip | `pip install --upgrade <package>` |
| pip (freeze) | `pip freeze > requirements.txt` |
| poetry | `poetry update` |
| pipenv | `pipenv update` |
---
## MCP Tools for Migration Search
| Priority | Tool | When to Use |
|----------|------|-------------|
| 1 | `mcp__context7__query-docs` | First choice for library docs |
| 2 | `mcp__Ref__ref_search_documentation` | Official docs and PyPI |
| 3 | WebSearch | Latest info and community fixes |
Use MCP tools whenever a package upgrade crosses a major version or introduces import errors.
---
## Phase 5: Verify Installation
| Check | Command |
|-------|---------|
| Import smoke test | `python -c "import <package>"` |
| Tests | `pytest` or `python -m pytest` |
Common breaking examples:
**MANDATORY READ:** Load [breaking_changes_patterns.md](../ln-820-dependency-optimization-coordinator/references/breaking_changes_patterns.md) for shared patterns.
| Package | Breaking Version | Key Changes |
|---------|------------------|-------------|
| pydantic | 1 -> 2 | Compatibility layer required |
| sqlalchemy | 1 -> 2 | Query API changes |
| fastapi | 0.99 -> 0.100+ | Pydantic v2 alignment |
---
## Phase 6: Report Results
| Field | Description |
|-------|-------------|
| `project` | Project path |
| `packageManager` | pip, poetry, or pipenv |
| `duration` | Total time |
| `upgrades[]` | Applied upgrades |
| `verification` | Import/test verdict |
| `warnings[]` | Non-blocking issues |
| `artifact_path` | Durable worker report path, if written |
---
## Configuration
```yaml
Options:
upgradeType: major # major | minor | patch
auditLevel: high
minimumReleaseAge: 14
pythonVersion: "3.12"
useVirtualenv: true
runTests: true
```
---
## Error Handling
| Error | Cause | Solution |
|-------|-------|----------|
| ImportError | Breaking API change | Search current migration docs |
| Dependency conflict | Version mismatch | Regenerate lock file or rollback offending package |
---
## References
- [breaking_changes_patterns.md](../ln-820-dependency-optimization-coordinator/references/breaking_changes_patterns.md)
- [python_venv_handling.md](references/python_venv_handling.md)
---
## Runtime Summary Artifact
**MANDATORY READ:** Load `references/coordinator_summary_contract.md`
Emit a `dependency-worker` summary envelope.
Managed mode:
- `ln-820` passes deterministic `runId` and exact `summaryArtifactPath`
- write the summary to the provided `summaryArtifactPath`
Standalone mode:
- omit `runId` and `summaryArtifactPath`
- write `.hex-skills/runtime-artifacts/runs/{run_id}/dependency-worker/ln-823--{identifier}.json`
**Monitor (2.1.98+):** For install/audit/test commands expected >30s, use `Monitor`. Fallback: `Bash(run_in_background=true)`.
## Definition of Done
- [ ] Package manager detected from project indicators
- [ ] Security audit completed for the selected Python manager
- [ ] Outdated packages identified
- [ ] Breaking changes checked via patterns plus current docs
- [ ] Upgrades applied with manifest and lock updates persisted
- [ ] Import smoke test and required tests succeed
- [ ] `dependency-worker` summary artifact written to the managed or standalone path
---
**Version:** 1.1.0
**Last Updated:** 2026-01-10Related Skills
More skills in Software Engineering
Accessibility Standards
Comprehensive web accessibility standards based on WCAG 2.2 AA, with 38+ anti-patterns, legal enforcement context (EAA, ADA Title II), WAI-ARIA patterns, and framework-specific fixes for modern web frameworks and libraries.
Accord
Authoring unified specification packages across Business/Development/Design teams via staged elaboration (L0 Vision → L1 Requirements → L2 Team Detail → L3 Acceptance Criteria). No code. Use when authoring cross-team specs, building L0-L3 packages, or aligning Biz/Dev/Design on a single source of truth.
Acquire Codebase Knowledge
Use this skill when the user explicitly asks to map, document, or onboard into an existing codebase. Trigger for prompts like "map this codebase", "document this architecture", "onboard me to this repo", or "create codebase docs". Do not trigger for routine feature implementation, bug fixes, or narrow code edits unless the user asks for repository-level discovery.
Acreadiness Assess
Run the AgentRC readiness assessment on the current repository and produce a static HTML dashboard at reports/index.html. Wraps `npx github:microsoft/agentrc readiness` and hands off rendering to the @ai-readiness-reporter custom agent. Supports policies (--policy) for org-specific scoring. Use when asked to assess, audit, or score the AI readiness of a repo.
Acreadiness Generate Instructions
Generate tailored AI agent instruction files via AgentRC instructions command. Produces .github/copilot-instructions.md (default, recommended for Copilot in VS Code) plus optional per-area .instructions.md files with applyTo globs for monorepos. Use after running /acreadiness-assess to close gaps in the AI Tooling pillar.
Acreadiness Policy
Help the user pick, write, or apply an AgentRC policy. Policies customise readiness scoring by disabling irrelevant checks, overriding impact/level, setting pass-rate thresholds, or chaining org baselines with team overrides. Use when the user asks about strict mode, AI-only scoring, custom weights, CI gating, or wants org-wide standardisation.
Explore Other Categories
Skills from other categories with shared topics
Ln 014 Agent Instructions Manager
Creates AGENTS.md canonical and CLAUDE.md @AGENTS.md stub; audits token budget, cache safety, import-pattern compliance. Use when instruction files need alignment.
Ln 022 Researchgraph
Indexes and queries project research graphs backed by hex-research MCP. Use for hypotheses, goals, benchmark runs, evidence depth, derived goal metrics, lineage, generated research maps, and graph audits.
Ln 100 Documents Pipeline
Creates complete project documentation system (project docs, reference, tasks, tests). Use when bootstrapping docs from scratch or regenerating all.