PluginBench
Skill
Review
Audit score 70

harness-creator

walkinglabs/learn-harness-engineering

How to install harness-creator

npx skills add https://github.com/walkinglabs/learn-harness-engineering --skill harness-creator
Claude Code
Cursor
Windsurf
Cline
Full instructions (SKILL.md)

Source of truth, from walkinglabs/learn-harness-engineering.


name: harness-creator description: >- Build, audit, and improve lightweight harnesses for AI coding agents: AGENTS.md/CLAUDE.md, feature state, verification workflows, scope boundaries, lifecycle handoff, memory persistence, context control, tool safety, and multi-agent coordination. license: MIT

Harness Creator

Use this skill to make a repository easier for coding agents to start, stay in scope, verify work, and resume across sessions. Keep the harness small enough that agents actually follow it.

Not for model selection, prompt tuning in isolation, chat UI design, or general app architecture.

Core Model

Every useful coding-agent harness has five subsystems:

SubsystemMinimal artifactPurpose
InstructionsAGENTS.md or CLAUDE.mdStartup path, working rules, definition of done
Statefeature_list.json, progress.mdCurrent feature, status, evidence, next step
Verificationinit.sh or documented commandsTests/checks the agent must run before claiming done
ScopeFeature dependencies and done criteriaPrevents overreach and half-finished work
Lifecyclesession-handoff.md, end-of-session routineMakes the next session restartable

First Move

  1. Inspect what already exists: instruction files, feature/state files, verification commands, docs, package manifests.
  2. Ask only for missing context that cannot be inferred safely: target agent, desired file name, tolerance for structure, and whether overwriting is allowed.
  3. Prefer a minimal harness first. Add memory, tool safety, multi-agent, or benchmark details only when the user's problem calls for them.

Common Tasks

Create a harness

Use the bundled script when working on a local repository:

node skills/harness-creator/scripts/create-harness.mjs --target /path/to/project

Options:

  • --agent-file CLAUDE.md for Claude-oriented projects.
  • --package-manager npm|pnpm|yarn|bun when detection is wrong.
  • --commands "cmd one,cmd two" for custom verification.
  • --force only after confirming overwrites are acceptable.

Then explain what was created and how the user should replace placeholder feature entries.

Audit an existing harness

Run:

node skills/harness-creator/scripts/validate-harness.mjs --target /path/to/project

Report the five subsystem scores, the lowest-scoring area, and the first 2-3 changes that would improve reliability. Treat the lowest score as a candidate bottleneck; confirm with failures, logs, or task outcomes before claiming causality.

Produce a report

Use when the user wants a shareable assessment:

node skills/harness-creator/scripts/render-assessment-html.mjs --target /path/to/project
node skills/harness-creator/scripts/run-benchmark.mjs --target /path/to/project --html /path/to/report.html

Be clear that this is a structural benchmark. Real effectiveness still needs before/after agent sessions on representative tasks.

When to Read References

Load only the reference needed for the user's problem:

Design Rules

  • Keep the root instruction file short: routing and invariants, not a full manual.
  • Put project facts in project docs, not in the skill.
  • Make verification commands explicit and runnable.
  • Require evidence before marking a feature done.
  • Use one active feature unless the harness has explicit multi-agent ownership boundaries.
  • Prefer append/update state files over relying on chat history.
  • Never hide destructive behavior in scripts; overwrites require explicit user approval.

Deliverable Checklist

For a usable minimal harness, leave the target project with:

  • AGENTS.md or CLAUDE.md
  • feature_list.json
  • progress.md
  • init.sh
  • Optional session-handoff.md for multi-session work
  • Documented verification evidence or next action

If you cannot create files, provide exact file contents and commands instead.