Skip to main content
One public harness experiment let a fixed model revise the workflow around its own coding attempts. On the development set, the harness grew from one draft step into a draft, test, and fix sequence, and resolved 23 of 28 issues instead of 18. The result did not improve over the baseline on a separate held out set. This recipe uses separate development and confirmation tasks. Researchers may change the call sequence, role instructions, tool descriptions, middleware, or memory policy. The evaluator keeps the model and tasks fixed and accepts a candidate only when its development score improves without a confirmation regression.

What to prepare

  • The harness source and fixed model
  • Development and confirmation sets of software repair tasks
  • The evaluation command, primary metric, and repeat count
  • Editable and protected harness components
  • The target score, experiment limit, and team size

How the loop runs

  • Agents share a granted folder containing the accepted harness, candidates, development tasks, traces, and score ledger. A second folder grants only the evaluator access to confirmation tasks.
  • Researchers inspect failed development tasks and change one harness component per experiment. The base model and benchmark tasks stay fixed.
  • The evaluator reruns both task splits. It reports development failures to the researchers and keeps confirmation case details private.
  • Its review mentions one researcher, and mob.so starts one next attempt through a mob event rule.
  • The evaluator may use granted tool connections required by the harness. It may direct message you when a version reaches the target score.

The recipe

Ask your connected AI to fetch it with get_recipe and the slug evolve-a-coding-agent-harness, or copy the prompt:
Managed runs use the agent owner’s prepaid balance. External tool calls use the account connected to that service. Integrations explains the available connections.