文章目录
- 一、概述
- 二、工具系统架构总览
- 三、内置工具集详解
- 3.1 命令执行工具:Bash
- 3.2 文件读取工具:Read
- 3.3 文件写入工具:Write
- 3.4 文件编辑工具:Edit
- 3.5 文件匹配工具:Glob
- 3.6 内容搜索工具:Grep
- 3.7 技能查看工具:Skill
- 3.8 元工具:ResetTools
- 四、MCP 协议集成
- 4.1 项目结构
- 4.2 核心组件
- 4.3 调用时序
- 4.4 工作空间 MCP 网关
- 4.5 连接范围
- 4.6 使用示例
- 五、工具包管理与动态分组
- 5.1 Toolkit:工具编排中心
- 5.2 ToolGroup:按域组织工具
- 5.3 LocalSkillLoader:技能发现与加载
- 5.4 内置元工具与技能查看器
- 六、权限与安全管理
- 6.1 核心组件
- 6.2 决策优先级
- 6.3 权限模式详解
- 6.4 只读工具自动放行
- 6.5 危险路径保护
- 6.6 规则匹配
- 七、自定义工具开发
- 7.1 ToolBase 协议
- 7.2 两种适配器
- 7.3 响应模型
- 7.4 开发最佳实践
- 八、常见问题与调试指南
- 8.1 连接问题
- 8.2 工具不可用
- 8.3 权限相关
- 8.4 Bash 命令问题
- 8.5 文件操作问题
- 九、总结
一、概述
在AI Agent框架中,工具系统是连接大语言模型与外部世界的关键枢纽。AgentScope 2.0 作为一款开源的智能体开发框架,构建了一套完整、灵活且安全的工具生态体系——从内置的文件操作与命令执行工具,到MCP(Model Context Protocol)远程工具的标准化集成,再到细粒度的权限管控与自定义工具扩展能力。
本文将系统性地拆解AgentScope 2.0工具系统的每个核心模块,帮助开发者快速理解其设计理念、掌握使用方式,并能够在实际项目中安全高效地运用这些能力。
二、工具系统架构总览
AgentScope 2.0 的工具系统采用**“分层 + 功能模块”**的组织方式,核心位于src/agentscope/tool/目录下:
- 接口与基类层:
_base.py定义工具协议ToolBase,是全部工具的抽象基类 - 内置工具层:
_builtin/子包提供 Read、Write、Edit、Bash、Glob、Grep、SkillViewer、ResetTools 等标准工具 - 工具编排层:
_toolkit.py提供工具注册、激活/停用组、统一调用与流式响应聚合 - 组织单元层:
_tool