# Claude Code Haha 架构分析文档生成计划

## 目标
分析 `claude-code-haha` 项目的架构，并生成详细的 `ARCHITECTURE.md` 文档。

## 项目概述
基于 Claude Code 泄露源码修复的本地可运行版本，支持接入任意 Anthropic 兼容 API。

## 架构分析维度

### 1. 整体架构（Layer Architecture）
- **入口层**：CLI 入口点（cli.tsx → main.tsx）
- **交互层**：REPL 交互界面（REPL.tsx + Ink 渲染）
- **核心层**：工具系统、命令系统、状态管理
- **服务层**：API、MCP、OAuth、Bridge 等外部服务
- **支撑层**：Utils、Hooks、Constants

### 2. 核心模块分析

#### 2.1 入口与启动（entrypoints/）
- `cli.tsx`：CLI 入口，处理命令行参数解析和快速路径分流
- `mcp.ts`：MCP 服务器入口
- `init.ts`：初始化入口

#### 2.2 交互界面（screens/ + components/）
- `REPL.tsx`：主交互界面，核心 TUI 组件
- `components/`：UI 组件库（Message、PromptInput、Spinner 等）

#### 2.3 Ink 终端渲染引擎（ink/）
- 基于 React 的终端 UI 渲染
- 组件系统：Box、Text、Button
- 事件系统：输入、点击、焦点
- 布局引擎：Yoga 布局
- 终端协议：ANSI、CSI、SGR 等解析

#### 2.4 工具系统（tools/）
- 工具基类：Tool.ts、AgentTool
- 核心工具：BashTool、FileEditTool、GlobTool、GrepTool 等
- MCP 工具：MCPTool、LSPTool
- 工具注册与过滤机制

#### 2.5 命令系统（commands/）
- 斜杠命令（/commit、/review、/help 等）
- 命令注册与处理
- 命令行解析

#### 2.6 Skill 系统（skills/）
- 内置 Bundled Skills（verify、batch、loop、debug 等）
- Skill 加载与注册机制
- Skill 权限控制

#### 2.7 状态管理（state/）
- AppStateStore：全局状态存储
- React Context 集成
- 状态选择器与订阅

#### 2.8 桥接与远程控制（bridge/）
- Bridge API 客户端
- 会话管理
- JWT 认证与刷新
- 远程会话同步

#### 2.9 服务层（services/）
- API 服务（Anthropic 客户端）
- MCP 服务（MCP 协议实现）
- OAuth 服务（认证）
- Analytics 服务（遥测）
- LSP 服务（语言服务器协议）

### 3. 数据流分析
- 请求生命周期
- 消息流
- 工具调用流
- 状态更新流

### 4. 关键技术点
- React 19 + Ink 6 终端渲染
- Feature Flags（Dead Code Elimination）
- MCP（Model Context Protocol）
- LSP（Language Server Protocol）
- 权限与安全模型

## 输出文档结构（ARCHITECTURE.md）

```
# Claude Code Haha 架构文档

## 1. 概述
## 2. 整体架构
## 3. 入口与启动
## 4. 交互层（TUI）
## 5. Ink 渲染引擎
## 6. 工具系统
## 7. 命令系统
## 8. Skill 系统
## 9. 状态管理
## 10. 桥接与远程控制
## 11. 服务层
## 12. 数据流
## 13. 关键技术
```

## 实施步骤

1. [ ] 创建 `.trae/documents/ARCHITECTURE.md` 文件
2. [ ] 编写概述部分
3. [ ] 编写整体架构图与分层说明
4. [ ] 详细分析各核心模块
5. [ ] 添加数据流与时序图说明
6. [ ] 完善文档结构与交叉引用
