remediating-dependabot

Remediates GitHub Dependabot alerts by updating pyproject.toml and uv.lock dependencies.

2.4k|187|Updated Aug 10, 2024
One-click install
npx skills add https://github.com/mflux-community/mflux --skill remediating-dependabot-mflux-community
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: remediating-dependabot
Source: https://github.com/mflux-community/mflux/tree/main/.agents/skills/remediating-dependabot
Command: npx skills add https://github.com/mflux-community/mflux --skill remediating-dependabot-mflux-community

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Open Dependabot security alerts require careful dependency updates that close every vulnerable range without breaking the supported Python and platform matrix, and teams often cannot tell whether a branch will actually resolve the findings before opening a PR. ## Core Features & Use Cases - Alert-Driven Remediation: Fetches all open Dependabot alerts via the GitHub API, groups them by package, severity, and vulnerable range, then applies the smallest compatible fix in pyproject.toml and uv.lock. - Local Security Verification: Compares every locked version against each alert's vulnerable range using packaging specifiers, runs uv audit, and executes Dependabot Core locally to prove findings will close. - Project Validation: Runs the repository's lint, typecheck, test, and build workflows to confirm the dependency change is safe. - Use Case: A maintainer receives several Dependabot alerts against mflux and uses this Skill to clamp the affected dependencies, regenerate the lock with targeted upgrades, and verify locally that every alert is resolved before opening the PR. ## Quick Start Audit the open Dependabot alerts for this repository and produce a minimal dependency update that closes all of them.

Frequently Asked Questions about remediating-dependabot

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I fix GitHub Dependabot alerts in a Python project?▼

Fetch open alerts with the GitHub API, group them by package and vulnerable range, then apply the smallest compatible fix: remove unneeded dependencies, raise direct lower bounds, or upgrade affected transitive packages in the lockfile. Verify closure locally before opening a PR.

How to update uv.lock for a security vulnerability without upgrading everything?▼

Run uv lock --upgrade-package with only the affected package names to regenerate the lock with targeted upgrades. This avoids pulling in unrelated newer releases while moving vulnerable packages outside their reported ranges.

Can I verify Dependabot alerts are resolved before merging a PR?▼

Yes. Compare every locked version against each alert's vulnerable_version_range using packaging SpecifierSet, run uv audit, and execute Dependabot Core locally against the checkout. Parse the YAML output to confirm no pull request actions remain.

Why does a Dependabot alert stay open after the lockfile is fixed?▼

Hosted alerts remain open until GitHub rescans the merged lockfile, even when the local lock is already outside the vulnerable range. Report these as pending or stale rather than forcing an unnecessary upgrade just to change the lock entry.

When should dependency updates use environment markers in pyproject.toml?▼

Add or change environment markers only when compatibility actually differs by Python version or platform. Prefer a single requirement when one release supports the full project matrix, and avoid overlapping marker-specific requirements without evidence they are necessary.