Claude Code 变强以后,我开始删那堆祖传提示词了

昨晚我又翻出一份自己攒了很久的 Agent 系统提示词,足足几百行。里面有角色设定、代码风格、报错处理、输出格式,还有一堆当年被模型逼出来的“你必须”。

我现在看它的第一反应是:服了,这东西可能有一半是在给旧模型擦屁股。

这波讨论的引子很直接:有人在 Fable5 基准里,把 Claude Code 的系统提示词砍掉约 80%,性能没有跟着掉。这个结果我还没自己复测,不能拿来当万能结论;但它戳中了我一直有的体感:模型够强以后,长提示词未必是护栏,也可能是手刹。

提示词工程没失效,失效的是把 Prompt 当咒语的那套执念。

我以前为什么爱堆规则

早一点的模型很容易跑偏。你不反复说“先读仓库”“不要臆测 API”“修改后给测试命令”,它就可能一本正经地编一套出来。

于是我会继续加规则:遇到 TypeScript 报错怎么做、不要改哪些目录、回答控制在多少字、输出前检查什么。每次翻车补一条,最后 Prompt 长得像公司入职手册。

问题是,Claude Code、Codex 这一档模型的推理和指令遵循上来后,它们已经能理解很多默认职业常识。你还把每一步掰开揉碎写死,模型反而会忙着满足字面约束,没空判断真正该怎么解决问题。

更烦的是规则之间会打架。比如一边要求“改动最小”,一边要求“补齐所有边界处理”;一边要求“不要问问题”,一边又要求“不确定必须确认”。人看着都头大,模型更容易挑错优先级。

我现在先删什么

我不会一把梭删干净。生产工作流里,权限、发布、数据删除这些硬边界必须写清楚,模型强不代表它该替你做风险决策。

但下面这几类,我会优先祛魅:

  • “你是一位拥有十年经验的全栈架构师”这类角色卡。任务、仓库上下文和验收标准,通常比人设有用。
  • 把显而易见的开发流程写成十几条重复禁令。能由工具、lint、测试兜底的,别全压在自然语言上。
  • 为了教模型格式而塞很多 Few-shot 示例。强模型很容易过度模仿示例,把旧方案当唯一方案。

我更愿意把“给它看三段范例”改成“明确输入、约束和输出契约”。例如让 Agent 改接口时,我会写清字段兼容要求、失败条件、相关测试位置;至于它内部先查哪几个文件、怎么组织思路,少管一点。

真正该加码的是验收

说白了,过程提示词写得再漂亮,都不如一个能执行的结果检查。

让 Claude Code 或 Codex 修 bug,我现在更关注的是:复现命令是什么、预期行为是什么、改完跑哪些测试、哪些文件不准碰。能给测试就给测试,能给 schema 就给 schema,能让 CI 判定就别让我肉眼判定。

我会按这个顺序改一份现有 Prompt:

  1. 把所有规则按“安全边界、任务事实、写作偏好”分三类。
  2. 保留安全边界,例如不可执行生产删除、不可提交密钥、不可越过人工审批。
  3. 删掉重复的人设、客套话和模型本就能理解的常识,每次删一组后用同一批任务回归。
  4. 把删掉的过程要求,尽量换成测试命令、lint、类型检查、接口契约或验收清单。
  5. 记录成功率、返工次数、Token 和耗时,别只凭一次“它答得挺聪明”就宣布胜利。

这里最容易翻车的一点是:把“少提示”理解成“不给上下文”。仓库目标、现有约定、报错日志、接口限制,这些不是废话,反而是 Agent 干活的燃料。

该删的是替模型思考的碎碎念,不是业务事实和风险边界。

我站“精简但不裸奔”这边。强模型正在把开发者从调咒语里解放出来,但下一步不是躺平,而是把精力挪到任务拆解、工具链和结果验证上。

手里有一份祖传系统提示词的,可以挑一个低风险仓库砍掉三分之一,拿同一组 issue 跑一遍。效果没掉,就别再让那几百行 Token 每次陪跑了;效果掉了,再把真正有用的约束加回来。

说白了,后面要是真把 Claude Code / 多模型接到日常工作流里,我更懒得每家单独折腾 Key;会优先走统一接入,少踩限速和换号的坑。想看怎么接可以瞄一眼 code80.ai

原文链接:Linux.do

C code80.ai · AI 编码 API 聚合 Claude / GPT 多模型统一接入,稳定不限速,按量计费,几行配置接入 Claude Code。 了解一下 ›

抢沙发

评论前必须登录!

立即登录   注册