
Harness Bench
FreeManage and verify evolution bench suites for repositories.
Free · Opens the source repo
What Harness Bench does
Harness Bench is a tool designed to facilitate the management of evaluation corpora for evolutionary testing in software repositories. By utilizing the @metaharness/darwin package, it allows developers to create and verify bench suites that serve as fixed evaluation standards. This decouples the process of evaluating evolutionary variants from the natural tests of the repository, enabling consistent scoring across different commits and forks.
The primary commands available are bench create <repo> and bench verify <suite.json>. The create command scaffolds a JSON suite based on the test corpus of a specified repository, while the verify command checks the well-formedness of an existing suite. This functionality is particularly useful when the standard npm test is unreliable or insufficient for evaluating evolutionary changes, as it provides a deterministic suite that can be used repeatedly.
Developers can benefit from using Harness Bench in various scenarios, such as setting up a new evolution pipeline for a repository with flaky tests, ensuring that the evaluation suite is verified on every pull request, or forking a harness to adapt it for a new domain without losing comparability to the original suite. The tool is designed to degrade gracefully when the @metaharness/darwin package is not available, ensuring that users can still operate with a clear indication of the absence of necessary components.
In summary, Harness Bench is an essential tool for developers looking to implement a robust and reliable evolution scoring system that enhances the testing and evaluation processes within their repositories.
When to use it
Use this tool when establishing a new evolution pipeline or when existing tests are unreliable or slow.
When not to use it
This skill is not suitable if you do not use `@metaharness/darwin` or if your repository's tests are already sufficient for your needs.
What you can build with it
Establishing a New Evolution Pipeline
When setting up a new evolution pipeline for a repo with unreliable tests, use Harness Bench to create a deterministic bench suite.
Continuous Integration Validation
Incorporate `bench verify` into your CI process to check the integrity of the bench suite on each pull request.
Forking a Harness
When adapting a harness for a new domain, copy and modify the existing suite to maintain comparability with the original evaluation.
How to install Harness Bench
View source1. Install with the skills CLI
npx skills add ruvnet/ruflo/harness-bench --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by ruvnetSurfaces metaharness-darwin bench <create|verify> — the supporting verb
for harness-evolve --bench. Use when you want evolution scored against a
fixed corpus (independent of npm test) so champion fitness is comparable
across commits or across forks of the same harness.
When to use
- Setting up a new evolution pipeline for a repo whose
npm testis flaky, slow, or undersized — scaffold a deterministic bench suite once, then evolve against it repeatedly. - CI:
bench verifythe checked-in suite on every PR that touches it (cheap; ~5s). - Forking a harness to a new domain: copy and edit the suite to retarget the evaluation without losing comparability to the parent.
Algorithm
Implementation: scripts/bench.mjs.
--op create
- Resolve
--repopath; reject if missing. - Shell to
metaharness-darwin bench create <repo> [--out <suite.json>]. - Default output path:
<repo>/.metaharness/bench/suite.json(chosen by upstream). - Suite shape (per upstream): array of
{ input, expectedOutput, weight }tasks derived from existing test cases.
--op verify
- Resolve
--suitepath; reject if missing. - Shell to
metaharness-darwin bench verify <suite.json>. - Exit 1 if any task malformed (upstream's signal).
Output shape
{
"success": true,
"data": {
"op": "verify",
"taskCount": 42,
"wellFormed": true,
"durationMs": 870
}
}
Exit codes
| Code | Meaning |
|---|---|
| 0 | OK (or degraded — Darwin absent) |
| 1 | --op verify and suite malformed |
| 2 | Config error or upstream invocation failure |
Graceful degradation
When @metaharness/darwin is absent, emits the standard {degraded: true, reason: 'metaharness-darwin-not-available'} payload and exits 0.
Frequently asked questions about Harness Bench
Similar skills
Spring Boot Testing
Master testing techniques for Spring Boot 4 applications.
GitHub Issues
Manage GitHub issues efficiently with MCP tools.
Geofeed Tuner
Optimize your IP geolocation feeds in CSV format.
Batch Files
Master Windows batch scripting for automation and task management.
Adobe Illustrator Scripting
Automate your Illustrator workflows with ExtendScript.
Plugin Structure
Create and organize Claude Code plugins effectively.
