Files
claude-code/.trae/documents/architecture-analysis-plan.md
T
Serendipity ed91e47107 feat: 初始化项目结构与核心文件
- 添加项目配置文件(tsconfig.json、bunfig.toml、.gitignore、.env.example)
- 创建文档架构图(00runtime.png 至 08-state-data-flow.png)
- 添加核心工具常量定义(FileEditTool、AgentTool、BashTool 等)
- 实现基础命令框架(help、exit、config、model 等)
- 添加 Ink TUI 组件库和布局引擎
- 包含内存管理、沙箱、shell 工具等基础工具类
- 设置预加载脚本和版本信息
2026-04-02 17:13:04 +08:00

111 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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 Skillsverify、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 FlagsDead Code Elimination
- MCPModel Context Protocol
- LSPLanguage 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. [ ] 完善文档结构与交叉引用