aflpp

aflpp is a skill for Codex from OutlineDriven/outline-driven-development. It costs 76 tokens per session (2,733 once invoked), scanned A, original, Apache-2.0.

A setup and campaign tool for AFL++, a program that repeatedly feeds test inputs to C and C++ software to find crashes and other failures. It also reviews crashes and reduces the test-input collection to smaller useful cases.

In plain words
What is it for?
Use it to instrument a C or C++ fuzz target, run single- or multi-core campaigns, triage crashes, and minimize the input corpus.
Why use it?
It automates repetitive testing so hidden failures are easier to trigger, reproduce, and investigate.

Skill for Codex

Written for Codex: agents/openai.yaml present.

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/outlinedriven/outline-driven-development/aflpp
Any agent
npx skills add OutlineDriven/outline-driven-development --skill aflpp
Clone the repo
git clone --depth 1 https://github.com/OutlineDriven/outline-driven-development

Made for: Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for aflpp

README.md
[![agentmods](https://agentmods.dev/badge/skills/outlinedriven/outline-driven-development/aflpp.svg)](https://agentmods.dev/skills/outlinedriven/outline-driven-development/aflpp)
Your own site
<a href="https://agentmods.dev/skills/outlinedriven/outline-driven-development/aflpp"><img src="https://agentmods.dev/badge/skills/outlinedriven/outline-driven-development/aflpp.svg" alt="Measured on agentmods" height="20"></a>
Per session 76 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,733 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00076 $0.02733
Opus 5 $0.00038 $0.01367
Sonnet 5 $0.00015 $0.00547
Haiku 4.5 $0.00008 $0.00273

Measured yesterday against content hash 503d7f49deca, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade A, and why

aflpp scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.devin/skills/aflpp/SKILL.md · 185 lines

How it starts

The opening of the file, as written. The whole thing — 185 lines — stays where its author put it; the contents beside it link to each section on GitHub.

AFL++

Contract

Field Bound contract
Trigger User needs AFL++ setup, multi-core campaign operation, corpus handling, or AFL++ crash triage for a C/C++ target.
Authority Reversible local execution of AFL++ binaries and writes to build artifacts, corpora, logs, and output directories under the working directory. The skill must request explicit user approval before any system-level change: package installation, Docker image pull, kernel tuning, GRUB mutation, or reboot. Roll back by killing campaign processes and removing the output and state directories.
Side effect Local writes to compiled artifacts, seed and output corpora, log files, and short-lived Docker containers. No mutation of source under test beyond compilation.
Done AFL++ target runs against a seed corpus with the intended instrumentation and produces interpretable campaign output.

Inputs

  • Target source tree (C/C++) with a fuzz harness or a program that reads stdin, files, or argv. Required.
  • Seed corpus directory with at least one non-empty file. Required; created if absent.
  • Run location: host or Docker. Required; default Docker.
  • Compilation mode preference (LTO, LLVM, or GCC). Optional; default tries LTO, falls back to LLVM.
  • Core count for multi-core campaigns. Optional; default is a single instance.
  • Dictionary file for format-aware fuzzing. Optional.
  • Sanitizer selection (ASan, UBSan, none). Optional; default none.

Procedure

1. Select run location and verify AFL++

Choose host or Docker. For Docker, pull the image with explicit user approval:

docker pull aflplusplus/aflplusplus:stable

For host installation, request approval before running:

apt install afl++ lld-<clang-version>

Verify the binary: afl-fuzz --version (host) or docker run --rm aflplusplus/aflplusplus:stable afl-fuzz --version (Docker).

Kernel tuning (afl-system-config) gives up to 15% more executions per second but disables OS security features. Request explicit approval before running it, and only on a dedicated VM. For maximum performance, afl-persistent-config plus update-grub and reboot are required — these are irreversible system changes that need approval. Do not run kernel tuning on production or development systems.

Read the full file on GitHub · 185 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 185 lines · 76 tokens per session scan A 503d7f49deca

Subscribe to this mod's changes

aflpp is a skill published in the GitHub repository OutlineDriven/outline-driven-development (52 stars, last pushed yesterday), licensed Apache-2.0. It adds 76 tokens to every session and 2,733 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

add-uint-support

Add unsigned integer (uint) type support to PyTorch operators by updating ATDISPATCH macros. Use when adding support for uint16, uint32, uint64 types to operators, kernels, or when user mentions enabling unsigned types, barebones unsigned types, or uint support.

pytorch/pytorch · 60 tokens

cuda-index-width

Choose 32-bit vs 64-bit index math in PyTorch CUDA kernels. Use when fixing large-tensor indexing overflows, deciding whether to use int64t, canUse32BitIndexMath, CUDAKERNELLOOPTYPE, or ATDISPATCHINDEXTYPES, and when considering binary-size or performance impact of index-type templating.

pytorch/pytorch · 71 tokens

sqlitecpp-build-cmake

Build SQLiteCpp with CMake. Use for CMake builds, tests, options, or build scripts.

SRombauts/SQLiteCpp · 27 tokens

embedded-stm32

Best practices for embedded C/C++ development on STM32 microcontrollers using the HAL, covering peripherals, DMA, interrupts, memory constraints, and hardware-focused testing. Use when writing STM32 HAL code, configuring peripherals generated by STM32CubeMX, working with interrupts or DMA, debugging with SWD/JTAG…

Mindrally/skills · 87 tokens

decomp-cpp-class-form

Choose the C++ source form that makes mwccarm 2004/b56 emit what the SM64DS ROM actually contains - destructor variant order (D1/D0/D2), vtable and RTTI anchoring, constructor inlining, struct copies, bool widening, and virtual-vs-direct calls. Use when converting a shadow struct into a real C++ class, when D0/D1 are…

tangosdev/sm64ds-decomp · 135 tokens

cpp-modules

C++20 modules skill for modern C++ projects. Use when working with named modules, module partitions, header units, CMake MODULESOURCES, Clang -fmodules-ts, BMI caching issues, or migrating from headers to modules. Activates on queries about C++20 modules, import statements, module interface units, header units, or BMI…

mohitmishra786/low-level-dev-skills · 76 tokens