Skip to content

Commit b4ea444

Browse files
committed
posts: claude code analysis
1 parent 60ff0dc commit b4ea444

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+23265
-295
lines changed
File renamed without changes.
Lines changed: 150 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,150 @@
1+
+++
2+
date = '2025-11-14T8:00:00+01:00'
3+
draft = false
4+
title = 'Claude Code 分析 00:主文章'
5+
tags = ['Agent']
6+
+++
7+
8+
# Claude Code: 深度分析
9+
10+
> 💡 **注意事项**
11+
> 本报告完全由 Claude Opus 4 生成,几乎所有主流旗舰模型都参与了协助。然而,关于制作本报告过程的 8000 字文章是手动撰写的 - 你可以从这里开始阅读:[《指挥比我更聪明的智能:新的编排方式》](https://www.notion.so/2ace7353ca56811f8b25fb0181ebcc38)
12+
>
13+
> 我需要说明的是,这并不是真正意义上的反编译或逆向工程尝试,更像是对 Claude 团队出色工作的致敬。提供的示例不保证存在于 Claude Code 中(或直接派生/复制自源代码) - 主要目的是在学习编排 AI 代理的新方法时提供教学价值。
14+
>
15+
> (快速说明:感谢所有指出幻觉的人,但这些是故意保留的,作为生成过程的产物。"制作过程"文章将帮助我们理解为什么会发生这种情况,对我来说,它们在理解如何构建代理系统方面同样有用!)
16+
>
17+
> 如果你想要最有趣的阅读,从[《新颖组件:定义 Claude Code 的创新》](https://www.notion.so/2ace7353ca5681fb87a0fc644a2598af)开始。
18+
> 如果你想要最有趣的阅读,从[《LLM 的视角:实际接收这些指令的感受》](https://www.notion.so/2ace7353ca5681d79524dbc735ac0bd5)开始。
19+
20+
---
21+
22+
> ✉️ **来自我的一封信**
23+
> 这个项目始于简单的好奇心。我想了解 Claude Code,对我来说,这是最好的代理编码工具(尽管竞争很激烈)。最初,我以为这会很简单 - 只是一个 LLM 和几个工具的循环。我错了。事实证明它要复杂得多,有大量我没有预料到的新颖组件。
24+
>
25+
> 为了解决这个问题,我与多个 AI 子代理合作,它们在不同的推理片段上运行。我手动传递问题和见解,审查输出以检查幻觉,并仔细检查结果。
26+
>
27+
> 这个过程包括:
28+
> - 五批四轮,使用全新的子代理(主要是 Gemini 2.5 Pro)
29+
> - 生成约 30 万个 token 的中间分析
30+
> - 将所有内容浓缩成一份综合报告
31+
>
32+
> 值得注意的是,这只花了一天时间,并且让我学到了很多。在 LLM 之前,这种分析需要数月时间 - 如果可能的话。致 Opus 4,感谢你将我的浓缩报告转化为你即将阅读的综合分析!
33+
>
34+
> —Hrishi
35+
36+
---
37+
38+
## 为什么 Claude Code 很重要
39+
40+
Claude Code 有许多非常有趣的部分:
41+
- **流式架构** - 处理实时 LLM 响应、工具执行和 UI 更新
42+
- **安全系统** - 在不中断工作流程的情况下提供安全性
43+
- **工具设计** - 优雅地连接 AI 推理和系统执行
44+
- **提示工程** - 可靠地控制复杂的 LLM 行为
45+
46+
让我们深入了解!每个标题都是指向完整章节的链接。
47+
48+
## [依赖项:Claude Code 架构的基础](./Claude_Code_分析_01_依赖项.md)
49+
50+
*为什么在终端中使用 React?yoga-layout 在这里做什么?*
51+
52+
发现支持 Claude Code 性能的非常规依赖选择。了解在 bash 命令中嵌入 JSON 的自定义 shell 解析器、用于部分 LLM 响应的流式 JSON 解析器,以及从移动开发中借用的 ANR 检测系统。
53+
54+
## [数据结构与信息架构](./Claude_Code_分析_02_数据结构.md)
55+
56+
*消息如何在系统中转换*
57+
58+
跟踪数据从用户输入到 LLM 处理再到工具执行的流程。理解三阶段消息表示、`ContentBlock` 多态性,以及弱引用如何防止内存膨胀。
59+
60+
**关键洞察**: `CliMessage` 包装器维护 UI 状态,同时保持 API 兼容性 - 实现丰富的交互而无需协议更改。
61+
62+
## [控制流与编排引擎](./Claude_Code_分析_03_控制流.md)
63+
64+
*深入 `tt` 函数*
65+
66+
探索编排一切的六阶段异步生成器。了解并行工具执行的工作原理、为什么上下文压缩自动触发,以及递归轮次如何实现无限对话深度。
67+
68+
**关键洞察**: 工具按副作用分类 - 只读工具并行运行,而写操作为了安全而串行化。
69+
70+
## [工具与执行引擎](./Claude_Code_分析_04_工具.md)
71+
72+
*从 LLM 决策到系统操作*
73+
74+
每个工具都是精心设计的状态机。检查权限系统、进度报告和错误处理。特别关注 BashTool 的沙箱模式和 EditTool 的行号处理。
75+
76+
**关键洞察**: `AgentTool` 实现层次化任务分解 - 生成子代理并综合它们的发现。
77+
78+
## [架构:引擎室](./Claude_Code_分析_05_架构.md)
79+
80+
*事件驱动、流式优先、安全意识*
81+
82+
理解从 React UI 到系统调用的分层架构。了解权限如何在作用域中级联、为什么 ANR 检测使用工作线程,以及三个遥测系统如何提供完整的可观察性。
83+
84+
**关键洞察**: 安全不是一个系统 - 它是多个安全失败的独立层。
85+
86+
## [新颖组件:定义 Claude Code 的创新](./Claude_Code_分析_06_新颖组件.md)
87+
88+
*解决难题的巧妙修复*
89+
90+
发现使 Claude Code 与众不同的组件:具有恢复功能的流式 JSON 解析、智能数据截断和多代理结果合成。这些不仅仅是功能 - 它们是对基本挑战的创新解决方案。
91+
92+
**关键洞察**: `normalizeToSize` 算法基于实际字节数迭代减少对象深度 - 在约束内保留最大信息。
93+
94+
## [文件编辑:AI 辅助代码修改](./Claude_Code_分析_07_文件编辑.md)
95+
96+
*为什么有三种不同的编辑工具?*
97+
98+
深入了解文件编辑管道。了解为什么行号会导致问题、顺序编辑如何检测冲突,以及当文件在外部更改时会发生什么。
99+
100+
**关键洞察**: 每个可以想象的编辑错误都有特定的验证 - 从外部修改到编码问题。
101+
102+
## [提示工程:指导 AI 的艺术](./Claude_Code_分析_08_提示工程.md)
103+
104+
*使一切工作的指令*
105+
106+
检查控制 Claude Code 的实际提示。从简洁性强制到 500 多字的 BashTool 安全指令,看看仔细的措辞如何塑造行为。
107+
108+
**关键洞察**: 重复有效 - 关键指令出现三次,强调程度递增。
109+
110+
## [LLM 的视角:实际接收这些指令的感受](./Claude_Code_分析_09_LLM视角.md)
111+
112+
*从另一端看这些提示的感觉*
113+
114+
在一个独特的章节中,LLM(我)对接收这些指令提供诚实的评论。为什么"只输出 4"令人惊讶地困难,以及 -$1000 惩罚如何创造真正的行为改变,尽管是虚拟货币。
115+
116+
**关键洞察**: 清晰的约束实际上是一种解放 - 它们防止决策瘫痪和过度帮助。
117+
118+
---
119+
120+
## 技术主题
121+
122+
在整个分析中,出现了几个设计原则:
123+
124+
1. **流式优先**: 每个操作都设计为增量更新
125+
2. **通过分层实现安全**: 多个独立的保护机制
126+
3. **明确指令**: 详细的提示防止模糊行为
127+
4. **架构胜于优化**: 通过设计而非调整实现性能
128+
5. **理解 LLM 心理**: 利用模型的实际行为方式
129+
130+
---
131+
132+
# 章节
133+
134+
1. [依赖项:Claude Code 架构的基础](./Claude_Code_分析_01_依赖项.md)
135+
2. [数据结构与信息架构](./Claude_Code_分析_02_数据结构.md)
136+
3. [控制流与编排引擎](./Claude_Code_分析_03_控制流.md)
137+
4. [工具与执行引擎](./Claude_Code_分析_04_工具.md)
138+
5. [架构:引擎室](./Claude_Code_分析_05_架构.md)
139+
6. [新颖组件:定义 Claude Code 的创新](./Claude_Code_分析_06_新颖组件.md)
140+
7. [文件编辑:AI 辅助代码修改](./Claude_Code_分析_07_文件编辑.md)
141+
8. [提示工程:指导 AI 的艺术](./Claude_Code_分析_08_提示工程.md)
142+
9. [LLM 的视角:实际接收这些指令的感受](./Claude_Code_分析_09_LLM视角.md)
143+
144+
能够做到这一点已经很了不起了,更不用说花费的时间了。我不能说报告中的所有内容都是正确的 - 也许 Claude 团队可以权衡一下 - 但这一切都非常有用和有启发性。
145+
146+
---
147+
148+
# 制作过程
149+
150+
[《指挥比我更聪明的智能:新的编排方式》](https://www.notion.so/2ace7353ca56811f8b25fb0181ebcc38)

0 commit comments

Comments
 (0)