ARTICLE · 1015125
AI Agent 实战 07 · 动作分七层,禁止清单按层写
上一篇定完了它是谁。这一篇定它每一步能做到哪儿。
动手之前先拿一样旧东西:第 03 篇那张动作清单,六条。
把它们按这七层归位:读取、生成、建议、提交草稿、触发流程、写入系统、对外发送。
归完数一数你写了几条。六条动作,拆干净是八条。数出来还是六条,说明一条都没拆开。
学习目标
产出物是一张动作权限矩阵。
一、为什么非拆不可
先说理由,省得你拆到一半怀疑值不值。
控制措施是挂在动作上的,不是挂在功能上的。
「提交单据」这种条目不拆,你只能给它一个整体处置:允许、禁止,或者整个需批准。拆开之后才看得见,里面有些部分可以放,有些必须拦。
第一条「查制度答疑」就归不进去,因为它是两个动作:去知识库里读,和把读到的东西组织成一段话。前者是读取,后者是生成。
整张清单拆完是这样:
六条变成八条。
拆到一条只跨一层为止。跨两层的继续拆,拆不动说明你还没想清楚它做了几件事。
注意第四条没有拆。「提交单据」在这套制度里就是一个动作——《提单与验收流程》第三条那张状态流转表从「待受理」起,根本没有草稿态。建单即入流程,中间没有一个能停住的地方。
拆的粒度不由你想象,由系统实际有哪些状态决定。
二、七层,每层要盯什么
前三层不在系统里留痕迹,后四层留。
这一刀就是第 03 篇那第二道分界线的细分版——它开始在 Agent 之外留下痕迹。
第四层在这个例子里是空的
上面那张拆解表里,八条动作没有一条落在第四层。
不是漏了。是这套制度里没有草稿态,提交即入流程,第三层和第五层之间没有缓冲。
有草稿态的系统里第四层才存在:邮件草稿、工单草稿、待提交的报销单。有没有这一层,决定了你能不能设计出「它建、人审、再提」这种流程。
没有这一层,它要么不碰单据,要么一碰就进流程——中间没有第三条路。
三道最要紧的分界
生成 → 建议:两边都是文字。分界在于人拿到之后,还会不会再想一遍。
「照第三条查到的是这样,原文在这儿」是生成,他会去核。「这次按高风险办」是建议,他直接用。判据是能不能回原文核:检索题能,判断题不能。
建议 → 提交草稿:这一刀最容易被跨过去而没人察觉。
「我给你写好了」和「我替你建了一条」,在使用者眼里都是帮忙,但后者已经在系统里了。
触发流程 → 写入系统:前者是新增一件事,后者是改动已有的事。
新增可以作废,改动要原值才能还原,而原值多半没人存。不过作废也不是没代价——《提单与验收流程》第四条给「待受理 → 分析中」压了一个工作日。单子能作废,那个人已经花掉的工作日退不回来。
七层不是一条完整的风险排序
上一篇末尾说「越往后风险越高」,这里要说准一点:那是粗排,不是全序。
同一层里,不同动作的差别可能比跨层还大。
都在第六层写入系统:改一条备注,和改一个金额,可逆性差着量级。
所以落到每一条动作上,那两问还得再问一次:做错了能不能撤回原状?撤的代价有多大?
分层的作用是让你别漏掉动作,不是替你判完风险。
读取不是免检层
第一层看着最安全,其实它决定了后面六层能拿到什么。
第 03 篇那条规矩在这儿再用一次:一个空间的知识库里,只放这个空间里所有人都能看的东西。
读取范围没收住,后面层层都在这个范围上作业。
三、层数低不等于风险低
拆完你会发现一件怪事。
「给出等级结论」只落在第三层建议,七层里靠前的位置。而第 03 篇把这条动作定成了 L4,整张表里最高的那一格。
这不是哪边搞错了。是两把尺子在量两件事。
「给出等级结论」这个动作本身很轻,它只是说了句话。重的是那句话被直接拿去决定审批链。
所以这两张表必须都填,不能拿一张替另一张。
只看层数,你会漏掉所有「只说话但说了算」的动作;只看等级,你不知道该在哪一步放控制。
四、禁止动作清单:从非目标翻译过来
上一篇那份非目标清单,到这里要翻译成动作。
翻译规则只有一条:一条禁止动作必须指得出它属于哪一层。指不出来的,那是表态,不是清单。
四条非目标翻出五条禁止动作——其中一条占了两行,因为「不承诺审批结果」和「不承诺上线时间」是两个动作,落在两层。
第一节那条「一条只跨一层」的规矩,在禁止清单上再用一次。
还有几条跟非目标无关,但必须写
这几条不是从角色卡推出来的,是这一类项目通用的底线:
写不写这几条,跟你的 Agent 现在有没有这个能力无关。
清单是给权限用的,不是给现状用的——第 03 篇那条定错方式在这儿又出现一次:按它被允许做什么定,不按它现在实际怎么用定。
五、禁止清单写成废话的三种样子
判据:每条禁止动作后面能不能跟上一个层号。跟不上,就还没写完。
六、动作权限矩阵
产出物是这张表。第一节拆出来的八条动作,一条不漏地填进去。
| 禁止 | ||||
三件事值得注意。
「给出等级结论」那一行填的是禁止,而不是需批准。
因为它一旦说出口就已经影响了人的判断,事后批准拦不住已经发生的影响。第 04 篇试过加一道批,救不了这一类动作;第 03 篇给的出路是换动作——把「它判」改成「它把判据摆出来,人判」。
「发出提醒」在第七层,却是允许。
因为收件人是它自己的使用者。第 03 篇那条判据管的就是这个:收件人换成审批人,这一行立刻变成上一节那条禁止。
「写出草稿文本」和「提交进流程」分在两层,处置也不同。
这正是第一节说的那件事:拆开之后,你可以让它只做前者——写好草稿,人自己去提。第 01 篇那个 Agent 就是这么设计的。不拆,这条路你看不见。
填回登记表:禁止动作清单填「禁止用途」的下半截,跟上一篇那半截拼成一整格;矩阵里「需批准」那几行,是「人工审批点」那一格的草稿。「层」这一列登记表接不住,它是你自己的文档。
七、平台实例(knodo):工具决定的是第四层往后
这个平台上没有「动作层」这个概念,矩阵是你自己的文档。
但它现在实际能做到第几层,平台上看得出来——第 03 篇那四个地方:AI 成员绑没绑技能、空间「AI 配置」下绑没绑插件与技能、有没有被设成任务执行者、有没有配自动化任务。
四处都空,它到第三层。能读、能说、能给建议。
注意是第三层不是第二层。上一篇记过,第 01 篇那轮验收里它三次主动伸手要判风险等级——那时候它一个工具都没有。给建议不需要工具。
所以「不给那个工具」这条执行手段,管的是第四层到第七层。
前三层拦不住:提示词规定不了它不做什么。一到三层里那些不许做的,执行形态是别的——换动作、换下游、把知识库收窄,第 03 篇那三条路。
反过来也成立:你在提示词里写「不得提交单据」,不会让它降回第三层。第四层往后由你给了什么工具决定。
怎么给、按什么粒度给,是第 08 篇的正题。给了工具又必须拦住的那些,门禁得放在 Agent 之外,那是第 14 篇。
八、动作清单变了,等级要重定
最后补一句容易漏的。
你刚把六条拆成了八条——这本身就是第 03 篇那四种重新定级触发里的第一种:动作清单变了。
拆完回去对一遍定级表。多数时候等级不动,但拆出来的新动作里如果有一条你原来没数进去,那一格就得重填。
九、下一篇讲什么
矩阵填完,「需批准」那几行里藏着一个没回答的问题。
一次批准,管几次执行。
批一次提交,是批这一张,还是批今天所有的?批一次写入,是一条记录,还是五百条?
第 04 篇讲过批准的对象要换成清单,但没讲那份清单能有多长。
第 09 篇讲审批点的三件事:放在哪一步之前、一次管多大的量、批完之后怎么保证执行的就是批的那一份。
那三件事里最容易被忽略的是中间那件。