Skip to content

Instantly share code, notes, and snippets.

View shihanmax's full-sized avatar
🎯
Focusing

Mashihan shihanmax

🎯
Focusing
  • Shanghai, China
  • 06:32 (UTC -12:00)
View GitHub Profile
@shihanmax
shihanmax / gist:5f501dd9a58ea6b04a19e9d9ee247523
Created January 23, 2026 03:23
Analysis CLAUDE.md in CC

Claude Code 上下文与指令注入机制研究总结

1. claude.md 注入逻辑

  • 搜集机制:通过 GVXD0 函数递归搜集项目根目录、.claude/ 目录以及全局配置中的 .md 指令文件。
  • 注入方式:在每轮 API 请求前,由 _3A 函数将搜集到的内容包裹在 <system-reminder> 标签中。
  • 注入位置:始终作为 User 消息数组的第 0 项(Index 0)注入,即位于整个对话历史的最前端。
  • 缓存优化:利用 Anthropic 的 Prompt Caching(前缀缓存) 机制。由于指令位置固定且内容稳定,模型会缓存这部分内容,后续轮次仅需支付极低的缓存读取费用。

2. 消息裁剪(Compaction)的影响

  • 逻辑顺序:Claude Code 执行裁剪(总结/删除超长消息)的步骤发生在指令注入 之前
  • 结论.claude.md 的内容是 「裁剪免疫」 的。它不属于会被持久化保存或修剪的对话历史,而是每轮动态挂载的「插件」,因此永远不会因为对话过长而被总结或丢弃。

3. 「喵理论」验证分析