arXiv AI By Christoph Treude, Sebastian Baltes

How Do Coding-Agent Harnesses Self-Evolve? An Empirical Study of Retrospective Adaptation

Read the original on arXiv AI →

The paper investigates how coding agents can self‑evolve their harnesses—software, configuration, and instructions—by reviewing completed sessions and proposing changes. Using Claude Code on 30 SWE‑bench issues, the authors analyzed 125 proposals from the etro skill, implemented 24, and evaluated 12 changes on subsequent tasks. The results show mixed effectiveness: some changes eliminated targeted problems, others reduced or had no impact, and some added unrelated work, indicating that self‑evolution requires mechanisms to assess and refine changes.

Machine-generated by The Flow from the publisher's headline and feed description — not written or checked by a human. The full article lives at arXiv AI.

Hugging Face Trending Papers
Oct 13

Self-Evolving Agent Harness

The paper introduces the Self‑Evolving Agent Harness, a framework that allows an agent’s software scaffolding—prompts, memory, workflows, and executable components—to evolve while keeping the underlying model weights unchanged. It formalizes a feedback‑driven process where accepted revisions persist across runs, separating update targets from proposal and admission mechanisms, and distinguishes changes to interpreted state from revisions to tools and code. The authors analyze evolutionary search, provide generalization and retention bounds under PAC‑learning assumptions, and discuss the impact of persistent harness revisions on knowledge sharing, organizational workflows, and broader implications for scientific reliability, safety, and accountability.

arXiv Computation and Language
4d ago

Choosing Coding-Agent Benchmarks for Practice: Lessons from Task Demands and Agent Behaviour

The paper analyzes 2,487 tasks from five public coding‑agent benchmarks and 14,922 runs of six agent configurations, introducing the Spread‑Novelty‑Centrality (SNC) profile to describe how reference solutions are distributed, added, and the code’s dependencies, history, and complexity. It finds that every pair of benchmarks differs on at least two SNC axes, even when sharing the same task label, and that resolved runs tend to involve less distributed changes and lower centrality values, with patch sizes varying between Claude and Qwen configurations. The authors recommend that practitioners choose evaluation tasks based on change characteristics, inspect task descriptions, and assess patch scope alongside test outcomes to better align benchmarks with real‑world workloads.

By Radin Shayanfar, Keheliya Gallaba, Ahmed E. Hassan