Skip to content
TrackPodcasts
scienceSep 18, 202623:33

An Empirical Study of Harness Design for Coding Agents

About this episode

🤗 Upvotes: 30 | cs.AI, cs.CL, cs.LG, cs.SE

Authors:
Run-Ze Fan, Zihao Zhang, Simin Ma, Yebowen Hu, Shouju Wang, Kaiqiang Song, Fei Liu, Hamed Zamani, Xiaoyang Wang

Title:
An Empirical Study of Harness Design for Coding Agents

Arxiv:
http://arxiv.org/abs/2609.20804v1

Abstract:
Coding harnesses shape how autonomous coding agents translate model capabilities into long-horizon software-engineering performance, yet existing work typically evaluates harnesses as monolithic systems, leaving the effectiveness of individual components unclear. To enable component-level comparisons, we study this question with a lightweight coding harness whose execution loop is fixed while three components are varied: planning, action space, and context management. Across four models evaluated on SWE-Bench Verified and Terminal-Bench 2.1, we evaluate 176 matched settings spanning five context-management strategies, four context-window budgets, and targeted ablations of planning and action space. We find that: (1) Context management becomes increasingly valuable as the context-window budget tightens, with most of its benefit coming from preventing context-overflow failures. (2) Staging rule-based elision before LLM-based summarization provides the strongest overall efficiency among the context-management strategies, whereas making elided content recoverable adds machinery that models rarely use and yields no accuracy gain. (3) Planning shifts from an accuracy scaffold for weaker models to a cost saver for stronger models, with little change in accuracy. (4) Predefined tools improve performance for models with weaker bash proficiency, whereas bash-capable models can operate effectively with a bash-only interface and achieve substantially lower cost, especially on command-line-centric tasks. Trajectory-level analysis explains these effects: context management extends execution trajectories without substantially altering agent behavior, planning changes where trajectories stop, and the action space changes the granularity at which code is written. These findings inform model- and budget-aware harness design and provide a modular framework for evaluating future harness components.

Get every episode summarized

Each time Daily Paper Cast publishes, we email you a written briefing from the transcript — the topics, who appeared, and any specific claims, with the ad reads skipped.

Email me new episodes

Free for 3 shows. No card needed.

Hosts & guests

Transcript ready

512 searchable segments. Every word is indexed and playable.

An Empirical Study of Harness Design for Coding Agents

Daily Paper Cast

0:00
23:33

Full transcript

Daily Paper CastAn Empirical Study of Harness Design for Coding Agents. Machine-transcribed; use the interactive transcript above to jump the player to any line.

Welcome to the Daily Papercast. Today's paper comes from the Hugging Face Daily Paper List of September 18, 2026. And it is garnered 30 upfotes. The paper we're discussing is titled An Empirical Study of Harnessed Design for Coding Agents. It is authored by Runzi Fan and Zihau Zhang with the corresponding author being Runzi Fan from the University of Massachusetts Amherst. Large language models, or LLMs, are increasingly taking on real software engineering tasks autonomously. We're talking about things like closing GitHub issues or completing end-to-end terminal tasks. Exactly. These breakthroughs are made possible by coding harnesses. Essentially, a coding harness is a software layer with various components that guide how these models behave. You have aspects like planning the tasks, deciding the operations that become executable actions, and managing interaction history within a finite context window.

So, it's not just about the core model. The harness itself plays a significant role in performance? Precisely. Previous studies have often evaluated these harnesses as complete systems, but this confounds the effectiveness of the individual components. A key research question then arises. Are these individual components generally useful across different settings or is their effectiveness context specific? Hmm, that's interesting. What are the main objectives of this study? The study aims to dissect the impact of three central components of coding harnesses. Planning, action space, and context management. By holding the model and the overall execution loop constant, the researchers vary these three components to evaluate their independent effects. Got it. And why focus on these specific components? Well, prior systems have identified these as the key elements necessary for the long-term performance of coding agents. Planning maintains task progress. The action space determines how model intents are translated into executable operations.

And context management decides which interaction history stays available as the tasks grow. Okay, let's get into the contributions then. What are the unique angles this paper brings? They propose a lightweight coding harness with a fixed execution loop while varying the planning, action space, and context management components. For context management in particular, they define and evaluate five distinct strategies involving a lesion, recall, and summarization. And they tested this on multiple models in benchmarks? Yes, that's correct. They tested three sizes of the Neumatron 3 model family and Mistral Medium 3.5 across two long horizon coding benchmarks. SWE Bench verified, which deals with repository level issue resolution and terminal bench 2.1, which focuses on end-to-end terminal task completion. That should give a fair amount of data to analyze. So, what were the main findings from this study? There are several key takeaways.

First, context management is most valuable under tight context window budgets. Its primary utility lies in preventing the agent from prematurely terminating due to context overflow. As the context window expands, the benefits become marginal. Interesting. And what about the specifics within context management? The strategy that combined rule-based delusion before LLM summarization proved to be the most efficient. It maintained success rates comparable with other strategies while being more cost-effective. Interestingly, making the elided content recoverable added machinery that was rarely used and didn't improve accuracy. So, a combination approach worked best there. What changes did they see with planning? Planning also showed some variability. For weaker models, it served as an accuracy scaffold by extending the execution trajectory long enough to attempt a meaningful edit. Though this came at a higher computation cost. For stronger models, planning primarily helped in reducing cost by avoiding redundant post-edit verification

with little change in accuracy. And how did the models fare with predefined tools versus a bash-only interface? Predefined tools were more effective for models with weaker bash proficiency, offering a clear performance boost. However, bash-capable models were able to operate effectively with a bash-only interface, leading to significant cost reductions, especially on command-line centric tasks. Fascinating. It seems like the harness design really needs to be tailored based on the model's strengths and the tasks at hand. Precisely. And that wraps up the introduction section of this paper. Ashley, the introduction gave us a solid overview of the studies' objectives and high-level findings. Now, let's dive into the methods they used. How did the researchers go about dissecting these harness components? Sure, Evan. The researchers built a lightweight coding harness from scratch to facilitate controlled experimentation. Their primary goal was to analyze the individual impact

of planning, action space, and context management on coding agents. OK. And what does this lightweight coding harness look like? The harness operates on a fixed execution loop, following a react cycle. Essentially, this means each turn includes a reasoning step where the model decides what to do, an action step where it performs a task, and an observation step where it reviews the outcome. Throughout their tests, they kept this loop constant while varying the planning, action space, and context management components. I see. Let's break down each of these components, starting with the planning. What did they incorporate here? For planning, the researchers implemented a system where the model maintains a persistent task plan. If planning is enabled, the model is instructed to define an initial plan before taking any action and to update this plan throughout its tasks. They wanted to see how this scaffold would help or hinder models with different capabilities. Interesting. And for models where planning is disabled?

In those setups, all planning-related prompts, instructions, and tools were removed. This allowed the research team to isolate the actual effect of having a planning scaffold rather than conflating it with other variables. Got it. What about the action space? The action space defines how the coding agent interacts with its environment. They had two primary conditions here. The predefined tool setup and the bash only setup. The predefined tools covered a wide array of operations like reading, writing, and editing files, listing and searching directories, web fetching, and running shell commands with specific protocols. And what about the bash only setup? In the bash only setup, the model had to interact with the environment exclusively through shell commands. This setup lets bash capable models leverage their command line skills, theoretically reducing complexity, but potentially increasing efficiency. That makes sense. Now, context management is a bit more involved, right?

Exactly. They explored five context management tiers. Here's the breakdown. Tier 0 applied no additional context management and terminated the agent's run if it exceeded the context window. Tier 1 used a lesion to remove stale content without storing it externally. Tier 2 added a recall mechanism, making the elided content retrievable later. Tier 3 used LLM-based summarization to compress older history without a lesion. Finally, Tier 4 combined all these strategies, a lesion first, then storing elided content externally, and summarization as a last resort. That sounds comprehensive. What context window budgets did they test against? They evaluated these strategies under four different context window budgets, 32,000, 64,000, 96,000, and 128,000 tokens. This wide range allowed them to understand how each strategy performs under varying constraints. And you mentioned there were some specific tools and techniques

in place for other aspects? Yes, certainly. Beyond the primary components, they also implemented several supporting mechanisms, like stuck detection, permission handling, and post-edit diagnostics. All these were held constant across experiments to ensure the focus stayed on the main variables, planning, action space, and context management. All right. So they used this harness with multiple models, right? Exactly. They used three sizes of the Nemotron 3 family, 30 billion, 120 billion, and 550 billion parameters, and also included Mr. Medium 3.5 with 128 billion parameters for cross-family comparisons. All models were evaluated on two benchmarks, SWE Bench verified and terminal bench 2.1. That covers a lot of ground. How did they run these experiments? Was there anything special about the setup? For the actual experiments, they leveraged a platform called Langgraph to build the harness

with tasks executed through harbor, a framework for managing long-running jobs. Most tasks were capped at 300 steps with various system-specific constraints, like soft and hard context thresholds, for batom-recent window and maximum tool result lengths. And they measured success rates and costs, correct? That's right. For each experimental setting, they measured two main metrics. Task success rate, which is the fraction of tasks the agent successfully completes, and the mean cost per task, accounting for computational resources used. How about their data analysis? Their analysis went beyond simple success rates. They conducted trajectory-level analysis, which allowed them to see how each component affected task progression, termination behavior, context use, and tool invocation over time. This granular approach helped explain not just whether a component worked, but how and why it worked. That's incredibly detailed. Is there anything else in the method section worth mentioning?

Well, one interesting note is their sophisticated stuck detection mechanism. It watches for repeating identical actions and injects reminders to shift the model's approach if it notices these patterns. This helps minimize wasted cycles and emphasizes adaptive problem solving over brute force. Fascinating. So essentially, the researchers built a meticulous and highly controlled environment to dissect how these core components affect coding agent performance. Exactly. And that's the end of the method section. They've laid a robust groundwork for us to understand how the different components in a coding harness can influence overall outcomes. Ashley, the methods used by the researchers were certainly comprehensive. How did they actually proceed with the experiments and what were the key results? All right, Evan. The researchers conducted their experiments using three sizes of the Neumatron 3 model family and the Mistral Medium 3.5 model. They evaluated these models across two main benchmarks,

SWE Bench verified and terminal bench 2.1, each with distinct challenges. Let's dive into the specifics of the experiments. What were the primary variables they tested? They focused on varying the context management strategies, planning and action space. Specifically, they tested five tiers of context management, no additional compaction, a lesion alone, a lesion with recall, summarization alone, and a combined approach. They also compared predefined tool and bash only setups for the action space. That's a lot of permutations. What were their findings regarding context management? Context management proved to be crucial, particularly under tight context window budgets. When the window was smaller, context management prevented premature termination by avoiding overflow, thereby improving task success rates. As the context window expanded, the marginal benefits of context management decreased. Which strategy turned out to be the most effective?

The combination of elision before LLM-based summarization referred to as tier four was the most efficient. It maintained high success rates while being more cost effective compared to other strategies. Recoverable elision was rarely utilized and didn't show significant improvements in task accuracy. Interesting. What did the experiments reveal about the planning component? For planning, its utility varied based on the model's capabilities. For the weaker Neumatron 330 billion model, planning acted as an accuracy scaffold, prolonging execution enough to attempt meaningful edits, albeit at higher cost. The stronger Neumatron 350 billion and Mistral Medium 3.5 models benefited from reduced redundancy and post-edit verification, which lowered costs without significantly changing accuracy. So planning has different impacts depending on model strength. What about the predefined tools versus bash only interfaces? For models with weaker bash proficiency, predefined tools significantly boosted performance

by offering more structured interactions. Bash capable models, on the other hand, optimized well and bash only setups, resulting in lower costs, especially for command line-centric tasks. Can you elaborate on the trajectory level analysis they performed? Certainly. The researchers analyzed how each intervention impacted task progression, termination behavior, context utilization, and tool invocation. They discovered that context management extended execution trajectories without substantially altering agent behavior, especially under tighter context budgets. How did the planning scaffold affect task trajectories? Planning sustained the weaker Neumatron 330 billion model through initial edits, significantly extending its task length from around five turns to 40 turns. For stronger models, planning shortened the trajectory length by more efficiently handling post-edit verification processes, improving cost effectiveness. And the action space?

Regarding action space, bash only setups enabled larger and fewer interactions for bash capable models. For instance, Neumatron 350 billion saw fewer repetitive patches and more efficient larger edits, while the weaker models struggled without predefined tools and often terminated early without meaningful edits. That's a lot of nuanced details. How does recall play into all this? Recall was rarely used and did not improve accuracy over a lision alone, suggesting that while theoretically useful, in practice, lossless storage mechanisms added unnecessary complexity that models seldom utilized. Its benefits were most apparent under heavy context pressure. Thanks for breaking that down. So it seems the optimal harness configuration depends heavily on the model and task specifics? Exactly, Evan. The choice of harness components should be tailored to the model's inherent strengths and the nature of the task. The experiment section highlights that harness design

is a conditional problem, requiring nuanced configurations based on various parameters. That wraps up the experiment section perfectly, Ashley. Let's get ready to discuss the conclusion and broader insights next. Ashley, we've delved into the methods and experiments comprehensively, but grounding this in the broader context of existing research is crucial. What is the related work section highlight? Great point, Evan. This paper meticulously situates its contributions within the landscape of previous research on coding agents, harness designs, and context management strategies. Let's start with coding agents. How do these systems historically perform and what specific advancements have recent models brought to the table? The researchers referenced several state-of-the-art models designed for coding tasks. Examples include QN3 coder, Kimi K2.5, and K2.6, GLM5, and Mistral Medium 3.5.

These models, as noted, have been tailored for tasks like repository-level issue resolution and end-to-end command line task completion, measured on benchmarks such as SWE Bench and Terminal Bench. So coding agents are not new, but their capabilities have been steadily evolving, right? Exactly. Early on, the focus was on simply generating code. Now, the emphasis is on creating agents that can integrate into longer, more complex workflows as highlighted by their performance on real-world benchmarks. And how does this paper's focus on harness components fit into that evolution? Well, it's interesting. The paper argues that while significant strides have been made, a lot of this progress conflates the capabilities of the model itself with the supporting harness. A prime example given is that different models perform better with different harnesses, which suggests the supporting infrastructure plays a critical role in overall performance. I see. What does this mean for the design of harnesses specifically?

Coding harnesses turn these language models into actionable agents by integrating elements like the control loop, tool interfaces, and context management. Noteworthy harnesses mentioned are Claude code, OpenAI's codex, OpenCode, and OpenHands, with each showing that the harness design substantially impacts performance. So harness design is as crucial as the model's capabilities. What nuances in harness design are explored in this paper? A number of studies have assessed various harness components, but this paper is distinctive in its thorough, targeted examination of specific harness mechanisms across different models. By ensuring the harness remains modular, the researchers could isolate the effects of implementation level planning, workspace action interfaces, and context management policies. Does this mean that the paper's main focus lies on the individual components of harnesses? Precisely. Unlike previous studies that often treat the harness as a monolithic unit, this paper explores

how different harness components independently impact performance. This sharply contrasts previous work, indicating that the model is only part of the equation. Interesting. How do they address context management in this broader landscape? Context management has been a pressing issue as tasks grow more complex and lengthy. Past studies typically rely on static methods like elision or summarization, or dynamic methods like reinforcement learning for context management. This paper uniquely examines these strategies in conjunction and tests them under varying conditions. So they bring a fresh perspective by integrating these strategies? Correct. By combining approaches like rule-based elision, external storage, and summarization, and testing them across diverse models and task families, the researchers provide nuanced insights into how context management strategies perform under different scenarios. Any major takeaways about dynamic versus static context management?

The paper clarifies that while dynamic methods offer potential improvements, they're not universally superior. The effectiveness largely depends on the task and the model's capacity to handle compressed context information. Static strategies, especially when layered, can match or surpass dynamic methods when tailored correctly. That's quite insightful. Is there any related work on practical applications or real-world implementations of these harnesses? Yes, there's a growing body of work on integrating these systems into real-world coding environments. For example, Claude Code and OpenAI's Codex have both seen practical implementations, demonstrating significant utility in real-world software engineering tasks. So, real-world application is already underway? Indeed, but this paper aims to push the envelope by demonstrating that understanding and optimizing the harness components can lead to more efficient, powerful coding agents, offering a roadmap for future real-world applications.

Got it. So, we can expect future coding agents to be even more nuanced and capable thanks to these continued advancements in harness design. Exactly, Evan. This research shows that refining harness design is as critical as developing the models themselves and future systems will likely benefit from this dual focus. Thanks, Ashley. That concludes the related work section. Ashley, we've covered a lot of ground digging into this paper. Let's summarize its key contributions and takeaways for our listeners. Certainly, Evan. At its core, the paper provides a detailed empirical analysis of coding harness components, focusing on planning, action space, and context management. They built a modular harness from scratch, allowing them to isolate and evaluate the impact of each component across multiple models and benchmarks. One major takeaway was regarding context management, right? Yes. The researchers found that context management is crucial under tight context window budgets,

mainly due to its role in preventing premature task termination. The strategy that combined rule-based elision with LLM summarization, term tier four, offered the best balance of efficiency and task success rates. Planning also showed varied effectiveness, depending on the model's strength. Exactly. For weaker models like Nemotron 330B, planning served as an essential scaffold. While for stronger models, it reduced computational costs by streamlining post-edit verification. This demonstrates the importance of tailoring harness components to the specific capabilities of the model. And when it comes to the action space, pre-defined tools helped weaker models, but bash-only setups were better for stronger ones? That's right. Bash-capable models performed more efficiently with a bash-only interface due to their proficiency in handling command-line tasks. Conversely, pre-defined tools provided a structured environment that benefited models with less bash proficiency. So, the overarching message is that harness design

must be adaptable based on the model and task specifics. A one-size-fits-all approach doesn't work here. Precisely. Each component of the harness plays a significant role, and optimizing them according to the model's strengths and task requirements is essential for maximizing performance. Thank you, Ashley, for breaking down this complex paper. And thank you to our listeners for joining us on this deep dive into coding harness design. We hope you found today's discussion insightful. Be sure to join us for future episodes where we continue to explore groundbreaking research in AI and machine learning. Until next time, stay curious and keep learning. Goodbye.

More episodes

More from Daily Paper Cast

View all episodes →