B4.run Agent Framework

用 TypeScript 和 LangGraph.js 构建可测试、可控并可部署的智能体应用。

Star 数
★ 311
最近更新
今天
License
MIT
主语言
TypeScript

30 秒速览

运行形态
开发框架自托管服务
可在哪里用
兼容但需适配OpenAI API(部分支持)
费用
软件免费,模型调用费用自付
上手难度
中 · 需要几步配置
开始前需要
Node.js 24 或更高版本npm 11LangGraph.jsShell / 命令行网络访问本地文件系统
典型场景
希望把现有 LangGraph.js 图逐步接入应用路由的 TypeScript 团队,可将其作为 raw graph route 并逐个验证 checkpointer 行为。
不适合
  • 需要 Python 原生框架的团队
  • 希望直接使用托管 AI 平台的团队

这个 Agent 能做什么,适合哪些场景?

B4.run 是围绕 LangGraph.js 构建的 TypeScript 框架,为智能体和工作流提供文件系统路由、生成类型、本地开发与测试约定及持久化原语。开发者在路由的 `src/app/**/index.ts` 中定义 `agent`、`workflow`、`graph` 或 `chain`,并可配置共享工具、路由级工具和运行策略。测试可通过固定响应夹具离线回放;状态默认由 SQLite 支持,具体行为取决于应用根目录和数据库文件是否持久保存。默认构建会输出可运行的 Node 服务器、Dockerfile 和 LangSmith graph artifacts。它需要 Node.js 和 LangGraph.js;B4.run 不托管应用、不配置基础设施,也不管理密钥。

使用 npm create b4-app@latest 创建 TypeScript 项目,在路由的 index.ts 导出 agent() 或其他受支持入口,B4.run 据此发现路由并生成路由、参数、状态和工具声明。把共享工具放在 src/tools/,或将工具放在路由目录中,再通过 tools.deny 限制工具、用 tools.approve 要求人工批准;权限可限制工作区外的 shell 命令和文件路径,选择启用的 sandbox 可隔离工作区工具。运行 b4 dev 开发并用固定夹具执行离线测试;构建时可生成 Node 服务器、Dockerfile 和 LangSmith graph artifacts。部署方需要自行验证目标环境的运行时、存储、认证和模型提供方边界。

  1. 希望把现有 LangGraph.js 图逐步接入应用路由的 TypeScript 团队,可将其作为 raw graph route 并逐个验证 checkpointer 行为。
  2. 需要在本地确定性测试智能体的开发团队,可用固定响应夹具回放交互,并让未匹配的交互直接失败。
  3. 构建需要限制工具权限的智能体的团队,可在路由中禁用工具、要求人工批准,并为工作区外操作设置权限。
  4. 需要在开发服务器重启后保留状态的应用,可使用默认 SQLite 存储,并确保应用根目录和 SQLite 文件持续存在。
  5. 需要生成可部署 Node 服务的 TypeScript 项目,可从默认构建获得服务器和 Dockerfile,再自行选择并验证部署环境。

如何安装或部署这个 Agent?

需要 Node.js 24 或更高版本和 npm 11。创建并安装入门项目:

npm create b4-app@latest my-agent
cd my-agent
npm install
npm test

入门测试使用夹具离线运行,无需 API 密钥或模型调用。若要运行 README 中的 OpenAI 实时 navlog 示例,需在 server/.env 中设置 OPENAI_API_KEY。

如何使用这个 Agent?

在路由文件中定义智能体,例如:

import { agent } from "@b4run/sdk"

export default agent({
  model: "gpt-5-mini",
  recursionLimit: 100,
  description: "A VFR flight planner for a Cessna 172N…",
  tools: { deny: ["runBash"], approve: [{ tool: "fileFlightPlan", allowAlways: false }] },
  systemPrompt: "You are a VFR flight-planning assistant for a Cessna 172N…",
})

使用 npm run dev 启动基本入门应用;设置 OPENAI_API_KEY 后可运行实时模型路径。navlog 模板使用两个工作区包,可分别启动服务器和 Workbench:

npm run dev:server
npm run dev:web

navlog 服务器监听 3002 端口,Workbench 监听 3010 端口。生产构建与启动命令为:

npm run build
npm start

模型服务凭据因提供方而异;README 也说明本地 Ollama 路由不需要提供方密钥。

这个 Agent 有哪些优点和局限?

优点
  • 文件系统路由自动发现智能体和图入口,并在 typegen 和构建时生成路由、参数、状态及工具类型。
  • 固定响应夹具提供离线确定性测试;遇到未匹配交互会失败,而不是悄悄调用模型提供方。
  • 路由策略支持禁用工具和人工批准;权限与可选 sandbox 为 shell 命令、文件路径及工作区工具提供限制。
  • 默认构建输出 Node 服务器、Dockerfile 和 LangSmith graph artifacts,可将应用源码延伸到部署产物。
局限
  • 框架依赖 LangGraph.js,目标为 TypeScript 和 Node.js;需要 Python 的项目应使用其他方案。
  • 项目处于 pre-1.0 阶段,API 仍在变化,团队需要固定版本并留意升级说明。
  • B4.run 不托管应用、不配置基础设施,也不管理密钥;部署方须自行处理目标环境的存储、认证和提供方边界。
  • 实时模型调用可能需要提供方凭据和按使用量付费;README 的 OpenAI navlog 实时路径要求 OPENAI_API_KEY。

这个 Agent 与同类方案有什么区别?

与直接使用 LangGraph.js 相比,B4.run 增加文件系统路由、生成类型、本地开发与测试约定、持久化原语和构建目标;希望保留自有应用约定或需要 Python 的团队可直接使用 LangGraph.js。现有 LangGraph.js 图可逐步作为 graph 路由迁移,迁移后需验证各部署目标的 checkpointer 行为。

与相关度最高的同类 agent 并排比较关键指标。

Agent 源码审查 形态 / 费用 Star 最近更新 主语言 完整支持的平台
B4.run Agent Framework 当前 69 · 存在缺口 开发框架免费 + 模型费 ★ 311 今天 TypeScript —
TrueForge 67 · 存在缺口 命令行工具免费 + 模型费 ★ 6.1k 今天 TypeScript OpenAI API · Claude API
Sandbox Agent 67 · 存在缺口 自托管服务免费 + 模型费 ★ 1.6k 1 天前 TypeScript Codex · Claude Code
FastClaw 43 · 缺口较多 命令行工具免费 + 模型费 ★ 1.4k 今天 Go OpenAI API · Claude API

FollowAgents 如何评估这个 Agent?

FollowAgents 源码审查 · FARS-2.1
存在缺口
69/ 100 五分制 3.5 / 5
信任安全 17/29
可靠稳定 9/14
适用触发 15/18
规范维护 14/18
有效结果 9/13
证据核验 5/8
查看各维度的扣分理由
信任安全17 / 29 · 2.9/5

README 描述了工具 deny/approve、审批授权、路径与 shell 权限及可选沙箱;这些为最小权限和高影响操作审批提供了可见机制,但给出的材料未完整说明所有运行时权限与用户数据流。README 说明密钥由用户配置、平台不托管密钥,SECURITY.md 提供私密漏洞报告渠道;不过敏感数据处理细节、依赖风险缓解的完整证据不足。工作流权限较窄且有依赖版本覆盖,图表测试覆盖部分防护;但回滚方案与来源归属信息有限,因此未给满分。

可靠稳定9 / 14 · 3.2/5

README 说明 fixture 测试默认离线、未匹配交互会失败,并提供构建、类型检查和多类 CI 验证脚本;工作流还明确处理 Docker 跳过和失败情形。包管理器和 Node 版本有明确要求,依赖锁定与覆盖可见。扣分是本次静态审查不能证明 CI 实际通过,且不同部署目标需自行验证运行时、存储、认证及 provider 边界。

适用触发15 / 18 · 4.2/5

README 清楚指出面向 TypeScript/Node.js 与 LangGraph.js 团队,并给出 raw LangGraph、Python、迁移路径等适用边界;多个示例覆盖不同任务。扣分是路由发现规则和部分触发行为仅作概述,特定能力会随构建目标变化;环境适配说明存在,但仍要求用户自行验证目标部署。

规范维护14 / 18 · 3.9/5

README 组织了快速开始、架构、示例、部署、成熟度与支持信息;有安装命令、MIT 许可、迁移指南、升级指南和发布说明入口。明确标注 pre-1.0 与 API 变动,支持责任和安全报告路径也有说明。扣分是给定材料中没有具体 changelog 内容、FAQ 或较完整的维护者身份与责任承诺;示例与说明也未覆盖所有情形。

有效结果9 / 13 · 3.5/5

框架将文件系统路由、类型生成、测试回放、持久化原语和构建产物组合为可用工作流,示例展示了审批、工具与子代理等场景。README 同时明确说明不托管应用、不配置基础设施或管理密钥。扣分是性能宣传标题没有所给材料中的量化佐证,且效益取决于团队接受框架约定和自行完成部署验证。

证据核验5 / 8 · 3.1/5

README 的功能与边界陈述可与 package scripts、CI 工作流、图表测试及安全策略交叉对照;测试脚本包含具体断言和失败处理。扣分是本次材料没有运行结果、revision 级发布记录或完整实现文件,CI 配置不能证明当前提交的实际结果;性能与若干安全能力的陈述仍需更多直接证据。

风险与缓解建议
  • 该项目标注为 pre-1.0,API 仍在变化;使用前应固定版本并查看升级说明。
  • 项目提供框架与构建产物,不托管应用或管理密钥;认证、存储、provider 与部署边界需要按目标环境自行验证。
  • 性能描述未在所给材料中提供量化证据;本评估仅为低置信度静态审查,未执行代码或验证 CI 结果。
证据充分度:低 评估于 2026年10月9日 审查版本 24bc5c7c8464 评估后仓库已有新提交,评分可能未覆盖最新改动
查看完整评分方法 →

常见问题

使用 B4.run 是否必须购买模型 API?
不需要才能完成入门测试:npm test 使用固定夹具离线运行。实时模型路径的凭据因提供方而异;README 的 OpenAI navlog 示例需要 OPENAI_API_KEY,而本地 Ollama 路由不需要提供方密钥。
B4.run 会替我托管应用或配置生产基础设施吗?
不会。默认构建会生成 Node 服务器、Dockerfile 和 LangSmith graph artifacts,但应用托管、基础设施和密钥由你自行管理。
工具能否要求人工批准或限制文件与 shell 操作?
可以。tools.approve 可暂停工具调用等待人工响应,每个答案消耗一次性 approval grant;权限可限制工作区外 shell 命令和文件路径,sandbox 可选启用。
默认 SQLite 状态会在重启后保留吗?
开发服务器重启后可以保留,前提是应用根目录和 SQLite 文件持续存在。部署到不同目标时需验证存储及 checkpointer 行为。
这是稳定的 1.0 API 吗?
不是。项目处于 pre-1.0,API 仍在变化;README 建议固定版本并阅读发布说明与升级指南。
在 GitHub 查看 ↗ 安装 ↓

对比同类 Agent

用同一套 FARS 评审,横向比较这个 Agent 所属的短名单。

相关 Agents