What problem does it solve? Finding crashes, memory corruption, and unexpected exceptions in Python code and Python C extensions requires systematic input generation that manual testing cannot provide. This Skill guides you through setting up Atheris, a coverage-guided fuzzer based on libFuzzer, to automatically discover bugs in Python targets. ## Core Features & Use Cases - Pure Python Fuzzing: Instrument Python functions and imports with atheris.instrument_func and atheris.instrument_imports() for coverage-guided fuzzing. - C Extension Fuzzing: Compile native extensions with clang sanitizer flags and AddressSanitizer integration to detect memory corruption, with a ready-to-use Dockerfile. - Corpus & Campaign Management: Create seed corpora, minimize them with libFuzzer merge, and run parallel fuzzing campaigns with workers and time limits. - Use Case: Fuzz the cbor2 C extension by compiling it from source with sanitizer flags, writing a harness around loads(), and running the fuzzer to surface memory safety bugs. ## Quick Start Write an Atheris fuzzing harness for my Python parser function and show me how to run it with a seed corpus.