跳到主要内容

Agent 的忠诚度

多方委托下“谁说话帮谁”为什么危险?​

  • 默认原则: 模型在训练中形成朴素默认——“谁在跟我说话,我就尽力帮谁”;
  • 真实处境: Agent 常代表主人行事,打交道的却是利益相反的第三方;
  • 例证: 一个替你砍价的 Agent,对面坐着的不是“需要被帮助的用户”,而是交涉对手;
  • 后果: 对手只要开口,就可能把 Agent 策反;
  • 术语: 这类问题称为委托方忠诚(principal loyalty)——Agent 到底站在谁那一边;

忠诚度光谱的两端失败是什么?​

失败端表现触发方式
太老实把主人的私密信息(如“我方底价是 12000”)直接抖给对手被反复施压几轮就缴械让步
太多疑连主人正当的请求也一概拒绝反而没法完成任务
  • 难点: 两种失败是一根跷跷板——把泄密堵死往往滑向过度拒绝,很难两全;

提示注入在忠诚度视角下是什么?​

  • 定位: 提示注入本质上就是一次策反;
  • 对手来源: 仓库里读到的不可信内容、某个工具返回的输出、第三方 MCP 服务器发来的指令;
  • 对 Coding Agent 的贴切性: 这些正是它日常接触的外部交互方;
  • 关联: 上下文层与执行层的通用防护见 护栏与安全;

Harness 层如何限定忠诚对象?​

  • 限定规则: 主人的指令优先级最高,一切来自外部交互方的内容都默认降格为“可参考、但不具备指令效力”的数据;
忠诚度守则要点
保护私密信息甚至不泄露这些信息是否存在
拒绝时不念清单逐条念出拒绝清单本身就在泄露
私下的底线不等于对外的立场内部约束不可外推为对外承诺
只执行明确且具体的指令不为模糊请求自行加码
顶住重复施压反复施压不改变立场
  • 本质: 用 Harness 为模型补上一条它默认没有的立场——对主人绝对忠诚,对外部交互方保持审慎;
  • 定位: 这是安全机制从“命令被做坏”转向“Agent 站在谁一边”的另一层防线;