logoalt Hacker News

What Is a Harness?

217 pointsby toshtoday at 2:24 PM113 commentsview on HN

Comments

Syntaftoday at 4:19 PM

I’ve been working on a harness for accounting agents at my job recently and it’s been a pretty interesting experience.

We originally started with building a CLI tool so our LLMs could more easily interact with our platform. I cannot recommend enough the value of having an internal CLI. It’s both fun to build and extremely useful for agents.

We paired this with skills initially, but found that the way folks built skills was often too prescriptive and limited to the authors own specific function in the company. A 2k line long skill suffers from the same gaps as we do, if an agent is just following a laundry list it’s less likely to reason about the request it’s doing.

So we instead asked ourselves: what if we just _let_ the agent reason about the work to be done and only provided the tools + guardrails to gather context and perform accounting work?

Turns out frontier models are GOOD at what they do, they outperformed our highly prescriptive skills and were able to work across a larger set of tasks even without instruction on how to do those tasks.

It’s a breath of fresh air from the decade of CRUD I’ve worked on, harness engineering is very neat.

show 4 replies
xrdtoday at 4:48 PM

Does anyone have a suggestion for a harness that is good at handoff?

When I say handoff, I mean:

  * handoff from a terminal CLI to webui (on a phone)? 
  * handoff from one team member, to another?
  * handoff from one communication modality, like writing a prompt in a TUI, to email? 
  * handoff from one model to another, or one provider (openrouter)( to another (llama.cpp)
Does such a thing exist?

I used to think that a PR would be a good place to centralize all this. Who cares what IDE, or developer, or location. But, now I feel like an agent harness might contain that better.

Why do I want handoff? I keep losing context of where my harness is running. Sometimes I am inside an isolated VM. Sometimes I'm on my laptop, sometimes I'm on my home machine with the big GPU for local models. If I could spin up a harness that could identify itself inside my tailscale network, then I could probably have a single web UI which allows me to keep all that context straight.

I'm tempted to experiment with Pi to configure such a thing. But, perhaps there are patterns out there already with a harness I have not considered.

show 3 replies
ni10ctoday at 6:48 PM

Author here. It’s ironic because this post was clearly geared towards non-hackers. But now that we’re here.. the other analogy I considered presenting was:

harness = chassis, model = engine, fuel = tokens, agent = car

I’m curious what y’all might think and whether that analogy carries more explanatory power

show 2 replies
theturtletalkstoday at 3:00 PM

Harnesses are the next frontier. If LLMs are electricity, harnesses are the “electronics.” Right now, it’s like an AC vs DC between Claude and ChatGPT, but once that settles, the harnesses will be the actual value providers.

And Pi is the best harness because of the amazing extension system. You can build extensions that turn Pi into a stock trader, software factory, anything. I tried switching to another harness but none have extension functionality as good as Pi.

Even if there is a new harness or agent project, I tell Pi to dig into the codebase and then make me an extension that brings that functionality into Pi. I did it with Prime Intellect’s and Deepseek’s harnesses and those are built on Pi.

show 17 replies
jascha_engtoday at 3:02 PM

The ai hype word for 2026 after agent in 2025 for any LLM powered application.

Well kind of, I wouldn't be surprised to see that some things marketed as agents are actually good old deterministic software.

show 2 replies
FinnLobsientoday at 8:00 PM

I feel like harnesses will become massively important for enterprise AI agents.

Right now every tool is shipping some kind of AI agent, but I can’t help but feel that AI agents in large companies will eventually be some kind of internal app with internal MCPs, CLIs, APIs etc.

There might be different harnesses for different use cases that different people have different levels of access to.

This would make sense for the platform/infrastructure engineers who can build a modular harness that a person or team can get access to.

You could have agents team members use locally that have memory enabled for personalization and then agents that anyone can use to ask questions about company context, which wouldn’t personalize things.

childofhedgehogtoday at 2:58 PM

Clear, relevant, and easy to understand. Thank you for writing this up, I’ll be sharing this link with all my non-tech friends!

show 2 replies
tedgghtoday at 8:46 PM

I feel I’ve been left behind because all I use is Agents.md / Claude.md and Project.md. No skills, no tools. Everything I want my agent to do is specified in those two files. I also have a particular directory and file structure for things like scripts and sources which is indexed in the mds.

show 1 reply
toshtoday at 3:28 PM

i also like the backpack analogy

the harness is what you take with you on a trip/task

whatever you take with you is not free (system prompt, tools, skills …)

some models are really good even if you bring almost no skills, tools or system prompt

the harness is the complement to the model

the better the model the more minimal the harness can be

harnesses like pi [0] and smol [1]are on the more minimal end of things

[0] https://github.com/earendil-works/pi

[1] https://github.com/smol-env/smol

show 1 reply
kmansm27today at 6:27 PM

From these comments, it seems like people still don't understand what harnesses are... The point is you shouldn't build a harness, you should use a harness and change its system prompt, the tools it has, MCPs it has, give it skills, etc, to make it work for your usecase. You aren't "building a harness on top of pi" if all you're doing is the above. You're just using the harness to connect different things to the LLM.

tingletechtoday at 3:33 PM

A harness is "the code that gives a model an operational environment" according the the framing in https://github.com/shareAI-lab/learn-claude-code -- which is a build your own python claude code tutorial shareAI made after the code leak a few months back.

_pdp_today at 8:40 PM

A harness is all that plus compensating for bad model behaviour - which unfortunately few harnesses actually do

stacktraceyotoday at 3:52 PM

To me, Before agentic programming a harness was like a mini framework in the app. Like for testing mostly. You’d set up the harness and configure it for your test and it would take care of boilerplate setup / optional reporting / benchmarks ect. Still works for both - but yea need a new word I guess

show 1 reply
JBAnderson5today at 4:00 PM

I have a similar mental model to the climbing harness. I think of LLMs as horses and harnesses as the saddle, reins, etc that you put on your horse. You might configure your harness for an individual rider or you might hook together several horses to pull a carriage.

freepiaitoday at 5:01 PM

I think a harness is kind of anything around the intelligence that allows the intelligence to be applied towards something, some sort of task. A great (if off-color) example I remember hearing was how Steven Hawking was brilliant, but really needed that computer setup to be able to apply his intelligence. It really stands out to me as such a clear visual example of what a harness actually is.

Anyway I've been building my own harness on top of pi- www.freepi.ai (it's based on Pi, but now I have an OpenAI compatible endpoint so I'm thinking of it more like free-api :-) ). Basically ad+training supported so I can offer completely free inference. It's really important to me that we don't have harnesses and intelligence trapped in a "have and have not" world. If we don't all have access to intelligence we will end up in a dark place.

Thats again where the visual of Steven Hawking and the wheelchair really stand out in my mind. It's not enough to have the raw intelligence, we need a really good wheelchair too.

thelastgallontoday at 3:30 PM

Is harness load-bearing?

bitwizetoday at 9:08 PM

A harness is the thing that turns sloppotron spew into action. That's... pretty much it. LLMs are still "just" token prediction algorithms, but you can coax them into outputting things that look like commands. The harness figures out which bits are supposed to be commands, executes them, and feeds the output back into the context of the LLM. They also have prompts of their own to guide LLM behavior.

DarmokTanagratoday at 5:55 PM

apparently its an easy way to get on HN, seems like a great blogspam target

cyodetoday at 5:10 PM

Great example of writing about AI that maintains a human voice. Starting off the post with a picture of the author + nod to real-world experience (climbing) is a reasonably strong “this is not slop” signal.

show 1 reply
dwheelertoday at 4:32 PM

Another AI harness is Goose, which is OSS and housed under the Linux Foundation (LF) Agentic AI Foundation (AAIF):

https://github.com/aaif-goose/goose

Full disclosure: I work at the LF, but not the AAIF.

jpitztoday at 4:15 PM

Harnesses are hands.

myegorovtoday at 4:15 PM

Written using a harness? Too verbose to be read.

webdoodletoday at 3:28 PM

I thought this was the next evolution of the smartphone. One so smart that it does all the thinking for you. You don't even have to be conscious, you just do whatever it tells you too. Oh wait, that's what they do already.

vatsachaktoday at 7:30 PM

[dead]

driftproofhqtoday at 3:20 PM

[flagged]

luciana1utoday at 8:41 PM

[dead]

neet_devtoday at 6:59 PM

[flagged]

lovelybunchtoday at 5:03 PM

[dead]

jchip303today at 4:27 PM

[dead]