Agentica — AI函数调用框架
通过TypeScript类、Swagger/OpenAPI文档或MCP服务器,将函数自动转化为AI可调用的智能体能力。
证据显示:README 展示了通过 HTTP 控制器调用外部 API 的示例,但未提及权限最小化或用户确认机制。测试代码中使用了 API 密钥,但未说明如何安全处理。依赖锁定在 pnpm-lock.yaml 中,但未提供安全审计。外部效果(如 HTTP 调用)存在,但未提供回滚机制。来源归属:README 和 package.json 明确标注了 Wrtn Technologies,但发布者未经验证。扣分原因:缺少用户确认、回滚机制,敏感数据处理细节不足。
证据显示:README 和 package.json 描述一致,均为 AI 函数调用框架。依赖通过 pnpm 管理,有 lockfile,但未提供依赖可用性保证。失败消息:测试代码中有错误处理,但未提供面向用户的失败消息。扣分原因:失败消息不充分。
证据显示:README 提供了多种使用场景(TypeScript 类、Swagger、MCP),并提供了 playground 和教程。能力边界:明确说明支持三种协议。触发精度:通过函数列表定义,但未提供精确的触发条件。环境适配:支持 Node.js 和多种包管理器,但未说明浏览器支持。扣分原因:触发精度和环境适配细节不足。
证据显示:README 提供了安装、使用、文档链接,信息架构清晰。安装说明:提供了 npx agentica start 命令。命名稳定性:包名 @agentica/core 等,但未提供命名变更历史。示例和 FAQ:提供了多个示例,但无 FAQ。已知限制:未明确列出。许可证:MIT。版本和变更日志:package.json 有版本号,但未提供变更日志。维护责任:README 标注了 Wrtn Technologies 维护。扣分原因:缺少已知限制、变更日志。
证据显示:README 声称提高了函数调用的易用性和稳定性,并提供了对比表格。输出可用性:提供了 API 文档和示例。边际价值:相对于 vanilla function calling 有改进。成本效益:声称减少 token 消耗,但未提供具体数据。扣分原因:成本效益缺乏数据支持。
证据显示:README 中的声明(如提高稳定性)未提供具体证据。交叉来源:有 YouTube 教程和 Discord 社区,但未提供独立验证。事实与推断分离:README 中区分了事实和推断,但不够明确。扣分原因:声明缺乏可追溯性。
- 发布者身份未经验证,需谨慎对待。
- 未提供用户确认机制,可能自动执行外部操作。
- 敏感数据处理细节不足,API 密钥管理需用户自行负责。
- 缺少回滚机制,外部调用失败可能无法恢复。
- 依赖安全审计缺失,需自行检查依赖漏洞。
这个 Agent 能做什么,适合哪些场景?
Agentica是一个专注于AI函数调用的TypeScript框架,由Wrtn Technologies开发并开源。它允许开发者从三种来源(TypeScript类、Swagger/OpenAPI文档、MCP服务器)自动构建函数调用模式,无需手写JSON Schema。框架通过编译器技能(如typia)自动生成精确的schema,并自动适配不同LLM供应商的规范差异。集成OpenAI、Google Gemini、Anthropic Claude、DeepSeek、Meta Llama等模型,支持多供应商切换。提供CLI设置向导(`npx agentica start`)快速创建项目,并附带WebSocket协议实现客户端-服务器通信。框架还包含验证反馈机制和选择器代理来提升调用稳定性和效率。
Agentica读取TypeScript类、Swagger/OpenAPI文档或MCP服务器定义,通过typia的编译器技能自动生成函数调用schema。使用Agentica类实例化代理,配置vendor(如OpenAI)和controllers(如typia.llm.controller和assertHttpController)。调用agent.conversate()与用户对话,框架自动选择候选函数、构造参数、执行调用,并通过验证反馈纠正错误。支持多供应商(OpenAI、Google、Anthropic等)和自定义JSON Schema。提供CLI和WebSocket协议用于部署。
- 希望将现有TypeScript业务类快速转化为AI代理的开发者,无需手写复杂schema。
- 后端开发者利用已有的Swagger/OpenAPI文档接入AI,构建聊天机器人或自动化服务。
- 需要支持多个LLM供应商(如OpenAI、Anthropic)且想统一调用接口的团队。
- 构建企业级电商代理,通过函数调用实现商品搜索、下单等操作。
- 需要与MCP服务器集成的AI代理,扩展外部工具能力。
- 希望降低AI代理开发难度和成本,避免使用灵活度低的workflow方案。
这个 Agent 有哪些优点和局限?
- 自动生成函数调用schema,基于编译器驱动,无需手写,减少人为错误。
- 自动适配OpenAI、Google、Anthropic、DeepSeek、Llama等多个LLM供应商的规范差异,降低集成成本。
- 内置验证反馈机制,能检测并纠正AI在参数组合中的错误,提高可靠性。
- 提供选择器代理,过滤候选函数,减少上下文和token消耗,优化性能。
- 支持TypeScript类、OpenAPI文档和MCP服务器三种函数来源,灵活多样。
- 主要面向TypeScript开发者,如果不熟悉TypeScript,学习曲线较陡。
- 依赖typia编译器,需要额外的构建步骤。
- 对于简单项目,设置向导可能生成过多配置,增加复杂度。
- 需要自行管理API密钥和供应商费用,没有内置的模型成本控制。
- 目前主要支持对话式交互,对于复杂long-running任务可能需要额外自定义。
如何安装或部署这个 Agent?
运行 npx agentica start <directory> 启动设置向导,选择包管理器、项目类型(NodeJS、NestJS、React或Standalone)和嵌入式控制器(如Google Calendar、GitHub等)。向导会自动生成项目文件。对于已有项目,使用npm安装核心库:npm install @agentica/core,并确保安装typia和openai等依赖。
如何使用这个 Agent?
在项目中导入Agentica和assertHttpController,创建Agentica实例,配置vendor(使用OpenAI API密钥)和controllers(例如typia.llm.controller生成TypeScript类函数,assertHttpController加载Swagger文档)。调用agent.conversate()开始对话。部署时,选择非Standalone项目类型会自动启用WebSocket协议,客户端可通过WebSocket进行通信。