FR version is available. Content is displayed in original English for accuracy.
Advertisement
Advertisement
⚡ Community Insights
Discussion Sentiment
89% Positive
Analyzed from 1926 words in the discussion.
Trending Topics
#agent#harness#model#coding#agents#why#software#another#opencode#etc

Discussion (46 Comments)Read Original on HackerNews
- fx is a coding agent harness and CLI written in Zig, optimized for research and embeddability as part of larger systems.
- It focuses on minimalism and performance across the board, from system prompt design, to its tools, feature set, and 6.39mib binary.
- For end users, its CLI output style and form factor aims to be closer to a Unix shell than a heavy "IDE in the terminal" TUI.
- It's open source (Apache-2.0), model-agnostic, and suitable for both local and cloud inference.
- Designed for instant installation and embedding in resource constrained environments and agent sandboxes.
- fx cold starts in 10µs and does no unnecessary work or I/O prior to accepting user input, making it ideal for programmatic use.
- Optimal fx.wasm builds produced by the Zig toolchain, which further reduce fx's size, making the network stack pluggable.
- fx contributes single-digit megabytes of memory baseline, allowing you to pack many instances in one machine.
- fx preserves scroll history by default, produces minimal output, and makes sparing use of complex TUI or paints
- Minimal system prompt and tools, to save on token costs and to yield optimal time-to-first-token performance (TTFT).
- Small core, extended via skills, plugins, MCPs, with a Unix-like philosophy to extensibility.
- Designed to work with local models, gateways, direct provider API access or subscriptions.
OpenCode is the best behaved TUI i've seen by far (they invented OpenTUI to make it so good, also in Zig), so it feels less crucial. But it's nice to have there!
The "small core" model is very popular all of a sudden. DeepSeek's new harness is famously like that. https://news.ycombinator.com/item?id=49285244
OpenCode isn't quite as small, but there's very much been a deliberate attempt to drive much more into a plugin-based system. I enjoyed Dax talking about the new constitution of opencode, and the results of his agent comparing OpenCode & the new DeepSeek. https://bsky.app/profile/thdxr.com/post/3msy4gjttoc2f https://bsky.app/profile/thdxr.com/post/3msygiqyg6v2y
> an architectural change we made in opencode2 is nearly everything is an internal plugin / there's 68 of them that cover our built in agents, integrations, config loading, etc
i also think this is such a brilliant fun architectural twist too:
> OpenCode is the first time i could justify event sourcing in a real system / everything that happens is an event which gets projected into the sqlite db
https://bsky.app/profile/thdxr.com/post/3mt2qx3ktib2c
it's so fun seeing new malleable software cores emerge, try to figure out how to augment agency. agentic software striving itself to extend the agency it itself offers. it's been way too long since we've had ambitions to build general system, architectures that serve more than the user. this has held computing back for far too long. this is such an excellent interesting field, of such a more ambitious computing, opening up.
I've actually been wondering lately why coding agent functionality isn't just... part of my shell already. Just another kind of interaction modality with an existing shell. Could probably even be an extension to fish or nu-shell even.
Please stop me from forking off on yet another project though.
https://www.warp.dev/
With some ... intensive ... security/sandboxing/containerizing of some kind though, I guess.
It is a branded "mee too" coding agent that we have seen hundreds of them already.
In particular, aiming to be embeddable into other projects seems rather notable. At least, not something I've remembered of other projects that have made there way across the HN front page.
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
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.
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.
I wonder why it's so large for a program written in Zig. It's basically just a loop that accepts user input, prepares the context, sends it to the LLM, parses the output, invokes the tools, and presents it all in the terminal. Add the built-in prompts and a few checks here and there (like blocking a write tool call before the file has been read first), and I'd expect a truly tiny native agent to be around 200-300 KB max.
The discussion around coding agents nowadays is steering towards harnesses (which is probably a better description of what this is). "Agent" here is doing a lot of heavy lifting and has become a bit of a catch-all term to describe a model + harness + tooling + prompt + some other things that I've probably not thought about. The harness is a part that's being explored more as many believe it's where we can get some better performance out of the models.
This one in particular is from Vercel who provide a service to use models, so they have a vested interest in providing a harness.
We haven't quite hit on the right formula yet, but people are very excited by the possibility.
It is widely known that upvote rings happen on this site.
> Please don't post insinuations about astroturfing, shilling, brigading, foreign agents, and the like. It degrades discussion and is usually mistaken. If you're worried about abuse, email hn@ycombinator.com and we'll look at the data.
This submission has barely 50 votes.
This binary is ~40kb and uses much less ram than fx.
And every says it is the one :)
The person who built this obviously has little understanding of harnesses.
You should have significantly less tools today with how good LLMs have become.
The start up time and binary size are quite literally the most useless stats to base a harness off of lol
Man what with Cloudflare, Vercel and all these tech companies just releasing pure slop.
Just use Pi. It's actually minimal and well thought out by people who actually understand agents.
1. Why do we need yet another coding agent over the rest of them?
2. Is this going to be another Vercel Labs slop project that they will abandon like the others since this is super experimental?