用途
agent-express 是一个面向后端的 AI 智能体开发框架,定位为 TypeScript 生态中快速、极简的智能体框架。它把 Express.js 的中间件模式引入 AI 智能体开发,让熟悉 Express 的开发者可以沿用既有的心智模型来构建智能体。
核心概念
框架只有三个概念:Agent(智能体)、Session(会话)、Middleware(中间件)。官方称,一个 (ctx, next) 接口即可替代其他方案中常见的 15-20 个概念。
主要能力
- 中间件架构:提供 5 个洋葱式钩子——agent、session、turn、model、tool,统一采用 (ctx, next) 模式。代码在 next() 之前的部分沿调用链进入,之后的部分沿调用链返回。
- 内置防护(guards):预算上限、输入/输出校验、超时、迭代次数限制、HITL(人在回路)审批。
- 可观测性:结构化日志、OpenTelemetry 指标与追踪、token 统计、工具调用记录。
- 模型提供商:支持 12 种以上模型提供商,任何 AI SDK 提供商均可通过 "provider/model" 字符串接入,包括 Anthropic、OpenAI、Google、Mistral、Groq 等。
- 模型路由:可按任务复杂度跨提供商选择模型。
- 记忆管理:提供 5 种上下文窗口压缩策略。
- 测试工具包:TestModel、FunctionModel、capture、录制/回放(record/replay)、快照。
- MCP 集成:可将 MCP 服务器作为工具来源接入。
- HTTP 适配器:开箱即用的 SSE 流式输出。
- CLI:agent-express dev 支持热重载,agent-express test 提供 CI 输出格式。
- 结构化输出:对模型响应进行 Zod schema 校验。
使用方式
- 编写自定义中间件:传给 .use() 的普通函数会成为 turn 钩子;若需要多个钩子,则返回一个 Middleware 对象。5 个钩子构成洋葱模型。
- 会话与流式:支持带会话状态的多轮对话,并可迭代输出类型化事件;同一 Event 对象同时流经迭代器和 session.events,因此流式视图与持久化日志共享同一事实来源。会话可通过适配器包持久化到 SQLite、Redis 或 Postgres;若某轮中途崩溃,重启后下一次 session run 会从事件日志恢复。
- 测试:通过 agent-express/test 模拟 LLM 调用;也可录制并回放真实 API 调用。
- 文档入口:官方文档包含 Documentation、Getting Started、API Reference;架构与设计文档推荐阅读顺序为 Concept、Middleware Interface、Agent Loop、Event Log。
适用场景
适合需要以 TypeScript 后端方式构建、编排和运维 AI 智能体的开发者,尤其是已经熟悉 Express 中间件模式、希望以较少概念完成智能体开发、并需要可观测性与防护能力的团队。
限制
本资料未提供具体的收费模式、价格、平台支持范围、性能数据、安装命令细节以及版本兼容性信息,这些内容暂未提供。