Agent skill

Coverage

by hegeldev in hegeldev/hegel-go

How to approach code coverage in this project. An agent skill from hegeldev/hegel-go.

MITAuto-check passedTesting & QA

Install Coverage

skills CLI
$ npx skills add hegeldev/hegel-go --skill coverage -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install hegeldev/hegel-go coverage --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/hegeldev/hegel-go.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/coverage .claude/skills/coverage && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
coverage
GitHub stars
102
Token cost
~705 tokens
SKILL.md length
377 words
Files
3 (incl. references)
Skills in repo
5
Repo updated
First seen
Licence
MIT

At a glance

How to approach code coverage in this project. An agent skill from hegeldev/hegel-go.

  • Works in 3 steps: Read the failure output — it lists each… → Categorize each uncovered line → Run just test locally to iterate faster…
  • Coverage CI fails
  • SKILL.md covers The ratchet is not a budget, Writing good tests and Diagnosing coverage failures
  • Calls just

What it does

Coverage is an agent skill from hegeldev/hegel-go. How to approach code coverage in this project. Use when coverage CI fails, when writing tests for new code, when deciding whether to add // coverage-ignore, or when you need to make untestable code testable. Also use proactively when writing new code to ensure it will be coverable.

Its SKILL.md is about 710 tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/internals.md` and `references/patterns.md`).

It sits in Testing & QA, covering Test coverage. The repository describes itself as: Property-based testing for Go. The licence is MIT.

When your agent uses it

  • Coverage CI fails
  • Writing tests for new code
  • Deciding whether to add // coverage-ignore
  • You need to make untestable code testable

Example prompts

  • “/coverage”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Read the failure output — it lists each uncovered file:line and content.
  2. Categorize each uncovered line
  3. Run just test locally to iterate faster than CI.

What it can do on your machine

Read from SKILL.md and the folder at commit 4eb3241. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • just

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Coverage loads about 705 tokens when it runs, and up to ~2.4k if it reads all its reference files. Until then it costs about 73 tokens; SKILL.md has 377 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~73
When it runs · the whole SKILL.md, loaded when a task matches
~705
With references · SKILL.md plus every file in references/, read only if the agent opens them
~2.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from hegeldev/hegel-go at commit 4eb3241, republished under its MIT licence (© hegeldev). 377 words, ~705 tokens.

Download SKILL.mdSave it as .claude/skills/coverage/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
coverage
description
How to approach code coverage in this project. Use when coverage CI fails, when writing tests for new code, when deciding whether to add // coverage-ignore, or when you need to make untestable code testable. Also use proactively when writing new code to ensure it will be coverable.

Code Coverage

This project requires 100% line coverage for new code, with explicit coverage-ignore annotations only allowed under rare circumstances and with human permission.

This is implemented as a ratchet which counts the number of lines annotated as not requiring coverage. If the number of excluded lines exceeds the ratchet value, or if there are any uncovered lines without a // coverage-ignore annotation, the coverage check fails.

The ratchet is not a budget

The coverage-ignore count in .github/coverage-ratchet.json tracks excluded lines and can only decrease. Just because previous work reduced the count does not mean you have implicit permission to add new uncovered lines. Think of the ratchet as immediately ratcheting down after any reduction — the slack is gone.

You may not add // coverage-ignore annotations without explicit human permission. If you think code is genuinely untestable, your first move should be to refactor it for testability, not to annotate it. See references/patterns.md for testability refactoring examples.

Writing good tests

Tests should catch real bugs, not mirror the implementation.

  • Validate against independent sources: if you can obtain the correct answer some other way - e.g. checking it against an externally defined source, or calculating it through some simpler more expensive method - then you should validate against that in the test.
  • Think in terms of what could go wrong: a test that would still pass after introducing a bug is not testing anything. Figure out ways in which the code could genuinely be wrong and write tests that would catch that if it were.
Show full SKILL.md (127 more words)Show less

Diagnosing coverage failures

When CI coverage fails:

  1. Read the failure output — it lists each uncovered file:line and content.
  2. Categorize each uncovered line:
    • Just needs testing: most code that has not been covered just needs a test written for it. Your default assumption should be that it is straightforwardly testable and you just need to write a normal test.
    • Needs refactoring: some code cannot easily be tested in its current form and needs refactoring to make it testable. See references/patterns.md for information on how to do that.
    • Dead code: if it's truly unreachable, delete it, or replace it with a panic("hegel: unreachable: ...").
  3. Run just test locally to iterate faster than CI.

For details on how the coverage script works and what it auto-excludes, see references/internals.md.

© hegeldev, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in .claude/skills/coverage of hegeldev/hegel-go.

  • SKILL.md
  • references/internals.md
  • references/patterns.md

Open the folder on GitHubat commit 4eb3241

Compare with similar skills

Coverage next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Coverage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Coverage this skillhegeldev/hegel-go102—~705Automated safety check: PassMIT
Requirementsrizsotto/Bear6.5k—~2kAutomated safety check: PassGPL-3.0
Crap Analysisardalis/RiverBooks1352 repos~3.4kAutomated safety check: PassNone
Code Coverages3s-project/s3s311—~789Automated safety check: PassApache-2.0
Project Statusbactopia/bactopia522—~787Automated safety check: PassMIT
Check Coverageldayton/Dippy243—~403Automated safety check: PassMIT

Similar skills

  • Requirements

    rizsotto/Bear

    Write, modify, or review a requirement file under docs/requirements -- pick the single owning file, keep the text contract-only, name IDs so they need no explanation, and verify cross-references and…

    6.5k GitHub stars~2k tokensUpdated yesterday
    Testing & QAAuto-check passed
  • Crap Analysis

    ardalis/RiverBooks

    Analyze code coverage and CRAP (Change Risk Anti-Patterns) scores to identify high-risk code.

    135 GitHub starsUsed in 2 repos~3.4k tokens
    Testing & QAAuto-check passed
  • Code Coverage

    s3s-project/s3s

    Measure and grow the line coverage of the s3s crate. An agent skill from s3s-project/s3s.

    311 GitHub stars~789 tokensUpdated today
    Testing & QAAuto-check passed
  • Project Status

    bactopia/bactopia

    Show a live snapshot of the Bactopia project state — component counts, GroovyDoc coverage, nf-test coverage, and structural issues.

    522 GitHub stars~787 tokensUpdated 2 mo ago
    Testing & QAAuto-check passed
  • Check Coverage

    ldayton/Dippy

    Ensure comprehensive test coverage for a CLI handler. An agent skill from ldayton/Dippy.

    243 GitHub stars~403 tokensUpdated 3 mo ago
    Testing & QAAuto-check passed
  • Guarding Destructive Operations

    kajisho5/ffmpeg-skill

    Add and review preconditions on operations that delete, overwrite, rewrite history, or resolve a caller-supplied name to a filesystem path — refusing instead of warning, placing the guard ahead of…

    1.9k GitHub stars~2.6k tokensUpdated 3 days ago
    Testing & QAAuto-check passed

More from hegeldev/hegel-go

  • Changelog

    hegeldev/hegel-go

    Changelog style guide for writing RELEASE.md files. An agent skill from hegeldev/hegel-go.

    102 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Self Review

    hegeldev/hegel-go

    Review your own changes before creating a pull request. An agent skill from hegeldev/hegel-go.

    102 GitHub stars~588 tokensUpdated today
    Auto-check passed
  • Go Concurrency

    hegeldev/hegel-go

    Go concurrency patterns and pitfalls for this codebase. An agent skill from hegeldev/hegel-go.

    102 GitHub stars~1.3k tokensUpdated today
    Auto-check passed
  • Align Libhegel

    hegeldev/hegel-go

    How to align the Go FFI wrapper to a new libhegel (hegel-c) release.

    102 GitHub stars~5.8k tokensUpdated today
    Auto-check passed

Categories

Questions about Coverage

What does Coverage do?

How to approach code coverage in this project. An agent skill from hegeldev/hegel-go. Coverage is an agent skill from hegeldev/hegel-go. How to approach code coverage in this project.

When should I use Coverage?

Coverage fits situations like: coverage CI fails; writing tests for new code; deciding whether to add // coverage-ignore; you need to make untestable code testable.

How do I install Coverage in Claude Code?

Run `npx skills add hegeldev/hegel-go --skill coverage -a claude-code`. Or copy the skill folder (.claude/skills/coverage in hegeldev/hegel-go) into .claude/skills/coverage in your project. Claude Code loads it when a task matches its description.

How do I install Coverage in Codex?

Run `npx skills add hegeldev/hegel-go --skill coverage -a codex`. Or copy the skill folder (.claude/skills/coverage in hegeldev/hegel-go) into .agents/skills/coverage in your project. Codex loads it when a task matches its description.

Can I use Coverage in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add hegeldev/hegel-go --skill coverage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/coverage, .gemini/skills/coverage, .github/skills/coverage and .opencode/skills/coverage in your project.

What does Coverage need to run?

Going by SKILL.md and its folder, Coverage needs the command-line tools its instructions call (just).

Does Coverage access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Coverage safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Coverage use?

Coverage is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Coverage use?

About 705 tokens (SKILL.md is roughly 2.8k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.7k tokens, read only when the agent opens those files.

What are the alternatives to Coverage?

Skills that share tags, products or a category with Coverage: Requirements (rizsotto/Bear, 6.5k stars), Crap Analysis (ardalis/RiverBooks, 135 stars), Code Coverage (s3s-project/s3s, 311 stars) and Project Status (bactopia/bactopia, 522 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Coverage?

hegeldev (a GitHub organization) maintains it in hegeldev/hegel-go, which has 102 GitHub stars. The repository holds 5 skills in this directory. The repository was last updated on October 7, 2026.

Source: hegeldev/hegel-go on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.