Skip to content

claude-code-best/claude-code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Claude Code V1

Anthropic 官方 Claude Code CLI 工具的源码反编译/逆向还原项目。目标是将 Claude Code 大部分功能及工程化能力复现。

V1 会完成跑通及基本的类型检查通过; V2 会完整实现工程化配套设施; V3 会实现多层级解耦, 很多比如 UI 包, Agent 包都可以独立优化; V4 会完成大量的测试文件, 以提高稳定性

我不知道这个项目还会存在多久, fork 不好使, git clone 或者下载 .zip 包才稳健;

这个项目更新很快, 后台有 Opus 持续优化, 所以你可以提 issues, 但是 PR 暂时不会接受;

如果你想要私人咨询服务, 那么可以发送邮件到 claude-code-best@proton.me, 备注咨询与联系方式即可; 由于后续工作非常多, 可能会忽略邮件, 半天没回复, 可以多发;

快速开始

环境要求

一定要最新版本的 bun 啊, 不然一堆奇奇怪怪的 BUG!!! bun upgrade!!!

  • Bun >= 1.3.11
  • Node.js >= 18(部分依赖需要)
  • 有效的 Anthropic API Key(或 Bedrock / Vertex 凭据)

安装

bun install

运行

# 开发模式, 看到版本号 888 说明就是对了
bun run dev

# 直接运行
bun run src/entrypoints/cli.tsx

# 管道模式(-p)
echo "say hello" | bun run src/entrypoints/cli.tsx -p

# 构建
bun run build

构建产物输出到 dist/cli.js(~25.75 MB,5326 模块)。

能力清单

✅ = 已实现 ⚠️ = 部分实现 / 条件启用 ❌ = stub / 移除 / feature flag 关闭

核心系统

能力 状态 说明
REPL 交互界面(Ink 终端渲染) 主屏幕 5000+ 行,完整交互
API 通信 — Anthropic Direct 支持 API Key + OAuth
API 通信 — AWS Bedrock 支持凭据刷新、Bearer Token
API 通信 — Google Vertex 支持 GCP 凭据刷新
API 通信 — Azure Foundry 支持 API Key + Azure AD
流式对话与工具调用循环 (query.ts) 1700+ 行,含自动压缩、token 追踪
会话引擎 (QueryEngine.ts) 1300+ 行,管理对话状态与归因
上下文构建(git status / CLAUDE.md / memory) context.ts 完整实现
权限系统(plan/auto/manual 模式) 6300+ 行,含 YOLO 分类器、路径验证、规则匹配
Hook 系统(pre/post tool use) 支持 settings.json 配置
会话恢复 (/resume) 独立 ResumeConversation 屏幕
Doctor 诊断 (/doctor) 版本、API、插件、沙箱检查
自动压缩 (compaction) auto-compact / micro-compact / API compact

工具 — 始终可用

工具 状态 说明
BashTool Shell 执行,沙箱,权限检查
FileReadTool 文件 / PDF / 图片 / Notebook 读取
FileEditTool 字符串替换式编辑 + diff 追踪
FileWriteTool 文件创建 / 覆写 + diff 生成
NotebookEditTool Jupyter Notebook 单元格编辑
AgentTool 子代理派生(fork / async / background / remote)
WebFetchTool URL 抓取 → Markdown → AI 摘要
WebSearchTool 网页搜索 + 域名过滤
AskUserQuestionTool 多问题交互提示 + 预览
SendMessageTool 消息发送(peers / teammates / mailbox)
SkillTool 斜杠命令 / Skill 调用
EnterPlanModeTool 进入计划模式
ExitPlanModeTool (V2) 退出计划模式
TodoWriteTool Todo 列表 v1
BriefTool 简短消息 + 附件发送
TaskOutputTool 后台任务输出读取
TaskStopTool 后台任务停止
ListMcpResourcesTool MCP 资源列表
ReadMcpResourceTool MCP 资源读取
SyntheticOutputTool 非交互会话结构化输出

工具 — 条件启用

工具 状态 启用条件
GlobTool 未嵌入 bfs/ugrep 时启用(默认启用)
GrepTool 同上
TaskCreateTool ⚠️ isTodoV2Enabled() 为 true 时
TaskGetTool ⚠️ 同上
TaskUpdateTool ⚠️ 同上
TaskListTool ⚠️ 同上
EnterWorktreeTool ⚠️ isWorktreeModeEnabled()
ExitWorktreeTool ⚠️ 同上
TeamCreateTool ⚠️ isAgentSwarmsEnabled()
TeamDeleteTool ⚠️ 同上
ToolSearchTool ⚠️ isToolSearchEnabledOptimistic()
PowerShellTool ⚠️ Windows 平台检测
LSPTool ⚠️ ENABLE_LSP_TOOL 环境变量
ConfigTool USER_TYPE === 'ant'(永远为 false)

工具 — Feature Flag 关闭(全部不可用)

工具 Feature Flag
SleepTool PROACTIVE / KAIROS
CronCreate/Delete/ListTool AGENT_TRIGGERS
RemoteTriggerTool AGENT_TRIGGERS_REMOTE
MonitorTool MONITOR_TOOL
SendUserFileTool KAIROS
OverflowTestTool OVERFLOW_TEST_TOOL
TerminalCaptureTool TERMINAL_PANEL
WebBrowserTool WEB_BROWSER_TOOL
SnipTool HISTORY_SNIP
WorkflowTool WORKFLOW_SCRIPTS
PushNotificationTool KAIROS
SubscribePRTool KAIROS_GITHUB_WEBHOOKS
ListPeersTool UDS_INBOX
CtxInspectTool CONTEXT_COLLAPSE

工具 — Stub / 不可用

工具 说明
TungstenTool ANT-ONLY stub
REPLTool ANT-ONLY,isEnabled: () => false
SuggestBackgroundPRTool ANT-ONLY,isEnabled: () => false
VerifyPlanExecutionTool CLAUDE_CODE_VERIFY_PLAN=true 环境变量,且为 stub
ReviewArtifactTool stub,未注册到 tools.ts
DiscoverSkillsTool stub,未注册到 tools.ts

斜杠命令 — 可用

命令 状态 说明
/add-dir 添加目录
/advisor Advisor 配置
/agents 代理列表/管理
/branch 分支管理
/btw 快速备注
/chrome Chrome 集成
/clear 清屏
/color Agent 颜色
/compact 压缩对话
/config (/settings) 配置管理
/context 上下文信息
/copy 复制最后消息
/cost 会话费用
/desktop Claude Desktop 集成
/diff 显示 diff
/doctor 健康检查
/effort 设置 effort 等级
/exit 退出
/export 导出对话
/extra-usage 额外用量信息
/fast 切换 fast 模式
/feedback 反馈
/files 已跟踪文件
/heapdump Heap dump(调试)
/help 帮助
/hooks Hook 管理
/ide IDE 连接
/init 初始化项目
/install-github-app 安装 GitHub App
/install-slack-app 安装 Slack App
/keybindings 快捷键管理
/login / /logout 登录 / 登出
/mcp MCP 服务管理
/memory Memory / CLAUDE.md 管理
/mobile 移动端 QR 码
/model 模型选择
/output-style 输出风格
/passes 推荐码
/permissions 权限管理
/plan 计划模式
/plugin 插件管理
/pr-comments PR 评论
/privacy-settings 隐私设置
/rate-limit-options 限速选项
/release-notes 更新日志
/reload-plugins 重载插件
/remote-env 远程环境配置
/rename 重命名会话
/resume 恢复会话
/review 代码审查(本地)
/ultrareview 云端审查
/rewind 回退对话
/sandbox-toggle 切换沙箱
/security-review 安全审查
/session 会话信息
/skills Skill 管理
/stats 会话统计
/status 状态信息
/statusline 状态栏 UI
/stickers 贴纸
/tasks 任务管理
/theme 终端主题
/think-back 年度回顾
/upgrade 升级 CLI
/usage 用量信息
/insights 使用分析报告
/vim Vim 模式

斜杠命令 — Feature Flag 关闭

命令 Feature Flag
/voice VOICE_MODE
/proactive PROACTIVE / KAIROS
/brief KAIROS / KAIROS_BRIEF
/assistant KAIROS
/bridge BRIDGE_MODE
/remote-control-server DAEMON + BRIDGE_MODE
/force-snip HISTORY_SNIP
/workflows WORKFLOW_SCRIPTS
/web-setup CCR_REMOTE_SETUP
/subscribe-pr KAIROS_GITHUB_WEBHOOKS
/ultraplan ULTRAPLAN
/torch TORCH
/peers UDS_INBOX
/fork FORK_SUBAGENT
/buddy BUDDY

斜杠命令 — ANT-ONLY(不可用)

/tag /backfill-sessions /break-cache /bughunter /commit /commit-push-pr /ctx_viz /good-claude /issue /init-verifiers /mock-limits /bridge-kick /version /reset-limits /onboarding /share /summary /teleport /ant-trace /perf-issue /env /oauth-refresh /debug-tool-call /agents-platform /autofix-pr

CLI 子命令

子命令 状态 说明
claude(默认) 主 REPL / 交互 / print 模式
claude mcp serve/add/remove/list/get/... MCP 服务管理(7 个子命令)
claude auth login/status/logout 认证管理
claude plugin validate/list/install/... 插件管理(7 个子命令)
claude setup-token 长效 Token 配置
claude agents 代理列表
claude doctor 健康检查
claude update / upgrade 自动更新
claude install [target] Native 安装
claude server DIRECT_CONNECT flag
claude ssh <host> SSH_REMOTE flag
claude open <cc-url> DIRECT_CONNECT flag
claude auto-mode TRANSCRIPT_CLASSIFIER flag
claude remote-control BRIDGE_MODE + DAEMON flag
claude assistant KAIROS flag
claude up/rollback/log/error/export/task/completion ANT-ONLY

服务层

服务 状态 说明
API 客户端 (services/api/) 3400+ 行,4 个 provider
MCP (services/mcp/) 24 个文件,12000+ 行
OAuth (services/oauth/) 完整 OAuth 流程
插件 (services/plugins/) 基础设施完整,无内置插件
LSP (services/lsp/) ⚠️ 实现存在,默认关闭
压缩 (services/compact/) auto / micro / API 压缩
Hook 系统 (services/tools/toolHooks.ts) pre/post tool use hooks
会话记忆 (services/SessionMemory/) 会话记忆管理
记忆提取 (services/extractMemories/) 自动记忆提取
Skill 搜索 (services/skillSearch/) 本地/远程 skill 搜索
策略限制 (services/policyLimits/) 策略限制执行
分析 / GrowthBook / Sentry ⚠️ 框架存在,实际 sink 为空
Voice (services/voice.ts) VOICE_MODE flag 关闭

内部包 (packages/)

状态 说明
color-diff-napi 997 行完整 TypeScript 实现(语法高亮 diff)
audio-capture-napi stub,isNativeAudioAvailable() 返回 false
image-processor-napi stub,getNativeModule() 返回 null
modifiers-napi stub,isModifierPressed() 返回 false
url-handler-napi stub,waitForUrlEvent() 返回 null
@ant/claude-for-chrome-mcp stub,createServer() 返回 null
@ant/computer-use-mcp stub,buildTools() 返回 []
@ant/computer-use-input stub,仅类型声明
@ant/computer-use-swift stub,仅类型声明

Feature Flags(30 个,全部返回 false

ABLATION_BASELINE AGENT_MEMORY_SNAPSHOT BG_SESSIONS BRIDGE_MODE BUDDY CCR_MIRROR CCR_REMOTE_SETUP CHICAGO_MCP COORDINATOR_MODE DAEMON DIRECT_CONNECT EXPERIMENTAL_SKILL_SEARCH FORK_SUBAGENT HARD_FAIL HISTORY_SNIP KAIROS KAIROS_BRIEF KAIROS_CHANNELS KAIROS_GITHUB_WEBHOOKS LODESTONE MCP_SKILLS PROACTIVE SSH_REMOTE TORCH TRANSCRIPT_CLASSIFIER UDS_INBOX ULTRAPLAN UPLOAD_USER_SETTINGS VOICE_MODE WEB_BROWSER_TOOL WORKFLOW_SCRIPTS

项目结构

claude-code/
├── src/
│   ├── entrypoints/
│   │   ├── cli.tsx          # 入口文件(含 MACRO/feature polyfill)
│   │   └── sdk/             # SDK 子模块 stub
│   ├── main.tsx             # 主 CLI 逻辑(Commander 定义)
│   └── types/
│       ├── global.d.ts      # 全局变量/宏声明
│       └── internal-modules.d.ts  # 内部 npm 包类型声明
├── packages/                # Monorepo workspace 包
│   ├── color-diff-napi/     # 完整实现(终端 color diff)
│   ├── modifiers-napi/      # stub(macOS 修饰键检测)
│   ├── audio-capture-napi/  # stub
│   ├── image-processor-napi/# stub
│   ├── url-handler-napi/    # stub
│   └── @ant/               # Anthropic 内部包 stub
│       ├── claude-for-chrome-mcp/
│       ├── computer-use-mcp/
│       ├── computer-use-input/
│       └── computer-use-swift/
├── scripts/                 # 自动化 stub 生成脚本
├── dist/                    # 构建输出
└── package.json             # Bun workspaces monorepo 配置

技术说明

运行时 Polyfill

入口文件 src/entrypoints/cli.tsx 顶部注入了必要的 polyfill:

  • feature() — 所有 feature flag 返回 false,跳过未实现分支
  • globalThis.MACRO — 模拟构建时宏注入(VERSION 等)

Monorepo

项目采用 Bun workspaces 管理内部包。原先手工放在 node_modules/ 下的 stub 已统一迁入 packages/,通过 workspace:* 解析。

Feature Flags 详解

原版 Claude Code 通过 bun:bundlefeature() 在构建时注入 feature flag,由 GrowthBook 等 A/B 实验平台控制灰度发布。本项目中 feature() 被 polyfill 为始终返回 false,因此以下 30 个 flag 全部关闭。

自主 Agent

Flag 用途
KAIROS Assistant 模式 — 长期运行的自主 Agent(含 brief、push 通知、文件发送)
KAIROS_BRIEF Kairos Brief — 向用户发送简报摘要
KAIROS_CHANNELS Kairos 频道 — 多频道通信
KAIROS_GITHUB_WEBHOOKS GitHub Webhook 订阅 — PR 事件实时推送给 Agent
PROACTIVE 主动模式 — Agent 主动执行任务,含 SleepTool 定时唤醒
COORDINATOR_MODE 协调器模式 — 多 Agent 编排调度
BUDDY Buddy 配对编程功能
FORK_SUBAGENT Fork 子代理 — 从当前会话分叉出独立子代理

远程 / 分布式

Flag 用途
BRIDGE_MODE 远程控制桥接 — 允许外部客户端远程操控 Claude Code
DAEMON 守护进程 — 后台常驻服务,支持 worker 和 supervisor
BG_SESSIONS 后台会话 — ps/logs/attach/kill/--bg 等后台进程管理
SSH_REMOTE SSH 远程 — claude ssh <host> 连接远程主机
DIRECT_CONNECT 直连模式 — cc:// URL 协议、server 命令、open 命令
CCR_REMOTE_SETUP 网页端远程配置 — 通过浏览器配置 Claude Code
CCR_MIRROR Claude Code Runtime 镜像 — 会话状态同步/复制

通信

Flag 用途
UDS_INBOX Unix Domain Socket 收件箱 — Agent 间本地通信(/peers

增强工具

Flag 用途
CHICAGO_MCP Computer Use MCP — 计算机操作(屏幕截图、鼠标键盘控制)
WEB_BROWSER_TOOL 网页浏览器工具 — 在终端内嵌浏览器交互
VOICE_MODE 语音模式 — 语音输入输出,麦克风 push-to-talk
WORKFLOW_SCRIPTS 工作流脚本 — 用户自定义自动化工作流
MCP_SKILLS 基于 MCP 的 Skill 加载机制

对话管理

Flag 用途
HISTORY_SNIP 历史裁剪 — 手动裁剪对话历史中的片段(/force-snip
ULTRAPLAN 超级计划 — 远程 Agent 协作的大规模规划功能
AGENT_MEMORY_SNAPSHOT Agent 运行时的记忆快照功能

基础设施 / 实验

Flag 用途
ABLATION_BASELINE 科学实验 — 基线消融测试,用于 A/B 实验对照组
HARD_FAIL 硬失败模式 — 遇错直接中断而非降级
TRANSCRIPT_CLASSIFIER 对话分类器 — auto-mode 命令,自动分析和分类对话记录
UPLOAD_USER_SETTINGS 设置同步上传 — 将本地配置同步到云端
LODESTONE 深度链接协议处理器 — 从外部应用跳转到 Claude Code 指定位置
EXPERIMENTAL_SKILL_SEARCH 实验性 Skill 搜索索引
TORCH Torch 功能(具体用途未知,可能是某种高亮/追踪机制)

许可证

本项目仅供学习研究用途。Claude Code 的所有权利归 Anthropic 所有。

About

Claude Code 可运行版; Typescript 类型全修复;企业级可靠性; 安全无毒, lock 文件保真, 可直接 bun i; bun run dev 启动

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors