Claude 24f816b6a3
Consolidate 22 sibling repos into layered organism structure
Place useful parts of the surrounding repos into sica-fondt by layer, per the
body model (Ada = membrane; brain/endocrine/capabilities/knowledge non-Ada):

- brain/        LLM reasoning + providers (dapr, hermes, MoMoA)
- capabilities/ REPRAG sidecars: hermes tools/skills, dapr tools, parallel
                dispatch, A51 channels, and the OSINT cluster
- knowledge/    LORAG corpus: 754 cyber-skills, agency personas, secure-coding,
                MITRE ATT&CK data
- reference/    defensive threat-reference (C3, shhbruh doc) + AdaYaml parser

License handling: AGPL sources (worldosint, advanced_evolution, mercury,
Reticulum) and GPL DeTTECT are SPEC-only clean-room/port descriptions — no
copyleft code copied. MIT/Apache/data parts copied as working trees.

Safety: shhbruh escape/persistence material and C3 covert-C2 kept as reference
only, not wired into the running organism. See CONSOLIDATION.md.

https://claude.ai/code/session_01UehUqEXXJJCsHoA4voCU5c
2026-06-10 06:53:01 +00:00

2.1 KiB

API Reference — Implementing Fuzz Testing in CI/CD with AFL++

Libraries Used

  • subprocess: Execute AFL++ toolchain commands (afl-clang-fast, afl-fuzz, afl-cmin)
  • pathlib: File system operations for corpus and crash management

CLI Interface

python agent.py compile --source target.c --output target_fuzz [--compiler afl-clang-fast]
python agent.py fuzz --binary ./target_fuzz --input seeds/ --output findings/ [--duration 300]
python agent.py triage --binary ./target_fuzz --crashes-dir findings/default/crashes/
python agent.py stats --stats-file findings/default/fuzzer_stats

Core Functions

compile_target(source_file, output_binary, compiler)

Compiles target with AFL++ instrumentation. Sets AFL_HARDEN=1 for memory sanitizers.

run_fuzzer(binary, input_dir, output_dir, duration_seconds, memory_limit)

Runs afl-fuzz with headless mode (AFL_NO_UI=1), time-limited (-V flag).

Environment Variables Set:

Variable Value Purpose
AFL_SKIP_CPUFREQ 1 Skip CPU frequency check (CI/CD)
AFL_NO_UI 1 Headless mode for CI environments
AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES 1 Continue on crash dir issues

parse_fuzzer_stats(stats_file)

Parses AFL++ fuzzer_stats file. Key metrics: execs_per_sec, paths_total, saved_crashes, bitmap_cvg.

triage_crashes(binary, crashes_dir)

Re-runs crash inputs through the binary and classifies by signal (SIGSEGV, SIGABRT, etc.).

minimize_corpus(binary, input_dir, output_dir, timeout)

Runs afl-cmin to remove redundant seeds from the corpus.

AFL++ Commands Used

Command Purpose
afl-clang-fast Compile with LLVM-based instrumentation
afl-fuzz -i <in> -o <out> -- <binary> Main fuzzing loop
afl-cmin -i <in> -o <out> -- <binary> Corpus minimization
afl-tmin -i <crash> -o <min> -- <binary> Test case minimization

Dependencies

AFL++ must be installed: apt install aflplusplus or build from source.

pip install  # No Python packages needed beyond stdlib