大家好,我是子昕,一个干了10年的后端开发,现在在AI编程这条路上边冲边摸索,每天都被新技术追着跑。
最近几天我发现一个有趣的现象:作为 Claude Pro 订阅用户,我明显感觉到 Claude Code 有点了,不如之前那么聪明。
这让我突然想起一个经典问题——我们能否偷看一下 AI 的“小抄”?
作为一个有着强烈好奇心的程序员,我决定对 Claude Code 来一场“开膛破肚”式的逆向分析。毕竟,既然它被誉为“AI编程工具之王”,那我就要看看它的王座到底是怎么坐稳的。
经过一番折腾,我发现了 GitHub 上一个对Claude Code进行逆向的项目:
github.com/Yuyz0112/cl…
这个项目可以让我们实时拦截和分析 Claude Code 与服务器的所有通信,相当于给 AI 装了个。
在开始动手之前,先说说为什么要这么做:
- 技术好奇心:Claude Code 凭什么能做到比其他 AI 编程工具更强?
- 成本透明度:作为 Pro 用户,我想知道每次对话到底消耗了哪个模型,用了多少 tokens
- 学习借鉴:了解顶级 AI Agent 的设计思路,对我们自己开发 AI 应用有巨大价值
- 质量监控:当感觉 AI 表现异常时,可以通过日志分析找到原因
在开始这场“技术侦探”之旅前,你需要准备:
- Claude Code:废话,没有目标怎么逆向
- Node.js 环境:用于安装 js-beautify
- 一颗不怕搞坏东西的心:记得备份,万一搞砸了别哭
首先要找到 Claude Code 的真身。在命令行执行:
通常会得到类似这样的结果:
但这只是个“替身”!在 Mac 上,这通常是一个软链接。我们需要找到真正的 文件:
你会看到它指向了真正的安装位置:
这就是我们要“动手脚”的地方!
Claude Code 的代码是压缩过的,就像一团乱麻。我们需要先让它变得人类可读:
现在 就变成了格式良好、可读性强的代码。
这是整个过程中最关键的一步。我们要在 中植入监控代码,让它把所有与 LLM 的对话都记录下来。
在文件开头 这行之后,添加我们的“间谍模块”:

间谍代码如下,直接复制粘贴即可:
接下来,我们需要找到 这行代码(通过搜索功能),在它后面插入 API 拦截代码:

拦截代码如下,同样直接复制粘贴:
下载逆向分析项目:
现在一切准备就绪!当你使用 Claude Code 时,所有的 API 交互都会被记录到 文件中。
让我们来个简单的测试:

你会发现在 Claude Code 安装目录下生成了一个 文件:

使用项目提供的解析工具处理日志:

然后浏览器打开 文件,点击“Choose conversation log”按钮,选择你本地生成的log文件进行可视化分析:

现在让我们来看看 Claude Code 在处理一个简单问题时的完整思考过程。我让它解释项目结构,然后通过日志分析看到了它的“内心戏”。

发现:Claude Code 每次启动都会先发送一个神秘的 “quota” 消息,使用的是 Haiku 3.5 模型。这就像是在说“喂,服务器,我还有额度吗?”这是一个轻量级的心跳检测,确保后续的对话能正常进行。
分析:这个设计很聪明,用最便宜的模型做检查,避免浪费昂贵的 Sonnet 4 额度。

发现:接下来 Claude Code 会使用 来判断这是否是一个新的会话,并尝试从用户输入中提取 2-3 个关键词作为会话标题。
prompt_1 的作用:
依然使用 Haiku 3.5 模型,说明这也是一个轻量级任务。

重头戏来了! 这次使用的是 Sonnet 4 模型,系统会注入多个关键提示词:
- 系统角色中: +
- 用户消息中: +

这里的 是整个 Claude Code 的,定义了它的完整行为模式。
在下面我会完整贴出这几个提示词的中文版,让你一探究竟。

Claude Code 的第一反应:使用 工具查看当前目录结构。
这就像人类程序员接到任务后第一件事就是 看看当前环境一样,AI 也学会了这个习惯!

系统响应:立即执行 工具,将结果返回给模型。

AI 的逻辑推理:既然看到了文件列表,下一步就是读取关键文件:
- - 了解项目概述
- - 了解项目依赖和脚本
这个行为模式和有经验的开发者如出一辙!

持续的信息收集:Claude Code 继续使用 和 工具,深入了解项目结构。每一次工具调用都有明确的目的性。

完美收官:基于收集到的所有信息,Claude Code 给出了详细而准确的项目结构分析。
通过这个完整的分析,我发现了 Claude Code 的智能之处:
- Haiku 3.5:配额检查、话题检测等轻量级任务
- Sonnet 4:核心推理、复杂分析、工具调用
- → 了解环境
- → 获取项目概述
- → 了解技术栈
- 继续深入探索...
这个序列完全模拟了人类开发者的思维模式!
Claude Code 会在每次对话中注入多个系统提示词,我把主要的翻译如下:
系统提醒 - 开始部分
对应[ prompt_2]
系统提醒 - 待办事项
对应[prompt_3]
核心身份定义
对应[prompt_4]
核心工作流程指令
对应[prompt_5],这是最重要的系统提示词,定义了 Claude Code 的完整行为模式:
当对话变长时,Claude Code 会自动压缩历史上下文,保留关键信息的同时节省 token 消耗。这个功能通过专门的压缩提示词实现。
Claude Code 定义了丰富的工具集,包括:
- 文件系统操作(读取、写入、搜索)
- 代码执行(Bash、Python 等)
- 任务管理(TodoWrite)
- IDE 集成工具
- 子代理系统(Task)
通过日志分析,我发现我感觉到的“降智”现象可能有几个原因:
- 模型选择策略变化:可能是为了控制成本,某些任务改用了较轻量的模型
- 上下文压缩过于激进:重要信息在压缩过程中丢失
- 工具调用链过长:复杂任务的多步骤推理被分散到多个工具调用中
通过这次“技术侦探”之旅,我不仅了解了 Claude Code 强大秘密的冰山一角,还学到了一些 AI Agent 设计的宝贵经验:
- 多模型协作比单一模型更高效
- 精心设计的系统提示词是关键
- 工具系统的丰富性决定了能力上限
- 上下文管理策略影响对话质量
这只是开始
需要说明的是,这次分析只是通过一个简单的“描述项目结构”需求,初步了解了如何进行逆向分析。Claude Code 的真正实力远不止于此!
后面我计划通过更复杂的场景来深入挖掘:
- :看它如何处理多文件重构、架构设计等高难度任务
- :分析它如何进行代码审查和性能调优
- :观察它的错误诊断和修复策略
- :从零开始创建一个完整项目的思维过程
- :深入了解它的多智能体协作机制
每一个场景都会揭示 Claude Code 更深层的设计哲学和技术细节。如果你对某个特定场景特别感兴趣,欢迎留言告诉我!
如果你也想探索 AI 的内心世界,不妨试试这个方法。记住,好奇心是程序员最宝贵的品质!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/223656.html