Skip to content

v0.3.0 - Multi-buddy menagerie

Choose a tag to compare

@1270011 1270011 released this 11 Apr 03:50

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 pickerbun run pick opens a two-pane terminal UI: browse saved buddies on the left, preview on the right. Search by species, rarity, shiny, and stats.
  • New /buddy commands:
    • /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.json is 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-buddy

Restart 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.