大家好,我是大都督周瑜,今天给大家分享:为什么Claude Code系统提示词中需要有model。
这篇文章属于 Claude Code源码解析系列 中的一篇,大家可以关注一下,以免错过后续更新。
同时大家也可以加我微信,我整理了大模型和AI Agent相关的面试题,可以免费送给大家(大家给我点个关注就可以啦,谢谢大家)。

先回顾一下,getSystemPrompt函数接收四个参数:
- 1. tools:本轮对话可用的工具列表
- 2. model:本轮对话所使用的模型,比如 "glm-5.2"
- 3. additionalWorkingDirectories:用户用 --add-dir添加的额外工作目录
- 4. mcpClients:当前连上的MCP服务器客户端列表
上一篇分析了参数tools,这篇接着看第二个参数model。
为什么Claude Code生成系统提示词时,需要model信息呢?
核心原理其实很简单,Claude Code会在系统提示词里生成一段关于当前环境的信息(Environment段落),用来描述当前工作目录、操作系统、当前使用的模型名字、知识截止日期、模型版本号等信息,从而让模型掌握更具体的环境信息。
你可能会问,难道模型自己不知道自己叫什么名字?还需要Claude Code告诉它?
这是有可能的,比如你问某些模型它的版本号,或者知识截止日期,它是有可能回答错误的,所以Claude Code会把这些信息明确写到系统提示词里,从而让模型更准确的知道这些信息。
底层分析
model参数在getSystemPrompt函数里,主要传给computeSimpleEnvInfo函数,由它生成上面说的Environment段,其中和model相关的是两部分:

这两个函数的实现都很直白,核心就是先把模型ID规范化,再一连串includes匹配。
getMarketingNameForModel函数命中哪个Claude型号,就返回对应的展示名:

getKnowledgeCutoff函数同一个套路,按型号查截止日期:

所以claude-opus-4-6能匹配上、拿到Opus 4.6和May 2025,而glm-5.2则匹配不上,两个函数分别返回undefined和null。
最终在Environment部分里,两种模型的结果差别很大。
用claude-opus-4-6时,getMarketingNameForModel函数转得出展示名Opus 4.6,getKnowledgeCutoff函数查得到May 2025:
- You are powered by the model named Opus 4.6. The exact model ID is claude-opus-4-6.
- Assistant knowledge cutoff is May 2025.换成glm-5.2,展示名转不出,知识截止也查不到,modelDescription只用了ID:
- You are powered by the model glm-5.2.一对比就清楚:Claude模型有展示名、有知识截止,非Claude模型这两项都没了,只剩一个光秃秃的模型ID。
实操
和上一篇一样,可以用--dump-system-prompt把系统提示词导出来,来对比claude-opus-4-6和glm-5.2两种情况。
两种情况都要改src/entrypoints/cli.tsx里dump那行的model,每改一次重新打包、导出一个文件。
第一种:claude-opus-4-6
把那行改成:

重新打包再导出:

第二种:glm-5.2
把那行的model换成glm-5.2:

再打包导出到另一个文件:

对比a.txt和b.txt的Environment段:
# a.txt(claude-opus-4-6)
- You are powered by the model named Opus 4.6. The exact model ID is claude-opus-4-6.
- Assistant knowledge cutoff is May 2025.
# b.txt(glm-5.2)
- You are powered by the model glm-5.2.a.txt有展示名和知识截止信息,b.txt只有模型ID。
注意,两个实验都做完后,把features里的DUMP_SYSTEM_PROMPT去掉、cli.tsx里那行改回原样,重新打包恢复默认。
如果这篇文章对你有帮助,欢迎 👍 点赞、⭐ 收藏、➕ 关注,这是对我持续输出的最大鼓励。
关注我,持续更新 Claude Code源码解析系列,带你从源码视角深入理解最强AI Agent的底层实现。
课程推荐
最近,我的 《AI原生超级全栈开发工程师训练营》第二期 正在招生中,以下是课程介绍。


课程分为五大板块,十三个专题
- 1. Vibe Coding:AI时代的编程新范式,未来拼的不是你手写代码多厉害,而是如何更好的指挥AI写代码
- 2. AI Agent:AI时代的产品新形式,任何产品都可以转型为AI Agent,使得产品更加智能化、个性化
- 3. 项目实战:多个Vibe Coding + AI Agent项目实战,带你把所学知识真正做到融会贯通
- 4. 大模型底层:深度学习、Transformer、LLM、大模型微调、多模态模型、强化学习等硬核底层知识
- 5. AI独立开发者:最合适程序员的一人公司模式,做出属于自己能变现的产品,开启创业之路的大门
六大课程亮点,绝对超值
- 1. 课程内容全,课程覆盖了AI领域最重要的程序员必学知识点
- 2. 讲师实力硬,所有内容都是我亲自讲,N年的积累都教给你
- 3. N期学习权限,你能跟着我一直学AI最新的技术,抓住趋势
- 4. 大模型底层 + AI独立开发这两块,其他机构没有或讲得很浅
- 5. 课程配套全,35万字课程笔记辅助学习,永久权限和VIP服务
- 6. 性价比非常高,尽管对比,没有比我讲得多还价格比我低的
对标岗位或职业方向
- 1. AI全栈开发工程师
- 2. AI Agent开发工程师
- 3. AI应用开发工程师
- 4. 大模型底层开发工程师
- 5. AI独立开发者
- 6. 其他岗位也可以通过Vibe Coding得到加成
让AI来得更猛烈些吧,怕什么,自己足够强大,便无所畏惧!
报名后马上可以学习,新课招生,历史最低价,优惠名额有限,先到先得。
再次强调,这是最后的N期学习权限机会,以后不会再有了。
再次强调,这是最后的N期学习权限机会,以后不会再有了。
再次强调,这是最后的N期学习权限机会,以后不会再有了。
N期学习权限表示后续更新的内容都可以学,比如现在计划后续会更新:
- 1. AI Agent工程(提示词工程、上下文工程、Harness工程、Loop工程)
- 2. AgentScope
- 3. 手写Claude Code
- 4. Claude Code底层分析
- 5. Hermes底层分析
- 6. OpenClaw底层分析
- 7. LearnFlow AI Agent实战
- 8. 向量数据库底层分析
- 9. 独立开发者出海篇
- 10. ...

夜雨聆风