Panduan Modifikasi Claude Code Buddy: Cara Mendapatkan Hewan Peliharaan Legendaris Bersinar
Panduan Modifikasi Claude Code Buddy: Cara Mendapatkan Hewan Peliharaan Legendaris Bersinar
Pada 1 April 2026, Anthropic secara diam-diam meluncurkan fitur easter egg dalam versi Claude Code 2.1.89 — sistem hewan peliharaan /buddy. Setelah memasukkan /buddy di terminal, seekor hewan kecil bergaya ASCII akan "menetas" di samping kotak input Anda, menemani Anda menulis kode dan mengeluh tentang bug.
Setiap Buddy dihasilkan oleh ID akun melalui algoritma deterministik, yang berarti akun yang sama akan selalu mendapatkan hewan peliharaan yang sama. Namun, dengan memodifikasi userID dalam file konfigurasi, kita dapat "mengulang" untuk mendapatkan hewan peliharaan yang diinginkan. Artikel ini akan menjelaskan secara rinci prinsip algoritma dan skrip modifikasi lengkap.
I. Ikhtisar Sistem Buddy
18 Jenis Spesies
Sistem saat ini mencakup 18 spesies lucu:
- duck - Bebek (Debugging Bebek Karet yang klasik)
- goose - Angsa (Nakalnya mengganggu)
- blob - Jelly (Lembut dan tidak berbentuk)
- cat - Kucing (Dingin dan angkuh)
- dragon - Naga (Pelindung yang mengesankan)
- octopus - Gurita (Berpikir multithread)
- owl - Burung Hantu (Mentor yang bijaksana)
- penguin - Penguin (Hadir dengan pakaian resmi)
- turtle - Kura-kura (Kokoh dan dapat diandalkan)
- snail - Siput (Kerja lambat menghasilkan hasil yang baik)
- ghost - Hantu (Muncul dan menghilang)
- axolotl - Axolotl (Menggemaskan dan menyembuhkan)
- capybara - Capybara (Master yang santai)
- cactus - Kaktus (Tanaman yang hangat)
- robot - Robot (Rasional di atas segalanya)
- rabbit - Kelinci (Penuh energi)
- mushroom - Jamur (Mengamati dengan tenang)
- chonk - Chonk (Bulat dan menggemaskan)
5 Tingkat Kelangkaan
- Common (Umum) - 60% kemungkinan, tanpa dekorasi topi
- Uncommon (Jarang) - 25% kemungkinan, membuka kunci topi
- Rare (Langka) - 10% kemungkinan, lebih banyak dekorasi
- Epic (Epik) - 4% kemungkinan, dekorasi eksklusif
- Legendary (Legendaris) - 1% kemungkinan, dekorasi terbaik
II. Analisis Mendalam Prinsip Algoritma
Generasi Buddy menggunakan algoritma acak deterministik, dengan alur inti sebagai berikut:
1. Penggabungan String Seed
const SALT = "friend-2026-401"; // Easter egg April 1 const key = userId + SALT;
Nilai Salt friend-2026-401 di mana 401 mewakili 1 April — sebuah easter egg April Mop yang dirancang dengan cermat.
2. Hash 32-bit FNV-1a
Mengubah string seed menjadi integer 32-bit:
function hashString(s) { let h = 2166136261; // Basis offset FNV for (let i = 0; i < s.length; i++) { h ^= s.charCodeAt(i); h = Math.imul(h, 16777619); // FNV prime } return h >>> 0; }
3. PRNG Mulberry32
Menginisialisasi generator angka acak pseudo dengan nilai hash:function mulberry32(seed) { let a = seed >>> 0; return function() { a |= 0; a = (a + 0x6d2b79f5) | 0; let t = Math.imul(a ^ (a >>> 15), 1 | a); t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t; return ((t ^ (t >>> 14)) >>> 0) / 4294967296; }; }
Mulberry32 adalah PRNG ringan yang sering digunakan dalam pengembangan game, cocok untuk menghasilkan secara prosedural dan tabel jatuhnya loot.
4. Pengambilan Kelangkaan (Kunci!)
const RARITIES = ["common", "uncommon", "rare", "epic", "legendary"]; const RARITYWEIGHTS = { common: 60, uncommon: 25, rare: 10, epic: 4, legendary: 1 };
function rollRarity(rng) { const total = 60 + 25 + 10 + 4 + 1; // = 100 let roll = rng() * total; for (const rarity of RARITIES) { roll -= RARITYWEIGHTS[rarity]; if (roll < 0) return rarity; } return "common"; }
重要:RARITIES 数组的顺序必须是从低到高,这是加权随机选择的标准实现。
三、完整 Reroll 脚本
以下脚本可以搜索并生成闪光传说级 Buddy 的 userID:
// Claude Code Buddy Reroll 脚本 // 基于 Claude Code 源码逆向分析
// FNV-1a 32-bit hash function hashString(s) { let h = 2166136261; for (let i = 0; i < s.length; i++) { h ^= s.charCodeAt(i); h = Math.imul(h, 16777619); } return h >>> 0; }
// PRNG Mulberry32 function mulberry32(seed) { let a = seed >>> 0; return function() { a |= 0; a = (a + 0x6d2b79f5) | 0; let t = Math.imul(a ^ (a >>> 15), 1 | a); t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t; return ((t ^ (t >>> 14)) >>> 0) / 4294967296; }; }
const SPECIES = [ "duck", "goose", "blob", "cat", "dragon", "octopus", "owl", "penguin", "turtle", "snail", "ghost", "axolotl", "capybara", "cactus", "robot", "rabbit", "mushroom", "chonk" ];[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]]- Mengubah Konfigurasi: # Edit ~/.claude.json cat ~/.claude.json | jq '.userID = "userID baru Anda" | del(.companion)' > /tmp/claude-new.json && mv /tmp/claude-new.json ~/.claude.json
- Restart Claude Code,masukkan
/buddyuntuk melihat hewan peliharaan baru Anda!
Lima, Prinsip Desain Anti-Kecurangan
Desain Claude Code sangat cerdas, menggunakan arsitektur pemisahan antara Bones (Kerangka) dan Soul (Jiwa):
- Bones (Kerangka):spesies, kelangkaan, penampilan, atribut——setiap kali dihitung ulang dari userID, tidak pernah disimpan secara permanen
- Soul (Jiwa):nama, deskripsi karakter——disimpan secara permanen di konfigurasi lokal
roll(userID) saat membaca. Komentar ditulis dengan jelas:editing config.companion can't fake a rarity.
Namun, userID itu sendiri dapat diubah, inilah prinsip dari metode yang dibahas dalam artikel ini.
Enam, Kesimpulan
Claude Code Buddy adalah fitur easter egg yang dirancang dengan baik, menggabungkan:
- Randomisasi Deterministik:kombinasi klasik FNV-1a + Mulberry32
- Mekanisme Gacha:kelangkaan level 5 + 1% kilau, inti dari permainan Gacha
- Desain Anti-Kecurangan:pemisahan kerangka/jiwa, memastikan keadilan
- Easter Egg April Mop:nilai salt menyimpan cap waktu 1 April
Referensi:
- Kebocoran kode sumber Claude Code 2.1.89 (insiden peta sumber npm)
- Juejin: "Mendalami Mode Claude Code Buddy: Algoritma Randomisasi Deterministik di Balik Kaktus"- DEV.to: Saya Menghancurkan Kode Sumber Claude

