Built-in Tools
Zeus 的工具体系分为四个层级,每层服务于不同的能力域:工具注入与模式过滤
工具在_init_context() 期间按序加载,不同模式下工具集有所不同:
| 工具类别 | Agent 模式 | Ask 模式 | Plan 模式 |
|---|---|---|---|
| Filesystem (读写) | 全部 | 只读 | 只读 |
| TodoList | 全部 | 全部 | 全部 |
| Memory | 读写 | 禁用 | 只读 |
| RAG | 全部 | 只读 (search/list) | 全部 |
| Sandbox | 全部 | 禁用 | 禁用 |
| Web Search | 全部 | 全部 | 全部 |
| MCP/OAuth | 全部 | 只读 | 只读 |
| Browser/Desktop | 全部 | 禁用 | 禁用 |
MultiServerMCPClient 加载,每个服务器超时 1800s (30min)。
TODO State Flow
概述
TodoList 是 DeepAgents 框架的内置中间件工具,通过write_todos 和 read_todos 管理任务状态。
问题背景
在实时聊天和历史回放中,todo.md 的状态需要正确更新。之前存在一个 bug:sandbox 工具调用会覆盖 todo.md 的内容。
数据流
关键修复
sandbox 调用返回的文件列表会覆盖之前 write_todos 设置的 todo.md 内容。解决方案是在状态更新时检查是否应该保留现有的 todo.md 内容。如果新返回的文件列表中不包含 todo.md 的更新版本,则保留之前由 write_todos 设置的内容,避免被覆盖。
MCP Prompts
概述
Zeus 支持 MCP (Model Context Protocol) 的 Prompts 功能。除了@mcp.tools 之外,可以通过 @mcp.prompts 获取 MCP 服务器提供的提示词模板。
什么是 MCP Prompts
MCP Prompts 是 MCP 服务器提供的可重用提示词模板,类似于预设的对话场景或工作流程。 Tools vs Prompts:| 特性 | Tools | Prompts |
|---|---|---|
| 作用 | 执行具体操作 | 提供预设提示词 |
| 示例 | 搜索、文件读取 | 代码审查模板 |
| 调用方式 | Agent 自动调用 | 用户选择使用 |
架构实现
系统通过 BaseService 初始化 MCP Prompts,遍历所有配置的 MCP 服务器,获取每个服务器提供的 prompts 列表(包括名称、描述和参数信息)。 API 验证接口/validate 同时返回工具和提示词信息。数据库中的 MCP 服务器记录包含 tools 和 prompts 两个 JSON 字段。
使用方式
方式 1:作为提示词模板资源
用户可以在界面上选择 prompt 并填写参数,系统将根据选择的 prompt 和参数获取对应的提示词内容。方式 2:动态调用
AI 可以识别需要使用某个 prompt 模板,通过指定服务器名称、prompt 名称和参数来动态获取提示词内容。Official Tools
概述
Zeus AI 提供了一套预配置的官方工具,可以直接在 MCP 标签页中启用和使用。可用工具
Tavily Search
AI 驱动的网络搜索引擎- 功能: 使用 AI 技术搜索互联网
- 使用场景: 查找实时信息、新闻、研究资料
- 需要 API Key: 是
- 获取 API Key: https://tavily.com
- 默认启用: 是
GitHub
GitHub 仓库和代码搜索- 功能: 搜索 GitHub 仓库、查看代码、获取用户信息
- 使用场景: 查找开源项目、研究代码实现
- 需要 API Key: 是(推荐)
- 获取 API Key: GitHub Personal Access Token
- 默认启用: 否
使用指南
启用官方工具
- 打开工具配置面板
- 选择 “MCP” 标签页
- 在”官方工具”区域找到您需要的工具
- 点击工具卡片上的开关启用
配置 API Key
- 点击工具卡片上的”配置 API Key”按钮
- 输入 API Key
- API Key 将安全加密存储
- 工具将自动启用
API 端点
GET /api/official-tools/list- 获取所有可用的官方工具列表POST /api/official-tools/test- 测试工具连接是否正常