Flue is a TypeScript framework for building the next generation of agents
75 points
5 hours ago
| 13 comments
| flueframework.com
| HN
9cb14c1ec0
8 minutes ago
[-]
Ok, real question. What products are people actually building with agent frameworks? I get the utility of AI coding tools and generic chat apps, but that is the extent of utility that I've been able to get from AI. I'm looking for examples that are real businesses, not toys.
reply
afshinmeh
3 hours ago
[-]
Vibe coding aside [1], it's very interesting software projects these days don't really care about adding a single test [2].

[1]: https://github.com/withastro/flue/blob/8fdf8e0e9df5bd33c3120...

[2]: https://github.com/search?q=repo%3Awithastro%2Fflue+test+pat...

reply
amluto
1 hour ago
[-]
I find this impressive: in my experience, codex-rs loves to add tests even when not prompted. Of course, it’s a bit of a crap shoot as to whether the test tests useful behavior.

(My favorite so far: it created an empty file in /home/whatever and added a test to verify that some code it wrote would indeed fail when tested on this empty input and that it would fail with the correct error message. Never mind that this covered approximately none of the desired behavior and that the test would, of course, fail on any other system.

reply
jstummbillig
1 hour ago
[-]
That would be really interesting. I doubt it's the case, actually probably the opposite? The harnesses seem very happy to write extensive test suits, without me having to ask much.
reply
ai_slop_hater
1 hour ago
[-]
And what would they test? This is a meaningless wrapper for Anthropic or OpenAI SDKs.
reply
leothecool
4 hours ago
[-]
What is the problem this solves? Why would I use this instead of telling claude to vomit out the underlying boilerplate.
reply
axpy906
4 hours ago
[-]
Yeah don’t understand. It’s a lot easier to just build your own.
reply
bronson
1 hour ago
[-]
Right. So why would I use this?
reply
egonschiele
41 minutes ago
[-]
As other comments have said, it would be great to add what this does that existing solutions can't. I see the project has been active since Feb, and has < 150 commits. I'd assume this is still pretty immature. So why use this? I think more explanation is needed.
reply
sdevonoes
2 hours ago
[-]
Why TS? The npm ecosystem is insane and insecure. Not a chance we are running this in our machines.

Go/Rust way better choices. Besides, if it’s all vibe coded, it shouldn’t matter for the author

reply
jdw64
1 hour ago
[-]
I think the TypeScript ecosystem is more suitable for this.

I do not think Rust is a bad language. But the agent ecosystem changes very quickly, and in Rust, assembling and reshaping agent workflows is difficult.

Many people prefer Rust, and I understand why. It is a genuinely excellent language, and “Rust is a great language” is a strong message that attracts many developers. But as long as lifetimes exist, I think it will remain difficult.

The lifetime system assumes, in some sense, that humans can fully predict the lifecycle of values and resources. I am not sure that is truly possible in all domains. I am also not sure whether that model is linguistically suitable for the agent ecosystem.

In agent systems, requirements change constantly. Tools change, workflows change, providers change, schemas change, and failure policies change. In that kind of environment, I am not sure Rust is the right fit.

I like Rust a lot, and it is a language I genuinely want to learn. But I am not sure that applying Rust to everything is really the right answer.

I think Rust makes a lot of sense in relatively stable infrastructure ecosystems: operating systems, runtimes, sandboxes, and core low-level layers. But agent code usually requires high-level abstraction and rapid workflow composition. Doing that in Rust takes a tremendous amount of time.

reply
EdwardDiego
37 minutes ago
[-]
They also mentioned Go.
reply
beepbooptheory
1 hour ago
[-]
Why do agent systems change more than other things? Maybe while were here: What even is an agent system anyway? Does one work on agent systems as the final product, or is the agent system what you work with to make something else?
reply
jdw64
1 hour ago
[-]
The definition of “agent” has changed quite a bit, even in ACL papers and other academic work.

Looking at recent examples, the practical boundary seems to be whether an LLM uses tools. In some 2023 papers, certain pipeline-based systems were still referred to as agents. More recently, the term seems to mean something looser but more action-oriented: a system that understands a goal, uses tool calls, selects actions, and executes them.

In other words, there is still no fully settled engineering definition of what an agent is. I am not an expert or a graduate student; I mostly work as a subcontractor who gets hired by university professors to reproduce specific paper metrics.

In general, every system changes frequently in its early stage. Agent systems are no different. The workflows keep changing because the field does not yet have stable, openly accepted standards for AI development.

That is also why Claude, Codex, and others are fighting to define the standard. I think the term "harness," which Anthropic has been popularizing recently, is part of the same trend. By harness I mean the execution layer around the model call itself: context management, tool dispatch, retry and fallback policies, eval loops. That layer is still actively shifting. The naming is not settled, the responsibilities are not settled, and the boundaries between the harness and the model are not settled either. Each provider is drawing those lines a little differently right now.

So my view is this: agent systems change frequently because the definition differs from person to person, the field keeps updating rapidly, and there is no engineering standard that has been firmly established yet.

Even the I/O standard itself is not really settled.

reply
ChaseRensberger
49 minutes ago
[-]
Not ready for production yet but ive been working on https://wingman.actor for quite a while. Its a golang based portable agent runtime with minimal dependencies.
reply
systima
4 hours ago
[-]
How does this differ to Mastra?
reply
bigethan
3 hours ago
[-]
Mastra is a business, this seems to be a helpful lib
reply
esprehn
3 hours ago
[-]
One big difference seems to be Mastra has tests and this project doesn't.
reply
dataviz1000
3 hours ago
[-]
Why would I choose this over Mastra? [0]

[0] https://mastra.ai/

reply
maxdo
2 hours ago
[-]
Why would I choose mastra over anthropic or cursor sdk ?
reply
sexylinux
2 hours ago
[-]
why not pi.dev?
reply
the_mitsuhiko
2 hours ago
[-]
Flue is built on top of pi.
reply
claudiug
2 hours ago
[-]
why not?
reply
dataviz1000
1 hour ago
[-]
I don't know. That is why I ask why.
reply
_s_a_m_
2 hours ago
[-]
The new JavaScript web frameworks are agent frameworks
reply
wartywhoa23
3 hours ago
[-]
So we get it, all stuff agentic will be named after various diseases, how apt.
reply
spankalee
2 hours ago
[-]
Uh... a flue is not a disease.
reply
mrtksn
2 hours ago
[-]
What I wonder is, why do we still need code etc? Shouldn’t all code be just a promt? This way it becomes language and platform agnostic.
reply
yoz-y
2 hours ago
[-]
How would that actually work? Eventually the specification for the CPU has to be clear. For now, that means machine code.
reply
piskov
3 hours ago
[-]
If only there were great backend languages

Go, C#, what have you.

Nah, thank god we have javascript

reply
morphology
25 minutes ago
[-]
You're welcome to port anything over to those languages. LLMs can do it in a couple of days at most.
reply
jdw64
3 hours ago
[-]
Not mentioning Java means we are already on the same wavelength.

I love C# too.

reply
vips7L
3 hours ago
[-]
Kotlin and Scala too if you want the same type of strong type system as TypeScript
reply
braebo
1 hour ago
[-]
No type system is as strong as TypeScript — certainly not Kotlin.
reply
wiseowise
2 hours ago
[-]
Lipstick on Java with vendor lock in or another lipstick on Java made by and for academics, tough choice.
reply
dominotw
1 hour ago
[-]
coded in scala for over a decade. i am glad i dont have to use it anymore. maybe i am just too stupid for it, never understood the point of all that.
reply
wiseowise
2 hours ago
[-]
One is stuck in 80s and another doesn’t even have official open source debugger, are you serious?
reply
pikedev
2 hours ago
[-]
C# is still getting yearly updates and is a joy to work with really.
reply
doublerabbit
3 hours ago
[-]

    import { getVirtualSandbox } from '@flue/sdk/cloudflare';
You lost me there. Looked kind of cool too.
reply
jadar
3 hours ago
[-]
What was offensive? Was it the use of Cloudflare? Or the way the import was written?
reply
skullone
1 hour ago
[-]
Another typescript library! Woohoo!
reply