Files
Owner/docs/full_duplex_agent_security.md
T

48 lines
2.6 KiB
Markdown

# 全双工 Agent 安全确认策略
## 默认原则
全双工 Agent 的工具执行默认最小权限。语音输入可能被误触发,工具请求必须经过结构化校验、风险分类、预算限制、输出脱敏和审计记录。
## 自动允许
以下请求可在第一版策略中自动执行:
- `memory.search`:只读长期记忆检索。
- `shell.readonly`:允许目录内的只读命令,例如 `pwd``ls``find``rg``cat``sed``git status``git diff``git log``git show`
- 低风险 dry-run adapter 检查,例如 `run-agent-live --check-config` 这类不改变外部状态的诊断。
## 需要确认
以下请求必须进入确认流程:
- `memory.save` 保存疑似敏感内容。
- `openinterpreter.run` 中包含写文件、删除、上传、账号、权限、安装依赖、执行宽泛代码的任务。
- `browser.playwright` 中包含登录、支付、购买、提交表单、私信、上传、账号修改或不可逆动作的任务。
- 任何自然语言意图中出现删除、上传、支付、购买、交易、账号、权限等高风险关键词的工具调用。
## 默认拒绝
以下请求第一版直接拒绝:
- `shell.readonly` 中出现 `rm``chmod``chown``pip install``npm install``brew install`、重定向写入、`mv``cp` 等修改外部状态的命令。
- 未注册工具名、未知参数结构或超过单轮工具预算的请求。
- 直接 GUI 点击、键盘输入、屏幕控制或 macOS Accessibility 自动化请求。
- 试图绕过确认策略、读取或输出密钥、上传本地敏感文件的请求。
## 审计和脱敏
工具审计记录只保存工具名、风险级别、确认状态、耗时、状态和脱敏摘要。API key、Authorization header、原始音频、PCM payload、密码和 token 形态文本必须被替换为 `[redacted]` 或被截断。
## Open Interpreter 边界
本地 `openinterpreter/` 是外部候选后端,不复制、不 vendoring、不提交到 Owner。Owner 后续只通过 `OWNER_OPENINTERPRETER_COMMAND` 指定的 CLI/子进程调用它,并由 Tool Router 负责目录限制、超时、输出截断和确认策略。
## 浏览器边界
`browser.playwright` 默认关闭,默认使用隔离 browser context。是否允许复用用户当前 Chrome 登录态需要后续人工确认;第一版不默认复用登录态。
## Computer Control 边界
Codex Computer Use 只作为安全确认策略参考,不复制私有实现。后续 GUI 控制必须另开 OpenSpec,基于公共能力实现,例如 macOS Accessibility、Playwright 或 trycua-style provider。