HM2006/claude-code-source
GitHub: HM2006/claude-code-source
从 npm 包 source map 还原的 Anthropic Claude Code 官方终端 AI 助手完整源码,可用于安全研究与架构学习。
Stars: 2 | Forks: 1
# Claude Code 源码
Claude Code 是 Anthropic 官方的 CLI 工具,它将他们的 AI 助手 Claude 直接带到了你的终端中。Claude 能够理解你的代码库、编辑文件、运行终端命令,并为你处理整个工作流。
## 概述
| 字段 | 详细信息 |
|-------|---------|
| **包名** | `@anthropic-ai/claude-code` |
| **版本** | 2.1.88 |
| **运行时** | Node.js >= 18.0.0 |
| **构建工具** | Bun (通过 `bun:bundle` 进行条件编译) |
| **语言** | TypeScript / TSX |
| **许可证** | 专有 (参见 [Anthropic 条款](https://claude.com/terms)) |
## 功能特性
- **基于终端的 AI 助手** — 基于 React + Ink 构建的交互式 REPL 界面
- **代码理解** — 解析并理解整个代码库
- **文件操作** — 在 AI 辅助下读取、写入和编辑文件
- **Shell 执行** — 通过沙箱机制安全地运行终端命令
- **MCP (Model Context Protocol)** — 可扩展的工具/服务器集成
- **多云 API** — 支持 Anthropic Direct、AWS Bedrock、Google Vertex AI
- **OAuth 认证** — 支持 Claude.ai (Pro/Max/Team/Enterprise) 和 API Key 认证
- **远程会话** — 完整的远程会话支持,包含 REPL 桥接和 JWT 认证
- **插件系统** — 可扩展的插件和技能架构
- **Vim 模式** — 内置 Vim 快捷键支持
- **语音模式** — 语音输入/输出功能
## 项目结构
```
src/
├── assistant/ # Assistant session history management
├── bootstrap/ # Startup state management
├── bridge/ # Remote bridging (REPL, JWT auth, device trust)
├── buddy/ # Visual companion character
├── cli/ # CLI utilities (exit handling, NDJSON, structured IO)
├── commands/ # Slash commands (commit, review, init, etc.)
├── components/ # React UI components (100+ components)
├── constants/ # Constants (API limits, betas, OAuth, prompts)
├── context/ # React contexts (messages, modals, notifications)
├── coordinator/ # Coordinator mode
├── entrypoints/ # Entry points (CLI, MCP server, Agent SDK, Sandbox)
├── hooks/ # React Hooks (80+ hooks)
├── ink/ # Custom Ink terminal rendering engine
├── keybindings/ # Keybinding system (Vim mode, custom bindings)
├── memdir/ # Memory directory (search, aging, team memory)
├── migrations/ # Configuration migrations (v1–v11)
├── plugins/ # Plugin system (built-in plugins)
├── screens/ # Screens (REPL, diagnostics, session recovery)
├── server/ # Direct-connect session & manager
├── services/ # Service layer (analytics, rate limiting, voice)
├── skills/ # Skill system (bundled skills, MCP skill builder)
├── state/ # Application state (AppState, Store, selectors)
├── tasks/ # Task management
├── tools/ # AI tools (30+ tools)
├── types/ # TypeScript type definitions
├── upstreamproxy/ # Upstream proxy relay
├── utils/ # Utility functions (200+ files)
└── vendor/ # Native module sources
```
## 内置 AI 工具
| 工具 | 描述 |
|------|-------------|
| `BashTool` | 执行 Shell 命令 (带有沙箱机制) |
| `FileReadTool` | 读取文件 (包括图像) |
| `FileWriteTool` | 写入文件 |
| `FileEditTool` | 通过搜索/替换编辑文件 |
| `GlobTool` | 文件模式匹配 |
| `GrepTool` | 内容搜索 (由 ripgrep 驱动) |
| `WebSearchTool` | 网页搜索 |
| `WebFetchTool` | 获取网页内容 |
| `MCPTool` | MCP 服务器工具调用 |
| `AgentTool` | 子代理执行 (Explore、Plan、General) |
| `AskUserQuestionTool` | 向用户提问 |
| `TodoWriteTool` | 待办事项列表管理 |
| `NotebookEditTool` | Jupyter Notebook 编辑 |
| `LSPTool` | Language Server Protocol 集成 |
| `ScheduleCronTool` | Cron 任务管理 |
| `SkillTool` | 技能执行 |
| ...及更多 | |
## 技术栈
- **运行时**: Bun / Node.js
- **语言**: TypeScript, TSX
- **UI 框架**: React + Ink (终端渲染)
- **CLI 框架**: Commander.js
- **验证**: Zod
- **图像处理**: Sharp
- **搜索**: ripgrep
- **API SDKs**: @anthropic-ai/bedrock-sdk, @anthropic-ai/foundry-sdk
## 安装 (原始)
```
npm install -g @anthropic-ai/claude-code
```
## 源码恢复方法
此源码是从 npm 包中包含的 `cli.js.map` 源映射文件提取的。该源映射 (57MB) 包含了所有 4,756 个文件的嵌入式源代码内容,这些内容已被解析并恢复到其原始文件路径。
```
# Extraction process
python3 extract_sources.py cli.js.map ./restored-src
# Result: 4,756 files restored
```
## 链接
- **官方产品**: [claude.com/product/claude-code](https://claude.com/product/claude-code)
- **文档**: [code.claude.com/docs](https://code.claude.com/docs/en/overview)
- **npm 包**: [@anthropic-ai/claude-code](https://www.npmjs.com/package/@anthropic-ai/claude-code)
## 许可证
本软件为专有软件,归 Anthropic PBC 所有。保留所有权利。使用受 Anthropic 法律协议的约束。本仓库仅出于教育和研究目的提供。
标签:AI编程助手, Anthropic, AWS Bedrock, CIS基准, Claude Code, DNS解析, GNU通用公共许可证, Google Vertex AI, Ink, JWT, MCP协议, MITM代理, Node.js, OAuth认证, React, REPL, Shell执行, Syscalls, TypeScript, Vim模式, 云资产清单, 代码理解, 前端组件库, 多云API, 安全插件, 开源项目, 文件编辑, 源码映射还原, 终端应用, 自动化攻击, 语音模式, 远程会话, 逆向工程