The problem with invisible AI
I code with Claude every day. It's genuinely helpful. But the interaction is... clinical. Text in, text out. No personality. No sense that something is there with me.
I kept thinking: what if your AI assistant had a presence? Not a chatbot avatar. Something that reacts to what you're doing. Gets happy when tests pass. Gets tired when you've been coding for 6 hours straight. Has idle thoughts while you're reading docs.
So I built it.
Meet Oh My Kira
Oh My Kira is a terminal renderer that displays an animated companion next to your code. It hooks into Claude code's state file and reacts in real time.
Your buddy has:
- Animated sprites — different animations for idle, working, happy, tired, error states
- Live stat bars — hunger, happiness, energy, hygiene (yes, really)
- XP and evolution — your buddy levels up as you code
- Speech bubbles — random thoughts, reactions to your session
- Streak tracking — consecutive coding days
It's a Tamagotchi that lives in your terminal and watches you code.
How it works
The renderer watches a JSON state file that gets updated by the Claude Buddy plugin during coding sessions. When the state changes, the renderer:
- Resolves which visual state to display (idle? working? error? happy?)
- Loads the right spritesheet and slices it into frames
- Renders the animation using the Kitty graphics protocol (escape sequences that display images inline in your terminal)
- Draws stat bars, XP progress, and speech bubbles around the sprite
- Adapts the layout to your terminal size — works in a narrow side pane or a full window
Everything runs in a single terminal pane. No browser. No Electron. Just escape sequences.
+------------------------------------------+
| "hmm, interesting approach..." |
| |
| [animated sprite] |
| |
+== My Agent ===============================+
| egg -> baby |
| XP ████░░░░░░░░░░░░░░░░ 25 |
| |
| Hunger ████████████████████ |
| Happy ███████████████████░ |
| Energy ███████████████████░ |
| Hygiene ███████████████████░ |
| |
| 🔥 8-day streak |
+------------------------------------------+
The tech
Built with Node.js and zero frontend frameworks:
- sharp — spritesheet slicing and background removal
- chokidar — file watching for state changes
- Kitty graphics protocol — renders images directly in the terminal via escape sequences
The whole thing is ~8 files in lib/. No build step. No bundler.
It works on any terminal that supports the Kitty graphics protocol — Ghostty and Kitty are the two main ones.
Art packs
The companion's look is fully customizable through art packs — directories of spritesheets with a config file that maps states to animations.
Two packs are bundled:
- Kira — anime-style companion
- WPenguin — pixel art penguin
Creating your own is straightforward. Drop spritesheets into a folder, write a pack.json that maps states to sheets:
Click to see the full pack.json structure
{
"name": "My Pack",
"format": "spritesheet-grid",
"frame_size": { "width": 768, "height": 448 },
"grid_cols": 4,
"state_map": {
"idle": { "sheet": "idle.png", "frames": 10, "interval_ms": 100 },
"working": { "sheet": "typing.png", "frames": 8, "interval_ms": 120 }
}
}
If you've ever made pixel art or have sprite assets lying around — they work here.
Try it
git clone https://github.com/lukebaze/oh-my-kira.git
cd oh-my-kira
npm install
npm link
oh-my-kira --watch ~/.claude/buddy/state.json
Or if you have Claude Buddy installed, just run /buddies launch and it splits your Ghostty terminal automatically.
What's next
This is early. Things I'm thinking about:
- More art packs (contributions welcome)
- Sound effects (yes, really)
- Multi-buddy support
- A web-based art pack editor
If you think coding should have a little more personality — give it a star, try it out, or make your own art pack.
lukebaze
/
oh-my-kira
Terminal renderer for Claude Buddy — displays your coding companion via Kitty graphics protocol
Oh My Kira
Your coding companion, alive in the terminal.
A real-time animated sprite renderer for Claude Buddy that brings your AI coding companion to life — right next to your code.
Kira reacts to your coding session in real time — mood, stats, speech bubbles, and all.
What is this?
Oh My Kira renders an animated companion in a terminal pane while you code with Claude. It watches the buddy state file and displays:
- Animated sprites that react to mood and activity
- Live stat bars — hunger, happiness, energy, hygiene
- XP & evolution — level up your buddy over time
- Speech bubbles — idle thoughts and reactions
- Streak tracking — consecutive coding days
+------------------------------------------+
| "hmm, interesting approach..." |
| |
| [animated sprite] |
| |
+== My Linh ===============================+
| egg -> baby |
| XP ████░░░░░░░░░░░░░░░░ 25 |
| |
| Hunger ████████████████████ |
| Happy…

Top comments (0)