flue 是什么?

Flue 是 Astro 团队(withastro)出品的「Agent Harness 框架」:一个用 TypeScript 构建无头、可编程 agent 的运行时框架。它把 Claude Code 那套 agent harness(sandbox + skills + AGENTS.md + 工具)做成 100% headless、无 TUI/GUI 的库——会用 Claude Code 就大致会用 Flue,但智能体逻辑大多写在 Markdown(skills、context、AGENTS.md)里,TS 只负责编排。作者类比是「agent 界的 Astro/Next.js」:write once,构建后可部署到 Node.js、Cloudflare Workers、GitHub Actions、GitLab CI 等多种环境。当前 runtime 为 0.7.0,README 顶部明确标注 Experimental、API 可能变动。

⭐ 6,823 Stars 🍴 382 Forks TypeScript Apache-2.0 作者: withastro 商业引流:低
来源:README 顶部说明/Packages;packages/runtime/package.json version=0.7.0;license Apache-2.0 查看 GitHub 仓库 →

为什么值得关注

上线约三个月即超过 3.6k 星,热度有两个清晰来源:一是「withastro」这块招牌——Astro 团队做 agent 框架,自带社区信任与关注;二是它切中了一个真实痛点:现有 agent 工具(Claude Code/Codex/OpenCode)默认绑定人类操作者和终端界面,难以程序化、规模化嵌入服务端,而 Flue 把 harness 做成 headless 库并默认用轻量虚拟 sandbox(just-bash),让「为每个请求起一个 agent」在高并发下也可行。runtime-agnostic + 多 sandbox provider 的定位进一步放大了想象空间。

来源:GitHub 3,653 stars / 191 forks,created 2026-02-07;README 设计理念

核心功能

无头可编程的 agent harness

init() 创建一个 harness(模型默认值、工具、sandbox、文件系统、会话的配置句柄),harness.session().prompt() 发消息驱动 agent 自主行动;可用 valibot result schema 拿到类型化、经校验的结构化返回,便于据此编排后续逻辑。

来源:README Quickstart/Agents-Harnesses-Sessions;deps valibot、@valibot/to-json-schema
默认虚拟 sandbox + 多 provider 容器

默认用 just-bash 驱动的虚拟 sandbox(比每个 agent 起一个容器更快、更省、更易扩展);需要真实 Linux 环境时可切换 local()(Node,直接用宿主 shell,适合 CI)或通过 connectors 接入 Daytona、E2B、Modal、Cloudflare Shell 等容器 provider。

来源:README Examples/Custom Virtual Sandboxes;connectors/sandbox--*.md;deps just-bash、@cloudflare/shell
逻辑写在 Markdown:skills / roles / AGENTS.md

skills(可按 frontmatter name 或相对路径引用)、roles(即 subagent,可在 harness/session/call 三级设置并按优先级覆盖)、AGENTS.md 都从工作目录发现;session.task() 可起一次性子 agent 做并行研究/探索,LLM 也能自行用 task 工具委派。

来源:README Agents/Tasks/Roles;triage 示例 session.skill('triage', ...)
运行时无关 + 统一 CLI 工作流

flue dev(Node 或 Cloudflare 本地服务器)、flue run(构建可部署产物并一次性运行,适合 CI/脚本)、flue build(构建到 ./dist 部署为 Web 服务,支持 Node 与 Cloudflare Workers+Durable Objects)、flue add(把 connector 安装说明交给你的编码 agent 写入项目)。

来源:README Running Agents / Connectors
触发器、会话持久化与远程 MCP 工具

agent 通过 triggers(如 webhook)暴露为 HTTP 端点,URL 的 段标识 agent 实例(一个客户/仓库/会话的持久作用域);Cloudflare 上会话由 Durable Objects 持久化、跨请求存活,Node 默认内存可自定义 store;connectMcpServer() 以运行时工具适配器接入远程 MCP(默认 streamable HTTP)。

来源:README Agents-Harnesses-Sessions / Remote MCP Tools;deps @modelcontextprotocol/sdk、hono

技术架构

pnpm + turbo 管理的 monorepo。核心是 packages/runtime(@flue/runtime 0.7.0):实现 harness、sessions、tools、sandbox 抽象,HTTP 层用 Hono(含 hono-openapi 暴露 OpenAPI),schema 用 valibot,虚拟 sandbox 用 just-bash,Cloudflare 目标用 @cloudflare/shell 与 codemode,并集成 @modelcontextprotocol/sdk 做 MCP 适配;底层 agent 内核复用了 @earendil-works/pi-agent-core 与 pi-ai(即 Pi agent 引擎)。packages/cli 提供 flue 二进制与 build/dev 工具,packages/sdk、packages/connectors 是配套包,apps/www 是文档站。一个值得注意的设计:connectors(各 sandbox provider 适配)不是 npm 包,而是托管在 flueframework.com 的 Markdown 安装说明,由用户的编码 agent(claude/codex 等)读说明后把适配代码写进项目的 connectors/ 目录——把「集成第三方」本身也变成了 agent 任务。

来源:tree(packages/runtime|cli|sdk|connectors、apps/www、turbo.jsonc、pnpm-workspace.yaml);runtime deps;README Connectors

项目知识图谱

知识图谱:项目核心节点(中心)+ 核心功能(内环六边形)+ 关键技术依赖(外环 chip) @earendil-works/pi-agent-core / pi-ai (agent 内核)@earendil-work… hono + hono-openapi (HTTP)hono + hono-op… valibot (schema 校验)valibot just-bash (虚拟 sandbox)just-bash @modelcontextprotocol/sdk (MCP)@modelcontextp… 无头可编程的 agent harness无头可编程的 agent h… 默认虚拟 sandbox + 多 provider 容器默认虚拟 sandbox +… 逻辑写在 Markdown:skills / roles / AGENTS.md逻辑写在 Markdown:s… 运行时无关 + 统一 CLI 工作流运行时无关 + 统一 CLI… 触发器、会话持久化与远程 MCP 工具触发器、会话持久化与远… flue 项目本体 核心功能 关键依赖

中心为项目本体,内环 = 核心功能模块,外环 = 关键技术依赖;按 deep.json 中的 core_features 与 tech_stack.key_deps 自动生成

技术栈

语言TypeScript框架自研 agent harness 框架(底层基于 Pi agent 内核)
@earendil-works/pi-agent-core / pi-a…hono + hono-openapi (HTTP)valibot (schema 校验)just-bash (虚拟 sandbox)@modelcontextprotocol/sdk (MCP)@cloudflare/shell / codemodeulidxpnpm + turbo (monorepo)
runtime-agnostic:Node.js(单 .mjs 产物)/ Cloudflare Workers + Durable Objects / GitHub Actions / GitLab CI;sandbox 可选 just-bash 虚拟、local 宿主、或 Daytona/E2B/Modal 等容器
来源:packages/runtime/package.json deps;README Running Agents

快速上手

Flue 项目把 agent 放在 .flue/agents/<name>.ts。最简 agent 只需声明 triggers(如 { webhook: true })和一个默认导出 handler,里面 `const harness = await init({ model: 'anthropic/claude-sonnet-4-6' })` → `const session = await harness.session()` → `session.prompt(...)`,并可传 valibot result schema 取类型化结果。本地开发 `flue dev --target node`(默认端口 3583)或 `--target cloudflare`(需装 wrangler),用 `--env .env` 注入环境变量。CI/一次性运行 `flue run <agent> --target node --id ...`;部署 `flue build --target node|cloudflare` 产出 ./dist。注意框架处于 Experimental 阶段、API 可能变动,且要使用模型需配置对应 provider key。
来源:README Quickstart / Running Agents

使用场景

适合:①想把 agent 嵌入服务端、做成 HTTP 端点或高并发后台任务,而非给人用的 CLI/桌面工具的开发者;②CI 场景的自动化 agent(issue 自动 triage、PR 处理),用 local() 直接调 gh/git/npm;③需要把同一套 agent 部署到 Node 和 Cloudflare 等多环境、并按需选不同 sandbox provider 的团队;④已熟悉 Claude Code 心智模型、想把 skills/AGENTS.md 那套用代码编排起来的人。不适合:想要稳定生产 API 的项目(Experimental、API 会变)、以及只想要一个交互式 CLI agent 的最终用户。

来源:README Examples(support/triage/coding)/设计理念,结合定位推断

优势与局限

优势

  • 定位精准且新颖:把 agent harness 做成 headless、可编程、runtime-agnostic 的库,填补了「Claude Code 很好用但难以程序化嵌入服务端」的空档
  • 默认虚拟 sandbox(just-bash)在高并发下比每请求起容器更快更省,工程上对规模化友好
  • 心智模型亲切:复用 Claude Code 的 skills/AGENTS.md/role 概念,逻辑写在 Markdown,上手门槛低
  • 可移植性强:同一套 agent 可部署到 Node/Cloudflare/CI,dev 与 deploy 走同一 bundler,降低环境差异
  • withastro 出品 + 类型化结果 schema + Hono/OpenAPI,工程化与社区基础较扎实

局限

  • 明确处于 Experimental 阶段,README 自述 API 可能变动,runtime 仍是 0.7.0,不宜用于稳定生产
  • 尚无正式 GitHub Release,版本与兼容性承诺不稳定,升级可能有破坏性改动
  • MCP 支持是第一版,能力有限:不自动探测 transport、不 spawn 本地 stdio MCP、不处理 OAuth 回调
  • connectors 以「Markdown 说明 + 由你的编码 agent 写入项目」方式集成,灵活但也意味着集成质量依赖 agent 生成、缺乏版本化保证
  • 真正的容器/远程 sandbox 能力依赖 Daytona/E2B/Modal 等第三方付费服务,完整能力有外部成本
来源:README Experimental 标注/MCP 限制说明/Connectors;releases 查询为空

最新版本

仓库尚无正式 GitHub Release,以 monorepo 包版本维护,核心 @flue/runtime 为 0.7.0;主分支持续高频更新(最近 push 2026-05-22)。README 顶部保留了指向 v0.0.x 旧分支的说明,表明已有过一次较大的架构换代,目前处于 0.x 早期活跃开发期。

来源:GitHub 无 releases;packages/runtime/package.json=0.7.0;pushed_at 2026-05-22;README v0.0.x 说明

总结评价

Flue 抓住了一个真问题:Claude Code 这类 agent harness 体验很好,但默认面向人、绑定终端,难以程序化地嵌进服务端和 CI。它把 harness 拆成 headless、可编程、可多环境部署的库,并用虚拟 sandbox 解决了规模化成本,方向和工程品味都很对,加上 withastro 的背书,3.6k 星不意外。但要清醒:这是一个明确标注 Experimental、runtime 还在 0.7.0、无正式 release 的框架,MCP 等能力也才第一版。适合愿意跟随其演进、做服务端/CI agent 的早期采用者深入试用,暂不建议押注到稳定生产系统上。

来源:综合 README 定位/Experimental 标注、tree 工程结构、版本状态的事实判断

常见问题

flue 是什么?

Flue 是 Astro 团队(withastro)出品的「Agent Harness 框架」:一个用 TypeScript 构建无头、可编程 agent 的运行时框架。它把 Claude Code 那套 agent harness(sandbox + skills + AGENTS.md + 工具)做成 100% headless、无 TUI/GUI 的库——会用 Claude Code 就大致会用 Flue,但智能体逻辑大多写在…

flue 有哪些核心功能?

flue 的核心功能包括:无头可编程的 agent harness、默认虚拟 sandbox + 多 provider 容器、逻辑写在 Markdown:skills / roles / AGENTS.md、运行时无关 + 统一 CLI 工作流、触发器、会话持久化与远程 MCP 工具。

flue 为什么最近很受关注?

上线约三个月即超过 3.6k 星,热度有两个清晰来源:一是「withastro」这块招牌——Astro 团队做 agent 框架,自带社区信任与关注;二是它切中了一个真实痛点:现有 agent 工具(Claude Code/Codex/OpenCode)默认绑定人类操作者和终端界面,难以程序化、规模化嵌入服务端,而 Flue 把 harness 做成 headless 库并默认用轻量虚拟…

flue 适合哪些使用场景?

适合:①想把 agent 嵌入服务端、做成 HTTP 端点或高并发后台任务,而非给人用的 CLI/桌面工具的开发者;②CI 场景的自动化 agent(issue 自动 triage、PR 处理),用 local() 直接调 gh/git/npm;③需要把同一套 agent 部署到 Node 和 Cloudflare 等多环境、并按需选不同 sandbox provider 的团队;④已熟悉 Claude Code 心智模型、想把…

透明度声明
本页内容由 AI(大语言模型)基于以下公开材料自动生成:GitHub README、代码目录结构、依赖文件、Release 信息。 分析时间: 2026-05-22 17:36. 质量评分: 100/100.

数据来源:README、GitHub API、依赖文件