Your terminal pet that feeds on git commits. Keep coding or it starves.
Commitachi is a virtual pet that lives in your terminal and thrives on your git activity. Every commit you make feeds it, levels it up, and earns you badges. Neglect it, and it gets hungry, sad, and eventually... well, let's not go there.
It also roasts your commit messages. And it's not gentle about it.
$ commitachi
ββ Commitachi ββ
β±|γ
(ΛΛ γ7
|γΛγ΅
γγΛ,)γ
Commitachi (Lv.4 Code Monkey)
Health ββββββββββββββββββββ 100%
Hunger ββββββββββββββββββββ 30%
Happiness ββββββββββββββββββββ 90%
Commits: 47 Streak: 5 days XP: 680
Last roast: "Your git blame looks like a crime scene report."
- Terminal pet with ASCII art that changes based on mood (happy, hungry, angry, sleeping, dead)
- Git commit tracking β feed your pet by committing code
- AI-powered roasts via Gemini API (works offline too with built-in snarky responses)
- Leveling system β evolve from Egg β Hatchling β Junior Dev β ... β 10x Engineer β Linus Torvalds
- Achievement badges β Night Owl, Commit Machine, Hot Streak, and more
- Web dashboard β holographic 3D pet card, stat bars, badge rack, roast history
# clone and install
git clone https://github.com/senotron/commitachi.git
cd commitachi
npm install
# optional: link globally so you can run `commitachi` from anywhere
npm link# show your pet status
commitachi
# feed your pet (run this inside any git repo)
commitachi feed
# detailed status report
commitachi status
# open the web dashboard in your browser
commitachi web
# save your Gemini API key for AI-powered roasts
commitachi config key YOUR_GEMINI_API_KEYIf you don't have a Gemini API key, don't worry β Commitachi ships with plenty of built-in roasts.
Run commitachi web to open a local dashboard at http://localhost:3727 with:
- Interactive 3D holographic pet card (tracks your mouse movement)
- Real-time health, hunger, and happiness meters
- XP progress toward next evolution
- Badge collection grid
- Full roast history stream
- Gemini API key configuration
| Level | Title | XP Required |
|---|---|---|
| 1 | Egg | 0 |
| 2 | Hatchling | 50 |
| 3 | Junior Dev | 150 |
| 4 | Code Monkey | 400 |
| 5 | Mid-Level | 800 |
| 6 | Senior Dev | 1,500 |
| 7 | Architect | 3,000 |
| 8 | 10x Engineer | 6,000 |
| 9 | Mass Maniac | 10,000 |
| 10 | Linus Torvalds | 20,000 |
| Badge | How to earn |
|---|---|
| πΌ First Bite | Feed your pet for the first time |
| βοΈ Commit Warrior | 10 commits fed |
| π€ Commit Machine | 50 commits fed |
| π Centurion | 100 commits fed |
| π¦ Night Owl | Commit after midnight |
| π¦ Early Bird | Commit before 7 AM |
| π₯ Hot Streak | 3-day commit streak |
| π₯ On Fire | 7-day commit streak |
Commitachi stores your pet's state in ~/.commitachi/state.json. When you run commitachi feed inside a git repository, it:
- Reads your latest commit (message, hash, timestamp)
- Awards XP and reduces hunger
- Checks for new badges based on the commit time and streak
- Generates a roast about your commit message (via Gemini API or offline)
- Saves everything
Your pet's hunger increases over time (~4 points/hour). If hunger hits 80%+, health starts dropping. Keep feeding it.
- CLI: Node.js, picocolors (terminal colors), dotenv
- AI: Google Gemini API (optional)
- Dashboard: React, Vite, vanilla CSS, canvas-confetti, lucide-react
- Server: Express (serves dashboard + API)
MIT