
最近 Claude Code 加了个 Companion 系统,每个账号会随机分配一个小宠物( buddy ),有不同的稀有度、物种、眼睛、帽子,还有 1% 概率出闪光( shiny )。
大部分人开出来都是 Common,而且 Common 连帽子都没有。
buddy 的生成逻辑其实很简单:
hash(account_uuid + salt) → seed → mulberry32 PRNG → rarity / species / eyes / hat / shiny account_uuid 是你的账号 ID ,改不了。
但 salt 是一个硬编码在二进制里的 15 字符字符串(类似 friend-2026-xxx),只要做同长度替换,就不会破坏二进制结构。
所以思路就是:
暴力枚举
salt,找到能产出你想要的 buddy 的那个,然后 patch 进去。
需要 Bun 运行环境。
git clone https://github.com/RoggeOhta/claude-buddy-reroll.git cd claude-buddy-reroll 直接运行,默认搜 Legendary:
bun buddy-reroll.ts 输出大概长这样:
Current buddy: COMMON duck (eye: hat:none) Searching (rarity=legendary, limit=15)... Found 3 result(s): [1] LEGENDARY dragon (eye: hat:wizard ) [2] LEGENDARY ghost (eye: hat:crown ) [3] LEGENDARY cat (eye:× hat:halo ) Pick a buddy [1-3] (or "q" to quit): 选一个回车就会自动 patch 。
下次开 Claude Code 重新孵化时,就是你选的那个。
也可以加 filter:
# 只看 Epic bun buddy-reroll.ts --rarity epic # 只看龙 bun buddy-reroll.ts --species dragon # 只看闪光 bun buddy-reroll.ts --shiny # 组合:闪光传奇猫 bun buddy-reroll.ts --rarity legendary --species cat --shiny 第一次 patch 会自动备份原始二进制,随时可以还原:
bun buddy-reroll.ts --restore salt 字符串,不改任何代码逻辑--restore 一键恢复duck / goose / blob / cat / dragon / octopus / owl / penguin / turtle / snail / ghost / axolotl / capybara / cactus / robot / rabbit / mushroom / chonk crown / tophat / propeller / halo / wizard / beanie / tinyduck https://github.com/RoggeOhta/claude-buddy-reroll
各位开出了什么 buddy ?欢迎晒一下。
PS.之前的帖子排版没有排好,已经下沉了
1 cairnechen 12 小时 31 分钟前 额,昨天 x 上看到说封号最大风险是改动客户端,这个不会有问题吧? |
2 Aron7 OP @cairnechen 但是这很 cool |