跳转到内容

输入关键词开始搜索文档。

为什么选择 Flue?

最后更新 查看 Markdown 源文件

Flue 是一个开源的智能体框架,由 Astro 的创建者打造。使用类似 React 的 hooks API,在 TypeScript 中用你喜欢的 LLM 来构建智能体。在本地运行它们,或部署到任何地方:Node.js、Cloudflare、GitHub Actions、GitLab CI/CD 等。

如果你想构建基于 LLM 的东西——脚本、工作流、CI 任务、产品或服务,任何东西!——那么 Flue 可能正适合你。

特性

Flue 是一个完整的智能体构建框架。 它包含了构建、运行和部署智能体所需的一切。以下是一些亮点:

  • 智能体: 跨对话和事件保持上下文的自主智能体。
  • 沙箱: 智能体运行代码和执行实际工作的安全环境。
  • 子智能体: 让你的智能体将专业工作委派给合适的专家。
  • 技能: 打包专业知识,智能体在任务需要指导时加载它们。
  • 工具: 智能体调用 API、查询数据并进行更改——使用你定义的代码。
  • MCP 服务器: 将智能体连接到开放 MCP 生态系统中的数千个工具。
  • 持久状态: 在每个智能体上写入数据,并在状态变化时更新其能力。
  • 聊天: 将你的智能体接入 Slack、Teams、Discord、GitHub 等平台。

设计原则

以下是核心设计原则,解释了我们为什么构建 Flue、它要解决的问题,以及为什么 Flue 可能是你项目或团队的最佳选择。

Flue 是……

  1. 框架优先: 智能体框架是 Flue 的核心,而非一个功能。
  2. 动态的: 智能体是一个需要编写的程序,而非一个需要配置的对象。
  3. 持久的: 我们完成了持久化的艰难工作,这样你就不用操心了。
  4. 开放的: 开放的模型、沙箱和托管平台——没有供应商锁定。
  5. 为扩展而生: 为非平凡的智能体而设计——从入门项目到十亿美元级的公司。

框架优先

Flue 智能体是真正的智能体,与 Claude Code 或 OpenClaw 同出一脉。 Flue 建立在 Pi 之上——OpenClaw 背后的开放智能体框架——并将其深度集成到你构建的每个智能体中。每个智能体都获得完整的框架——工具、技能、指令,以及当你附加一个沙箱时,它需要自主地朝目标工作的能力。

这就是 Flue 和 SDK 之间的区别:框架是框架的核心,而非它的一个功能。

参见智能体了解更多。

动态的

Flue 有两个核心原语,可以释放真正的动态智能体行为:函数和 hooks。 智能体函数让你将智能体设计为一个函数(而非静态配置对象,许多其他框架会迫使你这样做)。智能体 hooks 让你可以用声明式功能扩展你的智能体。

函数和 hooks 共同使智能体具有反应性和状态性。通过持久状态,智能体拥有真正的状态:它可以在整个对话中读写的数据。能力可以跟随该状态——当先决条件满足时出现的工具,仅在任务需要时附加的沙箱。智能体的编写方式类似于组件,因为 Web 开发者已经知道如何编写声明式、反应性系统。

参见智能体 Hooks 获取完整的工具包。

持久的

持久化是在生产环境中运行智能体最困难的部分,因此 Flue 为你完成了这项工作。 构建一个演示智能体很容易;保持一个智能体持续运行则不然。服务器会重启,提供商会超时,客户端会在响应中途断开连接。你为了应对所有这些情况而编写的代码与你的智能体无关——它是恢复管道,而且很容易出错。

Flue 将其内建。每个会话都会被记录到一个持久的、可重放的日志中,因此已接受的工作永远不会丢失:中断的会话在运行时恢复时会自动继续,客户端重新连接时无需重新开始。你编写智能体,运行时让它保持活力。

参见持久性了解每个部署目标的具体契约。

开放的

Flue 在每一层都是开放的——模型、沙箱和托管平台——这样你就永远不会被锁定。 许多智能体框架和 SDK 在某些方面是封闭的:它们假设使用自己的模型,只在自己的沙箱中运行,或只部署到自己的云上。我们认为这是本末倒置。

Flue 刻意保持开放:

  • 开放模型: 连接到任何支持的 LLM 提供商。
  • 开放沙箱: 连接到远程提供商,或使用内置的虚拟沙箱。
  • 开放部署: 为 Node.js、Cloudflare、GitHub、GitLab 等构建你的智能体。

同样的开放性也适用于协议:Flue 建立在 MCP 和 Durable Streams 等开放标准之上,而不是发明自己的标准。

参见沙箱和部署了解更多详情。

为扩展而生

Flue 的设计旨在随复杂性扩展。 一个简单的智能体——将 webhook 连接到一个具有几个能力的智能体并返回结果——应该是容易的,Flue 保持了这种简单性。但简单的智能体并非智能体框架应该优化的全部。

今天没有其他人能很好服务的智能体是非平凡的那些:驱动整个内部服务、产品、公司的智能体。在这个层面上构建是一个完全不同的问题,而这正是 Flue 优先解决的问题。当一个设计决策会在非平凡智能体和演示便利性之间做取舍时,Flue 选择非平凡的一方。

Flue 为你而建,可以随你扩展,从一个简单的入门项目一直到十亿美元级的公司。本页上的其他每个原则都服务于这个目标。