Token导航 LogoToken导航TokenDH.com
研究检索只读github未标认证来源可访问clear审计未展示

coverage-analysis覆盖率分析

Agent Skill

coverage-analysis 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

309

周安装

13

GitHub Stars

公开资料未说明

下载量

108
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:coverage-analysis(覆盖率分析)
来源仓库:https://github.com/5dlabs/cto
仓库路径:skills/coverage-analysis
安装命令:
npx skills add 5dlabs/cto --skill "coverage-analysis"
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

AgentSkills.tonpx skills
npx skills add 5dlabs/cto --skill "coverage-analysis"

简介

发现并安装 AI 代理的技能。

  • 适用于查找、检索和筛选相关信息的场景。
  • 通过 github 安装,支持 Codex、Claude、Cursor、Gemini CLI 宿主环境。
  • 安装前建议确认权限范围和维护状态,注意可能触发联网或命令执行操作。
  • 具体用法请结合来源仓库和原始 README 文档进一步核验。

SKILL.md

Coverage Analysis

Coverage analysis for understanding which parts of code are exercised during fuzzing.

Overview

Code coverage during fuzzing serves two critical purposes:

  1. Assessing harness effectiveness: Which parts are actually executed by fuzzing harnesses
  2. Tracking fuzzing progress: How coverage changes when updating harnesses or fuzzers

When to Apply

Apply this technique when:

  • Starting a new fuzzing campaign to establish a baseline
  • Fuzzer appears to plateau without finding new paths
  • After harness modifications to verify improvements
  • When migrating between different fuzzers
  • Identifying areas requiring dictionary entries or seed inputs
  • Debugging why certain code paths aren't reached

Skip this technique when:

  • Fuzzing campaign is actively finding crashes
  • Coverage infrastructure isn't set up yet
  • Fuzzer's internal coverage metrics are sufficient

Quick Reference

TaskCommand/Pattern
LLVM coverage (C/C++)-fprofile-instr-generate -fcoverage-mapping
GCC coverage-ftest-coverage -fprofile-arcs
cargo-fuzz coverage (Rust)cargo +nightly fuzz coverage <target>
Generate LLVM profilellvm-profdata merge -sparse file.profraw -o file.profdata
LLVM coverage reportllvm-cov report./binary -instr-profile=file.profdata
LLVM HTML reportllvm-cov show./binary -instr-profile=file.profdata -format=html -output-dir html/
gcovr HTML reportgcovr --html-details -o coverage.html

Ideal Coverage Workflow

[Fuzzing Campaign]
        |
        v
[Generate Corpus]
        |
        v
[Coverage Analysis]
        |
        +---> Coverage Increased? --> Continue fuzzing
        |
        +---> Coverage Decreased? --> Fix harness or investigate changes
        |
        +---> Coverage Plateaued? --> Add dictionary entries or seed inputs

Rust: cargo-fuzz Coverage

# Install prerequisites
rustup toolchain install nightly --component llvm-tools-preview
cargo install cargo-binutils rustfilt

# Generate coverage data
cargo +nightly fuzz coverage fuzz_target_1

# Create HTML report script
cat <<'EOF' > ./generate_html
#!/bin/sh
FUZZ_TARGET="$1"
shift
SRC_FILTER="$@"
TARGET=$(rustc -vV | sed -n 's|host: ||p')
cargo +nightly cov -- show -Xdemangler=rustfilt \
  "target/$TARGET/coverage/$TARGET/release/$FUZZ_TARGET" \
  -instr-profile="fuzz/coverage/$FUZZ_TARGET/coverage.profdata" \
  -show-line-counts-or-regions -show-instantiations \
  -format=html -o fuzz_html/ $SRC_FILTER
EOF
chmod +x ./generate_html

# Generate report
./generate_html fuzz_target_1 src/lib.rs

C/C++: LLVM Coverage

# Build with coverage instrumentation
clang++ -fprofile-instr-generate -fcoverage-mapping \
  -O2 -DNO_MAIN \
  main.cc harness.cc execute-rt.cc -o fuzz_exec

# Execute on corpus
LLVM_PROFILE_FILE=fuzz.profraw ./fuzz_exec corpus/

# Process and generate report
llvm-profdata merge -sparse fuzz.profraw -o fuzz.profdata

llvm-cov show ./fuzz_exec \
  -instr-profile=fuzz.profdata \
  -ignore-filename-regex='harness.cc|execute-rt.cc' \
  -format=html -output-dir fuzz_html/

Common Patterns

Identifying Magic Values

Coverage reveals:

// Coverage shows this block is never executed
if (buf == 0x7F454C46) {  // ELF magic number
    // start parsing buf
}

Solution: Add magic values to dictionary file:

# magic.dict
"\x7F\x45\x4C\x46"

Anti-Patterns

Anti-PatternProblemCorrect Approach
Using fuzzer-reported coverage for comparisonsDifferent fuzzers calculate coverage differentlyUse dedicated coverage tools
Generating coverage with -O3Optimizations eliminate codeUse -O2 or -O0
Not filtering harness codeHarness inflates numbersUse -ignore-filename-regex
Ignoring crashing inputsCrashes prevent coverage generationFix crashes first or use process forking

Tips

TipWhy It Helps
Use LLVM 18+ with -show-directory-coverageOrganizes large reports by directory
Export to lcov format for better HTMLllvm-cov export -format=lcov + genhtml
Compare coverage across campaignsStore .profdata files with timestamps
Filter harness code from reportsFocus on SUT coverage only
Automate coverage in CI/CDGenerate reports after scheduled fuzzing runs

Attribution

Based on trailofbits/skills coverage-analysis skill - 45+ installs.

适合场景

01

研究助手

02

事实核查

03

知识库问答

04

带来源的搜索总结

能力概览

能力 1

组合搜索和大模型调用

能力 2

支持多来源检索和总结

能力 3

强调引用来源和事实核查

能力 4

适合研究型 Agent 流程

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

28.57%
按下载量换算31

windsurf

21.99%
按下载量换算24

trae

18.62%
按下载量换算20

OpenCode

10.8%
按下载量换算12

Codex

6.93%
按下载量换算7

Antigravity

3.14%
按下载量换算3

安全审计

暂无安全审计结果可展示。

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills