HarnessTax: How Much Does the Harness Matter for Coding Agents?
Thread
Unofficial Hacker News client; not affiliated with Y Combinator.
HarnessTax: How Much Does the Harness Matter for Coding Agents?
Unofficial Hacker News client; not affiliated with Y Combinator.
lukax · · focus · HN ↗
E.g. for editing files with Claude models you should use Edit(file_path, old_string, new_string, replace_all) but with GPT models you should use apply_patch_call(patch) (where patch is a custom patch string with custom grammar).
It appears newer models are better at narive harness tool calls and worse at custom tools that look similar to default tools.
<a href="https://lucumr.pocoo.org/2026/7/4/better-models-worse-tools/" rel="nofollow">https://lucumr.pocoo.org/2026/7/4/better-models-worse-tools/
nativeit · · focus · HN ↗
shepherdjerred · · focus · HN ↗
I can understand this take 4-5 years ago but I have no idea how that's your position in 2026
raffael_de · · focus · HN ↗
not RegEx ... more like a "fuzzy" DSL.
sn0n · · focus · HN ↗
Or is that just why my model likes to break out of the sandbox, going strait to exec shell command and editing files using python on the cli?
kouteiheika · · focus · HN ↗
This is true. For example, the other day I was doing some testing with DeepSeek-V4-Flash-0731, and I gave it a tool called "EditFile" with "old_content" argument. It ignored the tool definition and called it with "old_string" instead, presumably because it was trained on a bunch of Claude Code traces.
So either make sure your tools look nothing like the tools in the popular harnesses, or make them similar.
raffael_de · · focus · HN ↗
identical. similar is what you tried and it didn't work.
kouteiheika · · focus · HN ↗
dns_snek · · focus · HN ↗
imtringued · · focus · HN ↗
We are still witnessing the same underlying problems of transformers.
[0] Think back to all the publicity stunts like the Hugging Face. They are meant to convince you that the agents have somehow progressed past the transformer limitations when those publicity stunts are actually expressions of transformer limitations.
TedDoesntTalk · · focus · HN ↗
atwrk · · focus · HN ↗
The burden of proof that this isn't just a publicity stunt again is squarely on them.
nottorp · · focus · HN ↗
[dead]
wollowollo · · focus · HN ↗
slopinthebag · · focus · HN ↗
drdexebtjl · · focus · HN ↗
I’ve seen this before and the conclusion ends up being “use the native harness”, which I don’t think is an acceptable solution.
lukax · · focus · HN ↗
const usePatch = model.modelID.includes("gpt-") && !model.modelID.includes("oss") && !model.modelID.includes("gpt-4")
Pi uses its own tools, like Armin wrote in the linked article.