Skip to main content

什么是 Ant

USER_TYPE 是一个构建时常量,通过 Bun 打包器的 --define 注入。在 Anthropic 的内部构建中它被设为 'ant',在公开发布的版本中是 'external'
// 反编译版本(src/entrypoints/cli.tsx 第 16 行)
(globalThis as any).BUILD_TARGET = "external";
由于这是编译时常量,Bun 会进行常量折叠——所有 process.env.USER_TYPE === 'ant' 在外部构建中直接变为 false,后续代码被 DCE 移除。但在反编译版本中,这些代码保留完整。 USER_TYPE === 'ant' 出现在代码库的 60+ 个位置,控制着工具、命令、API、UI 等方方面面。

Ant-Only 工具

以下工具仅在内部构建中被加载到工具注册表:
工具代码位置用途
REPLToolsrc/tools/REPLTool/高级 REPL 模式——在 VM 中包装 Bash/Read/Edit/Glob/Grep/Agent 等工具
SuggestBackgroundPRToolsrc/tools/SuggestBackgroundPRTool/建议在后台创建 PR
ConfigToolsrc/tools/ConfigTool/交互式配置编辑器,包含 Gates 标签页用于覆盖 GrowthBook flags
TungstenToolsrc/tools/TungstenTool/基于 tmux 的终端面板工具(反编译版中已 stub)
// src/tools.ts 第 16-24 行
const REPLTool =
  process.env.USER_TYPE === 'ant'
    ? require('./tools/REPLTool/REPLTool.js').REPLTool
    : null
const SuggestBackgroundPRTool =
  process.env.USER_TYPE === 'ant'
    ? require('./tools/SuggestBackgroundPRTool/SuggestBackgroundPRTool.js')
        .SuggestBackgroundPRTool
    : null

Ant-Only 命令

src/commands.ts 注册了 25+ 个仅在内部构建中可用的斜杠命令:
  • breakCache — 清除缓存
  • ctx_viz — 可视化上下文窗口使用情况
  • debugToolCall — 调试工具调用
  • env — 显示环境变量
  • mockLimits — 模拟速率限制
  • resetLimits — 重置速率限制
  • bughunter — Bug 猎人模式
  • goodClaude — 质量评估工具
  • antTrace — 追踪分析
  • perfIssue — 性能问题诊断
  • commit — 快速提交
  • commitPushPr — 一键提交+推送+创建 PR
  • issue — 创建 GitHub Issue
  • autofixPr — 自动修复 PR 中的问题
  • share — 分享会话
  • summary — 生成摘要
  • backfillSessions — 回填会话数据
  • bridgeKick — 重启 Bridge 连接
  • oauthRefresh — 刷新 OAuth Token
  • teleport — 传送到指定上下文
  • onboarding — 新手引导
  • agentsPlatform — Agents 平台管理
  • version — 内部版本详情
  • initVerifiers — 初始化验证器
这些命令在 IS_DEMO 模式下也会被隐藏,防止在演示环境中暴露内部功能。

Beta API Headers

Claude Code 向 API 发送的 beta headers 也分为公开和内部两类:
Header功能可见性
claude-code-20250219Claude Code 标识公开
interleaved-thinking-2025-05-14交错思考模式公开
context-1m-2025-08-071M 上下文窗口公开
context-management-2025-06-27上下文管理公开
web-search-2025-03-05网页搜索公开
effort-2025-11-24推理强度控制公开
fast-mode-2026-02-01快速模式公开
token-efficient-tools-2026-03-28Token 高效工具公开
advisor-tool-2026-03-01顾问工具公开
cli-internal-2026-02-09内部 CLI 功能Ant-Only
afk-mode-2026-01-31AFK 模式(离开键盘自动审批)Feature Flag
summarize-connector-text-2026-03-13连接器文本摘要Feature Flag
// src/constants/betas.ts 第 29-30 行
export const CLI_INTERNAL_BETA_HEADER =
  process.env.USER_TYPE === 'ant' ? 'cli-internal-2026-02-09' : ''
cli-internal header 意味着 Anthropic 的 API 服务端也维护着一套 ant-only 的服务端行为——这不仅仅是客户端的门控。

内部代号体系

Anthropic 有浓厚的”动物命名”文化:
代号身份出处
Tengu(天狗)Claude Code 项目代号所有 GrowthBook flags 的 tengu_ 前缀、分析事件名称
Capybara(水豚)模型代号src/constants/prompts.ts 中被 Undercover Mode 屏蔽的名称
Fennec(耳廓狐)已退役模型别名src/migrations/migrateFennecToOpus.ts——曾用名已迁移到 Opus
这些代号通过 Undercover Mode 在公开仓库的 commit 中被严格过滤。

环境变量开关

除了 USER_TYPE,还有一系列精细的环境变量控制各项功能:
  • CLAUDE_CODE_SIMPLE — 简化模式(禁用高级功能)
  • CLAUDE_CODE_DISABLE_THINKING — 禁用 thinking
  • DISABLE_INTERLEAVED_THINKING — 禁用交错思考
  • DISABLE_COMPACT — 禁用消息压缩
  • DISABLE_AUTO_COMPACT — 禁用自动压缩
  • CLAUDE_CODE_DISABLE_AUTO_MEMORY — 禁用自动记忆
  • CLAUDE_CODE_DISABLE_BACKGROUND_TASKS — 禁用后台任务
  • CLAUDE_CODE_VERIFY_PLAN — 启用 VerifyPlanExecutionTool
  • ENABLE_LSP_TOOL — 启用 LSP 语言服务器工具
  • CLAUDE_CODE_UNDERCOVER — 强制启用 Undercover Mode
  • CLAUDE_CODE_TERMINAL_RECORDING — 启用终端录制(asciicast)
  • CLAUDE_CODE_ABLATION_BASELINE — 启用基线对照模式
  • CLAUDE_CODE_REMOTE — 远程执行模式(自动增加堆内存限制)
  • CLAUDE_CODE_COORDINATOR_MODE — 启用 Coordinator 模式
  • CLAUDE_INTERNAL_FC_OVERRIDES — GrowthBook flag 覆盖(ant-only)
  • IS_DEMO — 演示模式(隐藏内部命令和敏感信息)
ABLATION_BASELINE 特别有趣——它同时关闭 thinking、compaction、auto-memory 和 background tasks,用于测量这些高级功能对 AI 表现的因果影响。这是一个严肃的”科学对照实验”工具。