agentsclimarketplace

Testing handbook skills

Skill ComeOnOliver/skillshub/skills/elizaOS/eliza/testing-handbook-skills

🧠 The right skill, one API call. AI agent skills registry with token-efficient skill resolution. 5,000+ skills from 500+ top repos.

Install
npx -y skills add ComeOnOliver/skillshub --skill testing-handbook-skills

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

4.5 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

Testing Handbook Skills

Comprehensive security testing toolkit generated from the Trail of Bits Application Security Testing Handbook.

When to Use

  • Setting up fuzzing campaigns for C/C++, Rust, Python, or Ruby
  • Writing fuzzing harnesses for target functions
  • Analyzing code coverage to guide testing
  • Running sanitizers (AddressSanitizer, UBSan, MSan) to catch memory bugs
  • Performing constant-time testing for cryptographic code
  • Using Wycheproof test vectors for crypto validation

When NOT to Use

  • Smart contract auditing (use security-building-secure-contracts)
  • Writing custom Semgrep rules (use semgrep-rule-creator)
  • General code review (use security-differential-review)
  • Vulnerability hunting without a testing plan (use audit-context-building first)

Sub-Skills (17 total)

Fuzzers

FuzzerLanguageBest ForSkill Path
libFuzzerC/C++LLVM-based coverage-guided fuzzingskills/libfuzzer/SKILL.md
AFL++C/C++Advanced mutation-based fuzzingskills/aflpp/SKILL.md
libAFLC/C++LibAFL-based custom fuzzersskills/libafl/SKILL.md
cargo-fuzzRustRust native fuzzing with libFuzzer backendskills/cargo-fuzz/SKILL.md
AtherisPythonPython coverage-guided fuzzingskills/atheris/SKILL.md
RuzzyRubyRuby coverage-guided fuzzingskills/ruzzy/SKILL.md

Techniques

TechniquePurposeSkill Path
Harness WritingWriting effective fuzzing harnessesskills/harness-writing/SKILL.md
Coverage AnalysisMeasuring and improving code coverageskills/coverage-analysis/SKILL.md
Fuzzing DictionaryCreating effective fuzzing dictionariesskills/fuzzing-dictionary/SKILL.md
Fuzzing ObstaclesOvercoming common fuzzing barriersskills/fuzzing-obstacles/SKILL.md
AddressSanitizerMemory error detection with ASanskills/address-sanitizer/SKILL.md

Static Analysis

ToolPurposeSkill Path
SemgrepFast pattern-matching security scansskills/semgrep/SKILL.md
CodeQLDeep semantic code analysisskills/codeql/SKILL.md

Cryptographic Testing

ToolPurposeSkill Path
WycheproofTest vectors for crypto implementationsskills/wycheproof/SKILL.md
Constant-Time TestingVerify constant-time crypto propertiesskills/constant-time-testing/SKILL.md

Infrastructure

ToolPurposeSkill Path
OSS-FuzzGoogle's continuous fuzzing serviceskills/ossfuzz/SKILL.md

Meta

ToolPurposeSkill Path
GeneratorGenerate new skills from the Testing Handbookskills/testing-handbook-generator/SKILL.md

Workflow

Starting a fuzzing campaign

  1. Choose a fuzzer based on your target language (see Fuzzers table)
  2. Write a harness using the harness-writing skill
  3. Build with sanitizers (AddressSanitizer recommended as baseline)
  4. Create a seed corpus with representative inputs
  5. Run the campaign and monitor coverage
  6. Analyze coverage to find uncovered code and improve the harness
  7. Triage crashes and deduplicate findings

Setting up CI/CD testing

  1. OSS-Fuzz for open-source projects (continuous fuzzing)
  2. Semgrep + CodeQL for static analysis in PRs
  3. Wycheproof test vectors for crypto validation

Quick Start by Language

LanguageFuzzerHarnessSanitizer
C/C++libFuzzer or AFL++LLVMFuzzerTestOneInputASan + UBSan
Rustcargo-fuzzfuzz_target! macroBuilt-in sanitizers
PythonAtherisatheris.FuzzedDataProviderN/A
RubyRuzzyruzzy harness patternN/A

Source Material

Generated from the Trail of Bits Application Security Testing Handbook using the testing-handbook-generator meta-skill.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 327,167. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.