Flue 1.0 Beta Flue 1.0 Beta is now available, introducing new primitives including autonomous agents, deterministic AI workflows, channels for integrating with Slack and GitHub, and durable agents that recover from downtime. The TypeScript framework aims to be the best open-source solution for building autonomous agents with zero lock-in, backed by a developer experience designed by the creators of Astro. Flue 1.0 Beta is available today Flue’s core primitives — agents, workflows, sandboxes, channels — have come together into a cohesive story of what Flue is, why it matters, and why Flue is the best OSS framework available today for building autonomous agents and workflows with zero lock-in. New primitives include: — autonomous agents + deterministic AI workflows. Agents & Workflows introducing-agents — drop your agents into Slack, GitHub, Linear, and more. Channels introducing-channels — frontend UI for your Flue agents and workflows. @flue/react introducing-fluereact — a revamped client for interacting with Flue. @flue/sdk introducing-fluereact — agents recover from downtime and resume. Durable Agents building-durable-agents-with-flue — support for OpenTelemetry, Braintrust, Sentry, and more. Observability road-to-10 — offline docs for your coding agents and more. New CLI commands road-to-10 ICYMI: Flue is a TypeScript framework for building the next generation of agents. Connect any LLM, build your agent, and deploy it anywhere. It’s all backed by a best-in-class DX, designed by the creators of Astro https://astro.build/ . Try out Flue today. Pass along the prompt below to your coding agent to have it help scaffold your first Flue project for you: Read https://flueframework.com/start.md then help create my first agent... Read our Getting Started /docs/getting-started/quickstart/ guide for full details. Introducing: Agents Flue originally launched with a simple programmable TypeScript harness, built on top of Pi https://pi.dev/ . Flue’s deterministic approach to agent orchestration turned out to be great for background work — structured automations we now call Workflows /docs/guide/workflows/ . Workflows are where your trusted code drives the model from start to finish: // src/workflows/summarize.ts // HTTP - POST /workflows/summarize // CLI - flue run summarize --payload='{"text": "Lorem ipsum..."}' const writer = createAgent = { model: 'anthropic/claude-sonnet-4-6' } ; export async function run { init, payload }: FlueContext { const harness = await init writer ; const session = await harness.session ; const response = await session.prompt Summarize: ${payload.text} ; return { summary: response.text }; } We launched Workflows back in May. But what people wanted to build with Flue was more ambitious: fully autonomous agents. Workflows gave you greater control over exact behavior and data access, but those limits came at a cost. So today we’re introducing an Agent /docs/guide/building-agents/ primitive for building fully stateful, autonomous agents with Flue: // src/agents/triage.ts // HTTP - POST /agents/triage/:id // CLI - flue connect triage // Expose and protect your agent over the internet. export const route = async c, next = next ; // Compose your agent with the context it needs to be successful. export default createAgent = { model: 'anthropic/claude-sonnet-4-6', tools: ...githubTools , skills: triage, verify , sandbox: local , instructions, } ; Instead of writing an exact workflow yourself, Flue agents only need context . Define the context — model, tools, skills, sandbox, instructions, subagents — and then watch your agent solve whatever task you give it, autonomously. Agents and workflows are two sides of the same coin. Both share a common foundational core but serve different needs: - Agents solve open-ended problems on their own. - Workflows run the exact steps you define. Now you can mix and match both primitives to build fully autonomous loops within your repo, company, and hosted products. Introducing: Channels Channels /docs/guide/channels/ connect your agents to external sources like Slack, GitHub, Linear, and more. A channel handles the incoming events and verification boilerplate so that you don’t have to. A channel lives in the channels/ directory. Packages like @flue/slack and @flue/stripe come preconfigured to help you connect to these platforms, but you are also able to build your own custom channels if needed. Here’s an agent hooked up to answer Slack mentions. The channel verifies the event, and then dispatches the request to a new instance of the assistant agent: js // src/channels/slack.ts import { dispatch } from '@flue/runtime'; import { createSlackChannel } from '@flue/slack'; import assistant from '../agents/assistant.ts'; export const channel = createSlackChannel { signingSecret: process.env.SLACK SIGNING SECRET , async events { payload } { const event = payload.event; await dispatch assistant, { id: event.channel, input: { type: 'slack.mention', text: event.text }, } ; }, } ; The same pattern works across Flue’s growing set of first-party channels, so your agents can meet users wherever work already happens. Browse /docs/ecosystem/ Building an AI-First Flue Ecosystem Until recently, extending a framework like Flue required third-party packages, multi-step guides, and rigid codemods. These tools could automate a few predetermined changes, but the difficult work still fell to you: understanding the instructions, adapting them to your project, and finishing everything the installer could not. Coding agents changed everything, so we designed Flue to take advantage. flue add gives your agent a Markdown blueprint with the context and instructions needed to complete an integration end-to-end. Your agent can understand the goal, work within your actual codebase, and make the project-specific decisions that a traditional installer cannot. flue add channel slack flue add channel linear flue add sandbox daytona flue add database postgres flue add tooling opentelemetry Choose what you need, then let your coding agent connect it intelligently to the project you already have. flue add works with your coding agent of choice. Upgrade an existing integration with flue update . It’s like shadcn https://ui.shadcn.com/ , for your agents. Introducing: @flue/react @flue/react makes it easy to build frontend experiences around your agents. The useFlueAgent and useFlueWorkflow hooks stream live data straight into your React app, with no realtime plumbing required to write yourself. js import { createFlueClient } from '@flue/sdk'; import { FlueProvider, useFlueAgent } from '@flue/react'; // Wrap your app once: //