一个用于搜索和生成 Claude buddy 属性组合的开源工具集。
推荐工作流是先用 buddy-seed-search.js 在 seed 空间里筛选目标属性,再用 buddy-reroll.js 在真实 UID 空间里搜索可用结果。
An open-source toolkit for searching and generating Claude buddy attribute combinations.
The recommended workflow is to use buddy-seed-search.js to narrow down target traits in seed space first, then use buddy-reroll.js to search real UID candidates.
A small CLI toolkit for exploring Claude buddy generation rules and searching for buddy results with specific cosmetic traits and stat constraints. It is meant for local use and works best with Bun when you want behavior that matches Claude Code.
- Searches buddy combinations by species, rarity, eye, hat, shiny flag, and stat filters
- Uses
buddy-seed-search.jsto scan seed space quickly for promising combinations - Uses
buddy-reroll.jsto search or check real UID results - Lets you inspect an existing seed or UID to see what buddy it produces
- Supports Bun-based parallel range search in
buddy-seed-search.jsfor higher throughput
- Bun recommended
buddy-seed-search.jsis Bun-first, and range search should be run with Bun- Node.js is optional for
buddy-reroll.js, but its results do not match Claude Code
Recommended runtime choice:
buddy-seed-search.js→ use Bunbuddy-reroll.js→ use Bun if you want Claude-compatible results
buddy-seed-search.js— recommended script for searching in localseed:<n>spacebuddy-reroll.js— recommended script for searching or checking real UID resultsbuddy-reroll-history.js— historical prototype kept only for comparison, not the default entry point
No build step is required.
bun buddy-seed-search.js --help
bun buddy-reroll.js --helpSearch for strong combinations in seed space:
bun buddy-seed-search.js --rarity legendary --min-stat 90 --count 3Search for a more specific combination:
bun buddy-seed-search.js --species snail --stat "WISDOM>=95" --stat "PATIENCE>=90" --count 5Check a specific seed:
bun buddy-seed-search.js --check-seed 123456
bun buddy-seed-search.js --check-id seed:123456Search real UID candidates with behavior matching Claude Code:
bun buddy-reroll.js --species snail --stat "WISDOM>=95" --stat "PATIENCE>=90" --count 1 --workers 8Check what a known UID produces:
bun buddy-reroll.js --check <uid>- Use
buddy-seed-search.jsto find an attribute combination you want. - Reuse the same filters with
buddy-reroll.js. - Run
buddy-reroll.jswith Bun until you get a real UID result you like.
Important:
- A
seed:<n>result is a local search target, not a real UID. - Seed-space hits do not directly convert into real UID values.
buddy-seed-search.jsis best treated as a fast attribute-template finder.buddy-reroll.jsis the script that searches real UID candidates.
buddy-reroll.js supports both Bun and Node.js, but they are not equivalent:
- Bun uses
Bun.hashand matches Claude Code behavior - Node.js uses FNV-1a and does not match Claude Code behavior
If you care about accurate buddy reproduction, use Bun.
Shared filters supported by both main scripts:
--species— require a specific buddy species such assnailordragon--rarity— require a minimum rarity threshold such asrareorlegendary--eye— require a specific eye style character--hat— require a specific hat or accessory--shiny— only match shiny buddies--min-stats— legacy shorthand that requires all stats to be at least the given value--stat "NAME>=VALUE"— add a precise comparison for a single stat, such asWISDOM>=95--min-stat— require the lowest stat in the result to be at least the given value--max-stat— require the highest stat in the result to stay at or below the given value--min-total— require the sum of all stats to be at least the given value--max-total— require the sum of all stats to stay at or below the given value--min-avg— require the average stat value to be at least the given value--max-avg— require the average stat value to stay at or below the given value--count— stop after finding the requested number of matches
Script-specific options:
buddy-seed-search.js--check-seed— inspect the buddy result for a specific numeric seed--check-id— inspect the buddy result for a local pseudo-ID such asseed:123456--start-seed— set the beginning of the seed range to scan--end-seed— set the end of the seed range to scan--workers— choose how many Bun workers to use for range search--progress-every— control how often progress is reported during range search--exhaustive— keep scanning the full range even after enough matches are found
buddy-reroll.js--check— inspect the buddy result for a specific real UID--max— set the maximum number of random attempts to try--workers— choose how many Bun workers to use in search mode; not allowed with--check
See each script's --help output for the exact syntax.
The original script prototype came from:
This repository extends that prototype with additional filtering, validation, and search capabilities.
Licensed under the MIT License. See LICENSE.
这是一个用于探索和搜索 Claude buddy 属性组合的小型命令行工具集。 适合本地直接运行;如果你希望行为尽量与 Claude Code 对齐,推荐使用 Bun。
- 按 species、rarity、eye、hat、shiny 和 stat 条件搜索目标 buddy
- 用
buddy-seed-search.js在 seed 空间里快速筛选理想属性组合 - 用
buddy-reroll.js在真实 UID 空间里搜索或检查结果 - 检查某个 seed 或 UID 最终会生成什么 buddy
buddy-seed-search.js支持基于 Bun 的并行区间搜索,提高搜索吞吐量
- 推荐安装 Bun
buddy-seed-search.js以 Bun 为主,尤其区间搜索应使用 Bun 运行buddy-reroll.js也可用 Node.js 运行,但结果不与 Claude Code 对齐
推荐运行方式:
buddy-seed-search.js→ 使用 Bunbuddy-reroll.js→ 若需要和 Claude 一致,使用 Bun
buddy-seed-search.js—— 推荐使用,在本地seed:<n>空间中搜索buddy-reroll.js—— 推荐使用,搜索或检查真实 UID 的结果buddy-reroll-history.js—— 仅保留用于对比的历史原型,不是当前默认入口
不需要构建,直接运行即可:
bun buddy-seed-search.js --help
bun buddy-reroll.js --help先在 seed 空间里找高属性组合:
bun buddy-seed-search.js --rarity legendary --min-stat 90 --count 3搜索更具体的目标组合:
bun buddy-seed-search.js --species snail --stat "WISDOM>=95" --stat "PATIENCE>=90" --count 5检查某个 seed:
bun buddy-seed-search.js --check-seed 123456
bun buddy-seed-search.js --check-id seed:123456用与 Claude Code 行为对齐的方式在真实 UID 空间搜索:
bun buddy-reroll.js --species snail --stat "WISDOM>=95" --stat "PATIENCE>=90" --count 1 --workers 8检查某个已知 UID 会生成什么:
bun buddy-reroll.js --check <uid>- 先用
buddy-seed-search.js找到你想要的属性组合。 - 再把同样的筛选条件用于
buddy-reroll.js。 - 用 Bun 运行
buddy-reroll.js,持续搜索真实 UID,直到命中满意结果。
注意:
seed:<n>只是本地搜索目标,不是真实 UID。- seed 空间里的命中结果不能直接转换成真实 UID。
buddy-seed-search.js更适合当作“属性模板搜索器”。buddy-reroll.js才是搜索真实 UID 的脚本。
buddy-reroll.js 同时支持 Bun 和 Node.js,但结果并不等价:
- Bun 使用
Bun.hash,与 Claude Code 行为对齐 - Node.js 使用 FNV-1a,不与 Claude Code 对齐
如果你在意结果准确性,请使用 Bun。
两个主脚本都支持组合使用这些通用筛选条件:
--species—— 指定目标物种,例如snail、dragon--rarity—— 指定最低稀有度门槛,例如rare、legendary--eye—— 指定眼睛样式字符--hat—— 指定帽子或饰品类型--shiny—— 只匹配 shiny buddy--min-stats—— 旧式简写,要求所有 stat 都不低于给定值--stat "NAME>=VALUE"—— 为单个 stat 添加精确比较条件,例如WISDOM>=95--min-stat—— 要求结果中的最低 stat 不低于给定值--max-stat—— 要求结果中的最高 stat 不高于给定值--min-total—— 要求所有 stat 总和不低于给定值--max-total—— 要求所有 stat 总和不高于给定值--min-avg—— 要求 stat 平均值不低于给定值--max-avg—— 要求 stat 平均值不高于给定值--count—— 找到指定数量的命中结果后停止
脚本专属参数:
buddy-seed-search.js--check-seed—— 检查某个数字 seed 会生成什么 buddy--check-id—— 检查某个本地伪 ID(如seed:123456)会生成什么 buddy--start-seed—— 指定扫描区间的起始 seed--end-seed—— 指定扫描区间的结束 seed--workers—— 指定区间搜索时使用多少个 Bun worker--progress-every—— 控制区间搜索时的进度输出频率--exhaustive—— 即使已经找到足够结果,也继续扫完整个区间
buddy-reroll.js--check—— 检查某个真实 UID 会生成什么 buddy--max—— 指定随机尝试搜索时的最大尝试次数--workers—— 指定搜索模式下使用多少个 Bun worker;不能和--check同用
具体语法请直接查看各自的 --help 输出。
脚本原型来自:
本仓库在原型基础上补充了更多筛选能力、参数校验与搜索能力。
本项目使用 MIT License,详见 LICENSE.
如果你对 buddy 的使用思路、一些细节玩法或小彩蛋感兴趣,可以扫码看看我的公众号。
If you're interested in a few extra notes on buddy usage, small details, or easter eggs, you can scan the QR code below.
