Verifies that git commits address security audit findings without introducing bugs. This skill should be used when the user asks to "verify these commits fix the audit findings", "check if TOB-XXX was addressed", "review the fix branch", "validate remediation commits", "did these changes address the security report", "post-audit remediation review", "compare fix commits to audit report", or when reviewing commits against security audit reports.
View on GitHubtrailofbits/skills
fix-review
January 24, 2026
Select agents to install to:
npx add-skill https://github.com/trailofbits/skills/blob/main/plugins/fix-review/skills/fix-review/SKILL.md -a claude-code --skill fix-reviewInstallation paths:
.claude/skills/fix-review/# Fix Review Differential analysis to verify commits address security findings without introducing bugs. ## When to Use - Reviewing fix branches against security audit reports - Validating that remediation commits actually address findings - Checking if specific findings (TOB-XXX format) have been fixed - Analyzing commit ranges for bug introduction patterns - Cross-referencing code changes with audit recommendations ## When NOT to Use - Initial security audits (use audit-context-building or differential-review) - Code review without a specific baseline or finding set - Greenfield development with no prior audit - Documentation-only changes --- ## Rationalizations (Do Not Skip) | Rationalization | Why It's Wrong | Required Action | |-----------------|----------------|-----------------| | "The commit message says it fixes TOB-XXX" | Messages lie; code tells truth | Verify the actual code change addresses the finding | | "Small fix, no new bugs possible" | Small changes cause big bugs | Analyze all changes for anti-patterns | | "I'll check the important findings" | All findings matter | Systematically check every finding | | "The tests pass" | Tests may not cover the fix | Verify fix logic, not just test status | | "Same developer, they know the code" | Familiarity breeds blind spots | Fresh analysis of every change | --- ## Quick Reference ### Input Requirements | Input | Required | Format | |-------|----------|--------| | Source commit | Yes | Git commit hash or ref (baseline before fixes) | | Target commit(s) | Yes | One or more commit hashes to analyze | | Security report | No | Local path, URL, or Google Drive link | ### Finding Status Values | Status | Meaning | |--------|---------| | FIXED | Code change directly addresses the finding | | PARTIALLY_FIXED | Some aspects addressed, others remain | | NOT_ADDRESSED | No relevant changes found | | CANNOT_DETERMINE | Insufficient context to verify | --- ## Workflow ### Phase 1: Input Gathering Collec