From file to useful result
How to ask with this skill installed
Installing the skill gives your AI a method. Your request still has to provide the case-specific facts, constraints and expected output.
Describe the decision or deliverable, not just the topic.
Add source material, audience, limits and known facts.
Set format, quality criteria and checks.
When to use it
| Fuzzer | Best For | Complexity | |--------|----------|------------| | AFL++ | Multi-core fuzzing, diverse mutations, mature projects | Medium | | libFuzzer | Quick setup, single-threaded, simple harnesses | Low | | LibAFL | Custom fuzzers, research, advanced use cases | High |
Choose AFL++ when:
- You need multi-core fuzzing to maximize throughput
- Your project can be compiled with Clang or GCC
- You want diverse mutation strategies and mature tooling
- libFuzzer has plateaued and you need more coverage
- You're fuzzing production codebases that benefit from parallel execution
Mistakes to avoid
| Problem | Cause | Solution | |---------|-------|----------| | Low exec/sec (<1k) | Not using persistent mode | Create a LLVMFuzzerTestOneInput style harness | | Low stability (<85%) | Non-deterministic code | Fuzz a program via stdin or file inputs, or create such a harness | | GCC plugin error | GCC version mismatch | Ensure system GCC matches AFL++ build and install gcc-$GCC_VERSION-plugin-dev | | No crashes found | Need sanitizers | Recompile with AFL_USE_ASAN=1 | | Memory limit exceeded | ASan uses 20TB virtual | Remove -m flag when using ASan | | Docker performance loss | Virtualization overhead | Use bare metal or VM for production fuzzing |