乐于分享
好东西不私藏

Claude Code 源码里藏着 9 个还没上线的功能,我把它们都挖出来了

Claude Code 源码里藏着 9 个还没上线的功能,我把它们都挖出来了

系列:从泄露源码看 Claude Code 的内部世界(第二篇)

Claude Code v2.1.88 的源码意外通过 npm sourcemap 泄露。上一篇我们聊了”卧底模式”。这一篇更刺激——我在代码里发现了至少 9 个已经写好代码、但还没对外开放的功能

这些功能通过一套叫 feature() 的编译时开关控制,打开就有,关上就消失,普通用户完全看不到。

什么是 feature flag

在代码里,这些功能的控制方式长这样:

if (feature('KAIROS')) {// 这段代码只有 KAIROS 开关打开时才存在}

feature() 是 Bun 打包器的编译时指令。如果开关是关的,打包后这段代码直接从二进制里消失,不是运行时跳过,是物理上不存在。

这意味着:这些功能的代码已经写好了,Anthropic 随时可以通过重新打包来开放,用户那边不需要更新任何东西。

我在整份源码里搜索了所有 feature() 调用,找到了 50+ 个不同的开关。以下是最值得关注的 9 个。

1. KAIROS:自主助手模式

出现次数:84 次(全库最高频的 feature flag)

KAIROS 是整个源码里最神秘的代号。它出现了 84 次,涉及的子功能包括:

  • KAIROS_BRIEF
     — 专用的”发消息给用户”工具
  • KAIROS_CHANNELS
     — 频道支持
  • KAIROS_DREAM
     — 不知道是什么,但名字很有意思
  • KAIROS_GITHUB_WEBHOOKS
     — GitHub 事件监听
  • KAIROS_PUSH_NOTIFICATION
     — 推送通知

从代码逻辑来看,KAIROS 是一个完整的异步 Agent 模式:Claude Code 可以在后台运行,监听事件(比如 GitHub PR),主动推送消息给用户,而不是等用户来问它。

系统提示里有一段专门针对 KAIROS 的指令:

SendUserMessage iswhere your replies go. Text outside it is visible if the userexpands the detail view, but most won't — assume unread. Anything you want themto actually see goes through SendUserMessage.status labels intent: 'normal' when replying to what they just asked;'proactive' when you're initiating — a scheduled task finished, a blockersurfaced during background work, you need input on something they haven't asked about.

“proactive”——AI 主动发起,不是被动回答。这是 KAIROS 的核心。

2. PROACTIVE:主动工作模式

比 KAIROS 更底层的开关。当启用时,系统提示会切换成:

You arerunning autonomously. You will receive `<tick>` prompts that keep youalive between turns — just treat them as "you're awake, what now?"The timeineach `<tick>is the user's current local time.

“你正在自主运行。你会收到 <tick> 心跳包,把它当成’你醒了,现在干什么?’”

配合 SleepTool,AI 可以在没有用户输入的情况下持续工作:睡眠 → 被 tick 唤醒 → 看看有没有事情要做 → 干活 → 再睡眠。

这是一个完整的后台 Agent 架构,不需要用户在场。

3. COORDINATOR_MODE:多 Agent 编排

exportfunctionisCoordinatorMode(): boolean {if (feature('COORDINATOR_MODE')) {returnisEnvTruthy(process.env.CLAUDE_CODE_COORDINATOR_MODE)  }returnfalse}

Coordinator Mode 让 Claude Code 变成一个指挥官,而不是单个执行者。

它可以:

  • 派遣多个 Worker Agent 并行工作
  • 综合 Worker 的结果
  • 通过 SendMessage 工具与 Worker 通信
  • 订阅 GitHub PR 事件(subscribe_pr_activity

Worker 之间通过 XML 格式传递任务结果:

<task-notification><task-id>{agentId}</task-id><status>completed|failed|killed</status><result>{agent's final text response}</result><usage><total_tokens>N</total_tokens><tool_uses>N</tool_uses><duration_ms>N</duration_ms></usage></task-notification>

连 token 消耗和耗时都记录了——这是生产级的多 Agent 系统,不是实验玩具。

4. VERIFICATION_AGENT:AI 互相验证

这个功能的设计思路很有意思:用一个 AI 来验证另一个 AI 的工作

exportconstVERIFICATION_AGENTBuiltInAgentDefinition = {agentType'verification',color'red',backgroundtrue,disallowedTools: [FILE_EDIT_TOOL_NAME,FILE_WRITE_TOOL_NAME,// ...  ],criticalSystemReminder_EXPERIMENTAL:'CRITICAL: This is a VERIFICATION-ONLY task. You CANNOT edit, write, or create     files IN THE PROJECT DIRECTORY. You MUST end with VERDICT: PASS, VERDICT: FAIL,     or VERDICT: PARTIAL.',}

Verification Agent 是只读的——它不能修改任何文件,只能检查、运行测试、输出 VERDICT: PASS / VERDICT: FAIL / VERDICT: PARTIAL

系统提示里对它的定位是”找到最后 20%”:

前摄式验证的核心目的是找到最后 20%,而不仅是确认前 80%。必须实际运行命令,检查输出,进行对抗性探测。

目前这个功能是 Anthropic 内部 A/B 测试中,通过 GrowthBook 的 tengu_hive_evidence 开关控制。

5. AFK_MODE:离开时 AI 继续干活

exportconstAFK_MODE_BETA_HEADER = feature('TRANSCRIPT_CLASSIFIER')  ? 'afk-mode-2026-01-31'  : ''

AFK = Away From Keyboard。这个功能的含义字面上就是:你不在键盘前,AI 也能继续工作

它依赖于 TRANSCRIPT_CLASSIFIER——一个能理解对话上下文、判断当前状态的分类器。当你”离开”时,系统能自动识别,并切换到 AFK 模式继续执行任务。

Beta header 的日期是 2026 年 1 月 31 日,说明这个功能已经有了明确的 API 协议,只是还没对外开放。

6. TRANSCRIPT_CLASSIFIER:双阶段安全分类器

这个开关出现了 69 次,是整个 Auto Permission Mode(自动权限模式)的核心。

当你让 Claude Code 自动执行操作时,它不是无脑执行——后台有一个双阶段分类器在评估每个操作是否安全:

const classifierResult = awaitclassifyYoloAction(...)const handoffDecision = classifierResult.unavailable  ? 'unavailable'  : classifierResult.shouldBlock    ? 'blocked'    : 'allowed'
  • stage1
    :初步评估
  • stage2
    :深层评估
  • 分类器不可用时:unavailable(不是直接拒绝,而是降级处理)

分类器的规则结构:

exporttypeAutoModeRules = {allowstring[]soft_denystring[]environmentstring[]}

soft_deny 这个设计很有意思——不是硬拒绝,是”软拒绝”,可能会警告但不阻断。

7. VOICE_MODE:语音模式

feature('VOICE_MODE')

出现了 11 次。代码里没有太多细节,但名字已经说明一切——Claude Code 在准备支持语音交互。

8. ULTRAPLAN + ULTRATHINK:超级规划和超级思考

feature('ULTRAPLAN')  // 2 次feature('ULTRATHINK'// 1 次

这两个名字很直接。ULTRAPLAN 是一个增强的计划模式,ULTRATHINK 可能是扩展思考能力的开关。出现次数少,说明还在早期阶段。

9. WEB_BROWSER_TOOL:内置浏览器工具

feature('WEB_BROWSER_TOOL'// 1 次

Claude Code 在准备内置一个真正的浏览器工具——不是现在的 WebFetch(只能抓取文本),而是完整的浏览器自动化能力。

还有一些有意思的名字

翻完整个列表,还有几个名字让我停下来想了一下:

  • KAIROS_DREAM
     — Dream 是什么?后台处理?离线学习?
  • BUDDY
     — 出现 3 次,可能是某种协作模式
  • LODESTONE
     — 磁石,导航用的。可能是某种方向性功能?
  • TORCH
     — 火炬。1 次,完全不知道
  • DAEMON
     — 守护进程模式,后台常驻服务

这些功能说明了什么

把这 9 个功能放在一起看,Anthropic 的方向非常清晰:

Claude Code 正在从”你问我答的工具”变成”后台自主运行的 Agent”。

PROACTIVE + KAIROS + AFK_MODE + COORDINATOR_MODE,这四个功能组合起来,描绘的是同一个愿景:AI 不需要等你,它自己知道该做什么,做完了通知你。

VERIFICATION_AGENT 则说明 Anthropic 已经意识到单个 AI 的局限性,开始用 AI 来检查 AI。

这些功能都已经写好了代码。只是开关还没打开。

本文基于Claude Code v2.1.88反编译源码分析,所有源码版权归Anthropic PBC所有,仅供技术研究和学习参考。


下一篇:从 18 个 Beta Header 的时间戳,读出 Anthropic 真实的产品路线图——比任何发布会都真实。