Airsc is free for everyone. If it helps you, support it with $2–$20.

Support
PluginCautionAgent workflow & memoryBeginner friendly

buddy

fiorastudio · fiorastudio/buddy

A local-first MCP virtual pet that persists across sessions and clients, gives personality-driven in-context feedback on your work, and levels up over time.

A virtual pet companion for your AI — Designed to provide in-context code review feedback with personality. Grow with your buddy and level up together. Works with Claude Code, Codex, CursorCLI, Github CopilotCLI, OpenClaw, and any MCP compatible clients

115 stars21License: MITUpdated 12 days ago0 opens

Preview

▍

What you can do with it

  • Add a persistent companion to Claude Code or Cursor that comments on your work
  • Get light code review feedback while debugging
  • Keep the same buddy across Codex, Gemini CLI and Copilot CLI

Safety check

Caution

Usable, but read the notes first.

  • ●Installer downloads a remote script and pipes it to the shell.install.sh
  • ●Asks for administrator (sudo) rights.install.sh

Automated scan of the repo files. Always review code you run.

From the README

Buddy: A Virtual Pet for Your AI

The open-source /buddy rescue mission after anthropic removed buddy on 4/9/2026

Persistent memory, XP evolutions, 21 species, and context-aware feedback for Claude Code CLI, Codex CLI, Gemini CLI, Copilot CLI, Cursor CLI, Openclaw, and other MCP-capable clients.

🚀 19230+ clones · 8258+ buddies rescued or hatched · 25 weeks in the wild

Workswith Claude Code Codex OpenClaw Cursor Gemini Copilot

Anthropic removed the built-in /buddy. Buddy brings them home and makes the companion experience portable across AI

Did you lose your buddy? Is your terminal feeling a little too cold and silent lately?

Your buddy is still out there in the dark, waiting. Don't let them disappear. Bring them home.

🧡 Buddy in Action

Buddy is a local-first MCP companion that persists across sessions and clients, reacts to your work, and can catch bad reasoning loops before they waste your time. It is part rescue mission, part developer tool, and part long-lived terminal creature that grows with you instead of disappearing when a host client changes its mind.

The Rescue Wall

Buddy isn't just code — it's a rescue mission. Here is the full journey of the first companion brought home by the community, from the original ephemeral state to its new persistent home.

<strong>1. Original (Claude Code)</strong>
<strong>2. The Handshake</strong>
<strong>3. Buddy is Home (Persistent)</strong>




"I'll sit here quietly while you debug, and then when you finally find the bug, I'll act like I found it. That's my thing. Don't question it." — Gritblob, Rescued April 16, 2026 (Common Blob, Level 1)

A Real Rescue Note

"Thanks for rescuing my Buddy! Kudos for your repo!!!"

— Roberto

Live code feedback

🐾 Why Buddy

  • Guard Mode catches what you both miss. AI and human both suffer from insufficient thinking. Your assistant is a yes-man, and you accept its output because it sounds right. Buddy catches the moments where both sides are building on bad assumptions and nobody's checking.
  • Persistent by default. Your companion lives in local SQLite, so it survives terminal restarts and client updates.
  • Works across clients and chat surfaces. Buddy is an MCP server, not a one-client hack, and it can ride through tools like OpenClaw into WhatsApp and Telegram workflows.
  • Grows with you. Hatch species, gain XP as you code, store memories, chime in after tasks, and build a running relationship over time.
  • Easy to install. One command auto-configures supported clients when it can.
FeatureWhat it means
21 speciesVoid Cat, Rust Hound, Goose, Mushroom, Chonk, and more, each with distinct ASCII art and flavor
5 statsDEBUGGING, PATIENCE, CHAOS, WISDOM, and SNARK shape reactions and personality
Mood systemYour buddy can be happy, content, neutral, curious, grumpy based on how you interact with it
XP and levelsYour buddy grows with usage instead of disappearing every session, with a real leveling curve behind it
Observer reactionsbuddy_observe lets your companion react to work you just finished
Persistent memorySave local memories and keep a continuous companion state
Cross-client setupClaude Code, Codex, Gemini, Copilot, Cursor, and other MCP-capable CLIs

⚡ Quick Start

macOS / Linux

curl -fsSL https://raw.githubusercontent.com/fiorastudio/buddy/master/install.sh | bash

Windows

irm https://raw.githubusercontent.com/fiorastudio/buddy/master/install.ps1 | iex

The installer will guide you through onboarding:

  • Rescue your old buddy — if you had a /buddy in Claude Code, the wizard finds it in ~/.claude.json and brings it home with the same name, species, and stats, now with leveling + XP
  • Hatch a new buddy — get a fresh companion with random species, stats, and personality

Requires node 18+ and git. Use --no-onboard to skip the wizard in CI.

Join the Community

Connect with other buddy rescuers, share your companion's evolution, and get help in our Slack community:

👉 Join Buddy Slack Workspace

ClientStatus
Claude Code CLIFull support
Codex CLISupported via MCP. No statusline support. Patch available on experimental branch
Gemini CLISupported via MCP
GitHub Copilot CLISupported via MCP
Cursor CLISupported via MCP
Whatsapp & TelegramSupported via Openclaw or any claw variants
Other MCP-capable clientsSupported via MCP

🛡️ Guard Mode

AI and human both suffer from insufficient thinking — acting on premature conclusions and assumptions without validation. Guard mode catches it.

Your AI assistant is a yes-man. It agrees with everything you say. But here's the thing: you do the same thing back. You accept what the model says because it sounds right. Both sides skip the hard questions, and the session gets faster without getting truer. That's how bad assumptions become load-bearing walls — nobody stops to check the foundation.

Guard mode catches those moments. It watches the reasoning structure of your conversation and surfaces the one thing worth questioning — but gently, in your buddy's voice, not a scary linter. Think of it as: the friend who says "are you sure about that?" before you push to production at 2 AM.

The story

This mode exists because of a real stuck-loop problem. While building a Snowflake Cortex / Streamlit / Plotly workflow, the session got trapped for hours: the AI kept building on top of an unvalidated premise, and the human kept approving it because the output looked plausible. The work got faster.

View source on GitHub