怎么给 AI 划一条权限边界
2026-07-24 立项那天,我给五个 AI 员工开的是同一套权限,理由是「先跑起来再说」。三周后我发现总管能碰小财的账本,小码能改小美的素材目录。怎么给 AI 划权限边界,我的答案不是列黑名单,是按「这个动作失败了我能不能收拾」来倒推它该拿到什么。
我的边界长什么样
现在这套边界一共三层,每层一条判断。
第一层:只读的活,随便它跑。查资料、读代码、整理素材、生成草稿,这些出错最多是浪费时间。
第二层:写在本地的活,要留痕。改文件、写记录、生成资产,允许自动做,但要能看出来是谁改的、改了哪一版。
第三层:动外部状态的活,等我点头。对外发布、动钱、删数据,一律卡在确认那一步。
这条边界不写在角色说明里,写在工具接口那一层——因为角色说明它可能理解偏,接口给不给它是硬约束。
时间线上我做对和做错的事
2026-07-25,我把团队从 7 个角色精简到 5 个,同时做了视觉升级。那次精简顺带让我看清了权限混乱的问题:角色少了,权限反而更容易摊在一两个人身上。
2026-08-25 前后,我把 TTS 换成免费端点走本地,视频管线也做了离线化。这两次改动的共同点是把外部依赖收回到本地,侧面把权限面缩小了。
到 2026-08-27 定型成 1 人加 5 个 AI 角色,我才把「角色」和「权限」拆成两张表分别维护。
做错的事有两件。一是最开始用角色名做权限判断,换名字就失效。二是没给任何一个角色配中断入口,出事只能杀进程。
这两件事之后我才认真想怎么给 AI 划权限边界,而不是边跑边补。
三层边界具体怎么落地
按工具分,不按角色分。 同一个「发布」接口,小推和小美都不该拿到,而不是「小美不许用」。
默认不给,按需开。 新角色进来先只读,跑顺了再一项一项加。反过来做,你永远不知道它到底需要什么。
每个写动作都带身份。 日志里要能看出这行是哪个角色写的,否则排查时只能靠猜。
对外接口单独一个进程。 我现在的做法是夜间任务只加载只读工具,写操作白天人工开。
怎么给 AI 划权限边界这件事,落到最后就是这四句,别的一时想不起来的,边跑边补。
边界之外还要留一条退路
边界解决的是「不许做什么」,退路解决的是「万一做了怎么办」。
对着这份边界,我给每个第三层动作配了一句话:这个动作做完之后,我大概多久能发现,发现之后能不能撤。
答不上来的动作,就把它降一级,或者干脆不让它自动做。我做烧烤店那个小程序交付时收了 ¥3000,其中手写代码不到 20 行,剩下是 AI 写的。那单没出事,靠的不是代码干净,是上线前我把发布和回滚路径自己走了一遍。
怎么给 AI 划权限边界:先写下最怕的三件事
能抄结构,抄不了具体条目。
因为边界取决于你怕什么:怕丢数据的人,会把删除卡得最紧;怕说错话的人,会把发布卡得最紧。
我的建议是先写三条——最怕的一件事、撤不回来的一件事、每天都会做的一件事。把这三条划清楚,边界就已经能用了,剩下的边跑边补。
常见问题
Q:怎么给 AI 划一条权限边界?
A:按「出错后能不能收拾」分三层:只读放开、本地写留痕、动外部状态等确认。权限落在工具接口层,不写在角色说明里。
Q:应该按角色还是按工具分权限?
A:按工具分。同一个接口可能多个角色都会用到,按角色分会导致换个名字或加个人就得重写一遍规则。
Q:边界划好之后还需要做什么?
A:还要给每个高风险动作留退路,也就是想清楚多久能发现、能不能撤回。答不上来的动作就该收紧或改成人工。
相关阅读
本文作者西米,37 岁程序员,一个人加五个 AI 员工在跑一家公司。踩过的坑和真实账本都写在公众号「西米分享」。
完整代码、踩坑清单与最新进展,都在公众号。
📱 关注公众号「西米分享」