Supercov

Coverage, security and code quality for coding agents

Measure code quality with npx supercov.

How Supercov works

Supercov measures coverage, reviews code quality and security with Jev, and gives coding agents actionable gaps in JavaScript and seven other languages.

Read more
CodexClaude CodeCursorGemini CLIGitHub Copilot
CodexClaude CodeCursorGemini CLIGitHub Copilot
Improve coverage, security and code quality•••

Working

Supercov gives the agent the next thing to fix.

Each run returns the quality score, security findings and the uncovered paths. The agent fixes, refactors or adds focused tests, reruns the suite, and continues while useful work remains.

Any language.

JavaScript, TypeScript, Rust, Python, Ruby, Go, Java, and Kotlin—with more to come.

Any agent.

Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot—and more.

Free and open source.

MIT licensed. Inspect, extend, and run it anywhere.

How Supercov compares.

JavaScript & TypeScript

Sources and notes September 25, 2026
  • Vitest uses its standard V8 or Istanbul coverage provider here. Supercov works with your existing test runner.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Python

Sources and notes September 25, 2026
  • Supercov measures CPython 3.9 and newer. pytest-cov uses coverage.py; enable test contexts for per-test coverage.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Ruby

Sources and notes September 25, 2026
  • Supercov supports MRI Ruby: full MC/DC on 3.4+, limited measurement on 3.3. SimpleCov 1.3 requires Ruby 3.3+.
  • SimpleCov’s per-test coverage requires track_tests. Neither tool promises exact per-test coverage for overlapping threaded tests.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Rust

Sources and notes September 25, 2026
  • Supercov requires Rust 1.95 and supported Cargo runners. cargo-llvm-cov’s branch and MC/DC flags require nightly. Tarpaulin’s branch option is not implemented.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Go

Sources and notes September 25, 2026
  • Supercov requires Go 1.22 or newer and runs your own `go test` command against an instrumented copy of the module.
  • The Go toolchain counts statements per run. A test that calls t.Parallel() shares one counter array with the tests beside it, so Supercov counts that coverage run-wide rather than naming a test for it.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Java

Sources and notes September 25, 2026
  • Supercov requires JDK 17 or newer with Maven or Gradle, and measures JUnit 5, JUnit 4 through Vintage, TestNG, Kotest and Spock per test, instrumenting an isolated copy rather than your build file. If tests still run concurrently it says so and drops condition coverage instead of guessing.
  • JaCoCo counts branches from bytecode and reports per run, not per test. OpenClover records per-test coverage from source instrumentation; neither computes MC/DC.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Kotlin

Sources and notes September 25, 2026
  • Supercov measures Kotlin through the same JVM path as Java, taking test identity from the framework’s own lifecycle, so Kotest and Spock tests keep the names they report. A condition that also narrows a type carries no MC/DC obligation, and the run names every such case.
  • Kover measures with its own coverage library by default and can switch to JaCoCo. Both report line and branch coverage per run; neither computes MC/DC or per-test coverage.
  • Per-test coverage means individual tests, not test files. Supercov needs a supported runner; concurrency can limit attribution.
  • Assertion coverage links source to passing assertions through an agent-reviewed map. It is not a mutation score or proof of correctness.
  • Code quality scoring means a per-file score of the source itself, from named property checks answered by Jev. The tools compared here report coverage; linters and dedicated quality platforms are outside this table.
  • Security review means named security checks per file, also answered by Jev. Findings are patterns to review, not a security score or proof of exploitability; dedicated security scanners are outside this table.
  • Reports means a browsable HTML report from the tool itself. Supercov’s is one self-contained file that also carries assertions, quality and security; the other tools’ reports cover coverage.

Built-in coverage reports, unless noted. Read the comparisons