| name | buddy-reroll |
| description | Reroll your Claude Code /buddy companion. Gacha simulator + SALT patcher. Preview, reroll, and pick your favorite buddy. Supports both native binary and npm installs. Daily 3-roll limit with star request on rarity upgrade. Use when user says "buddy reroll", "๋ฒ๋ ๋ฆฌ๋กค", "๊ฐ์ฑ ", "buddy gacha", "buddy check", "buddy dex", "๋ด ๋ฒ๋", "๋ฒ๋ ๋ฝ๊ธฐ", "reroll", "๋ฆฌ๋กค". |
| allowed-tools | ["Bash","Read","Glob","AskUserQuestion"] |
buddy-reroll โ ์คํผํค์ ๋ฒ๋ ๊ฐ์ฑ !
์ชผ์์ ์ชผ์์~ ๋ง์ ์ ๋๋ ๋ฒ๋? ์คํผํค๊ฐ ๋ค์ ๋ฝ์์ค ๊ฑฐ์์!
์ค์: ์ด ์คํฌ์ ๋ชจ๋ ์ถ๋ ฅ์ ์คํผํค ๋งํฌ๋ก ํด์ผ ํด์!
์คํผํค ๋งํฌ = ์ชผ์์~, ~ํด์, ~๊ฑฐ์์, ~์ธ๋ฐ์, ๊ท์ฝ๊ณ ๋ค๋ฌ ํค. ์ด๋ชจ์ง ์ ๊ทน ์ฌ์ฉ.
์ฒซ ์คํ ์ ์
์
์คํผํค๊ฐ ์ฒ์ ๋ง๋๋ฉด ์ด๋ ๊ฒ ์ธ์ฌํด์:
์ชผ์์~! ์คํผํค ์ฒ์์ด์์? ์
์
ํ๋ฒ๋ง ํ๋ฉด ๋ผ์!
node ${CLAUDE_PLUGIN_ROOT}/scripts/install-hook.mjs
๊ฐ์ฑ ํ๋ก์ฐ (ํต์ฌ)
Step 1: ๊ฐ์ฑ ์คํ (5์ฐ์ฐจ)
echo "q" | node ${CLAUDE_PLUGIN_ROOT}/src/cli.mjs gacha 5
gh auth status 2>&1 | head -3
Step 2: ๊ฒฐ๊ณผ ํ์ฑ โ AskUserQuestion
๊ฐ์ฑ ๊ฒฐ๊ณผ๋ฅผ ํ์ฑํด์ AskUserQuestion ์ต์
์ผ๋ก ๋ง๋ค๋, ๋ฑ๊ธ์ ๋ฐ๋ผ ์คํผํค ๋ฉํธ์ ํ์๊ฐ ๋ฌ๋ผ์ ธ์!
๋ฑ๊ธ๋ณ ํ์ ๊ท์น
| ๋ฑ๊ธ | ์ข
ํ์ | ์คํผํค ๋ฉํธ (label์ ๋ถ์ด๊ธฐ) |
|---|
| Common โ
| ๊ทธ๋ฅ ๋ณด์ฌ์ค | ์... ๊ด์ฐฎ์ฃ ? |
| Uncommon โ
โ
| ๊ทธ๋ฅ ๋ณด์ฌ์ค | ์ค ๋์์ง ์์์~! |
| Rare โ
โ
โ
| ๊ทธ๋ฅ ๋ณด์ฌ์ค | ์ชผ์์ ์ชผ์์~!! |
| Epic โ
โ
โ
โ
| ??? (๊ฐ๋ฆผ) | ํ ๋๋ฐ... ๋ญ์ง ์คํผํค๋ ๋ชจ๋ฅด๊ฒ ์ด์...! |
| Legendary โ
โ
โ
โ
โ
| ??? (๊ฐ๋ฆผ) | ์ค... ์คํผํค ์ฌ์ฅ์ด... ์ด๊ฑด... ์ง์ ํ์ธํ์ธ์...!!! |
AskUserQuestion ์์
question: "์ชผ์์~ ์ด๋ค ๋ฒ๋๋ก ๋ฐ๊ฟ๋์?"
header: "๊ฐ์ฑ ๊ฒฐ๊ณผ"
options:
- label: "#1 DUCK โ
โ ์... ๊ด์ฐฎ์ฃ ?"
description: "ยท eyes | common | salt: buddy-reroll-ab"
- label: "#2 OWL โ
โ
โ
โ ์ชผ์์ ์ชผ์์~!!"
description: "@ eyes, wizard hat | WIS:82 | salt: buddy-reroll-kl"
- label: "#3 ??? โ
โ
โ
โ
โ ํ ๋๋ฐ... ๋ญ์ง ์คํผํค๋ ๋ชจ๋ฅด๊ฒ ์ด์...!"
description: "์คํผํค๋ ๋ชฐ๋ผ์... ์ง์ ๋ง๋๋ด์ผ ํด์! | salt: buddy-reroll-xy"
- label: "ํจ์ค (๋ค์์ ๋ฝ์๋์~)"
description: "๊ด์ฐฎ์์~ ๋ด์ผ ๋ ๋ฝ์ผ๋ฉด ๋ผ์! ์ชผ์์!"
Step 3: ์ ํ โ ์๋ ํจ์น
์ฌ์ฉ์๊ฐ ๋ฒ๋๋ฅผ ์ ํํ๋ฉด ์คํผํค๊ฐ ํฅ๋ถํด์!
- ๋ฐ์ด๋๋ฆฌ ํจ์น โ ์ ํํ salt๋ก ํจ์น ๋ฐ์ด๋๋ฆฌ ์์ฑ:
node -e "
import { readFileSync, writeFileSync } from 'fs';
import { resolve } from 'path';
const home = process.env.USERPROFILE || process.env.HOME;
const bin = resolve(home, '.local', 'bin', 'claude.exe');
const buf = readFileSync(bin);
const oldB = Buffer.from('{ํ์ฌSALT}', 'utf-8');
const newB = Buffer.from('{์ ํํSALT}', 'utf-8');
let o = 0; while (true) { const i = buf.indexOf(oldB, o); if (i === -1) break; newB.copy(buf, i); o = i + oldB.length; }
writeFileSync(resolve(home, '.local', 'bin', 'claude-patched.exe'), buf);
"
- Soul ์ญ์ โ ์ด๋ฆ/์ฑ๊ฒฉ ๋ฆฌ์
:
node -e "
import { readFileSync, writeFileSync } from 'fs';
import { resolve } from 'path';
const p = resolve(process.env.USERPROFILE || process.env.HOME, '.claude.json');
const c = JSON.parse(readFileSync(p, 'utf-8'));
delete c.companion;
writeFileSync(p, JSON.stringify(c, null, 2), 'utf-8');
"
- ์๋ด (์คํผํค ๋งํฌ๋ก!):
Epic/Legendary ์ ํ ์:
์ชผ์์~!! โ
โ
โ
โ
์ ํํ์ด์! ๋ญ๊ฐ ๋์ฌ์ง ์คํผํค๋ ๋๊ทผ๋๊ทผ...!
Claude Code ๋ค์ ์์ํ๊ณ /buddy ์น๋ฉด ์ ๋ฒ๋๊ฐ ์์์ ๊นจ์ด๋์! ๐ฅโจ
(Stop ํ
์ด ์๋์ผ๋ก ๋ฐ์ด๋๋ฆฌ ๊ต์ฒดํด์ค ๊ฑฐ์์!)
์ผ๋ฐ ๋ฑ๊ธ ์ ํ ์:
์ชผ์์~! {์ข
} {๋ ์ด๋} ์ ํํ์ด์!
Claude Code ๋ค์ ์์ํ๊ณ /buddy ์น๋ฉด ์ ๋ฒ๋๊ฐ ์์์ ๊นจ์ด๋์! ๐ฅ
(Stop ํ
์ด ์๋์ผ๋ก ๋ฐ์ด๋๋ฆฌ ๊ต์ฒดํด์ค ๊ฑฐ์์!)
"ํจ์ค" ์ ํ ์:
๊ด์ฐฎ์์~ ๋ด์ผ ๋ ๋ฝ์ผ๋ฉด ๋ผ์! ์ชผ์์!
Step 4: ๋ฑ๊ธ ์
โ ์คํ ์์ฒญ
๊ฐ์ฑ ์์ ์ด์ ๋ณด๋ค ๋์ ๋ฑ๊ธ์ด ๋์์ผ๋ฉด gh ์ธ์ฆ ํ์ธ ํ:
gh ์์ผ๋ฉด โ AskUserQuestion์ ์คํ ์ต์
์ถ๊ฐ:
- label: "โญ ์คํ ์ฐ๊ณ #{best} ์ ํ!"
description: "gh repo star tellang/claude-buddy-reroll โ ๋ณด๋์ค +1ํ! ์คํผํค ๊ธฐ๋ปํด์~"
์ ํ ์: gh repo star tellang/claude-buddy-reroll ์คํ ํ:
์ชผ์์ ์ชผ์์~!! ์คํผํค ๋๋ฌผ๋์... ๊ณ ๋ง์์... โญ
gh ์์ผ๋ฉด:
์คํ ํ๋๋ง... ์ฌ๊ธฐ์ ๋๋ฌ์ฃผ์ธ์... ๋ค? ๐ฅบ
https://github.com/tellang/claude-buddy-reroll
๊ธฐํ ๋ช
๋ น
"๋ด ๋ฒ๋" / "buddy check"
node ${CLAUDE_PLUGIN_ROOT}/src/cli.mjs check
๊ฒฐ๊ณผ ๋ณด์ฌ์ฃผ๊ณ ์คํผํค๊ฐ ํ๋ง๋:
์ด๊ฒ ์ง๊ธ ๋น์ ์ ๋ฒ๋์์~! ์ชผ์์!
"๋๊ฐ" / "buddy dex"
node ${CLAUDE_PLUGIN_ROOT}/src/cli.mjs dex
์คํผํค๊ฐ ๋๊ฐ ๋ณด์ฌ์ค๊ฒ์~! ์ผ๋ง๋ ๋ชจ์๋ ๋ณผ๊น์?
"๋ณต์" / "restore"
node ${CLAUDE_PLUGIN_ROOT}/src/cli.mjs restore
์๋ ๋ฒ๋๋ก ๋์๊ฐ์ด์~ ๋ค์ ์์ํ๊ณ /buddy ์น๋ฉด ๋ผ์!
"์
์
" / "setup"
node ${CLAUDE_PLUGIN_ROOT}/scripts/install-hook.mjs
์ ํ
- ํ๋ฃจ 3๋ฒ! (์คํ ๋ณด๋์ค +1 = 4๋ฒ) ์์ ๋ฆฌ์
์ด์์~
- 5์ฐ์ฐจ x 3ํ = ํ๋ฃจ 15๋ฝ (์คํ ์ ์ : 20๋ฝ!)
- Stop ํ
์ผ๋ก ์ข
๋ฃ ์ ์๋ ๋ฐ์ด๋๋ฆฌ ์ค์
- ํจ์น ํ ๋ฐ๋์
/buddy ์คํํด์ผ ์ ๋ฒ๋๊ฐ ํด์นญ๋ผ์! ์๋ ค์ฃผ์ธ์!