Skip to content

Commit c5b55c1

Browse files
docs: 完成大量文档
1 parent 2934f30 commit c5b55c1

14 files changed

Lines changed: 1690 additions & 505 deletions

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Anthropic 官方 [Claude Code](https://docs.anthropic.com/en/docs/claude-code) C
1010
- [x] V2 会完整实现工程化配套设施;
1111
- [ ] Biome 格式化可能不会先实施, 避免代码冲突
1212
- [x] 构建流水线完成, 产物 Node/Bun 都可以运行
13-
- [ ] V3 会实现多层级解耦, 很多比如 UI 包, Agent 包都可以独立优化;
13+
- [ ] V3 会写大量文档, 完善文档站点
1414
- [ ] V4 会完成大量的测试文件, 以提高稳定性
1515

1616
> 我不知道这个项目还会存在多久, fork 不好使, git clone 或者下载 .zip 包才稳健;
@@ -54,6 +54,10 @@ bun run build
5454

5555
构建采用 code splitting 多文件打包(`build.ts`),产物输出到 `dist/` 目录(入口 `dist/cli.js` + 约 450 个 chunk 文件)。构建出的版本 bun 和 node 都可以启动, 你 publish 到私有源可以直接启动
5656

57+
## 相关文档及网站
58+
59+
<https://deepwiki.com/claude-code-best/claude-code>
60+
5761
## Star History
5862

5963
<a href="https://www.star-history.com/?repos=claude-code-best%2Fclaude-code&type=date&legend=top-left">

RECORD.md

Lines changed: 0 additions & 218 deletions
This file was deleted.

docs/REVISION-PLAN.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# 文档修正计划
2+
3+
> 目标:补充源码级洞察,让每篇文档从"概念科普"升级为"逆向工程白皮书"水准。
4+
5+
---
6+
7+
## 第一梯队:空壳页,需要大幅重写
8+
9+
### 1. `safety/sandbox.mdx` — 沙箱机制 ✅ DONE
10+
11+
**现状**:35 行,只列了"文件系统/网络/进程/时间"四个维度,没有任何实现细节。
12+
13+
**修正方向**
14+
- 补充 macOS `sandbox-exec` 的实际调用方式,展示沙箱 profile 的关键片段
15+
- 说明 `getSandboxConfig()` 的判定逻辑:哪些命令走沙箱、哪些跳过
16+
- 补充 `dangerouslyDisableSandbox` 参数的设计权衡
17+
- 加入 Linux 平台的沙箱差异对比(seatbelt vs namespace)
18+
- 展示一次命令执行从权限检查→沙箱包裹→实际执行的完整链路
19+
20+
---
21+
22+
### 2. `introduction/what-is-claude-code.mdx` — 什么是 Claude Code ✅ DONE
23+
24+
**现状**:39 行,纯营销文案,和"普通聊天 AI"的对比表太低级。
25+
26+
**修正方向**
27+
- 砍掉"能做什么"的泛泛列表,改为一个具体的端到端示例(从用户输入→系统处理→最终输出)
28+
- 用一张简化架构图替代文字描述,让读者 30 秒建立直觉
29+
- 补充 Claude Code 的技术定位:不是 IDE 插件、不是 Web Chat,而是 terminal-native agentic system
30+
- 加入与 Cursor / Copilot / Aider 等工具的定位差异(架构层面而非功能清单)
31+
32+
---
33+
34+
### 3. `introduction/why-this-whitepaper.mdx` — 为什么写这份白皮书 ✅ DONE
35+
36+
**现状**:40 行,全是空话,四张 Card 只是后续章节标题的预告。
37+
38+
**修正方向**
39+
- 明确定位:这是对 Anthropic 官方 CLI 的逆向工程分析,不是官方文档
40+
- 列出逆向过程中发现的 3-5 个最意外/最精妙的设计决策(吊住读者胃口)
41+
- 说明白皮书的阅读路线图:推荐的阅读顺序和每个章节解决什么问题
42+
- 补充"这份白皮书不是什么"——不是使用教程,不是 API 文档
43+
44+
---
45+
46+
### 4. `safety/why-safety-matters.mdx` — 为什么安全至关重要 ✅ DONE
47+
48+
**现状**:40 行,只列了显而易见的风险,"安全 vs 效率的平衡"只有 3 个 bullet。
49+
50+
**修正方向**
51+
- 从源码角度展示安全体系的全景图:权限规则 → 沙箱 → Plan Mode → 预算上限 → Hooks 的纵深防御链
52+
- 补充 Claude 自身 System Prompt 中的安全指令("执行前确认"、"优先可逆操作"等),展示 AI 端的安全约束
53+
- 用真实场景说明"安全 vs 效率"的工程权衡:比如 Read 工具为什么免审批、Bash 工具为什么要逐条确认
54+
- 加入 Prompt Injection 防御的简要说明(tool result 中的恶意内容如何被系统标记)
55+
56+
---
57+
58+
## 第二梯队:有骨架但太浅,需要补肉
59+
60+
### 5. `conversation/streaming.mdx` — 流式响应 ✅ DONE
61+
62+
**现状**:43 行,只说了"流式好"和 3 行 provider 表。
63+
64+
**修正方向**
65+
- 补充 `BetaRawMessageStreamEvent` 的核心事件类型及其含义
66+
- 展示文本 chunk 和 tool_use block 交织的状态机流转
67+
- 说明流式中的错误处理:网络断开、API 限流、token 超限时的重试/降级策略
68+
- 补充 `processStreamEvents()` 的核心逻辑:如何从事件流中分离出文本、工具调用、usage 统计
69+
70+
---
71+
72+
### 6. `tools/search-and-navigation.mdx` — 搜索与导航 ✅ DONE
73+
74+
**现状**:43 行,只说 Glob 和 Grep 存在。
75+
76+
**修正方向**
77+
- 补充 ripgrep 二进制的内嵌方式(vendor 目录、平台适配)
78+
- 说明搜索结果的 head_limit 默认 250 的设计原因(token 预算)
79+
- 展示 ToolSearch 的实现:如何用语义匹配在 50+ 工具(含 MCP)中找到最相关的
80+
- 补充 Glob 按修改时间排序的意义:最近修改的文件最可能与当前任务相关
81+
82+
---
83+
84+
### 7. `tools/task-management.mdx` — 任务管理 ✅ DONE
85+
86+
**现状**:50 行,只有流程 Steps 和状态展示的 4 个 bullet。
87+
88+
**修正方向**
89+
- 补充任务的数据模型:id / subject / description / status / blockedBy / blocks / owner
90+
- 说明依赖管理的实现:blockedBy 如何阻止任务被认领、完成一个任务后如何自动解锁下游
91+
- 展示任务与 Agent 工具的联动:子 Agent 如何认领任务、报告进度
92+
- 补充 activeForm 字段的 UX 设计:进行中任务的 spinner 动画文案
93+
94+
---
95+
96+
### 8. `context/token-budget.mdx` — Token 预算管理 ✅ DONE
97+
98+
**现状**:55 行,预算控制只有 3 张 Card 各一句话。
99+
100+
**修正方向**
101+
- 补充 `contextWindowTokens``maxOutputTokens` 的动态计算逻辑
102+
- 说明缓存 breakpoint 的放置策略:System Prompt 中不变内容在前、变化内容在后的原因
103+
- 展示工具输出截断的具体机制:超长结果如何被 truncate、何时触发 micro-compact
104+
- 补充 token 计数的实现:`countTokens` 的调用时机和近似 vs 精确计数的权衡
105+
106+
---
107+
108+
### 9. `agent/worktree-isolation.mdx` — Worktree 隔离 ✅ DONE
109+
110+
**现状**:55 行,只描述了 git worktree 的概念。
111+
112+
**修正方向**
113+
- 展示 `.claude/worktrees/` 的目录结构和分支命名规则
114+
- 说明 worktree 的生命周期:创建时机(`isolation: "worktree"`)→ 子 Agent 执行 → 完成/放弃 → 自动清理
115+
- 补充 worktree 与子 Agent 的绑定关系:Agent 结束时如何判断 keep or remove
116+
- 加入 EnterWorktree / ExitWorktree 工具的交互设计
117+
118+
---
119+
120+
### 10. `extensibility/custom-agents.mdx` — 自定义 Agent ✅ DONE
121+
122+
**现状**:56 行,只有配置表和示例表。
123+
124+
**修正方向**
125+
- 展示 agent markdown 文件的完整 frontmatter 格式(name / description / model / allowedTools 等)
126+
- 说明 agent 如何被加载和注入 System Prompt:`loadAgentDefinitions()` 的发现和合并逻辑
127+
- 展示工具限制的实现:allowedTools 如何过滤工具列表
128+
- 补充 agent 与 subagent_type 参数的关联:Agent 工具如何指定使用自定义 Agent

0 commit comments

Comments
 (0)