Skip to content
Agentmart
Submit a tool

pyvr-fix

Fix vulnerable PyPI packages safely across environments and projects (first advisory - upgrade Pillow to 13.0.0) - per-venv upgrades, system/distro Pythons…

Skill by luivc1

IndexedMIT
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/luivc1-pyvr-fix

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Fix vulnerable PyPI packages safely across environments and projects (first advisory - upgrade Pillow to 13.0.0) - per-venv upgrades, system/distro Pythons, conda, Docker images, requirements and lockfile re-locks, and Python 3.10 apps that cannot take the fix (upgrade path plus interim mitigations). Use for "fix Pillow", "upgrade Pillow in all venvs", "we're stuck on Python 3.10", "arreglar Pillow", "actualizar los lockfiles".

Use cases: devops

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/pyvr-fix

What's inside

Skill name
pyvr-fix
Description
Fix vulnerable PyPI packages safely across environments and projects (first advisory - upgrade Pillow to 13.0.0) - per-venv upgrades, system/distro Pythons, conda, Docker images, requirements and lockfile re-locks, and Python 3.10 apps that cannot take the fix (upgrade path plus interim mitigations). Use for "fix Pillow", "upgrade Pillow in all venvs", "we're stuck on Python 3.10", "arreglar Pillow", "actualizar los lockfiles".
License
MIT
Instructions
38 lines in SKILL.md · view on GitHub

Before installing

  • Instructions call the network

Files (2)

  • SKILL.md
  • playbooks.md · references/

SKILL.md (first lines)

# Fix (changes systems: approval required at every step)

Follow **pyvr-navigator** rules: show each command, wait for a yes, never disable TLS
verification, never test with exploit files.

## 1. Start from the fix plan

`pyvuln-scan.py` writes `<out>-fix-plan.md` with exact commands per environment and a
checklist per project. Walk it in order. `references/playbooks.md` covers each
platform, BLOCKED Pythons and rollback.

## 2. Order

1. **Prerequisite:** where the scan warns pip < 26.2.2, upgrade pip safely first with
   python-cert-responder (`pycert-scan.py --python <env>` then its checksum-verified bootstrap).
2. **Environments (AFFECTED):** `<PY> -m pip install --upgrade "pillow>=13.0.0"`, then
   `<PY> -m pip check`. Record the old version for rollback.
3. **Projects:** bump pins and ranges to `>=13.0.0`, then re-lock with the right tool
   (`RELOCK` in the advisory: uv, poetry, pip-compile, pdm). Commit lock and manifest together.
4. **Dockerfiles:** move `FROM python:3.10` to 3.11 or newer where Pillow is used; bump
   pins; rebuild with `--pull`; redeploy.
5. **BLOCKED (Python 3.10):** plan the Python upgrade (playbooks > BLOCKED). Until it
   ships, apply the interim mitigations and record an owner and date.
6. **HTTP2Shell (Brotli):** `<PY> -m pip install --upgrade "Brotli>=1.2.1"` (and
   `"brotlicffi>=1.2.1.0"`); add `Brotli>=1.2.1` as a constraint wherever
   `urllib3[brotli]`, `httpx[brotli]` or `aiohttp[speedups]` is declared; OS copies via
   `apt`/`dnf`. Where Brotli is optional, uninstalling it is a valid fix (playbooks).
7. **Risk reducers, any time:** remove Ghostscript where EPS is not needed; uninstall
   `olefile` where FlashPix is not needed (only with approval and after checking dependents).

## 3. After each change

Re-scan that environment or project (`--python <venv>` / `--project <dir>`). Log what
changed. Finish with **pyvr-verify-close**.

## Never

- `--trusted-host`, `verify=False`, `curl -k` to get an install through.
- `--break-system-packages` on an OS Python without the user choosing it over the distro package or a venv.
- Downloading PoC code or crafted images to prove a fix.

From luivc1/python-vuln-responder, MIT.

Signals

Stars
0
Forks
0
Open issues
0
Last commit (this folder)
Oct 23, 2026 (6 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from luivc1

Cite this page

pyvr-fix skill. Agent Mart. https://agentmart.dev/skills/luivc1-pyvr-fix (last updated 2026-10-24)