Skip to content

Qmelon/Claude-code

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code CLI - Source Code Analysis

Claude Code CLI 源代码学习与分析项目

项目简介

这是 Anthropic 官方 Claude Code CLI 工具的源代码,用于学习、研究和分析目的。Claude Code 是一个强大的 AI 编程助手命令行工具,支持多种编程任务自动化。

技术栈

类别 技术
语言 TypeScript / TSX
运行时 Bun
UI 框架 Ink (React for CLI)
包管理 Bun
CLI 框架 Commander.js
终端样式 Chalk

项目结构

src/
├── commands/          # 斜杠命令实现 (/commit, /review 等)
├── components/        # UI 组件 (基于 Ink React)
│   └── design-system/ # 设计系统组件
├── services/          # 核心服务
│   ├── api/          # API 服务
│   ├── mcp/          # MCP 协议实现
│   ├── analytics/    # 分析服务
│   └── settingsSync/ # 设置同步
├── tools/             # 工具实现
│   ├── BashTool/     # Shell 命令执行
│   ├── FileReadTool/ # 文件读取
│   ├── FileEditTool/ # 文件编辑
│   ├── GrepTool/     # 代码搜索
│   ├── GlobTool/     # 文件匹配
│   ├── TaskTool/     # 任务代理
│   └── ...           # 更多工具
├── hooks/             # React Hooks
├── constants/         # 常量定义
├── ink/               # 终端 UI 框架
├── utils/             # 工具函数
├── schemas/           # JSON Schema 定义
├── screens/           # 屏幕组件
├── plugins/           # 插件系统
├── keybindings/       # 快捷键绑定
└── main.tsx          # 主入口文件

核心功能

命令列表

Git & 代码管理

命令 描述
/commit 智能生成 Git 提交
/review 代码审查
/pr_comments PR 评论分析
/diff 差异查看
/branch 分支管理

会话管理

命令 描述
/resume 恢复历史会话
/session 会话管理
/clear 清除对话
/compact 压缩上下文
/rewind 回退操作
/export 导出会话

配置 & 设置

命令 描述
/config 配置管理
/init 初始化项目
/model 切换模型
/theme 主题设置
/login 登录账户
/logout 登出账户

MCP & 插件

命令 描述
/mcp MCP 服务器管理
/plugin 插件管理
/skills 技能系统

工具 & 诊断

命令 描述
/doctor 系统诊断
/cost 费用统计
/usage 使用量统计
/help 帮助信息
/upgrade 升级版本

模式切换

命令 描述
/vim Vim 模式
/plan 计划模式
/fast 快速模式
/permissions 权限管理
/hooks 钩子配置

架构亮点

1. 工具系统 (Tools)

每个工具都是独立模块,包含:

  • 输入验证 (JSON Schema)
  • 执行逻辑
  • 权限控制
  • 输出格式化

2. 命令系统 (Commands)

支持多种命令类型:

  • prompt - 提示词命令
  • local - 本地执行命令
  • dialog - 对话框命令

3. MCP 协议

完整的 Model Context Protocol 实现,支持:

  • Stdio 传输
  • SSE 传输
  • 资源管理
  • 工具调用

4. 技能系统 (Skills)

可扩展的技能框架:

  • 内置技能
  • 插件技能
  • 自定义技能目录

5. 代理系统 (Agents)

多代理协作支持:

  • Task 代理
  • 并行执行
  • 上下文隔离

代码统计

指标 数量
TypeScript 文件 ~1884
命令数量 ~50+
工具数量 ~30+
UI 组件 ~100+

关键文件

文件 描述
main.tsx 应用主入口
commands.ts 命令注册中心
tools.ts 工具注册中心
context.ts 上下文管理
ink.tsx UI 渲染引擎

依赖关系

main.tsx
    ├── commands.ts ──► commands/
    ├── tools.ts ──► tools/
    ├── services/
    │   ├── api/
    │   ├── mcp/
    │   └── analytics/
    └── components/
        └── design-system/

学习价值

  1. CLI 应用架构 - 大型命令行工具的设计模式
  2. React 终端 UI - Ink 框架的实战应用
  3. MCP 协议 - AI 工具互联协议实现
  4. 插件系统 - 可扩展架构设计
  5. 代理系统 - 多代理协作模式

免责声明

本项目仅用于学习和研究目的。Claude Code 是 Anthropic, PBC. 的产品。本仓库不包含完整的构建配置和依赖,仅包含源代码用于学习分析。

许可证

源代码版权归 Anthropic, PBC. 所有。本项目仅用于教育目的。


最后更新: 2026-03-31

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 100.0%