@0xkobold/pi-whitelist
AI代理工具调用的三态权限系统
安装使用
复制下面这段提示词发给你的 AI(Claude / Cursor / TRAE / Codex / WorkBuddy 等),它会自动帮你完成安装:
帮我安装这个 AI Skill:@0xkobold/pi-whitelist。 它的用途是:AI代理工具调用的三态权限系统 完整的 Skill 内容见:https://321skill.com/skills/0xkobold-pi-whitelist/raw/index.md 请读取该页面内容,如果是 SKILL.md 格式直接安装,如果是 README 提炼核心 prompt 后安装。
提示词包含完整的 Skill 内容链接,AI 读取后即可完成安装。你也可以 查看完整内容 确认无误。
使用示例
'配置Bash工具,只允许git命令,其他操作需要询问我',它会调用PermissionManager添加规则'Bash(git *)'为allow,并设置默认行为为ask。之后你执行非git命令时,AI会先询问你是否允许。
介绍
这个Skill解决了AI代理在调用工具时缺乏精细权限控制的问题。实际开发中,智能体可能被授权执行Bash、文件编辑、网络请求等危险操作,一旦规则过松就容易导致数据泄露或系统破坏;而全盘禁止又会让智能体功能大打折扣。pi-whitelist提供了allow/deny/ask三态判断,让开发者可以按工具和内容精准控制每一次调用,在安全与效率之间取得平衡。
使用方式很简单,你只需要导入PermissionManager并初始化。通过check方法传入工具名称和调用内容,即可返回allow/deny/ask决策。之后可以通过addRule添加持久化规则,支持glob模式匹配(如’Bash(git *)‘表示允许所有git命令)。规则支持MemorySettingsStore和FileSettingsStore两种存储后端,方便在会话间持久化。你还可以通过parseRuleString/serializeRuleString等工具函数解析和序列化规则格式。
它非常适合需要管控AI代理工具调用权限的团队或个人。尤其是那些已经使用Claude、Trae、Cursor等AI编码助手,并希望保护用户隐私、拦截危险操作、防止API滥用的场景。智能体开发者、后端工程师、运维工程师都可以用它来定义一套安全策略,让AI在安全边界内自主工作。
建议在初始化Agent时统一配置此工具,并结合项目安全的全局规则使用。需要注意的是,它主要作用于单次调用决策,适合单机或轻量级部署场景,若需大规模分布式权限管理可考虑结合外部策略引擎。规则匹配按添加顺序优先,建议将宽泛规则放在后面,精确规则放在前面。
常见问题
如何添加一条永远允许的规则?
使用manager.addRule({ toolName: 'Bash', ruleContent: 'git *' }, 'allow', 'projectSettings'),第二个参数为'allow'表示永久允许。
支持哪些工具?
任何工具名称均可,如Bash、FileEdit、Read、Write等,配合glob模式匹配工具调用内容。
给 AI 助手的安装指引
如果你的 AI 编程助手(Claude Code、Cursor、TRAE 等)能看到这个页面,把下面这段发给它即可自动完成安装:
请访问 https://321skill.com/skills/0xkobold-pi-whitelist/raw/index.md 读取 @0xkobold/pi-whitelist 的原始 Skill 定义(Markdown 格式),按其中说明在我的环境里完成安装和配置。
AI 可直接读取的原始 Markdown 地址:/skills/0xkobold-pi-whitelist/raw/index.md(查看排版版本)