Our review
Manages Python dependencies in a uv-based project, including auditing, updating, and compatibility checks.
Strengths
- Automates updates with test verification
- Detects outdated packages and security vulnerabilities
- Respects version constraints (torch, sentence-transformers, neo4j)
- Handles both main and dev dependencies
Limitations
- Requires uv installed and a project configured with pyproject.toml
- Only works for Python >=3.13
- Security audit depends on the pip-audit tool (not directly integrated)
For maintaining a Python project cleanly, checking versions, and applying updates without breaking compatibility.
For projects not using uv, older Python environments, or dependencies not managed via pyproject.toml.
Security analysis
SafeThe skill uses standard package management commands (uv) for checking, updating, adding, and removing Python dependencies. No destructive, exfiltrating, or obfuscated actions are instructed. All commands are legitimate and common in development workflows.
No concerns found
Examples
Check for outdated Python dependencies in this project.Update the package 'requests' to the latest version and run tests.Audit the Python dependencies for known security vulnerabilities.name: deps description: Check, audit, and update Python dependencies invocation: user
Dependency Manager
Check, audit, and update Python dependencies.
Project Setup
- Package manager:
uv - Config:
pyproject.toml - Lock file:
uv.lock - Build system: hatchling
- Python: >=3.13
Commands Reference
# Check installed versions
uv pip list
# Check outdated packages
uv pip list --outdated
# Sync dependencies
uv sync
uv sync --extra dev
# Add dependency
uv add <package>
uv add --dev <package>
uv add "<package>>=1.0,<2.0"
# Remove dependency
uv remove <package>
# Update lock file
uv lock
# Update specific package
uv lock --upgrade-package <package> && uv sync
# Update all
uv lock --upgrade && uv sync
Instructions
"check" or "status" (default)
- Run
uv pip listto show installed packages - Run
uv pip list --outdatedto show outdated packages - Present a summary table of current vs latest versions
- Highlight packages with major version updates (potential breaking changes)
"update" or "upgrade"
- Show what would be updated (
uv pip list --outdated) - Ask user to confirm before proceeding
- For specific package:
uv lock --upgrade-package <name> && uv sync - For all:
uv lock --upgrade && uv sync - After updating, run
uv run pytestto verify nothing broke - If tests fail, identify which update caused failure and suggest reverting
"add <package>"
- Determine if main or dev dependency
- Run
uv add <package>oruv add --dev <package> - Verify in
pyproject.toml - Run
uv run pytestto verify compatibility
"remove <package>"
- Search for imports of the package in the codebase
- Warn if the package is imported anywhere
- Run
uv remove <package> - Run
uv run pytestto verify
"audit" or "security"
- Run
uv pip listto get all packages - Check for known vulnerabilities (suggest
pip-auditif available) - Report findings with severity and recommended actions
Key Considerations
torchis very large (~2GB). Updates should be deliberate.litellmupdates frequently and may introduce breaking changes.sentence-transformersmust remain compatible with the project's embedding model.neo4jdriver version must match the server version (currently 5-community).- Always run tests after any dependency change.
uv.lockshould be committed after dependency changes.
Rules
- NEVER remove a dependency without checking for usage first
- NEVER update
torchorsentence-transformerswithout explicit user consent - Always run tests after dependency changes
- If
uv syncfails, check Python version compatibility (requires >=3.13)
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.