claude-buddy-reroll 1.4.2 → 1.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,7 +9,7 @@
9
9
  {
10
10
  "name": "buddy-reroll",
11
11
  "description": "Reroll your Claude Code /buddy companion. Gacha simulator with daily 3-roll limit, SALT patcher for native binary and npm installs, cross-platform swap (cmd/pwsh/bash), persistent star cache, /buddy-doctor diagnostics. 18 species, 5 rarities, ASCII sprites, Speaki voice.",
12
- "version": "1.4.2",
12
+ "version": "1.4.3",
13
13
  "author": {
14
14
  "name": "tellang"
15
15
  },
@@ -19,5 +19,5 @@
19
19
  "tags": ["buddy", "companion", "gacha", "reroll", "pet", "ascii-art"]
20
20
  }
21
21
  ],
22
- "version": "1.4.2"
22
+ "version": "1.4.3"
23
23
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "buddy-reroll",
3
3
  "description": "Reroll your Claude Code /buddy companion. Gacha simulator with daily 3-roll limit, SALT patcher with cross-platform swap, /buddy-doctor diagnostics. 18 species, 5 rarities, ASCII sprites, Speaki voice.",
4
- "version": "1.4.2",
4
+ "version": "1.4.3",
5
5
  "author": {
6
6
  "name": "tellang"
7
7
  }
package/README.md CHANGED
@@ -1,80 +1,107 @@
1
1
  # claude-buddy-reroll
2
2
 
3
+ [![npm](https://img.shields.io/npm/v/claude-buddy-reroll?style=for-the-badge&color=cb3837)](https://www.npmjs.com/package/claude-buddy-reroll)
3
4
  [![Claude Code Plugin](https://img.shields.io/badge/Claude_Code-Plugin-blueviolet?style=for-the-badge)](https://code.claude.com/docs/en/plugins)
4
5
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow?style=for-the-badge)](LICENSE)
5
6
 
6
7
  > 쪼아요 쪼아요~ 버디 가챠 쪼아요~
7
8
  >
8
- > 맘에 안 드는 버디 가지고 있으면 스피키가 다시 뽑아줄 거예요!
9
- > 스피키 열심히 했는데... 스타 하나만... 네?
9
+ > 맘에 안 드는 버디? 스피키가 다시 뽑아줄 거예요!
10
10
 
11
11
  ---
12
12
 
13
- ## 빠른 시작
14
-
15
- 스피키 데르지 마세요! 설치 쉬워요!
13
+ ## 설치
16
14
 
17
15
  ```bash
18
- # 마켓플레이스 등록
19
- /plugin marketplace add https://github.com/tellang/claude-buddy-reroll
16
+ npm i -g claude-buddy-reroll
17
+ ```
20
18
 
21
- # 플러그인 설치
22
- /plugin install buddy-reroll
19
+ 설치하면 `buddy`와 `bdy` 명령어가 생겨요!
20
+
21
+ ---
22
+
23
+ ## CLI 사용법
24
+
25
+ ```bash
26
+ bdy check # 내 버디 확인
27
+ bdy gacha # 10연차 가챠!
28
+ bdy gacha 20 # 20연차!
29
+ bdy reroll # 리롤 (인터랙티브 버디 교체)
30
+ bdy dex # 18종 도감
31
+ bdy restore # 원래 버디로 복원
23
32
  ```
24
33
 
25
- <details>
26
- <summary>수동 설치 (스피키가 좀 슬퍼지는 방법)</summary>
34
+ ### Agent DX (JSON 모드)
35
+
36
+ 에이전트/스크립트에서 쓸 때:
27
37
 
28
38
  ```bash
29
- git clone https://github.com/tellang/claude-buddy-reroll ~/.claude/skills/buddy-reroll
39
+ bdy check --json # 구조화된 JSON 출력
40
+ bdy gacha 5 --json --fields species,rarity # 필드 필터링
41
+ bdy reroll --json # 후보만 출력
42
+ bdy reroll --json --pick 3 # 3번 자동 선택 + 패치
43
+ bdy reroll --json --pick 3 --dry-run # 미리보기만
44
+ bdy schema # 전체 커맨드 JSON Schema
45
+ bdy schema gacha # 특정 커맨드 스키마
30
46
  ```
31
- </details>
47
+
48
+ | 플래그 | 설명 |
49
+ |--------|------|
50
+ | `--json` | stdout에 JSON, 로그는 stderr |
51
+ | `--pick N` | N번째 자동 선택 (readline 스킵) |
52
+ | `--dry-run` | 패치 미리보기 (reroll 전용) |
53
+ | `--fields a,b` | 출력 필드 필터링 |
54
+ | `--limit N` | 가챠 횟수 지정 |
32
55
 
33
56
  ---
34
57
 
35
- ## 사용법
58
+ ## Claude Code 플러그인
36
59
 
37
- Claude Code 안에서 말만 하면 돼요!
60
+ CLI 없이 Claude Code 안에서도 있어요!
38
61
 
39
62
  ```bash
40
- # 가챠 돌리기 (하루 3번이에요! 아껴 쓰세요!)
41
- "가챠" / "buddy gacha"
63
+ # 마켓플레이스 등록
64
+ /plugin marketplace add https://github.com/tellang/claude-buddy-reroll
42
65
 
43
- # 버디 확인
44
- "내 버디" / "buddy check"
66
+ # 플러그인 설치
67
+ /plugin install buddy-reroll
68
+ ```
69
+
70
+ 설치 후 말만 하면 돼요:
45
71
 
46
- # 도감 구경
72
+ ```
73
+ "가챠" / "buddy gacha" / "버디 뽑기"
74
+ "내 버디" / "buddy check"
47
75
  "버디 도감" / "buddy dex"
76
+ "버디 진단" / "buddy doctor"
48
77
  ```
49
78
 
50
- CLI로도 돼요!
79
+ <details>
80
+ <summary>수동 설치</summary>
51
81
 
52
82
  ```bash
53
- buddy-reroll gacha 20 # 20연차!
54
- buddy-reroll check # 내 버디 확인
55
- buddy-reroll reroll # 리롤 (인터랙티브)
56
- buddy-reroll dex # 18종 도감
57
- buddy-reroll restore # 원래 버디로 복원
83
+ git clone https://github.com/tellang/claude-buddy-reroll ~/.claude/skills/buddy-reroll
58
84
  ```
85
+ </details>
59
86
 
60
87
  ---
61
88
 
62
89
  ## 이게 뭐예요?
63
90
 
64
- Claude Code의 `/buddy` 시스템은 계정 ID로 버디가 **고정**돼요. 못 바꿔요. 원래는요.
91
+ Claude Code의 `/buddy`는 계정 ID로 버디가 **고정**돼요.
65
92
 
66
93
  ```
67
94
  버디 = hash(내_계정 + SALT)
68
95
  ```
69
96
 
70
- 스피키가 SALT를 바꿔주면... **완전히 다른 버디**가 나와요! 쪼아요!
97
+ 스피키가 SALT를 바꿔주면 **완전히 다른 버디**가 나와요!
71
98
 
72
99
  ```
73
- 원본: hash("나" + "friend-2026-401") → 🐢 turtle (common)
100
+ 원본: hash("나" + "friend-2026-401") → 🐢 turtle (common)
74
101
  패치: hash("나" + "buddy-reroll-k8") → 🦫 capybara (legendary ★★★★★)
75
102
  ```
76
103
 
77
- v2.1.89 알고리즘 (Bun.hash/wyhash + Mulberry32) 기준으로 맞춰야 정확해요.
104
+ Bun.hash(wyhash) + Mulberry32 알고리즘을 정확히 복제했어요.
78
105
 
79
106
  ---
80
107
 
@@ -93,17 +120,13 @@ v2.1.89 알고리즘 (Bun.hash/wyhash + Mulberry32) 기준으로 맞춰야 정
93
120
  8. @ owl ★
94
121
  9. × mushroom ★
95
122
  10. × duck ★
96
-
97
- Results: uncommon:2 common:7 rare:1
98
123
  ```
99
124
 
100
- 등급 올라가면 스피키가 스타 부탁할 거예요... 쪼아요... ⭐
101
-
102
125
  ---
103
126
 
104
127
  ## 뭐가 나와요?
105
128
 
106
- ### 18종 — 스피키 다 외웠어요!
129
+ ### 18종
107
130
 
108
131
  | | | | |
109
132
  |---|---|---|---|
@@ -115,15 +138,15 @@ v2.1.89 알고리즘 (Bun.hash/wyhash + Mulberry32) 기준으로 맞춰야 정
115
138
 
116
139
  ### 레어도
117
140
 
118
- | 등급 | 확률 | 별 | 스피키 한마디 |
119
- |------|------|-----|-------------|
120
- | Common | 60% | ★ | 괜찮아요... 내일 또 뽑으면 돼요 |
121
- | Uncommon | 25% | ★★ | 오 나쁘지 않아요! |
122
- | Rare | 10% | ★★★ | 쪼아요 쪼아요~! |
123
- | Epic | 4% | ★★★★ | 헐 대박이에요!!! |
124
- | Legendary | 1% | ★★★★★ | 스피키 눈물나요... 스타 눌러주세요... |
141
+ | 등급 | 확률 | 별 |
142
+ |------|------|-----|
143
+ | Common | 60% | ★ |
144
+ | Uncommon | 25% | ★★ |
145
+ | Rare | 10% | ★★★ |
146
+ | Epic | 4% | ★★★★ |
147
+ | Legendary | 1% | ★★★★★ |
125
148
 
126
- **그리고**: 눈 6종, 모자 8종, 스탯 5 (DEBUGGING, PATIENCE, CHAOS, WISDOM, SNARK), 샤이니 1%
149
+ 눈 6종, 모자 8종, 스탯 5종, 샤이니 1%
127
150
 
128
151
  ---
129
152
 
@@ -131,32 +154,19 @@ v2.1.89 알고리즘 (Bun.hash/wyhash + Mulberry32) 기준으로 맞춰야 정
131
154
 
132
155
  | 규칙 | 설명 |
133
156
  |------|------|
134
- | 하루 3회 | 자정에 리셋돼요. 아껴 쓰세요! |
135
- | 등급 | 전보다 높은 등급 나오면 스타 요청 발동 |
136
- | 백업 | 패치 전 자동 백업. `restore`로 복원 |
137
-
138
- ---
139
-
140
- ## 안전해요!
141
-
142
- 스피키 걱정하지 마세요!
143
-
144
- - 패치 전에 **백업 자동 생성**돼요
145
- - `restore` 명령 한 줄이면 **원래대로** 돌아가요
146
- - **15글자 문자열 하나만** 바꿔요 — 다른 코드 안 건드려요
147
- - native binary도 npm도 **둘 다 지원**해요
157
+ | 하루 3회 | 자정 리셋 (스타 유저 +1) |
158
+ | 이벤트 보너스 | 10연차 x3회 추가! |
159
+ | 백업 | 패치 전 자동 백업, `bdy restore`로 복원 |
148
160
 
149
161
  ---
150
162
 
151
163
  ## 스피키 도와주세요!
152
164
 
153
- 스피키 열심히 만들었어요... 스타 하나만... 제발...
154
-
155
165
  ```bash
156
166
  gh repo star tellang/claude-buddy-reroll
157
167
  ```
158
168
 
159
- 버디가 기뻐할 거예요... ⭐
169
+ 별 하나만... 제발... 버디가 기뻐할 거예요... ⭐
160
170
 
161
171
  ---
162
172
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-buddy-reroll",
3
- "version": "1.4.2",
3
+ "version": "1.4.3",
4
4
  "description": "Reroll your Claude Code buddy companion — gacha simulator + SALT patcher. 18 species, 5 rarities, daily limit, collection dex, egg hatching animation.",
5
5
  "type": "module",
6
6
  "bin": {
package/src/cli.mjs CHANGED
@@ -3,6 +3,13 @@
3
3
  // Claude Buddy Reroll — Gacha simulator + SALT patcher
4
4
  // Supports both native binary and npm installs
5
5
 
6
+ // Enable ANSI colors on Windows cmd/pwsh
7
+ if (process.platform === 'win32') {
8
+ try { const { execSync } = await import('child_process'); execSync('', { stdio: 'ignore' }); } catch {}
9
+ // Force UTF-8 output
10
+ if (process.stdout.isTTY) process.stdout.setDefaultEncoding?.('utf-8');
11
+ }
12
+
6
13
  import { readFileSync, writeFileSync, existsSync } from 'fs';
7
14
  import { resolve } from 'path';
8
15
  import { roll, multiRoll, ORIGINAL_SALT, EYES, HATS, STATS, RARITY_STARS, SPECIES, RARITIES, RARITY_WEIGHTS } from './engine.mjs';
@@ -803,32 +810,28 @@ function cmdSchema(subCmd) {
803
810
 
804
811
  function showHelp() {
805
812
  console.log(`
806
- ${BOLD}claude-buddy-reroll${RESET} Reroll your Claude Code buddy companion
807
-
808
- ${BOLD}Usage:${RESET}
809
- buddy-reroll check Show your current buddy
810
- buddy-reroll gacha [count] Roll random buddies (default: 10)
811
- buddy-reroll reroll Interactive reroll with SALT patch
812
- buddy-reroll restore Restore original buddy
813
- buddy-reroll dex All species and rarities
814
- buddy-reroll schema [command] Show JSON schema for a command
815
-
816
- ${BOLD}Agent DX flags:${RESET}
817
- --json JSON output (logs to stderr)
818
- --pick N Auto-select Nth result (reroll/gacha)
819
- --dry-run Preview patch without applying (reroll)
820
- --fields f1,f2 Filter output fields
821
- --limit N Limit gacha count
822
-
823
- ${BOLD}Limits:${RESET}
824
- Daily gacha: ${BASE_LIMIT}x/day (resets at midnight)
825
- Event bonus: +${APOLOGY_EVENT.bonusRuns} extra gacha runs at ${APOLOGY_EVENT.pullsPerRun} pulls each
826
-
827
- ${BOLD}Install support:${RESET}
828
- native binary ~/.local/bin/claude(.exe) — binary patch
829
- npm install node_modules cli.js — text patch
830
-
831
- ${DIM}Backup created before any patch. 'restore' to undo.${RESET}
813
+ ${MAGENTA}${BOLD} 쪼아요~! 스피키의 버디 가챠예요!${RESET}
814
+ ${DIM} claude-buddy-reroll v${process.env.npm_package_version || '1.4'}${RESET}
815
+
816
+ ${BOLD} 명령어${RESET}
817
+ ${CYAN}bdy check${RESET} 내 버디 확인
818
+ ${CYAN}bdy gacha${RESET} [N] N연차 가챠! (기본 10)
819
+ ${CYAN}bdy reroll${RESET} 리롤 (버디 교체!)
820
+ ${CYAN}bdy restore${RESET} 원래 버디로 복원
821
+ ${CYAN}bdy dex${RESET} 도감 구경
822
+ ${CYAN}bdy schema${RESET} [cmd] JSON 스키마 보기
823
+
824
+ ${BOLD} 에이전트 플래그${RESET}
825
+ ${GREEN}--json${RESET} JSON 출력 (로그는 stderr)
826
+ ${GREEN}--pick N${RESET} N번째 자동 선택
827
+ ${GREEN}--dry-run${RESET} 패치 미리보기
828
+ ${GREEN}--fields a,b${RESET} 필드 필터링
829
+ ${GREEN}--limit N${RESET} 가챠 횟수 제한
830
+
831
+ ${BOLD} 제한${RESET}
832
+ 하루 ${BASE_LIMIT} (스타 유저 +1) | 이벤트 ${APOLOGY_EVENT.pullsPerRun}연차 x${APOLOGY_EVENT.bonusRuns}회 보너스
833
+
834
+ ${DIM} buddy 또는 bdy 둘 다 돼요! 쪼아요~${RESET}
832
835
  `);
833
836
  }
834
837