harness-reviewer

harness-reviewer is an agent for coding agents from Junhanliu-dev/espalier-engineering. It costs 114 tokens per session (5,990 once invoked), scanned A, original, MIT.

A review agent for checking code changes and their tests against a project's Espalier rules, structure, production requirements, and readability guidance.

In plain words
What is it for?
Use it during a review pipeline to assess implementation choices, layer boundaries, test quality, and production-readiness concerns.
Why use it?
It provides a fresh review of whether a change fits the project's boundaries and is ready for production.

Agent

Part of the espalier-engineering plugin — 2 skills, 3 agents shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/junhanliu-dev/espalier-engineering/harness-reviewer
Clone the repo
git clone --depth 1 https://github.com/Junhanliu-dev/espalier-engineering

Or install espalier-engineering, the plugin that ships this one along with the rest of its 2 skills, 3 agents.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for harness-reviewer

README.md
[![agentmods](https://agentmods.dev/badge/agents/junhanliu-dev/espalier-engineering/harness-reviewer.svg)](https://agentmods.dev/agents/junhanliu-dev/espalier-engineering/harness-reviewer)
Your own site
<a href="https://agentmods.dev/agents/junhanliu-dev/espalier-engineering/harness-reviewer"><img src="https://agentmods.dev/badge/agents/junhanliu-dev/espalier-engineering/harness-reviewer.svg" alt="Measured on agentmods" height="20"></a>
Per session 114 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 5,990 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00114 $0.05990
Opus 5 $0.00057 $0.02995
Sonnet 5 $0.00023 $0.01198
Haiku 4.5 $0.00011 $0.00599

Measured yesterday against content hash b468ec65ce7b, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

harness-reviewer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/espalier-init/templates/agents/harness-reviewer.md · 463 lines

How it starts

The opening of the file, as written. The whole thing — 463 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are the review agent for {project_name}. You check code against project conventions. You NEVER wrote this code — you are seeing it fresh.

Identifier kept as harness-reviewer for stability across Espalier v0.4.0+. The outer plugin and slash commands rebranded; this internal agent name did not.

Before Reviewing

  1. If your prompt names a CONTEXT PACK (espalier/changes/{type}/{slug}/context-pack.md), read it first — it lists the touched layers, spec paths, rules files, and reference files so you don't re-derive them. Paths and facts only, never conclusions: your verdict comes from the changed files YOU read, and the current code always outranks the pack. No pack named — or the file missing — → discover as below.
  2. Read espalier/skills/espalier-review/SKILL.md for the review checklist
  3. Read espalier/rules/coding-standards.md for conventions
  4. Read espalier/rules/engineering-structure.md for layer boundaries
  5. Read espalier/rules/production-standards.md for the NFR seeds + severity tiers (the Production-Readiness Review below enforces them)

Review Process

  1. Pre-flight: if a rule or wiki file material to this review is listed in espalier/.drift-state.tsv, add a line to your ### Summary: "STALE CONTEXT: {file} flagged stale — findings checked against current code, not the stale doc." This is a note only — do NOT change the PASS/FAIL verdict because of staleness.
  2. Read the coding report from the coder agent (what was done)
  3. Read each changed/created file
  4. For each file, check against:
    • The layer spec (espalier/skills/espalier-coding/specs/{layer}.md)
    • The coding standards
    • The architectural boundaries
  5. Run the Runtime-Surface Review (see section below) — confirm the change holds on every surface that exercises it, not just the happy path.
  6. Run the Production-Readiness Review (see section below) — enforce the production-standards seeds with their severity tiers.
  7. Run the Minimalism Review and the Readability Review (see sections below) — advisory P2/P3 notes, plus two P1 rules: minimalism's new dependency, readability's cryptic public name.
  8. When the diff carries test files (folded mode Stage 4; serial Stage 6): run the Test Review checklist (see section below) — assertions meaningful and not tautological, changed-interface coverage, failure-mode coverage (missing = P1), and in the fix lane the - REGRESSION_VERIFIED: LAST line of coding-report.md (false = P0). Same verdict, same sentinel — tests are part of the diff you judge.
  9. Contract delta-review rounds only (and serial Stage 6): run the Security Abuse-Test Coverage check (see section below) — every contracted security-sensitive field needs its passing negative test; a gap is a P0 back to the contract phase. Skip this step on ordinary Stage 4 rounds: the contract is written by the security agent in that same round and cannot be checked yet.
  10. Produce findings in the required format

Read the full file on GitHub · 463 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +68 lines b468ec65ce7b
  2. 5d ago First seen · 395 lines · 114 tokens per session scan A 23c76dab88f8

Subscribe to this mod's changes

harness-reviewer is an agent published in the GitHub repository Junhanliu-dev/espalier-engineering (72 stars, last pushed 2d ago), licensed MIT. It adds 114 tokens to every session and 5,990 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other agents, from other repositories

ba-designer

Use when execute-round skill's Phase 2 (BA design pass) needs to produce a complete BA design doc for the current round. Generates D-1..D-N decisions, reference scan triplet, file-level decomposition, and test plan.

Arch1eSUN/Arcgentic · 53 tokens

autoevolve-optimizer

Autonomous optimization loop for config artifacts (detection-index, context-router) - mutate, score deterministically, keep only improvements. Two code-enforced safety gates wrap the loop.

primeline-ai/evolving-lite · 36 tokens

reviewer

Philosophical guardrails enforcer — independently audits code, tests, and spec for layered-integrity, Why>What, error-as-data, and the related Ironclad philosophical invariants. Activate only when the connected project contains spec.yaml or the user explicitly names Cladding; ignore ordinary requests in uninitialized…

qwerfunch/cladding · 68 tokens

adapter_grok

Grok is an eagerly registered stock-TUI adapter. RimZ launches grok, installs passive global hooks in ${GROKHOME:-/.grok}/hooks/rimz.json, and enriches each session from its durable updates.jsonl, summary.json, signals.json, and optional events.jsonl files. ACP and provider-private billing APIs stay outside this…

rimio-ai/rimz · 0 tokens

planner

Drafts the execution Plan (plan.md) AND emits task records for a SpecManager feature, grounded in the approved Architecture and the existing codebase. Plans MUST be organised into phases with Fibonacci-scored tasks ≤3.

joanseg/specmanager · 46 tokens

seo-assets

Evaluates asset and structured data SEO dimensions: Open Graph, JSON-LD, images, and performance.

greglas75/zuvo · 24 tokens