extract-fuzzer-repro
SKILL.md
Extract Fuzzer Reproduction from GitHub Actions
Use this skill to extract a reproduction project from fuzzer failures in CI. This creates a minimal Noir project you can use locally to reproduce and debug the issue.
1. Get the Job ID
From the GitHub Actions URL, extract the job ID. The URL format is:
https://github.com/noir-lang/noir/actions/runs/RUN_ID/job/JOB_ID
2. Fetch the Logs
gh api repos/noir-lang/noir/actions/jobs/JOB_ID/logs 2>&1 | tee fuzzer_logs.txt
3. Find the Reproduction Code
Search for the generated Noir source:
grep -nE "unconstrained fn main|fn main" fuzzer_logs.txt
The fuzzer output has this structure:
---
AST:
global G_A: i8 = -127_i8;
unconstrained fn main(a: pub i8) -> pub i8 {
...
}
---
ABI Inputs:
a = "-0x5c"
---
Seed: 0xc63ed07b00100000
4. Check for Required Compiler Flags
Some failures only manifest with specific flags (e.g., -Zenums for match expressions, optimization flags, etc.). Note any flags mentioned in the logs as you'll need them to reproduce the issue.
5. Create the Reproduction Project
nargo new repro_project
cd repro_project
Copy the AST section to src/main.nr and create Prover.toml with the ABI inputs.
6. Verify the Reproduction
# Include any required flags from the logs
nargo execute
This should reproduce the failure you saw in CI. If it doesn't, double-check you're using the same compiler flags from the logs.
Weekly Installs
31
Repository
noir-lang/noirGitHub Stars
1.3K
First Seen
Feb 5, 2026
Security Audits
Installed on
claude-code31
mcpjam30
kilo30
junie30
windsurf30
zencoder30