AgentHarness 课程

附录

5.5K字·14分钟·
文件索引、验证错误清单、术语表

用途: 参考资料 | 更新时间: 2026-05-28


A. 关键文件索引

A.1 核心文件(按重要性排序)

#文件行数职责验证状态
1src/query.ts1732核心查询循环 (7状态机)
2src/Tool.ts792Tool 接口定义
3src/services/tools/StreamingToolExecutor.ts530流式工具执行器
4src/tools.ts389工具注册表 (54个)
5src/utils/permissions/~1500权限系统
6src/constants/prompts.ts~900System prompt 构建
7src/context.ts上下文收集
8src/utils/claudemd.tsCLAUDE.md 加载
9src/services/compact/~1700上下文压缩
10src/bootstrap/state.ts1758全局单例状态

A.2 入口与框架文件

#文件行数职责验证状态
1src/entrypoints/cli.tsx320入口 + polyfill + 快速路径
2src/main.tsx4683Commander.js CLI + 初始化
3src/screens/REPL.tsx5009主 REPL 屏幕
4src/QueryEngine.ts1320会话编排器
5src/commands.ts754命令注册表 (~113个)

A.3 服务层文件

#文件行数职责验证状态
1src/services/api/claude.ts3420API 客户端
2src/services/mcp/client.ts3351MCP 客户端 (8种传输)
3src/utils/hooks/~5121Hook 系统 (20+事件)
4src/tools/AgentTool/1397子 Agent 工具
5src/ink/104文件Ink 框架 (内部fork)

A.4 文档声称 vs 实际行数对比

文件文档声称实际行数差异验证
main.tsx500+ 行4683 行9倍❌ 严重低估
Tool.ts200 行792 行4倍❌ 严重低估
App.tsx96 行55 行-43%❌ 严重高估
cli.tsx302 行320 行6%⚠️ 小误差
REPL.tsx5061 行5009 行1%✅ 基本准确
claude.ts3419 行3420 行1行✅ 精确
client.ts3348 行3351 行3行✅ 精确
withRetry.ts~600 行822 行37%⚠️ 偏差较大
client.ts (MCP)~200 行389 行95%⚠️ 偏差较大

B. 验证错误清单

B.1 严重错误(❌)— 9 处

#文档错误声明实际情况影响
1source-map.md784 个文件实际 2799严重低估代码规模
2overview.md500+ 源文件实际 2768严重低估代码规模
3code-map.mdmain.tsx 500+ 行实际 4683低估核心文件复杂度
4code-map.mdTool.ts 200 行实际 792低估接口复杂度
5ink-tui.mdApp.tsx 96 行实际 55高估文件大小
6ink-tui.mdBootstrapBoundary 组件不存在虚构组件
7repl-screen-deep.mdReplRuntimeBoundary不存在虚构组件
8sessions-and-state.md会话路径 ~/.claude/sessions/实际为 ~/.claude/projects/路径错误
9多篇文档Tool.execute() 方法实际为 Tool.call()方法名错误

B.2 部分错误(⚠️)— 15+ 处

#文档声明实际差异
1cc-architecture.mdbootstrap-entry.ts (5行)不存在,逻辑合并到 cli.tsx版本差异
2cc-architecture.mdcli.tsx 302行320行6%
3cc-architecture.mdmain.tsx 4690行4683行<1%
4api-client-deep.mdwithRetry.ts ~600行822行37%
5api-client-deep.mdclient.ts ~200行389行95%
6repl-screen-deep.mdREPL.tsx 5061行5009行1%
7source-map.mdMCP 文件数 233448%
8DEEP_ANALYSIS.md内置工具数 60+实际 54~10%
9DEEP_ANALYSIS.mdMCP 传输 6 种实际 8 种25%

B.3 最精确的文档(✅)

文档精确度
api-client-deep.mdclaude.ts 3419→3420 (误差1行)
mcp-client-deep.mdclient.ts 3348→3351 (误差3行)
bash-system-deep.md5个文件行数全部精确匹配
print-system-deep.md所有行数误差 <1%
pitfalls.md7个误解全部验证正确
system-prompt-sources.md最详尽的参考文档

C. 参考资料来源

C.1 源码

来源路径说明
反编译还原版/Users/xcxs/Documents/coding/cc/claude-code-release/主要研究对象
鲲鹏 Talk 还原版/Users/xcxs/Documents/coding/cc/claude-code-rev/参考对照

C.2 分析文档

来源路径数量
深度分析文档/Users/xcxs/Documents/coding/cc/how-claude-code-works/45 篇
验证报告VERIFY_PART_A.md / B.md / C.md3 份
深度分析DEEP_ANALYSIS.md1 份
验证版完整指南FINAL_VERIFIED_GUIDE.md1 份

C.3 官方文档

资源URL
Claude Code 官方文档https://docs.anthropic.com/claude-code
Anthropic API 文档https://docs.anthropic.com/api
MCP 协议规范https://modelcontextprotocol.io

D. 术语表

术语英文定义
查询循环Query LoopLLM 多轮对话的核心状态机
Continue 类型Continue Type查询循环的状态转换类型
行为元数据Behavioral Metadata编码工具行为特征的元数据字段
流式执行器Streaming Tool Executor在 LLM 流式输出过程中执行工具的组件
权限管道Permission Pipeline多层有序的权限检查流程
熔断器Circuit Breaker连续错误达到阈值时自动断开的保护机制
上下文压缩Context Compaction当上下文接近 token 限制时的自动压缩机制
Prompt CachePrompt CacheClaude API 的前缀缓存机制
CLAUDE.mdCLAUDE.mdClaude Code 的项目级配置文件
MCPModel Context Protocol模型上下文协议,用于外部工具集成
HookHook生命周期钩子,允许外部代码介入执行流程
Fork 模式Fork Mode共享 prompt cache 的子 Agent 创建模式
DCEDead Code Elimination构建时死代码消除
PTLPrompt Too Long上下文过长错误
ReActReasoning + Acting推理与行动交替的 Agent 模式
STEStreamingToolExecutor流式工具执行器的缩写
Fail-ClosedFail-Closed默认拒绝的安全策略
Fail-OpenFail-Open默认允许的策略
Short-CircuitShort-Circuit满足条件立即返回,不继续执行后续步骤
Structure SharingStructure Sharing不可变数据结构中的共享引用优化
ActorActor独立运行、通过消息通信的并发单元
MemoizeMemoize函数结果缓存,相同输入返回缓存结果
LRULeast Recently Used最近最少使用的缓存淘汰策略

E. 课程版本历史

版本日期变更
v1.02026-05-28初始版本,基于 FINAL_VERIFIED_GUIDE.md 和 DEEP_ANALYSIS.md

10-实操练习 | 返回课程总览