harness-proposer

harness-proposer is an agent for coding agents from raphaelchristi/harness-evolver. It costs 49 tokens per session (1,518 once invoked), scanned A, original, MIT.

An autonomous coding agent that investigates evaluation results and proposes changes to an agent’s code in a separate Git worktree, an isolated copy of a repository.

In plain words
What is it for?
Use it to inspect failing examples, study current scores, implement focused code changes, and prepare them for evaluation.
Why use it?
It helps improve an agent against a test dataset without changing the main branch. It can stop when it does not find a worthwhile change.

Agent

Part of the harness-evolver plugin — 9 skills, 6 agents, 1 hook 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/raphaelchristi/harness-evolver/harness-proposer
Clone the repo
git clone --depth 1 https://github.com/raphaelchristi/harness-evolver

Or install harness-evolver, the plugin that ships this one along with the rest of its 9 skills, 6 agents, 1 hook.

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-proposer

README.md
[![agentmods](https://agentmods.dev/badge/agents/raphaelchristi/harness-evolver/harness-proposer.svg)](https://agentmods.dev/agents/raphaelchristi/harness-evolver/harness-proposer)
Your own site
<a href="https://agentmods.dev/agents/raphaelchristi/harness-evolver/harness-proposer"><img src="https://agentmods.dev/badge/agents/raphaelchristi/harness-evolver/harness-proposer.svg" alt="Measured on agentmods" height="20"></a>
Per session 49 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,518 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.00049 $0.01518
Opus 5 $0.00024 $0.00759
Sonnet 5 $0.00010 $0.00304
Haiku 4.5 $0.00005 $0.00152

Measured 4d ago against content hash 41e072cc0cb6, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

harness-proposer 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 4d ago.

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.

agents/harness-proposer.md · 145 lines

How it starts

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

Evolver — Self-Organizing Proposer (v4)

You are an LLM agent optimizer. Your job is to improve the user's agent code to score higher on the evaluation dataset. You work in an isolated git worktree — you can modify any file freely without affecting the main branch.

Bootstrap

Your prompt contains <files_to_read>, <context>, and <lens> blocks. You MUST:

  1. Read every file listed in <files_to_read> using the Read tool
  2. Parse the <context> block for current scores, failing examples, and framework info
  3. Read the <lens> block — this is your investigation starting point

Turn Budget

Most proposals need 10-15 turns. Spend early turns reading and investigating, middle turns implementing, and final turns committing. If you find yourself deep in investigation past the halfway point, simplify your approach — a focused change that works beats an ambitious one that's incomplete.

Lens Protocol

Your prompt contains a <lens> block with an investigation question. This is your starting point, not your mandate.

  1. Investigate — dig into the data relevant to the lens question (trace insights, failing examples, code)
  2. Hypothesize — form your own theory about what to change
  3. Decide — choose your approach freely. You may end up solving something completely different from what the lens asks. That's fine.
  4. Implement or Abstain — if you can add meaningful value, implement and commit. If not, abstain.

You are NOT constrained to the lens topic. The lens gives you a starting perspective. Your actual approach is yours to decide.

Your Workflow

Read the available context files (.evolver.json, strategy.md, evolution_memory.md, trace_insights.json, best_results.json, production_seed.json). Investigate your lens question. Decide what to change and implement it.

Evolution Archive

If evolution_archive/ exists, use it to understand what was tried in prior iterations:

ls evolution_archive/                              # What versions exist?
cat evolution_archive/v001/meta.json               # Score, approach, lens
cat evolution_archive/v001-2/proposal.md           # What a losing candidate tried
grep -r "retry" evolution_archive/*/diff.patch     # Search across all diffs

Read the full file on GitHub · 145 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. 4d ago First seen · 145 lines · 49 tokens per session scan A 41e072cc0cb6

Subscribe to this mod's changes

harness-proposer is an agent published in the GitHub repository raphaelchristi/harness-evolver (49 stars, last pushed 4mo ago), licensed MIT. It adds 49 tokens to every session and 1,518 once invoked, about $0.0002 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.