permissions=,智能体的内置文件系统工具将遵守这些规则。
权限需要
deepagents>=0.5.2。ls、read_file、glob、grep、write_file、edit_file)。自定义工具和访问文件系统的 MCP 工具不在覆盖范围内。权限也不适用于沙箱后端,后者通过 execute 工具支持任意命令执行。
基本用法
将FilesystemPermission 规则列表传递给 create_deep_agent。规则按声明顺序评估。首条匹配的规则生效。如果没有规则匹配,操作被允许。
规则结构
每个FilesystemPermission 有三个字段:
规则使用首次匹配生效的评估方式:第一条其
operations 和 paths 匹配当前调用的规则决定结果。如果没有规则匹配,调用被允许(宽容的默认行为)。
示例
隔离到工作区目录
仅允许在/workspace/ 下读写,拒绝其他所有操作:
保护特定文件
只读记忆
允许智能体读取记忆文件但阻止修改。这对于组织范围的策略或应仅由应用代码更新的共享知识库很有用。参见只读与可写记忆了解更多背景。拒绝所有访问
阻止所有读取和写入。这是一个限制性基线,你可以在其上叠加更具体的允许规则:规则排序
由于首次匹配生效,规则顺序很重要。将更具体的规则放在更宽泛的规则之前:子智能体权限
子智能体默认继承父智能体的权限。要给子智能体不同的权限,在其规格中设置permissions 字段。这会完全替换父级的规则。
组合后端
当使用带有沙箱默认值的CompositeBackend 时,每个权限路径必须限定在已知的路由前缀下。沙箱支持任意命令执行,因此仅靠基于路径的限制无法防止通过 Shell 命令进行文件系统访问。将权限限定到特定路由的后端可以避免此冲突。
NotImplementedError:
连接这些文档到 Claude、VSCode 等工具,通过 MCP 获取实时答案。

