趁着 Anthropic 还没封完,我用 Vibe Coding 把 Claude Code 源码给“魔改”了!

362 阅读10分钟

事件概要

时间: 2026年4月2日前后

事件经过: Anthropic 发生了一起源代码泄露事故,Claude Code 约 50 万行代码被意外泄露至公网,随即在开发者社区引发轰动——GitHub 上出现大量克隆仓库,全球开发者争相下载"扒光"的代码。

泄露原因: 内部的内容管理系统在权限配置的时候失误了,将cli.js.map文件变成公开访问的文件,原来的源码上线时都是经过混淆的,现在有cli.js.map 文件,就可以很轻松的将线上代码反编译成源码。

注意:现在 Anthropic 公司已向 github 提出反制申请,github 上有很多 Claude Code 源码库都被封了,虽然我觉得不可能封完,但是还是自己下载一份稳一点。

源码运行

我在网上 fork 了一份 Claude Code 源码,并成功运行,还通过 vibe coding 做了一些魔改。

魔改内容如下:

  1. 去掉万恶的 IP 地区校验(不用担心封号);
  2. 加入全局可运行配置(方便使用);
  3. 替换大模型底模为 Codex(比 Claude 模型便宜一点)。

运行步骤

环境准备

需要 Bun ≥ 1.3.5、Node.js ≥ 24。这个不会的随便找个 AI IDE 让他装一下就行。

依赖安装

在项目根目录运行

bun install

本地运行

bun run dev

服务可以启动,但此时还无法直接使用,需要配置一下大模型的 API Key

获取大模型 API Key

这种大模型代理商现在有很多,我平时用的是:PackyAPI - 全球领先的 AI API 聚合平台 | Global AI API Platform

进去后台,点击令牌管理,点击添加令牌:

其他内容可以按需求输入,但是令牌分组要选claude-officially,完成之后点提交:

出来之后,这里就能看到密钥了:

然后还要获取 BaseUrl,点下面的链接可以直接复制:

这两个获取完之后,在访达按快捷键Shift+Command+G,填入路径~/.claude:

打开 Claude Code 的配置文件settings.json:

填入刚刚 API KeyBaseUrl

{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "claude-officially令牌",
    "ANTHROPIC_BASE_URL": "https://www.packyapi.com"
  },
  "includeCoAuthoredBy": false
}

然后重新运行bun run dev即可,提问能成功收到回复就说明成功了:

全局运行配置

因为下载的是源码,没法像直接安装完线上的 Claude Code 一样,在任意项目命令行输入命令 claude 就能启动。所以,还要做一些配置。

我这里做了一下改动,配置了一个全局命令ccc,原来想用cc的,但是已经有这个全局命令,会冲突,就换成 ccc 了。

具体步骤

在仓库根目录注册全局命令:
bun link

将命令添加到环境变量 PATH 中
printf '\nexport PATH="$HOME/.bun/bin:$PATH"\n' >> ~/.zshrc
source ~/.zshrc
rehash
验证全局命令是否已经生效
which ccc

验证成功后,就可以在任意目录运行ccc命令了:

ok,现在就可以像正常使用线上版本一样使用本地版的 Claude Code。

切换成Codex大模型(可选)

方式一(使用 codex 分支):

如果你想使用 Claude Code 作为 AI Agent,但是想用 Codex 做为大模型服务提供商,可以看下后续步骤,如果要用官方的就可以跳过这节。

切换分支

为了和原厂的代码区分开,单独开了一个分支做魔改,要使用 codex,先切换到 codex 分支:

git checkout codex
切换代理商令牌分组

打开令牌管理,点击管理按钮:

改成 codex 专用分组,点击提交:

或者也可以直接新建一个令牌。

加入codex配置文件

新建配置文件,~/.claude/codex.json,填入以下内容:

{
  "enabled": true,
  "baseURL": "https://www.packyapi.com",
  "apiKey": "codex分组令牌",
  "model": "gpt-5.3-codex",
  "proxy": {
    "http": "http://127.0.0.1:7890",
    "https": "http://127.0.0.1:7890"
  }
}
重新运行

问一下是它是什么模型,看回复就可以验证是否切换成功:

方式二(切换令牌分组为 cxtocc):

切换分组

打开 Packy 控制台,切换令牌分组:

修改Claude Code配置文件

修改 Claude Code 配置文件~/.claude/settings.json

{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "cxtocc分组令牌",
    "ANTHROPIC_BASE_URL": "https://www.packyapi.com",
    "ANTHROPIC_MODEL": "gpt-5.4-high",
    "ANTHROPIC_SMALL_FAST_MODEL": "gpt-5.4-high",
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "gpt-5.4-high",
    "ANTHROPIC_DEFAULT_OPUS_MODEL": "gpt-5.4-high",
    "ANTHROPIC_DEFAULT_HAIKU_MODEL": "gpt-5.4-high"
  },
  "includeCoAuthoredBy": false
}

重新运行

验证一下:

💡 总结与思考

这次 Claude Code 源代码泄露事件虽然是 Anthropic 的一次重大失误,但对于开发者社区来说,却是一次难得的“拆解学习”机会。通过对约 50 万行工程化代码的解析,我们可以看到顶尖 AI Agent 在任务编排、上下文管理以及工具调用(Tool Use)上的极致设计。

本次魔改的核心价值在于:

  • 解除枷锁: 屏蔽了复杂的 IP 地区校验,让本地开发环境更加纯净、稳定。
  • 成本优化: 通过接入 Codex 等第三方模型,在保持 Agent 逻辑能力的同时,大幅降低了日常高频使用的 Token 消耗。
  • 工程提效: 通过 bun link 配置全局命令 ccc,实现了与原生工具无异的操作体验。

⚠️ 风险提示: 尽管本地运行解决了部分封号风险,但源码依然受版权保护。本教程仅供技术研究与交流,建议大家在“扒开看”的同时,也多关注其代码逻辑中的闪光点,将其吸收进自己的项目设计中。