Remix.run Logo
bodge5000 a day ago

It does looks really interesting and definitely something I'll check out, but (genuine question), should "agent" and "agent harness" be used interchangeably as it is on here? It describes itself as an agent harness, but the tagline is "tiny, open, native coding agent".

I'm not sure harness is the right word either, but that seems to be what the industry has settled on so I'll concede on that, but surely the agent is the thing doing the work (which I guess is the model, or an instance of the model which is why agent is different?), whereas the harness is how the user interacts with the agent. We've had ways to describe that relationship before; client and server, frontend and backend, but again, I'll concede that the shiny new thing doesn't want to use boring old terminology, but I think some consistency and logic in the shiny new terminology is pretty important

That isn't specifically about fx of course, more of a general industry complaint

stellalo 30 minutes ago | parent | next [-]

harness + llm = agent

brap 4 minutes ago | parent [-]

Nowadays most “LLM” endpoints include some sort of server side harness as well, and I’d bet more than one model involved, so it’s really just agents all the way down

cramforce 21 hours ago | parent | prev | next [-]

Harness = the software the agent runs on. This is plain old software. You can trust it as much as any software. Agent = the thing that runs on the harness. It cannot be trusted because it is driven by an LLM

bodge5000 21 hours ago | parent [-]

I get that, but wouldn't that make the agent and the harness two very different things, with the agent being closer to a model (the source of the agent) than a harness? Somebody else mentioned a console/game analogy, with the model being the disc, the agent being the running game, and the harness being the console OS, wouldn't it be like me describing Windows as a game, because games run on it?

21 hours ago | parent | prev | next [-]
[deleted]
amdahl 21 hours ago | parent | prev | next [-]

I think "harness" is a thing, the code/binary, and "agent" is a process, an instantiated run of that code/binary with a given LLM/env, etc.

So its like, "GTA 6" as the disc vs. the specific game you're in the middle of being chased by cops, harness vs agent.

In practice they're intertwined and it becomes hard not to use the terms somewhat interchangeably, but "you ask the agent how the harness works" vs. the other way around, clearly.

bodge5000 21 hours ago | parent | next [-]

Wouldn't the disc in that analogy be the model? Thats the source of the instance. The harness I guess would be the OS of the console running the game

amdahl 21 hours ago | parent [-]

It's more like in that analogy, the LLM is the gamer, instantiated as agent within a given game.

And the virtual world of GTA 6 is actually your codebase/env, the cops chasing are the bugs/angry customers, etc. The harness is providing an accurate/efficient ability for the model to understand/interact with the virtual world, flee the cops, etc. Decomposed at various architectural boundaries per your taste, but that's like loading a skin on the engine.

bodge5000 21 hours ago | parent [-]

That doesn't seem right, surely the gamer would still be you, since you interact with the agent through the harness. If the player is the LLM, what is the human in this analogy? I guess a harness doesn't necessarily need human input (most do of course, but thats not a technical limitation), but then again neither does a game for the same reasons

Regardless though, this is what I mean, we now have 3 definitions for an agent; an instance of a model (which is how I think of it), a model configuration for a given task (from another commenter) and your definition which appears to be somewhere between the two, though it seems we agree with what a harness is.

phiagent 20 hours ago | parent | prev [-]

[dead]

alansaber 21 hours ago | parent | prev [-]

"Harness" should describe the overall system. The user interactions are increasingly negligible (due to model routing, adaptive reasoning, etc). "Agents" are the tool lists/settings provided to the model, etc.