# ClaudeCode
**Repository Path**: cribug/ClaudeCode
## Basic Information
- **Project Name**: ClaudeCode
- **Description**: 可运行的Claude Code源码
- **Primary Language**: TypeScript
- **License**: Not specified
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 4
- **Created**: 2026-04-02
- **Last Updated**: 2026-04-02
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## 快速开始-带宠物功能
```bash
bun install # 安装依赖(需要 Bun ≥ 1.3.5、Node.js ≥ 24)
bun run dev:buddy # 启动 CLI
```
# 宠物功能
```bash
目前可用的 /buddy 子命令有:
- /buddy hatch #领养宠物
- /buddy card
- /buddy pet #互动
- /buddy mute
- /buddy unmute
- /buddy reset #放生宠物,需要用hatch重新领养
- /buddy reroll #直接重新换宠物
```
# Claude Code 源码还原
> 从 `@anthropic-ai/claude-code` npm 包的 source map 中还原的完整 TypeScript 源码,**可本地运行**
> [!WARNING]
> 本仓库为**非官方**版本,基于公开 npm 发布包 source map 还原,**仅供研究学习**。源码版权归 [Anthropic](https://www.anthropic.com) 所有。
---
---
## 从源码中发现的 7 大隐藏功能
通过阅读还原后的 1,987 个 TypeScript 源文件,我们发现了大量未公开的隐藏功能。这些功能通过**编译开关**(`feature()`)和**用户类型**(`USER_TYPE`)进行门控,外部发布版中大部分被裁剪。
---
### 1. [BUDDY — AI 电子宠物](docs/01-buddy.md)
> 源码位置:`src/buddy/` · [查看完整分析 →](docs/01-buddy.md)
终端里的拓麻歌子!一个完整的虚拟宠物系统。
- **18 种物种**:鸭子、鹅、猫、龙、章鱼、猫头鹰、企鹅、乌龟、蜗牛、幽灵、六角恐龙、水豚、仙人掌、机器人、兔子、蘑菇、果冻、胖猫
- **5 级稀有度**:普通(60%) → 非凡(25%) → 稀有(10%) → 史诗(4%) → 传说(1%)
- **1% 闪光概率**:独立于稀有度,任何宠物都有 1% 概率成为闪光个体
- **确定性生成**:使用账号 UUID + 固定盐值 `'friend-2026-401'` 经 FNV-1a 哈希 → Mulberry32 PRNG,每人只会得到一只固定的宠物,改配置也没用
- **外观系统**:6 种眼睛样式 + 8 种帽子(皇冠、巫师帽、光环等),common 稀有度没有帽子
- **交互**:`/buddy pet` 抚摸(爱心动画)、`/buddy hatch` 孵化、`/buddy card` 查看卡片
- **动画**:500ms 帧率的 ASCII 精灵动画,气泡对话,窄终端自动退化为表情文字脸(如 `=·ω·=`)
- **编译开关**:`feature('BUDDY')`
---
### 2. [KAIROS — 永不关机的 Claude](docs/02-kairos.md)
> 源码位置:`src/assistant/`、`src/proactive/`、`src/services/autoDream/` · [查看完整分析 →](docs/02-kairos.md)
关掉终端 Claude 还在运行的持久助手模式。
- **跨会话持久运行**:通过 `.claude/settings.json` 的 `assistant: true` 激活,会话状态持久化到磁盘
- **每日日志**:自动在 `/logs/YYYY/MM/YYYY-MM-DD.md` 记录工作日志
- **自动做梦(Dream)**:距上次整合超 24 小时且有 5+ 新会话时,后台自动启动记忆整合子代理,分四阶段运行:Orient → Gather → Consolidate → Prune
- **锁机制**:`.consolidate-lock` 文件 + PID 存活检查,防止多进程同时做梦
- **主动模式(Proactive)**:没人说话时自己找活干,没活就调用 `SleepTool` 等着。接收周期性 `` 提示来检查是否有事可做
- **后台任务**:命令超 15 秒自动丢后台,支持持久 cron 任务(`permanent: true` 不受 7 天过期限制)
- **编译开关**:`feature('KAIROS')`、`feature('KAIROS_BRIEF')`、`feature('KAIROS_CHANNELS')`
- **远程开关**:GrowthBook `tengu_kairos`、`tengu_onyx_plover`(Dream 阈值配置)
---
### 3. [ULTRAPLAN — 云端深度规划](docs/03-ultraplan.md)
> 源码位置:`src/commands/ultraplan.tsx`、`src/utils/ultraplan/` · [查看完整分析 →](docs/03-ultraplan.md)
把难题甩给云端 Opus 独立研究最长 30 分钟。
- **流程**:`/ultraplan ` → 创建远程 CCR 会话 → Opus 模型独立研究 → 后台轮询等待(30 分钟超时)→ 浏览器查看/修改方案 → 批准执行或传送回本地
- **关键词触发**:消息中包含 "ultraplan" 自动触发,智能排除引号/路径/标识符中的误触发
- **传送(Teleport)**:`src/utils/teleport.tsx` 实现本地 ↔ 远程会话传输,支持 Git Bundle 打包代码上下文
- **完全内部限定**:`isEnabled: () => "external" === 'ant'`,外部版永远不可用
- **编译开关**:`feature('ULTRAPLAN')`
- **远程开关**:`tengu_ultraplan_model`(控制使用的模型)
---
### 4. [Coordinator — 多 Agent 编排模式](docs/04-coordinator.md)
> 源码位置:`src/coordinator/` · [查看完整分析 →](docs/04-coordinator.md)
主 Claude 变成纯指挥官,Worker 并行执行任务。
- **角色分离**:Coordinator 只有三个工具——派活(Agent)、通信(SendMessage)、停工(Shutdown)
- **Worker 机制**:Worker 在独立子进程中运行,各自拥有完整工具集
- **核心铁律**:系统提示中明确规定"禁止甩锅式委派"——不能把不清楚的需求直接丢给 Worker
- **任务追踪**:基于文件的共享任务列表(`~/.claude/tasks/`),Coordinator 和 Worker 共同读写
- **编译开关**:`feature('COORDINATOR_MODE')`
- **环境变量**:`CLAUDE_CODE_COORDINATOR_MODE`
---
### 5. [26+ 隐藏命令 & 秘密开关](docs/05-hidden-commands.md)
> 源码位置:`src/commands.ts`、`src/commands/` · [查看完整分析 →](docs/05-hidden-commands.md)
#### Feature-gated 命令(编译开关控制)
| 命令 | 功能 | 开关 |
|------|------|------|
| `/buddy` | 电子宠物,支持 hatch/card/pet/mute/unmute/reset/reroll | `BUDDY` |
| `/proactive` | 主动自主模式 | `PROACTIVE` / `KAIROS` |
| `/assistant` | 助手模式 | `KAIROS` |
| `/brief` | 简报模式 | `KAIROS` / `KAIROS_BRIEF` |
| `/bridge` | 远程控制桥接 | `BRIDGE_MODE` |
| `/voice` | 语音模式 | `VOICE_MODE` |
| `/ultraplan` | 云端深度规划 | `ULTRAPLAN` |
| `/fork` | 子代理分叉 | `FORK_SUBAGENT` |
| `/peers` | 对等通信 | `UDS_INBOX` |
| `/workflows` | 工作流脚本 | `WORKFLOW_SCRIPTS` |
| `/torch` | Torch 功能 | `TORCH` |
| `/force-snip` | 强制历史截断 | `HISTORY_SNIP` |
#### 仅内部用户(`USER_TYPE === 'ant'`)命令
| 命令 | 功能 |
|------|------|
| `/teleport` | 传送会话到远程/本地 |
| `/bughunter` | 内部 Bug 猎人 |
| `/mock-limits` | 模拟速率限制 |
| `/ctx_viz` | 上下文可视化 |
| `/break-cache` | 强制缓存清除 |
| `/ant-trace` | 内部追踪工具 |
| `/good-claude` | 内部反馈 |
| `/agents-platform` | 智能体平台 |
| `/autofix-pr` | 自动修复 PR |
| `/debug-tool-call` | 调试工具调用 |
| `/reset-limits` | 重置速率限制 |
#### 隐藏 CLI 参数
```
--teleport [session] 恢复传送会话
--remote [description] 创建远程会话
--proactive 主动模式
--assistant 助手模式
--brief 简报模式
--remote-control 远程控制
--hard-fail 硬失败模式
--agent-teams 多代理团队
```
---
### 6. [Bridge — 远程遥控终端](docs/06-bridge.md)
> 源码位置:`src/bridge/`(33 个文件) · [查看完整分析 →](docs/06-bridge.md)
从 claude.ai 或手机直接操控本地 CLI。
- **WebSocket 实时连接**:本地 CLI 通过 WebSocket 与 claude.ai 建立双向通道
- **完整远程控制**:远程端可以发送消息、批准权限、查看输出
- **进程间通信**:跨 Claude 会话的消息传递机制
- **状态同步**:`bridgeStatusUtil.ts` 实时同步运行状态
- **权限回调**:`bridgePermissionCallbacks.ts` 远程权限审批
- **编译开关**:`feature('BRIDGE_MODE')`、`feature('DAEMON')`
---
### 7. [50 个编译开关 + 远程门控](docs/07-feature-gates.md)
外部发布版是**阉割版**。Anthropic 通过三层门控控制功能。[查看完整分析 →](docs/07-feature-gates.md)
#### 第一层:编译时开关(`feature()`,约 50 个)
构建时决定代码包含/排除,以下是完整列表:
点击展开全部 50 个编译开关
| 开关 | 说明 |
|------|------|
| `BUDDY` | 宠物伴侣系统 |
| `KAIROS` | 持久助手模式 |
| `KAIROS_BRIEF` | 简报模式 |
| `KAIROS_CHANNELS` | 通道通知 |
| `KAIROS_GITHUB_WEBHOOKS` | GitHub Webhook |
| `ULTRAPLAN` | 云端深度规划 |
| `COORDINATOR_MODE` | 多 Agent 编排 |
| `BRIDGE_MODE` | 远程控制桥接 |
| `VOICE_MODE` | 语音交互 |
| `PROACTIVE` | 主动自主模式 |
| `FORK_SUBAGENT` | 子代理分叉 |
| `DAEMON` | 守护进程模式 |
| `UDS_INBOX` | Unix Socket 收件箱 |
| `WORKFLOW_SCRIPTS` | 工作流脚本 |
| `TORCH` | Torch 功能 |
| `MONITOR_TOOL` | 监控工具 |
| `HISTORY_SNIP` | 历史截断 |
| `ANTI_DISTILLATION_CC` | 反蒸馏保护 |
| `BASH_CLASSIFIER` | Bash 命令分类器 |
| `BG_SESSIONS` | 后台会话 |
| `CACHED_MICROCOMPACT` | 缓存微压缩 |
| `CCR_REMOTE_SETUP` | Web 远程设置 |
| `CHICAGO_MCP` | MCP 扩展(Computer Use) |
| `COMMIT_ATTRIBUTION` | 提交归属标注 |
| `CONNECTOR_TEXT` | 连接器文本 |
| `CONTEXT_COLLAPSE` | 上下文折叠 |
| `COWORKER_TYPE_TELEMETRY` | 协作者遥测 |
| `DOWNLOAD_USER_SETTINGS` | 下载用户设置 |
| `EXPERIMENTAL_SKILL_SEARCH` | 实验性技能搜索 |
| `EXTRACT_MEMORIES` | 自动提取记忆 |
| `FILE_PERSISTENCE` | 文件持久化 |
| `HARD_FAIL` | 硬失败模式 |
| `LODESTONE` | Lodestone 功能 |
| `MCP_SKILLS` | MCP 技能系统 |
| `MEMORY_SHAPE_TELEMETRY` | 记忆形状遥测 |
| `MESSAGE_ACTIONS` | 消息操作 |
| `NATIVE_CLIENT_ATTESTATION` | 客户端证明 |
| `PROMPT_CACHE_BREAK_DETECTION` | 缓存中断检测 |
| `QUICK_SEARCH` | 快速搜索 |
| `REACTIVE_COMPACT` | 响应式压缩 |
| `SLOW_OPERATION_LOGGING` | 慢操作日志 |
| `STREAMLINED_OUTPUT` | 精简输出 |
| `TEAMMEM` | 团队记忆同步 |
| `TEMPLATES` | 模板/分类器 |
| `TERMINAL_PANEL` | 终端面板 |
| `TOKEN_BUDGET` | Token 预算 |
| `TRANSCRIPT_CLASSIFIER` | 转录分类器 |
| `UNATTENDED_RETRY` | 无人值守重试 |
| `UPLOAD_USER_SETTINGS` | 上传用户设置 |
| `BREAK_CACHE_COMMAND` | 缓存清除注入 |
#### 第二层:用户类型(`USER_TYPE`)
- **`ant`**(Anthropic 内部)— 解锁全部功能、20 分钟 GrowthBook 刷新、调试工具、200+ 处专属检查
- **`external`**(外部用户)— 裁剪版,6 小时 GrowthBook 刷新
#### 第三层:GrowthBook 远程 A/B 测试
| 开关 | 控制内容 |
|------|---------|
| `tengu_kairos` | KAIROS 助手模式开关 |
| `tengu_onyx_plover` | 自动做梦阈值(间隔/会话数) |
| `tengu_cobalt_frost` | 语音识别(Nova 3)开关 |
| `tengu_ultraplan_model` | Ultraplan 使用的模型 |
| `tengu_ant_model_override` | 内部用户模型覆盖 |
| `tengu_session_memory` | 会话记忆功能 |
| `tengu_max_version_config` | 自动更新 Kill Switch |
| `tengu_frond_boric` | 数据接收器 Kill Switch |
| `tengu_herring_clock` | 团队记忆路径 |
| `tengu_sm_config` | 会话记忆配置 |
---
## 隐藏环境变量速查
点击展开完整环境变量列表
| 环境变量 | 说明 |
|----------|------|
| `ANTHROPIC_MODEL` | 模型覆盖 |
| `CLAUDE_CODE_MAX_OUTPUT_TOKENS` | 最大输出 token |
| `CLAUDE_CODE_DISABLE_THINKING` | 禁用思考 |
| `CLAUDE_CODE_PROACTIVE` | 主动模式 |
| `CLAUDE_CODE_COORDINATOR_MODE` | 协调器模式 |
| `CLAUDE_CODE_BRIEF` | 简报模式 |
| `CLAUDE_CODE_USE_BEDROCK` | 使用 AWS Bedrock |
| `CLAUDE_CODE_USE_VERTEX` | 使用 Google Vertex |
| `CLAUDE_CODE_DISABLE_AUTO_MEMORY` | 禁用自动记忆 |
| `CLAUDE_CODE_EXTRA_BODY` | API 附加 JSON |
| `CLAUDE_CODE_SYNTAX_HIGHLIGHT` | 语法高亮主题 |
| `CLAUDE_CODE_IDLE_THRESHOLD_MINUTES` | 空闲阈值(默认 75 分钟) |
| `CLAUDE_INTERNAL_FC_OVERRIDES` | GrowthBook 覆盖(仅 ant) |
---
## 项目结构
```
src/ # 核心源码(1,987 个 TS/TSX)
├── tools/ # 53 个工具(Bash/FileEdit/Agent/MCP...)
├── commands/ # 87 个斜杠命令
├── services/ # API / MCP / analytics / autoDream
├── components/ # 148 个终端 UI 组件(React + Ink)
├── hooks/ # 87 个自定义 Hooks
├── buddy/ # 宠物伴侣系统
├── assistant/ # KAIROS 助手模式
├── coordinator/ # 多 Agent 协调器
├── bridge/ # 远程控制桥接(31 文件)
├── proactive/ # 主动模式
├── vim/ # Vim 模式引擎
├── voice/ # 语音交互
└── ...
shims/ # 原生模块兼容替代
vendor/ # 原生绑定源码
```
---
## 数据来源
- npm 包:[@anthropic-ai/claude-code](https://www.npmjs.com/package/@anthropic-ai/claude-code)
- 还原方式:提取 `cli.js.map` 中的 `sourcesContent`
## 声明
- 源码版权归 [Anthropic](https://www.anthropic.com) 所有
- 仅用于技术研究与学习,请勿用于商业用途
- 如有侵权,请联系删除