功能概览
使用此工具包可让您的 Agent 具备以下能力:- 原子操作:安全地同时修改多个文件,失败时自动回滚。
- 管理文件与目录:创建、读取、更新、删除及列出文件和目录。
- 文件系统搜索:通过名称(
glob)或内容(grep)查找文件。 - 安全环境运行:根据安全需求选择本地、内存或沙盒后端。
核心概念
FilesystemToolkit:主要入口点,集成了可供 Agent 直接使用的文件相关工具集(read_file、write_file等)。FileOperator(后端):执行实际文件操作的引擎,提供三种后端选择:LocalFileOperator:高性能访问本地文件系统。InMemoryFileOperator:在虚拟文件系统中进行快速隔离测试。SandboxFileOperator:在隔离容器中安全执行,适合处理不可信代码。
快速入门
关键特性:原子事务
对于代码生成等复杂任务,常需修改多个文件。若某步失败,可能导致项目处于损坏状态。事务机制通过”全成功或全回滚”确保数据一致性。 若withTransaction 内任何操作失败,所有变更将自动回滚。
核心操作
以下是工具包支持的主要操作。写入与创建文件
write_file 工具可创建新文件或覆盖现有文件,若父目录不存在会自动创建。
读取文件
read_file 工具可读取指定文件的全部内容。
编辑文件
edit_file 工具对文件内容执行查找替换,适合进行针对性修改。
列出目录内容
ls 工具可列出指定路径下的文件和子目录。
模式匹配查找(Glob)
glob 工具可查找匹配特定模式的所有文件和目录,便于预处理文件发现。
文件内容搜索(Grep)
grep 工具可在指定目录文件中搜索文本模式(支持正则表达式),适用于定位函数调用或特定注释。
工作流示例:Agent集成
将FilesystemToolkit直接集成到您的Agent中,为其提供强大的文件操作能力。