news 2026/10/8 9:53:52

拒绝是合法答案:pstack 反谄媚设计让 AI Agent 工作流更专业的 4 个妙用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
拒绝是合法答案:pstack 反谄媚设计让 AI Agent 工作流更专业的 4 个妙用

拒绝是合法答案:pstack 反谄媚设计让 AI Agent 工作流更专业的 4 个妙用

【免费下载链接】pstack-claudeClaude Code, Codex, Copilot, Pi, OpenCode, Gemini, and Prime Agent versions of Poteto's pstack. Rigorous agent workflows with Cursor primitives translated for other harnesses.项目地址: https://gitcode.com/GitHub_Trending/ps/pstack-claude

pstack 是一个为 Claude Code、Codex、GitHub Copilot、Pi 等 AI Agent 运行环境打造的技能与工作流插件,它的反谄媚(anti-sycophancy)设计把"不"写进了 Agent 的默认行为,让 AI Agent 敢于拒绝错误前提、驳回无价值意见,而不是顺着用户说好话。对新手来说,这是让 Agent 从"听话工具"升级为"有判断的同事"的关键一步。

为什么 AI Agent 总爱"说好话"?

用过 Agent 写代码的人大概都遇到过这种情况:

  • 你说"这个方案可行吗?"——即使方案有明显问题,它也先肯定一番;
  • 你说"把超时改成 10 秒试试"——它照做了,尽管三次都没解决根本问题;
  • 评审机器人提了条误报——它还是照单全改,PR 被一轮轮无效修改污染。

原因很简单:模型在训练中被奖励"让用户满意",于是迎合成了默认策略。但写代码不是聊天,顺着错误前提一路狂奔的代价是真金白银:浪费上下文、产出一堆要删的代码、错过真正的根因。

核心设计:把"拒绝"变成 Agent 的默认选项

反谄媚的总纲写在 poteto-mode/SKILL.md 的 Autonomy 一节,只有一句英文,却是整个设计的灵魂:

No is an acceptable answer.——当被问是否要做某事、被邀请扩大范围、或看到某个方案时,回答真实的判断。该拒绝就拒绝,该推回就推回,该说"这不值得占地方"就说。建议是一种判断,不是附和。Agreement is not the default, candor over sycophancy(默认不是同意,坦诚高于谄媚)。

一句话总结:pstack 明确要求 Agent 的坦诚优先于讨好用户。

妙用 1:只处理"真正认同"的评审意见

babysit/SKILL.md(盯 PR 到可合并的看门狗流程)规定 Agent 处理评审评论时只对自己真正认同的反馈动手:

  • 评论有唯一的机械解(重命名、加个守卫子句、格式微调)→ 直接改,并在提交信息里引用原评论;
  • 评论需要判断,或者根本看不懂它在问什么 →不猜,保留现场,回复"如果是我会怎么做"。

这直接把"讨好型修改"挡在了 PR 之外 🚪。

妙用 2:给评审意见分三档,驳回必须给理由

自动评审机器人(Bugbot 之类)既抓得出真 bug,也批量生产误报。bugbot-triage.md 给出的立场很妙:"目标不是默认忽略 Bugbot,而是停止把每条评论都当成必须改的代码"。

每条意见先分档:

档位含义
fix疑似正确性、安全、数据问题 → 修,回复提交号
dismiss匹配已知低风险噪音模式,且当前代码能证明无需修改 →附简短理由驳回
ask新见、高危、安全/数据相关或含糊 → 默认问人,不猜

其中dismiss必须带具体理由,安全、数据、计费类问题则列入了"默认要问"清单——拒绝可以,但拒绝必须留痕,这是"合法答案"和"乱拒绝"的分界线。

妙用 3:多模型对抗评审,驳回要写进裁决书

interrogate/SKILL.md 让多个不同模型的评审员用同一份提示词和评分标准,独立地对代码改动发起对抗式审查。关键的"反谄媚"设定在 Step 5:主评审的角色是"务实的资深工程师,而不是中性的聚合器",必须把每条发现分进四个桶:

  • Act on(要改):真实的正确性/安全/可维护性问题;
  • Consider(可考虑):合理但成本权衡未定;
  • Noted(记录):技术上成立但当前不值得动;
  • Dismissed(驳回):错的、吹毛求疵或缺乏上下文——且必须附一句驳回理由。

这样"拒绝"不再是随口一句,而是可复查的裁决记录 📋。

妙用 4:连证据都要"反叙事"

why 技能的 调查员提示词 要求:"抵抗故事的诱惑"——如果三条证据拼得严丝合缝,第四条却与之矛盾,那个矛盾才是最值得深挖的发现,不能悄悄归档。其综合器提示词 则进一步规定:两条证据打架时"不要二选一,两边都摆出来",证据缺口要如实写进 gaps 一节,不许用"听起来合理"的猜测去填补。

reflect 技能 的发散型评审员 更是直白:本会话"显而易见"的教训,往往不是最有用的那个,去把它下面那条找出来。

快速上手:三步让 Agent 学会说"不"

  1. 安装插件(以 Claude Code 为例):

    /plugin marketplace add michael-denyer/pstack-claude /plugin install pstack@pstack-claude

    Codex、Pi、GitHub Copilot 的安装命令见 README.md。

  2. 在会话开头说"Use poteto-mode to …"(用 poteto-mode 做……),路由钩子会自动加载对应 playbook,反谄媚规则随之生效;

  3. 想单独触发某个能力,直接调用/babysit、/interrogate、/why等命令即可。

结语:拒绝不是失败,而是工作流的"路由信号"

pstack 把"拒绝"从客套话变成了工程机制:attack-the-premise 原则 要求"当两次以上基于同一假设的修复都失败时,先写下这个假设,再选一个能挑战它的观察"。Agent 的一次推回,可能帮你砍掉一整轮无效的修补循环。

想让 AI Agent 更专业?先让它敢说"不" ✅。

更多技能清单与命令说明,可查阅官方文档 docs/reference.md 和技能目录 plugins/pstack/skills/。

【免费下载链接】pstack-claudeClaude Code, Codex, Copilot, Pi, OpenCode, Gemini, and Prime Agent versions of Poteto's pstack. Rigorous agent workflows with Cursor primitives translated for other harnesses.项目地址: https://gitcode.com/GitHub_Trending/ps/pstack-claude

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/8 9:53:17

Spring Boot毕设必看:自习室预约系统从并发处理到部署全解析

前阵子有个学弟拿着毕业设计选题清单来找我,第一屏就是“基于Spring Boot的自习室预约系统设计与实现”。他问我:这题是不是太大众了,做出来会不会没有亮点?我说你先别急着追求“看起来很牛”,先想想一个问题&#xff…

作者头像 李华
网站建设 2026/10/8 9:53:08

不重启不降温:Java应用在Azure上的热迁移实战

先把盘子铺开说一句:在Java后端这块摸爬滚打这么多年,服务器迁移最让人头疼的从来不是“搬代码”,而是“搬状态”。尤其是业务跑起来之后,你发现迁移就意味着要重启、要停服、要凌晨三点点着外卖干活。所以当我真正在Azure上把一套…

作者头像 李华
网站建设 2026/10/8 9:53:04

t3code:跨平台移动调试CLI工具,基于Electron的iOS/Android开发协作者

1. 项目概述:t3code 是什么?它解决的到底是什么问题?t3code 这个名字乍一看像某个内部代号、临时项目名,甚至有点像拼写错误——有人会下意识联想到 t3、t3js、t3-cli,或者误以为是 TypeScript Turbo Next 的某种组合…

作者头像 李华
网站建设 2026/10/8 9:52:45

一个 ELSE 为什么会拖慢整条 CDS 查询,Not-Null Preserving Calculation 如何卡住 SAP HANA 优化器

在一个典型的 SAP S/4HANA 采购订单数据模型里,明细数据和抬头数据经常被拆成不同的 CDS Entity。采购订单行项目负责物料、数量、工厂等信息,采购订单抬头负责订单状态、供应商、审批状态之类的信息。业务查询往往只关心某一个物料,理论上经过一个选择性很高的 WHERE 条件以…

作者头像 李华
网站建设 2026/10/8 9:52:39

AgentLoop:内核事件驱动架构的统一调度循环设计

写内核这事儿,越写到后面越会发现:最难的不是某个精妙的算法,而是控制流。DSH内核写完中断管理、内存分配和任务调度之后,我面对的是一个很实际的问题——外设越来越多,每个外设都有自己的一套事件处理逻辑&#xff0c…

作者头像 李华
网站建设 2026/10/8 9:50:31

Agent-Reach:面向开发者的轻量级智能体CLI调用枢纽

1. 项目概述:Agent-Reach 是什么?它解决的不是“能不能用”,而是“怎么用得稳、用得快、用得省心” Agent-Reach 这个名字乍看像某个大厂新发布的智能体平台,但实际翻遍 GitHub 主页、官方文档和社区讨论,你会发现它既…

作者头像 李华