Skill
Regression Hunt
Prepare a change
Input: PR URL or repository plus commit/range, and registry assignment.
Install
/plugin install trailofbits/skills/plugins/regression-hunt Run in Claude Code to add the Regression Hunt plugin, then enable this skill.
When to Use
Input: PR URL or repository plus commit/range, and registry assignment. Follow project guidance after resolving the target commit.
When NOT to Use
The same inputs have a verified preparation record; reuse it.
Prepare
- Read the standard and file contract. Pin the complete change as S0/S1: commit parent or explicit range baseline; merge base to frozen head for unmerged PRs; merge first parent to merge commit, squash parent to squash, or the complete rebased series for merged PRs. Ambiguous ranges and missing root baselines block preparation.
- Freeze commit titles/messages or PR title, body, discussion, reviews and inline comments with URLs and collection time. Paginate APIs; record limits and lifecycle. Locate security/threat-model documents in both states; record paths or search limitations.
- Run snapshot.py via
uv run --no-projectwith repository, S0, S1 and a new directory, or equivalent Git commands for special source needs. Preserve dependency/submodule/LFS revisions. Exclude later history; keep exports pristine and build in separate copies. - Write and seal
prepare.jsonwith boundary explanations, frozen context and source artifacts. If blocked, preserve collected evidence and name the prerequisite.
Report Back
Keep detailed evidence in the sealed package. Return only:
- Status:
completeorblocked, matching the record. - Record: sealed
prepare.jsonpath, or why none was produced. - Result: selected S0/S1 and material collection limitations.
- Blocker: missing prerequisite or required caller action, if blocked.
Rationalizations to Reject
- “The PR is merged”: that does not identify the complete change boundary.
More in Regression Hunt
- Adjudicate evidence Input: candidate, frozen sources, available reproduction/replay packages and registry assignment.
- Discover candidates Input: sealed preparation, frozen S0/S1, change context and registry assignment.
- Coordinate a regression hunt Investigate supplied PRs of any status or commits, including local commits.
- Independently replay a PoC Input: candidate, frozen source records, complete sealed reproduction package and registry assignment.
- Report a campaign Input: frozen scope.json, campaign index, progress ledger, sealed stage packages and registry assignment.
- Reproduce a candidate Input: sealed preparation/discovery packages, candidate and registry assignment.