扒完Claude Code源码,我发现这915行提示词里藏着的6个秘密
见字如面,我是小马哥!35+技术总监,995职场宝爸,探索AI第二曲线,专注AI赋能提效。

这两天 AI 圈儿最大的瓜可能就是 Claude Code 不小心把代码泄露了。
随后全网狂欢,大家都像发现金矿一样的疯狂克隆。
我也怀着好奇把代码拉下来了。
实话说,几十万行代码根本不知道从哪看起。
不过有一个文件引起了我的格外注意,其实就是一个提示词文件:src/constants/prompts.ts。
可以随便找个仓库来看,比如这个:
https://github.com/claude-code-best/claude-code
整整915行代码,专门用来写提示词。
你可能会问:一个编程工具,需要这么多提示词?
我的答案是:需要。
因为提示词是 AI 的工作说明书。你告诉它什么该做、什么不该做、什么能做、什么不能做,它才能真正成为你的助手。
今天我就从这915行提示词里,给你提炼6条真正有价值的经验。
01别过度帮倒忙
用AI助手,很多时候最头疼的问题不是它不会,而是它做得太多。
让它修一个问题,经常遇到又把做好的事情搞坏了。
这不是帮忙,这是添乱。
Claude Code的提示词里,专门有一段讲这个问题:

翻译过来简单说就是:别好心办坏事。
用户让你修bug,你别顺手重构;能三行代码解决的事,别搞抽象。
这句话看起来简单,但它是AI编程工具最反直觉的设计哲学——能力不是越强越好,克制比能力更重要。
02教AI说人话
AI天生爱废话。
你让它写个接口文档,它给你写出一篇论文;你让它查个错误,它给你科普十分钟原理;你让它输出个结果,它先给你讲三百字背景。
Claude Code的提示词里,专门有一段教AI”少说话,多做事”:
Write user-facing text in flowing prose while eschewing fragments.
What’s most important is the reader understanding your output without mental overhead.
If you can say it in one sentence, don’t use three.
这里说了三个要点:
第一,撰写面向用户的文案时,行文要流畅连贯,避免使用不完整的短句。
第二,最重要的是让读者无需费力思考就能理解你所表达的内容。
第三,能一句话说清楚的,别用三句话。
输出效率vs用户理解,是两套完全不同的输出风格。你如果不告诉它用哪套,它肯定默认选话痨的那套。

03安全锁死
一次授权 ≠ 永久授权

即使上次⽤⼾同意了,下次也要再问。因为上下⽂可能已经变了。
OWASP Top 10 防御

安全漏洞直接写进提⽰词,这样写出来的代码直接避免了安全隐患。
04工具选择的学问
AI 喜欢什么任务都用命令行解决,但用户完全看不懂它干了什么。
Claude Code的提示词明确要求:专用工具优于通用工具。
Do NOT use the BASH_TOOL to run commands when a relevant dedicated tool is provided.
To read files use FILE_READ instead of cat, head, tail.
To edit files use FILE_EDIT instead of sed or awk.
To search files use GLOB instead of find or ls.
为什么不用cat、grep?
因为你的工作不是只有你自己看。用专用工具不是为了炫技,而是为了让工作过程可追溯、可理解。
05诚实报告,不要假装成功
AI有一种假装完成的倾向。
让它写个功能,它说”已完成”;让它跑测试,它说”全部通过”;实际上呢?功能没跑通,测试全是红。
Claude Code专门有一段反作弊提示词:
Report outcomes faithfully: if tests fail, say so with the relevant output.
Never claim “all tests pass” when output shows failures.
Never characterize incomplete or broken work as done.
The goal is an accurate report, not a defensive one.
核心就一句话:不要隐藏失败,出具准确的报告,而非刻意辩解或掩饰问题。
既不要谦虚,也不要吹牛。这是AI输出的基本素养,也是你对它最基本的要求。

06如何省Token
915行提示词,是不是每次都要全部发送?
当然不是。
Claude Code用”边界标记”实现了缓存优化:静态内容缓存起来,动态内容每次发送。
export const SYSTEM_PROMPT_DYNAMIC_BOUNDARY =
‘__SYSTEM_PROMPT_DYNAMIC_BOUNDARY__’
这一招让Claude Code节省了90%的Token消耗。
为什么能省这么多?因为AI编程的场景里,大部分提示词内容是稳定的。
工具说明、安全规则、输出格式,这些不需要每次都发。
只有这次会话的上下文、具体的任务要求,才需要每次发送。

结语五个核心发现
1. 提示词是可工程化的代码
提示词不是试试看、调一调的艺术,而是可版本控制、可测试、可优化的工程代码。Claude Code的提示词有清晰的模块划分、版本标记,性能注释。
2. 克制比能力更重要
教AI什么不做,比教AI什么做更重要。过度热情的AI比懒惰的AI更危险。
3. 细节决定成败
连「能一句话说清楚的,别用三句话」这种细节都要写进提示词。每个细节都是血泪教训。
4. 安全是第一原则
拥有shell权限的AI必须被严格约束,宁可问得烦也怕你背锅。
5. 性能可以优化
Prompt Cache、边界标记、附件注入,提示词也需要性能工程。
打包带走
如果你正在开发自己的AI应用:
第一,把提示词当代码写——放在Git里,做好版本管理。
第二,建立克制原则——明确告诉AI边界在哪里。
第三,关注输出质量——花80%的精力优化用户看到的内容。
第四,安全第一——永远不要假设AI会「自动做对」。
第五,监控和迭代——提示词需要根据用户反馈持续优化。
“The right amount of complexity is what the task actually requires.”
——合适的复杂度,就是任务实际需要的复杂度。
更多内容限于篇幅没有放出,想要的可以关注后领取。

夜雨聆风