Scan
Run npx harness-score in your repo. The CLI reads your filesystem — 36 checks, zero LLM calls, zero network.
One deterministic command measures your Cursor harness — AGENTS.md, rules, hooks, tests, CI — and tells you exactly what to fix. No AI in the scan. No network. Same score every time.
The problem
Two repos can run the same model and get wildly different results. One has guides that steer the agent, sensors that verify its work, and guardrails that stop damage — the other has none. Harness Score measures that harness in seconds and tells you what to fix next.
How it works
Run npx harness-score in your repo. The CLI reads your filesystem — 36 checks, zero LLM calls, zero network.
Get a maturity level L0–L4, a 108-point breakdown across six dimensions, and the exact gap blocking the next level.
Every failed check links to a remediation recipe in the guide — or let the Cursor plugin's /harness-audit skill apply the fixes.
Example output
Deterministic: same commit, same score — on your laptop or in CI. Gate merges with --min-level 3 so maturity only ratchets up.
harness-score v0.3.0 ~/my-app
Maturity: L2 · Guided Score: 70/108 (65%)
Context & Guides ████████████████░░░░ 80%
Skills & Commands █████████████░░░░░░░ 65%
Hooks & Guardrails ░░░░░░░░░░░░░░░░░░░░ 0%
Sensors & Feedback ████████████████░░░░ 80%
CI Feedback ██████████████░░░░░░ 71%
Hygiene & Safety ███████████████░░░░░ 74%
To reach L3: sensors ≥ 60%; ci ≥ 50%Get started
Maturity ladder
Levels gate on the shape of your harness — not just points. Eighty points of docs with zero tests is L1, not L3.
Show your score
112×20 pill for shield rows. CI regenerates it, or pin a static badge-lN.svg. Copy-paste embeds in Markdown, HTML, iframe, and JSX.
What ships in this repo
8 chapters on harness engineering for Cursor — feedforward, sensors, guardrails.
harness-score — JSON, markdown, badge output. Zero runtime deps.
/harness-audit command + skill to fix every gap the scan finds.
Scan on every push, emit the badge, fail below --min-level.