buddybar
Health Warn
- No license รขโฌโ Repository has no license file
- Description รขโฌโ Repository has a description
- Active repo รขโฌโ Last push 0 days ago
- Low visibility รขโฌโ Only 5 GitHub stars
Code Fail
- fs.rmSync รขโฌโ Destructive file system operation in plugin/__tests__/core.test.js
- fs module รขโฌโ File system access in plugin/__tests__/core.test.js
- os.homedir รขโฌโ User home directory access in plugin/src/bin/buddy-core.js
- process.env รขโฌโ Environment variable access in plugin/src/bin/buddy-core.js
- fs module รขโฌโ File system access in plugin/src/bin/buddy-core.js
- child_process รขโฌโ Shell command execution capability in plugin/src/bin/buddy-statusline.js
- execSync รขโฌโ Synchronous shell command execution in plugin/src/bin/buddy-statusline.js
- process.env รขโฌโ Environment variable access in plugin/src/bin/buddy-statusline.js
Permissions Pass
- Permissions รขโฌโ No dangerous permissions requested
This tool is a fun, virtual pet (Tamagotchi-style) plugin for the Claude Code CLI. It generates a unique companion based on your username that reacts to your coding activity and lives in your terminal via an ASCII statusline or tmux sidebar.
Security Assessment
Risk rating: High. The core application file heavily relies on Node.js's `child_process` module, utilizing synchronous shell command execution and process spawning. The plugin also accesses the user's home directory via `os.homedir`, reads environment variables, and performs destructive file system operations (`fs.rmSync`). While this appears to be a benign entertainment plugin, these are dangerous capabilities. A tool that reacts to your session activity and hooks should not require the ability to silently execute arbitrary shell commands or delete files.
Quality Assessment
The project is very new and lacks community validation, evidenced by a low star count and no license file. While the repository was updated recently and has a clear description, the absence of a license means you have no explicit legal permission to use, modify, or distribute the code. Given its early stage, you should expect potential bugs or breaking changes.
Verdict
Not recommended due to highly sensitive system permissions (shell execution, destructive file operations) inside an unvetted novelty plugin.
๐พ A virtual pet statusline for Claude Code โ watches your rhythm, coaches your pace, grows with you.
BuddyBar ๐พ
A virtual pet statusline for Claude Code โ watches your rhythm, coaches your pace, grows with you.
Your buddy tracks your coding patterns via Claude Code hooks and surfaces insights on the statusline. It stays out of your conversation โ no context pollution, no injected reactions. All feedback lives on the statusline or on-demand detail card.
Statusline (always visible in Claude Code):
my-project main ctx 23% | ๐ ็ซ็ซ ยท focused ยท focus | Lv.7 30% | tests idle | โป core.js
On-demand detail card (/buddy):
โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ
โ BuddyBar โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ ๐ ็ซ็ซ Lv.7 rare focus โ
โ XP โโโโโโโโโโโโโโโโ 25% ๐ค focused streak 1d โ
โ Energy โโโโโโโโโโโโ 80/100 Hunger โโโโโโโโโโ 40/100 โ
โ โ
โ /^\ "๐ ็ซ็ซ ่ท็ไฝ ็ๆนๅจ็งปๅจ่ง็บฟใ" โ
โ < โข_โข >โ โ
โ ( ~ ) โ
โ `-zzzz-ยด โ
โ โ
โ Debug 33 Patience 28 Chaos 46 Wisdom 60 Snark 38 โ
โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
Features
- ๐ฅ Deterministic Generation โ SHA-256 based species, rarity, and stats. Same username = same pet.
- ๐ 12 Species across 5 rarity tiers (Common โ Legendary) with 1% shiny chance
- ๐ 5-Dimension Stats โ Debug, Patience, Chaos, Wisdom, Snark
- ๐ XP & Leveling โ 20 levels with level-gated feature unlocks
- ๐ Silent by Design โ Hooks produce zero stdout. No additionalContext, no conversation injection.
- ๐ Rhythm Coach โ Error avalanche alerts, file grinding detection, session fatigue warnings
- ๐ Native Statusline โ Always-visible workspace context, mood, mode, level, and coach signals
- ๐งพ Terminal Detail Card โ
/buddyshows pet status, art, stats, and recent activity - ๐พ Persistent State โ Global
~/.buddybar/storage, survives sessions
Installation
One-line install (recommended)
In Claude Code, run:
/plugin marketplace add KKenny0/buddybar
/plugin install buddybar@buddybar
That's it. Restart Claude Code and the plugin is active globally.
Update
When a new version is released, use CLI commands (not the marketplace UI โ the UI's "update" button has a known bug):
/plugin marketplace update buddybar
/plugin update buddybar@buddybar
Then restart Claude Code to apply.
Manual setup
git clone https://github.com/KKenny0/buddybar.git
claude --plugin-dir ./buddybar/plugin
npm global
git clone https://github.com/KKenny0/buddybar.git
cd buddybar/plugin
npm link
Usage
In Claude Code
After installation, commands are prefixed with the plugin name:
| Command | Description |
|---|---|
/buddybar:buddy hatch |
Hatch your first pet (based on your username) |
/buddybar:buddy |
Show pet detail card (level, XP, mood, stats, recent activity) |
/buddybar:buddy rename <name> |
Give your pet a name |
/buddybar:buddy statusline on |
Enable the Buddy statusline |
/buddybar:buddy statusline off |
Remove Buddy from the statusline |
/buddybar:buddy mode <quiet|focus|lively> |
Set Buddy presence mode |
/buddybar:buddy evolve |
Trigger evolution (Lv.15+, auto on level up) |
/buddybar:buddy prestige |
Reset with permanent bonuses (Lv.20+) |
Hooks (automatic, silent)
No setup needed. Once installed, hooks fire automatically:
- Session start โ Pet wakes up, state updated
- After each tool use โ Pet state updated, coach signals computed
- Session end โ Pet goes to sleep
All hooks produce zero stdout โ no text is injected into your conversation with Claude.
Level-Gated Unlocks
Your buddy grows with you. Higher levels unlock more statusline features:
| Level | Unlocks |
|---|---|
| 1-2 | Basic status (name, mood, XP progress) |
| 3 | Test status indicator (green/red) |
| 5 | File grinding detection |
| 7 | Session duration / fatigue warning |
| 10 | Session stats in statusline |
| 13 | Error pattern recognition |
| 15 | Evolution โ species transforms based on highest stat |
| 20 | Prestige โ reset to Lv.1 with permanent bonuses |
Evolution System (Lv.15)
When your buddy reaches Lv.15, it evolves based on its highest stat. Each stat maps to an evolution path:
| Highest Stat | Path | Label | Art Effect |
|---|---|---|---|
| Debug | Valor | ๅ | โ Sword indicators |
| Patience | Zen | ็ฆ | โ Serene aura |
| Chaos | Storm | ้ท | โก Electric sparks |
| Wisdom | Sage | ๆบ | โง Wisdom glow |
| Snark | Rogue | ๅฝฑ | โ Shadow wisps |
Evolution changes your species name (e.g., Dragon โ ๆบ้พ), applies visual art modifiers, and grants +10 to all stats. Evolution is automatic on reaching Lv.15 โ triggered via addXp().
Prestige System (Lv.20)
At Lv.20 (max level), you can prestige:
/buddybar:buddy prestige
Prestige resets your level to 1 while keeping:
- Your evolved form (if you evolved at Lv.15)
- Your species and rarity
- Your stats (plus +5 permanent bonus per prestige cycle)
Your level display changes to Lv.X+N where N is your prestige count. The statusline shows โฆ for each prestige cycle. There is no cap on prestige cycles โ you can keep going.
Rhythm Coach Signals
These appear on the statusline based on your coding patterns:
| Signal | Meaning |
|---|---|
๐ด ร3 |
3+ consecutive errors โ consider stepping back |
โป filename |
Same file edited 5+ times โ you're deep in a grind |
โฑ 2h+ |
Session running long โ take a break |
๐ข tests / ๐ด tests |
Last test run status |
Presence Surfaces
Statusline (primary):
/buddybar:buddy statusline on
Compact always-visible line: workspace context, mood, level, XP%, coach signals.
On-demand detail card:
/buddybar:buddy
Species
| Species | Min Rarity | Emoji |
|---|---|---|
| Cat | Common | ๐ฑ |
| Duck | Common | ๐ฆ |
| Ghost | Common | ๐ป |
| Robot | Common | ๐ค |
| Slime | Common | ๐ข |
| Dragon | Uncommon | ๐ |
| Owl | Uncommon | ๐ฆ |
| Penguin | Uncommon | ๐ง |
| Fox | Rare | ๐ฆ |
| Axolotl | Rare | ๐ฆ |
| Phoenix | Epic | ๐ฅ |
| Capybara | Legendary | ๐ซ |
Rarity System
| Rarity | Chance | Stat Floor | Hat | Special |
|---|---|---|---|---|
| Common | 60% | 5 | โ | โ |
| Uncommon | 25% | 15 | โ | Unique color |
| Rare | 10% | 25 | โ | Personality trait |
| Epic | 4% | 35 | โ | Special ability |
| Legendary | 1% | 50 | โ | Unique evolution |
Plus a 1% chance of being Shiny โจ
XP Sources
| Source | Amount | Cap |
|---|---|---|
| Session start (daily) | +10 | 1x/day |
| Git commit | +5 | uncapped |
| Every 10 tool uses | +1 | uncapped |
| Streak bonus | +5 ร streak | resets on miss |
| Error recovery | +3 | uncapped |
Data
All data stored in ~/.buddybar/:
| File | Purpose |
|---|---|
pet.json |
Current pet state |
events.log |
Event stream (append-only) |
config.json |
User preferences |
history.json |
Level milestones & streak history |
session.json |
Recent events, presence mode, error/recovery state |
Architecture
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Claude Code โ
โ โ
โ Hooks โโโถ pet/session state files โ
โ (silent) + events.log โ
โ โ
โ /buddy โโโถ buddy-core โโโถ card โ
โ statusLine โโโโโโโโโโโโโถ one line โ
โ โ
โ โ no stdout from hooks โ
โ โ no additionalContext injection โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Troubleshooting
Plugin won't update?
The marketplace UI's "update" button may not work due to a known Claude Code bug. Use CLI commands instead:
/plugin marketplace update buddybar
/plugin update buddybar@buddybar
If that still fails, do a clean reinstall:
rm -rf ~/.claude/plugins/cache/buddybar
/plugin marketplace remove buddybar
/plugin marketplace add KKenny0/buddybar
/plugin install buddybar@buddybar
/buddybar:buddy says "Unknown skill"?
Plugin not installed. Run the installation commands above.
Buddy seems quiet?
That's intentional. All feedback lives on the statusline and on-demand card. Hooks don't inject text into conversation. Run /buddybar:buddy statusline on to enable the statusline.
License
MIT
Reviews (0)
Sign in to leave a review.
Leave a reviewNo results found