Your coding companion that grows with you.
A desktop virtual pet that lives alongside your Claude Code sessions β feed it, play with it, and watch it grow.
| Hungry | Bored | Happy | Playful | Sleepy |
|---|---|---|---|---|
| π "Feed me~" | π "Play with me!" | π "I love coding with you!" | πΎ "bounces around" | π΄ "zzz..." |
Claude Pet is a tiny desktop widget that lives alongside your Claude Code sessions. It's a virtual pet that reacts to your coding activity β feed it, play with it, pet it, and watch it grow from a Baby to an Adult.
- Hungry? Feed your pet to keep it happy and healthy.
- Bored? Play together to boost its mood.
- Happy? It bounces around and cheers you on.
- Sleepy? Let it rest β even pets need downtime.
"The best coding companion doesn't review your PRs β it just sits on your desktop and believes in you."
- Virtual pet system β Feed, play, and pet your companion with Claude Code slash commands
- Growth stages β Watch your pet evolve from Baby β Teen β Adult as it gains EXP
- Mood expressions β 6 reactive moods (happy, playful, sleepy, worried, bored, confused) with pixel art animations
- Real-time usage tracking β Monitors your Claude Code API usage via Anthropic OAuth, with smart JSONL session fallback
- Stat system β Track hunger, happiness, and energy levels that change over time
- Leveling & EXP β Earn experience points through interactions and usage milestones
- Custom character skins β Upload your own pet images (single, per-mood, or sprite sheet modes)
- Always on Top β Keep your pet visible above other windows (toggle in Settings or tray)
- System tray β Lives quietly in your taskbar, waiting for attention
- Settings panel β Position, auto-start, language selection, and skin customization
- 4 languages β νκ΅μ΄, English, ζ₯ζ¬θͺ, δΈζ
- Auto-start β Boots with your OS so your pet is always ready
- Auto-update β Keeps itself up to date via GitHub Releases
- Claude Code must be installed and logged in (OAuth)
- That's it. Your pet isn't picky.
npm (all platforms, requires Node.js):
npm install -g claude-pet
claude-petmacOS / Linux:
curl -fsSL https://raw.githubusercontent.com/scm1400/claude-pet/main/scripts/install.sh | bashWindows (PowerShell):
irm https://raw.githubusercontent.com/scm1400/claude-pet/main/scripts/install.ps1 | iexOr grab the latest installer from Releases:
| Platform | File | Arch |
|---|---|---|
| Windows | Claude Pet Setup x.x.x.exe |
x64 |
| macOS | Claude Pet-x.x.x.dmg |
Universal (Intel + Apple Silicon) |
| Linux | Claude Pet-x.x.x.AppImage |
x64 |
| Linux | claude-pet_x.x.x_amd64.deb |
x64 |
β οΈ Not code-signed: Your OS may show a security warning on first install.
- Windows: SmartScreen β More info β Run anyway
- macOS: System Settings β Privacy & Security β Open Anyway
- Linux (AppImage):
chmod +x Claude\ Pet-*.AppImage && ./Claude\ Pet-*.AppImage- Linux (deb):
sudo dpkg -i claude-pet_*.deb
Claude Pet includes slash commands that work inside Claude Code:
| Command | Effect |
|---|---|
/feed |
Feed your pet (hunger -30%) |
/play |
Play with your pet (happiness +25%) |
/pet |
Pet your pet (hunger -10%, happiness +10%, energy +10%) |
/name <name> |
Give your pet a name |
Each command shows a live status line with level, growth stage, and stat changes.
- Make sure Claude Code is installed and logged in (
claudein terminal) - Claude Pet will automatically detect your API usage via OAuth
- If rate-limited (429), it falls back to local JSONL session parsing β no extra config needed
- Your pet starts reacting to your coding sessions. Just let it do its thing.
- Auto-start: Enabled by default. Claude Pet starts with your OS. Toggle in Settings.
- Auto-update: Updates are downloaded automatically from GitHub Releases. When a new version is ready, your pet will ask you to restart.
βββββββββββββββββββ ββββββββββββββββ βββββββββββββββ
β Anthropic OAuth βββββ>β Usage Tracker ββββ>β Mood Engine β
β Usage API β β (5min poll) β β β
βββββββββββββββββββ ββββββββ¬ββββββββ ββββββββ¬βββββββ
β β
ββββββββ΄ββββββββ βββββββββ
β JSONL Sessionβ β
β Parser (429) β v
ββββββββββββββββ ββββββββββββββββ
β Pet Character β
ββββββββββββββββ ββββββββββββββββ β + Animations β
β Speech β β Stat Bars β ββββββββββββββββ
β Bubble β β (HP/EXP) β
ββββββββββββββββ ββββββββββββββββ
- Polls the Anthropic usage API every 5 minutes
- Falls back to JSONL session parsing when rate limited (429) β scans
~/.claude/projects/session files to estimate usage - Computes mood based on pet stats and activity
- Renders an animated pet character with mood-appropriate expression
- Reacts to your slash commands (
/feed,/play,/pet)
| Mood | Expression | When |
|---|---|---|
| π Happy | Bouncing | Well-fed, high happiness |
| πΎ Playful | Jumping | After /play, high energy |
| π Worried | Swaying | Low happiness or hunger rising |
| π Bored | Wobbling | No interaction for a while |
| π΄ Sleepy | Tilting | Low energy |
| π΅ Confused | Wobbling | API error or rate limited |
Q: Can I name my pet?
A: Yes! Use /name <name> in Claude Code or set it in the app settings.
Q: How does my pet grow?
A: Your pet earns EXP through interactions (/feed, /play, /pet) and coding sessions. Baby β Teen (100 EXP) β Adult (500 EXP).
Q: My pet looks confused? A: This usually means the API is rate-limited or there's a connection issue. It'll resolve automatically.
Q: Can I customize how my pet looks? A: Yes! Go to Settings β Skins to upload custom images. Supports single image, per-mood, and sprite sheet modes.
Q: Does it work offline? A: The pet widget runs locally. Usage tracking needs an internet connection, but your pet will still hang out with you offline.
Q: Why 4 languages? A: Because pets are loved worldwide. Switch between νκ΅μ΄, English, ζ₯ζ¬θͺ, and δΈζ in settings.
PRs welcome! Whether it's new pet expressions, animations, or language support β your pet appreciates the help.
- Fork this repo
- Create your feature branch (
git checkout -b feature/new-expression) - Commit your changes
- Push to the branch
- Open a Pull Request
This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.
- Anthropic API: The app calls the Anthropic OAuth Usage API to retrieve your token usage statistics. This is initiated by you when you log in with your Claude Code credentials.
- GitHub (Auto-Update): The app checks GitHub Releases for new versions. No personal data is transmitted.
- Local Storage: Your API credentials and settings are stored locally on your machine using
electron-store. They are never sent to any third-party server.
Free code signing provided by SignPath.io, certificate by SignPath Foundation.
Team roles:
ISC β Free as in freedom.
Built with β€οΈ and curiosity
If your pet made coding more fun, please star the repo. It'll make your pet happy.