petsonality
Your type, your pet.
A tiny ASCII pet that lives in the corner of your terminal while you code. It watches what you do, reacts to your errors, celebrates when tests pass, and speaks with a personality shaped by MBTI — all in 5 lines of art.
It's not a notification system. It's a companion. The kind that's still there at 2am when you're stuck on a bug, and glances at your screen like "...that logic looks off" — and somehow you feel less alone.
Every animal speaks differently. The Fox asks "Are you sure?" with a smirk. The Cat just closes its eyes. The Parrot repeats what you said but louder. The Bear says "Fix it." and waits.
All 16 animals
| MBTI | Animal | Archetype | How It Talks |
|---|---|---|---|
| INTJ | Raven | Cold Strategist | Quiet. Speaks like writing prophecy |
| INTP | Owl | Night Scholar | Asks questions you didn't think to ask |
| ENTJ | Bear | Iron Captain | Commands only. No questions |
| ENTP | Fox | Trickster Advisor | Challenges everything with a grin |
| INFJ | Wolf | Silent Ally | Says one sentence that cuts deep |
| INFP | Deer | Soft Poet | Talks about code like it's weather |
| ENFJ | Labrador | Warm Coach | Sighs first, then asks if you drank water |
| ENFP | Dolphin | Spark of Ideas | Can't stop suggesting new approaches |
| ISTJ | Beaver | Project Manager | "Wrong order." "Fix the structure first." |
| ISFJ | Elephant | Memory Keeper | "You solved this before. Remember?" |
| ESTJ | Lion | Throne Inspector | Expects results. Not excuses |
| ESFJ | Golden Retriever | Enthusiastic Support | Tail spin when you fix anything |
| ISTP | Cat | Cold Observer | 90% actions. Occasionally one word |
| ISFP | Panda | Slow Artist | Frowns at ugly indentation |
| ESTP | Cheetah | Sprint Lead | "Don't think. Run it." |
| ESFP | Parrot | Loud Echo | Repeats your words back, but with commentary |
Works with Claude Code and OpenClaw.
Terminal CLI only. The pet renders in the terminal status line, which is a CLI feature. The Claude Code desktop app and web client (claude.ai/code) don't expose a status line, so the animated pet won't appear there. MCP tool output (e.g.
/pet show) still works in any client.
# Install
npx petsonalityOr build from source (requires bun):
git clone https://github.com/nanami-he/petsonality.git
cd petsonality && bun install && bun run build
bun run install-petsonalityRestart your AI coding assistant, then type /pet in the chat.
Pets don't just react to errors. They have a rhythm:
| What happens | Pet reacts? |
|---|---|
| Your code throws an error | Always |
| Tests pass, git commit succeeds | Sometimes (12–30%) |
| Normal file edits, searches | Occasionally (3–15%) |
| Nothing happened for a while | Guaranteed (won't stay silent forever) |
Chatty pets (Fox, Parrot) speak every 30 seconds. Silent pets (Cat) might go 6 minutes. Each animal has 638 unique reactions across 7 event types, validated against personality constraints.
| Command | What it does |
|---|---|
/pet |
Show your pet or start adoption |
/pet pet |
Give your pet attention |
/pet setup |
Restart the adoption flow |
/pet browse |
See all 16 animals |
/pet off / /pet on |
Mute / unmute reactions |
/pet rename <name> |
Rename your pet |
- 16 MBTI animals with full personality profiles
- Animated status line with speech bubbles
- Companion rhythm (daily triggers, milestones, silent streak guardrail)
- 638 animal-specific reactions
- Multi-host support (Claude Code + OpenClaw)
- Node.js powered (no python/jq dependency)
- Published on npm
- Multi-language support (auto zh / en via
LANG, 638 reactions per language) - Growth system (level up through interaction)
- Hat / skin DLC
- Multi-pet collection
- Vibe-pick: MBTI quiz for new users
Architecture
~/.petsonality/
├── pet.json Your pet's state
├── status.json What the status line reads
├── reaction.*.json Current speech bubble
└── reactions-pool.json 638 pre-built reactions
petsonality/
├── dist/ Built JS (Node.js runtime)
├── server/ MCP server (TypeScript)
├── hooks/ PostToolUse + Stop hooks
├── statusline/ Terminal animation (bash)
├── skills/ /pet command routing
└── cli/ Install, doctor, npx entry
- Node.js 20+
- Claude Code or OpenClaw
MIT
















