Releases: ramarivera/coding-buddy
Release list
v0.5.2 — Server-rendered art frames
What's New
Refactor
- Pre-rendered art frames — the statusline bash script no longer maintains ~170 lines of inline species art. Instead, the MCP server pre-bakes idle/blink frames (with hat overlay) into
status.json, and bash becomes a lightweight cycler. This is the foundation for upcoming emotion animations. (#91, @sanhuaaan)
New files
scripts/snapshot-statusline.sh— visual review tool for frame outputdocs/emotion-animations-plan.md— implementation plan for emotion-based buddy animations (steps 2–6 pending)
Testing
- 220 tests passing (up from 213)
- New
getStatusFrames+STATUS_FRAME_SEQUENCEtests covering all 19 species
Contributors
Thanks to @sanhuaaan for this architectural improvement — four PRs merged in this release cycle (#88, #90, #81, #91), all building toward a cleaner, more testable statusline.
Full Changelog
v0.5.1 — Combined status line integration
What's New
Features
- Combined status line mode —
/buddy statusline combinedoverlays 5h/7d rate-limit usage bars (colored progress bars with reset timers) alongside your buddy art. Requires python3. Switch back with/buddy statusline basic. (#98)
Docs
- Added
/buddy width,/buddy margin,/buddy statusline combined|basicto the README Commands Reference (#99)
Full Changelog
v0.5.0 — Wyvern, rainbow shinies & 92 achievements
What's New
Features
- Wyvern species — new 6-line companion with fire-breathing animation, horn-hat integration, and 3 idle frames. (#87, @jpmalone0)
- Rainbow gradient for shiny buddies — shiny companions cycle through a configurable rainbow gradient. Custom colors via
rainbowColorsin config. (#92, @jpmalone0) - Configurable bubble width & margin —
/buddy width 10-60and/buddy margin 0-20let you tune the statusline layout. (#92) - Rate-limit stats overlay — new
combined-status.shshows 5h/7d usage bars alongside your buddy. (#92) - Achievement expansion (16 → 92 badges) — compound achievements, secret badges, progress tracking for all 92 entries. Viewport-windowed TUI. (#68, @ndcorder)
Docs
- README: species count updated (18 → 19), roadmap item checked
- CONTRIBUTING.md: new PR checklist item (update Commands Reference for new commands), note about golden snapshot tests for new species
Full Changelog
v0.4.0 — Emoji-aware rendering + pick improvements
What's New
Bug Fixes
- Emoji display width — bubble text and companion card now correctly account for emoji terminal width (2-col emojis, VS16 upgrades, Emoji_Presentation property). Bash + TS renderers share a single source of truth via
scripts/gen-emoji-widths.ts. (#88) - Art alignment — capybara and chonk statusline art rows are now properly centered under the eyes row. (#90)
- Bubble border cutoff — speech bubbles no longer lose their bottom border when text is longer than the buddy art. (#81)
- Windows compatibility — jq path fallback for Chocolatey, PowerShell terminal width detection, Braille Blank double-width workaround. (#80)
- MCP diagnostics — the
/buddyskill now surfaces a helpful diagnostic (bun check, launcher path) when the MCP server fails to start, instead of silently failing. (#77)
Features
- Pick improvements — expanded search criteria (eyes, hats, min stat thresholds, min average), async search with cancel-on-any-key, and dynamically generated personality text for companions. (#85)
Testing
- 137 tests passing, full install→uninstall→re-install cycle verified.
Full Changelog
v0.3.0 - Multi-buddy menagerie
v0.3.0 — Multi-buddy menagerie
Your buddy collection grows. Save, switch, and manage multiple companions without losing any.
New: Menagerie system
Contributed by @doctor-ew — the first feature PR for claude-buddy.
- Named slots — each companion lives in a named slot in
~/.claude-buddy/menagerie.json. Saving always appends, never overwrites. - Interactive TUI picker —
bun run pickopens a two-pane terminal UI: browse saved buddies on the left, preview on the right. Search by species, rarity, shiny, and stats. - New
/buddycommands:/buddy summon [slot]— switch to a saved buddy (omit for random)/buddy save [slot]— save current buddy to a named slot/buddy list— show all saved buddies/buddy dismiss <slot>— remove a saved buddy (can't dismiss the active one)/buddy pick— launch interactive TUI picker
- Atomic storage — all manifest writes use tmp + rename for corruption safety
- Auto-migration — existing
companion.jsonis automatically migrated to the menagerie on first load
New: Species-aware reactions
~150 unique reactions across 10 species (dragon, owl, cat, duck, robot, capybara, ghost, axolotl, blob + fallback). Each species reacts differently to errors, test failures, success, and name mentions.
New: Success detection
The PostToolUse hook now detects positive events too — "tests passed", "Build succeeded", "Done". Your buddy celebrates, not just commiserates.
New: Name-react hook
Say your buddy's name in a message and they react instantly in the status line — before Claude even starts responding. Species-specific reactions ("swivels head 180°" for owls, "ear flicks" for cats).
Improvements
- Dynamic card width — companion card now accepts a width parameter, fits any pane size
- Display-width-aware padding — emoji (✨ = 2 cols) and ANSI codes handled correctly. All card lines render at exactly W columns.
- Help pages updated — all menagerie commands in CLI help, MCP help, and
/buddy help - Keyboard help in footer — pick TUI help text moved to footer bar
Upgrade
cd claude-buddy
git pull
bun install
bun run backup
bun run install-buddyRestart Claude Code after installing.
Contributors
- @doctor-ew — menagerie system, TUI picker, species-aware reactions, name detection (#4)
- @gzenz — tmux popup overlay, session isolation (#6)
- @birkdev — PostToolUse hook field fix (#13)
Thank you all for making everyone's buddy better.
v0.2.0 - tmux popup mode + community contributions
v0.2.0 — tmux popup mode + community contributions
Two community PRs shipped in this release. The buddy is getting better thanks to contributors.
New: tmux popup overlay mode
When running inside tmux (>= 3.2), your buddy now appears as a floating popup in the bottom-right corner instead of the status line. Includes:
- Animated ASCII art with speech bubbles
- ESC passthrough (closes popup momentarily, forwards ESC to Claude Code, reopens)
- Dynamic resizing when reactions appear/disappear
- F12 scroll mode (hides popup, activates tmux copy-mode)
- Configurable appearance via
/buddy style,/buddy position,/buddy rarity - Session isolation — multiple Claude Code sessions in parallel, each with their own buddy
Non-tmux users see zero changes — the installer auto-detects your environment and chooses the right mode.
Note: Switching between tmux and non-tmux mode requires re-running
bun run install-buddy.
Fixed: PostToolUse hook was non-functional since v0.1.0
The hook that detects errors and test failures in Bash output was reading the wrong field name (.tool_result instead of .tool_response). It silently exited on every invocation. Fixed by @birkdev — your buddy now reacts to errors immediately, not just at end-of-response.
Improvements
- macOS compatibility —
grep -Preplaced withsedin hooks (grep -P doesn't exist on macOS) - Safe JSON output — hooks use
jq -ninstead of heredoc strings (prevents broken JSON from special characters in reactions) - Reaction TTL — speech bubble auto-expires after 20 seconds instead of staying forever
- Configurable comment cooldown —
/buddy frequency [seconds]to control how often the buddy comments - Session isolation — parallel Claude Code sessions no longer overwrite each other's reactions
Upgrade
cd claude-buddy
git pull
bun install
# Optional: backup before re-installing
bun run backup
bun run install-buddyRestart Claude Code after installing.
Contributors
- @gzenz — tmux popup overlay, session isolation, configurable appearance (#6)
- @birkdev — PostToolUse hook bugfix (#13)
Thank you both for making everyone's buddy better.
v0.1.0 - Bring back your buddy
Bring back your Claude Code buddy — permanently
Anthropic removed /buddy in Claude Code v2.1.97. This is the open-source replacement that survives any update.
Features
- All 18 species with animated ASCII art (3 frames + blink)
- Rarity colors matching Claude Code's dark theme exactly
- Speech bubbles with contextual buddy comments after every response
/buddycommand (show, pet, stats, off, on, rename, personality)- Brute-force buddy hunt — find your dream species/rarity/stats
- One-command install —
bun run install-buddy - Diagnostic tools —
bun run doctor,bun run test-statusline,bun run backup - Independent of Claude Code's binary — works with any version, past or future
Status
This is an MVP (v0.1.0). Fully functional on Linux. May have terminal-specific quirks on macOS or other platforms — please run bun run doctor and open an issue if you hit problems.
Install
git clone https://github.com/1270011/claude-buddy
cd claude-buddy
bun install
# Optional but recommended: snapshot your current Claude Code config
bun run backup
bun run install-buddyRestart Claude Code, then type /buddy.
Recovery
Anything goes wrong? Two safety nets:
bun run backup restore # restore latest snapshot
bun run cli/uninstall.ts # full clean removal