-
Notifications
You must be signed in to change notification settings - Fork 1
Permission Presets zh
pawaca edited this page Aug 30, 2026
·
1 revision
上游权限预设和工具审批系统在 Edge 中的适配。
上游参考:权限预设
权限预设层(ctx.permissionPresets)将两个独立的执行控制——沙箱模式和审批策略——打包成命名预设,客户端作为单一权限选择器呈现。
- PermissionPresetService — 从实际旋钮值解析生效的预设,通过各旋钮的规范 setter 切换预设。
-
内置预设 —
workspace-write(默认,限制为工作区写入)和danger-full-access(不受限制)。 - 审批策略 — 逐工具的审批门控,用户在工具执行前确认或拒绝。
- 沙箱模式 — 将文件系统写入限制在工作区目录内。
该服务是可选的——不影响 agent loop。预设切换通过 permission/preset 事件记录意图;实际行为变更通过沙箱和审批服务独立流转。
PermissionPresetService 未安装。Edge 没有交互式权限 UI——所有工具自动批准。没有沙箱模式执行、审批门控或客户端预设选择器。
这是对单用户自托管部署模型的刻意简化:部署 Edge 的用户就是运行工具的用户,交互式审批增加摩擦而无安全收益。工作区已经在 Durable Object 的 Computer VFS 中隔离。
dsh-sandbox 在依赖中并有补丁(移除 node:fs/node:os 导入),但它被文件工具用于路径验证——不是权限执行。沙箱的 canonicalPath 和 writableRoots 被 EdgeFileSystem 用于在工作区内解析和验证文件路径。
| 组件 | 分类 | Edge 状态 |
|---|---|---|
| PermissionPresetService | 缺失 | 未安装——所有工具自动批准 |
| 审批策略 | 缺失 | 无交互式审批门控 |
| 沙箱模式 | 缺失 | 使用 VFS 隔离替代 |
| dsh-sandbox(路径验证) | 复用 | 已打补丁适配 Workers,被 EdgeFileSystem 使用 |
关键观察:Edge 的单用户部署模型使交互式权限审批不必要——部署者就是唯一的用户。文件系统隔离由 Computer VFS 在平台层提供,而非上游沙箱服务。如果出现多用户或共享部署场景,可以安装权限预设系统来提供逐 session 的工具审批控制。
**评估共享部署场景下的权限预设。**如果 Edge 未来支持多用户访问,应安装 PermissionPresetService 以让每个用户控制工具审批级别。客户端权限 UI 已在 33 插件包中——服务端服务是缺口。
- Home
- Architecture
- Core & Scope
- Session & Persistence
- Model & Context
-
Execution & Tools
- Tools
- Bash
- Subprocess 🚫
- PTY Session 🚫
- Background Jobs 🚫
- Filesystem
- LSP Navigation 🚫
- Code Runtime 🚫
-
Web Access
⚠️ -
Skills
⚠️ - Workflow 🚫
- Subagent 🚫
-
Policy & Interaction
- Goal
- Approval 🚫
- Permission Presets 🚫
-
Sandbox
⚠️ - Plan Mode 🚫
- User Interaction 🚫
- Commands 🚫
- Schedule 🚫
- Message Feedback 🚫
- Platform & Access
- Development
- 首页
- 架构
- 核心与作用域
- 会话与持久化
- 模型与上下文
- 执行与工具
- 策略与交互
- 平台与接入
- 开发