【从终端彩蛋到hex编码的duck:Claude Code源码里藏着什么】
快速阅读: Claude Code的npm包中意外附带了source map文件,完整源码因此泄露。里面有ASCII宠物养成系统、大量技术债、未发布的智能体功能,以及一个被hex编码的单词“duck”。大多数经验丰富的工程师表示:这很正常。
---
有人通过npm包里的.map文件拿到了Claude Code的完整源码,上传到GitHub,然后花了几个小时翻了个遍。
最离谱的发现:他们在终端里藏了一只宠物。
`/buddy`命令会根据你的用户ID孵化一只ASCII生物,18个物种,包括鸭子、卡皮巴拉、龙、鬼魂、美西螈,还有一个叫“chonk”的东西。完整的卡池系统,1%传说概率,闪光变体,帽子(皇冠、巫师帽、螺旋桨帽),属性包括DEBUGGING、CHAOS和SNARK。随机算法用的是Mulberry32,注释写着“good enough for picking ducks”。盐值是“friend-2026-401”——4月1日的愚人节彩蛋。
然后是那个被hex编码的“duck”:
export const duck = String.fromCharCode(0x64,0x75,0x63,0x6b)
这是单词“duck”。因为某个物种名撞上了内部模型代号,触发了构建扫描器,所以他们把全部18个物种名都转成了十六进制。问题是自己造的,绕过方式也是自己写的。
项目内部代号是tengu,遥测事件全部以`tengu_`开头,功能开关有宝石代号,比如`tengu_cobalt_frost`是语音功能,`tengu_amber_frond`是语音的kill switch。
`main.tsx`有803,924字节,一个文件。460条eslint-disable注释。50多个名字里带`_DEPRECATED`的函数仍在生产环境中被调用,其中包括负责保存你的认证凭据的`writeFileSyncAndFlush_DEPRECATED()`。
错误处理函数里有一行注释:`// TODO: figure out why`。处理你的报错的代码,不知道自己为什么要这么做。
工程师ollie在mcp/client.ts第589行留下了:
“The memoization here increases complexity by a lot, and im not sure it really improves performance”
他把自己不确定有没有用的代码直接推上了生产。我们都懂这种感觉。
帖子引起了广泛讨论。多数有经验的工程师表示这完全正常,甚至有观点认为OP的整篇分析本身就是让Claude写的,“unhinged”这个词是典型的Claude用词习惯。有网友提到,语音功能走`api.anthropic.com`而不是`claude.ai`根本不是什么问题,那就是API端点,CLI当然该调API。
还有人注意到更值得关注的部分:几个未发布的功能。`kairos`可以监控GitHub PR并发送推送通知,`ultraplan`会在远程服务器上启动一个30分钟的opus会话来规划你的整个任务,`coordinator mode`是带有多个worker和暂存区的多智能体集群。Claude Code更像是Anthropic下一步计划的实验场,而不只是一个编码工具。
一位资深工程师的评论很直接:“90%的企业代码库都是这样,你只是没机会看到。”
那个被hex编码的鸭子,未必是能力问题。它更像是一个证据:当你在以这种速度建造飞机的同时还要飞行,偶尔会用十六进制命名你的鸭子。
Ollie的那条注释现在还在。他大概还在别的文件里留着更多。
ref: www.reddit.com/r/ClaudeAI/comments/1s8lkkm/i_dug_through_claude_codes_leaked_source_and
#Claude Code源码意外泄露#
