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
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.
About
Use cases: devops
Reviews
Write a reviewNo 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.
More from luivc1/python-vuln-responder
- 0.565score
pyvr-advisory-update
luivc1
Refresh an advisory file behind the Python vuln scanner (new fixed versions, backports, IDs) or add a new one for any PyPI package vulnerability, so the same…
SkillAFreshness: AClaude Code +9 - 0.565score
pyvr-verify-close
luivc1
Prove the Python package fix worked and close out - re-scan every machine, venv and project, run pip check, confirm BLOCKED items have a dated plan and…
SkillAFreshness: AClaude Code +9 - 0.565score
pyvr-navigator
luivc1
Entry point for vulnerable PyPI packages across Python environments, starting with the Pillow security release (Pillow < 13.0.0, October 2026).
SkillAFreshness: AClaude Code +9 - 0.560score
pyvr-scan
luivc1
Find every Python environment, lockfile, Dockerfile and code path carrying a vulnerable PyPI package (first advisory - Pillow < 13.0.0) - system Pythons…
SkillAFreshness: AClaude Code +9 - 0.559score
pyvr-comms
luivc1
Bilingual (English/Spanish) messages for a Python package vulnerability (first advisory - Pillow < 13.0.0) - team/colleague briefing with the fix steps…
SkillAFreshness: AClaude Code +9
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
- Repository
- github.com/luivc1/python-vuln-responder
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from luivc1
- 0.570score
pcr-fix
luivc1
Fix Python environments affected by the eMudhra/emSign CA compromise safely - checksum-verified pip 26.2.2 bootstrap, certifi 2026.10.19, uv self update, OS…
SkillAFreshness: AClaude Code +9 - 0.565score
pyvr-advisory-update
luivc1
Refresh an advisory file behind the Python vuln scanner (new fixed versions, backports, IDs) or add a new one for any PyPI package vulnerability, so the same…
SkillAFreshness: AClaude Code +9 - 0.565score
pcr-verify-close
luivc1
Prove the Python CA fix worked and close out - re-scan every machine, venv and project, run the live TLS test (every trust path must refuse the incident's…
SkillAFreshness: AClaude Code +9 - 0.565score
pyvr-verify-close
luivc1
Prove the Python package fix worked and close out - re-scan every machine, venv and project, run pip check, confirm BLOCKED items have a dated plan and…
SkillAFreshness: AClaude Code +9 - 0.565score
pcr-navigator
luivc1
Entry point for the eMudhra / emSign CA compromise (October 2026) in Python, and future CA trust incidents.
SkillAFreshness: AClaude Code +9 - 0.565score
pyvr-navigator
luivc1
Entry point for vulnerable PyPI packages across Python environments, starting with the Pillow security release (Pillow < 13.0.0, October 2026).
SkillAFreshness: AClaude Code +9
Cite this page
pyvr-fix skill. Agent Mart. https://agentmart.dev/skills/luivc1-pyvr-fix (last updated 2026-10-24)