❝pi-auto-approval 是一个受 Claude Code 和 Codex 自动审核机制启发的 Pi 扩展,利用 AI 分类器对低风险工具调用进行自动审批,高风险或不确定的操作则回退到人工审批或直接阻断。
它通过 /auto-approval 命令在 off、fallback 和 auto 三种模式间切换,其中 fallback(AI 审查 + 人工兜底)是推荐的日常使用模式,兼顾效率与安全性。
你可以把它想象成一个"坐在你电脑旁边的机器人助手",你告诉它"帮我建个项目"、"帮我改个文件",它就会动手操作。但问题是——每次动手之前,它都会弹窗问你"我能做这个吗?",操作一多就很烦。
pi-auto-approval 就是给这个机器人助手配的一个"自动审批官"。它的核心思路是:再请一个 AI 当门卫,帮 Pi 判断哪些操作是安全的、可以不用问你直接执行,哪些操作有风险、必须让你来拍板。
要点
灵感源自 Claude Code 的 auto mode 和 Codex Auto-review 风格的审批工作流,作为独立的 Pi 扩展包运行。 提供三种状态模式: off(完全禁用自动审批)、fallback(AI 审查 + 人工回退,推荐日常使用)、auto(仅 AI 审查,拒绝即阻断,适合受信任的无人值守场景)。多层系统架构:由命令层(注册 /auto-approval并持久化本地配置)、路由层(快速处理关闭、只读、工作区安全等动作)、分类器层(提取包含最新用户提问的紧凑会话上下文并请求结构化决策)、回退层(无法安全放行时请求人工确认)和审计层(启用审计时以 JSONL 格式写入审计日志)构成。多重快速放行路径(Fast-paths):可静态识别并直接放行低风险操作,包括只读工具、工作区内部写入、显式白名单的安全命令、当前会话中已被精确批准过的动作,以及相同动作哈希的放行动态缓存(一旦 AI 分类器判定允许,该动作哈希即被缓存,后续相同动作直接放行)。 精确动作记住机制:在 fallback模式下触发人工审批时,用户可选择“永久记住该动作”(optionally remember exact action),此后该精确动作将被写入 Session Cache,后续遇到相同动作时将直接走快速放行通道,不再重复询问。通过 /auto-approval model命令可自由切换审批分类器所使用的模型,默认使用当前 Pi 会话模型,选择结果持久化在config.jsonc中。项目内置了本地 Pi 侧的 Smoke 回归测试(通过 npm run smoke:pi运行),在临时配置与日志目录中执行,用于验证 fallback 模式、auto 模式、安全 bash 命令放行、可疑 bash 命令的人工兜底/拒绝逻辑,以及 JSONL 审计日志的内容正确性。
部署与使用
安装方式(通过 Pi 的命令系统):
# 从 GitHub 安装最新版pi install https://github.com/Europa2061/pi-auto-approval# 安装钉选版本pi install https://github.com/Europa2061/pi-auto-approval@v0.1.0# 仅安装到当前项目pi install -l https://github.com/Europa2061/pi-auto-approval# 重载 Pi 并启用推荐模式/reload/auto-approval fallback所有操作通过唯一的斜杠命令 /auto-approval及其子命令完成(status/off/fallback/auto/model/model current),输入/auto-approval加空格即可触发自动补全。
项目由 Europa2061 开发,采用 Apache License 2.0。
❝项目地址:github.com/Europa2061/pi-auto-approval。
夜雨聆风