SuperAPI AI 工具集

prune-prompt-pollution

写作与研究

查看项目

更新于 10-16 03:59

技能介绍

用途

prune-prompt-pollution 用于清理面向智能体的指令文档中的“提示污染”。其核心观点是:智能体文档通过激活什么来引导行为,而不是通过禁止什么。一个禁止性表述会点名被禁止的行为,反而使其更易被激活;缺失声明把 token 花在不存在的东西上;过时的元叙述会教智能体忽略文档本身;稻草人式警告点名诱惑并对其做引导。该技能在不削弱文档所承载约束的前提下改写这四类模式。它是指导,不是脚本。

适用范围

该技能处理的是以引导智能体当前行为为职责的散文;记录性文本和面向人类的文本遵循各自的标准。

范围内、自动处理:规则文件(AGENTS.md / CLAUDE.md)、技能正文与描述、提示词与可见字符串,以及当前状态的设计/计划/流程文档。

范围内、按请求处理:任务与会话文件,它们混合了实时指导与过程记录;仅在明确要求时才清理。

范围外:代码、提交信息、决策记录、事后复盘,以及面向玩家或用户的文案。这些内容记录历史或理由,或者由人而非模型阅读。

下方的保留清单是安全阀:承载约束的否定句会被改写为其后果,绝不删除。

四类模式

否定式引导(Negation priming)——“不要想大象”“绝不使用 X”“避免 Y”。否定是一个弱修饰语,会被强烈激活的概念压倒。应改写为正向目标:“写单行注释”“使用官方接缝”。只有当某个禁止无法用正向方式表达时,才保留为硬性护栏;即便如此,也要与正向目标配对,让注意力落在该做什么上。

缺失声明(Absence declarations)——“没有 X”“此文件不包含 Y”。如果文档的职责是陈述存在什么,就删除缺失行;如果缺失是承载性的(智能体不能假设 X 存在),则陈述其后果:“当 X 缺失时,查询返回 503”。

过时的元叙述(Stale meta-narrative)——“本文档过去说”“旧版本涵盖”“我们之前推荐”。读者需要的是当前规则,而不是它的历史。陈述当前规则;历史属于 git log 或决策记录。

稻草人式警告(Strawman warnings)——“有些人认为 X,但我们不”“你可能会想 Y,但别这样”。警告点名了诱惑并对其做引导。直接陈述正确模式;诱惑不是读者的问题。

需要保留的内容

无正向表述的硬性护栏——“绝不在凭据中存储字面密钥”无法在不丢失约束的情况下正向改写;保留它,并与正向目标配对(“只存储 apiKeyEnv 引用”)。

反事实回归锚点——“没有 X,就会发生 Y”陈述了保持行为安全的不变量;保留它。

承载性缺失——“此环境没有数据库”是智能体必须遵守的约束;保留它或改写为其后果,绝不删除。

抑制理由——空 catch 的解释和忽略原因属于必需散文;修正错误的理由,绝不删除。

实测边界——“(实测:512 层嵌套 ≈ 0.15s)”用于校准常量;“实测”一词是承载性的。

工作流程

  1. 像智能体那样阅读文档:每个句子激活了什么?
  2. 对每个可疑段落分类:否定式引导、缺失声明、过时的元叙述,或稻草人式警告。
  3. 将存续的约束改写为正向目标或后果,并删除其周围的污染。
  4. 验证修改保留了原文承载的每一项义务、不变量、前置条件和后置条件。

示例

污染 → 改写后

“不要使用 var” → “对从不重新赋值的绑定使用 const;需要重新赋值时使用 let。”

“此文件没有测试” → “覆盖率位于 test/;为每个非平凡分支添加一个可运行的检查。”

“旧 README 推荐 X” → “使用 X。”

“你可能想缓存这个,但别这样” → “查询是 O(1);无需缓存。”

限制

该技能是指导性方法而非自动化脚本,不提供具体的执行命令或工具集成方式。其官方文本、安装方式、平台支持、收费与价格信息暂未提供。