Skip to content

权限策略与安全拦截机制 ​

兼顾极致效率与开发安全的三档权限引擎
默认 YOLO 放开奔跑,关键时刻有规则白名单兜底,杜绝高危操作对系统的毁灭性破坏。


1. 权限设计哲学 ​

Piwin 诞生于对个人开发者工作流的深刻理解。如果每一个 read_file、每一条 ls、每一次 git status 都需要弹窗确认,Agent 将会变得迟钝而令人烦躁;然而,如果完全不加约束,失控的模型也可能误删代码仓库。

因此,Piwin 在遵循 Pi 极简哲学的同时,内置了三档精简而可靠的权限模式,并在底层配备了高危命令绝对拦截机制。

权限配置界面实录


2. 三档权限运行模式 ​

打开 「设置」➔「权限与安全 (Permissions)」,即可自由切换:

模式运行机制适用场景交互体验
YOLO 模式
(系统默认)
尊重 Pi 原生精神,对常规文件读写、构建命令、代码重构默认放行执行。日常个人开发、探索性实验、高效结对编程最流畅:智能体一气呵成完成多步任务,不打断思路
Auto 模式基于 Allowlist 规则引擎自动裁决。对命中规则的安全操作自动放行,未命中操作停下请示。无需额外引入臃肿昂贵的“审批大模型”。团队代码仓库、核心业务逻辑修改均衡:常见开发免确认,关键变动由人把关
Ask 模式逢写必问,步步确认。所有文件写入、进程启动与敏感操作均须人工点击批准。生产环境演习、新手探索、极高安全要求仓库最严格:完全可控,适合审阅每一次动作

3. 高危操作绝对拦截线 (Safety Interceptor) ​

即使用户处于 YOLO 模式,Piwin 也并非处于失控的“盲目放任”状态。系统在 Host 运行时底层常驻了硬规则安全守门人:

text
┌─────────────────┐       提出工具执行       ┌────────────────────────┐
│  AI Agent 动作  │ ───────────────────────> │ Host Tool Admission    │
└─────────────────┘                          └────────────────────────┘
                                                         │
                                             命中 rm -rf / 格式化 等高危特征?
                                             ┌───────────┴───────────┐
                                          是 │                    否 │
                                             ▼                       ▼
                                   ┌───────────────────┐    ┌─────────────────┐
                                   │  🚨 强制硬拦截阻断  │    │ 进入当前模式执行 │
                                   │  (拒绝执行并警告)  │    │ (YOLO/Auto/Ask) │
                                   └───────────────────┘    └─────────────────┘

以下危险行为将被绝对阻断:

  1. 系统根级破坏指令:如 rm -rf /、rm -rf ~、格式化磁盘、覆写系统核心引导目录;
  2. 凭证脱敏与嗅探:阻止意外向外部端点倒转系统密钥或暴露 ~/.piwin 内部凭据;
  3. 越界路径逃逸:媒体文件严禁越出 ~/.piwin/media/ 目录,工作区文件禁止非法逃逸至系统敏感文件夹。

4. MCP(模型上下文协议)的安全边界 ​

依照 ADR 0033 规范:

  • MCP 运行在权限层之外:MCP 外部服务直接以宿主操作系统用户的身份与权限启动;
  • 用户自担风险:接入不受信任的第三方 MCP 服务时,请确保清楚其暴露的本地工具范围;
  • 轻量解耦:系统不对 MCP 调用做多层二次包层拦截,保持协议原生吞吐性能。

Released under the MIT License.