安全保障:合同上附着一张安全标签
Tool 接口上有几个专门用于权限和安全判断的方法,它们是工具系统与权限系统(见第B节:权限与安全机制)的接合点:
| 方法 | 返回值 | 谁来问这个问题 |
|---|---|---|
isReadOnly(input) | boolean | 权限系统:只读操作可以绕过部分限制 |
isDestructive(input) | boolean | 权限系统:不可逆操作需要更严格确认 |
isConcurrencySafe(input) | boolean | Agent Loop:决定能否与其他工具并发执行 |
checkPermissions(input, context) | PermissionResult | 权限系统:工具自己的专属权限检查逻辑 |
validateInput(input, context) | ValidationResult | Agent Loop:执行前的输入合法性校验 |
checkPermissions 和通用权限规则的关系是:通用规则先检查(Bash(git *) 这类配置),通过后再调用工具自己的 checkPermissions 做工具特有的检查。两道关卡都过才执行。