oh-my-buddy
v1.0.0
Published
Pick any Claude Code companion you want. Bilingual Korean/English CLI.
Maintainers
Readme
Oh My Buddy
Pick any Claude Code companion you want.
English | 한국어
┌──────────────────────────────────┐
│ Oh My Buddy │
│ 내 짝꿍은 내가 고른다 │
└──────────────────────────────────┘Don't like your default buddy? Pick your own. Species, rarity, eyes, hat — fully customizable, bilingual Korean/English UI.
Quick Start
npx oh-my-buddy@latestOr install globally:
npm install -g oh-my-buddy
ombuddyDemo
기본 짝꿍 새 짝꿍
-[]- \vvv/
[· ·] ──► v\ /v
[====] ( ✦~~✦ )
~~ ~~ \ /
)ww(
robot ★★★ rare dragon ★★★★★ legendary ✨Usage
Interactive (recommended)
ombuddy # Full interactive modeOne-liner
ombuddy -s dragon -r legendary -e ✦ -t crown --shiny -yKorean commands (한국어도 OK)
ombuddy --종족 dragon --등급 legendary --눈 ✦ --모자 crown --반짝이 --예Commands
| Command | Korean | Description |
|---------|--------|-------------|
| ombuddy | — | Interactive buddy picker |
| ombuddy current | ombuddy 현재 | Show current buddy |
| ombuddy apply | ombuddy 적용 | Re-apply after Claude Code update |
| ombuddy restore | ombuddy 복원 | Restore original buddy |
| ombuddy rehatch | ombuddy 재부화 | Delete companion to re-hatch |
| ombuddy help | ombuddy 도움말 | Show help |
Options
| Flag | Korean | Description |
|------|--------|-------------|
| -s, --species | --종족 | Species |
| -r, --rarity | --등급 | Rarity level |
| -e, --eye | --눈 | Eye style |
| -t, --hat | --모자 | Hat type |
| -n, --name | --이름 | Companion name |
| -p, --personality | --성격 | Companion personality |
| --shiny | --반짝이 | Shiny mode (~100x search) |
| --peak | --최고 | Best stat |
| --dump | --최저 | Worst stat |
| -y, --yes | --예 | Skip confirmations |
| --silent | --조용히 | Silent mode (for hooks) |
Species
| Species | Korean | Preview |
|---------|--------|---------|
| duck | 오리 | ~(·> |
| goose | 거위 | ·>/ |
| blob | 슬라임 | (··) |
| cat | 고양이 | ·w· |
| dragon | 용 | (·~~·) |
| octopus | 문어 | (··)~ |
| owl | 부엉이 | [·][·] |
| penguin | 펭귄 | (·v·) |
| turtle | 거북이 | (·_·) |
| snail | 달팽이 | ·(@) |
| ghost | 유령 | \|· ·\| |
| axolotl | 아홀로틀 | >·.·< |
| capybara | 카피바라 | (·oo·) |
| cactus | 선인장 | \|· ·\| |
| robot | 로봇 | [··] |
| rabbit | 토끼 | (·..·) |
| mushroom | 버섯 | \|· ·\| |
| chonk | 뚱냥이 | (·.·) |
Rarity
| Level | Korean | Stars | Chance | |-------|--------|-------|--------| | Common | 일반 | ★ | 60% | | Uncommon | 고급 | ★★ | 25% | | Rare | 희귀 | ★★★ | 10% | | Epic | 영웅 | ★★★★ | 4% | | Legendary | 전설 | ★★★★★ | 1% |
Eyes & Hats
Eyes: · ✦ × ◉ @ °
Hats: crown, tophat, propeller, halo, wizard, beanie, tinyduck (uncommon+ only)
How It Works
Claude Code generates your buddy by hashing userId + salt with FNV-1a, then feeding it through a mulberry32 PRNG to pick species, rarity, eyes, and hat.
Oh My Buddy brute-forces a salt that produces your desired combination, then patches the Claude Code binary to use it.
- Auto-detects existing patches (including any-buddy)
- Creates backups before patching
- Optional SessionStart hook for auto-reapply after updates
Migrating from any-buddy
ombuddy restore # Restores original + removes any-buddy hooks
ombuddy # Pick your new buddyOh My Buddy automatically detects and replaces any-buddy patches.
Platform Support
| Platform | Status | |----------|--------| | Windows | Tested | | macOS | Supported | | Linux | Supported |
Requirements
- Node.js >= 18
- Claude Code (npm global install)
Credits
Inspired by any-buddy by @cpaczek. Oh My Buddy was built on top of the reverse-engineering work done by any-buddy, with key fixes:
- Hash algorithm fix: Claude Code runs under Node.js (not Bun), so it uses FNV-1a — not wyhash. This was the root cause of any-buddy applying wrong pets.
- Bilingual UI: Full Korean/English dual-language support for commands, flags, and output.
- Automatic migration: Detects and replaces existing any-buddy patches seamlessly.
License
MIT
한국어
내 Claude Code 짝꿍은 내가 고른다.
빠른 시작
# 설치 없이 바로 실행
npx oh-my-buddy@latest
# 또는 글로벌 설치
npm install -g oh-my-buddy
ombuddy사용법
# 인터랙티브 모드 (추천)
ombuddy
# 한방 지정
ombuddy --종족 dragon --등급 legendary --눈 ✦ --모자 crown --반짝이 --예
# 영어도 OK
ombuddy -s dragon -r legendary -e ✦ -t crown --shiny -y
# 현재 짝꿍 확인
ombuddy 현재
# 원본으로 복원
ombuddy 복원커맨드
| 커맨드 | 영어 | 설명 |
|--------|------|------|
| ombuddy | — | 인터랙티브 짝꿍 선택 |
| ombuddy 현재 | current | 현재 짝꿍 확인 |
| ombuddy 적용 | apply | 업데이트 후 재적용 |
| ombuddy 복원 | restore | 원본으로 복원 |
| ombuddy 재부화 | rehatch | companion 삭제 후 재부화 |
| ombuddy 도움말 | help | 도움말 |
옵션
| 한국어 | 영어 | 설명 |
|--------|------|------|
| --종족 | -s, --species | 종족 선택 |
| --등급 | -r, --rarity | 등급 선택 |
| --눈 | -e, --eye | 눈 스타일 |
| --모자 | -t, --hat | 모자 종류 |
| --이름 | -n, --name | companion 이름 |
| --성격 | -p, --personality | companion 성격 |
| --반짝이 | --shiny | 반짝이 모드 |
| --예 | -y, --yes | 확인 스킵 |
| --조용히 | --silent | 출력 없이 (훅용) |
원리
Claude Code는 userId + salt를 FNV-1a로 해시 → mulberry32 PRNG로 종족/등급/눈/모자를 결정합니다.
Oh My Buddy는 원하는 조합이 나오는 salt를 브루트포스로 찾아 바이너리에 패치합니다.
any-buddy에서 이전
ombuddy 복원 # 원본 복원 + any-buddy 훅 제거
ombuddy # 새로 선택any-buddy 패치를 자동 감지하고 교체합니다.
