If you've ever wanted a terminal companion that watches you code and reacts with personality, this is it. Built on MBTI types, it gives you one of 16 ASCII animals (Fox, Cat, Owl, Bear, etc.) that lives in your terminal status line and comments on what you're doing. It speaks when tests pass, errors happen, or you've been silent too long. Each animal has 638 unique reactions shaped by their personality type. The MCP server exposes `/pet` commands for setup, petting, browsing animals, and toggling reactions. Works with Claude Code and OpenClaw through stdio transport. Installs hooks for PostToolUse and Stop events to drive the companion rhythm. Not notification spam, just occasional presence while you work.
🌐 English | 中文
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.
| ST | SF | NF | NT | |
|---|---|---|---|---|
| I_ _J | ![]() Beaver·ISTJ | ![]() Elephant·ISFJ | ![]() Wolf·INFJ | ![]() Raven·INTJ |
| I_ _P | ![]() Cat·ISTP | ![]() Panda·ISFP | ![]() Deer·INFP | ![]() Owl·INTP |
| E_ _J | ![]() Lion·ESTJ | ![]() Golden·ESFJ | ![]() Labrador·ENFJ | ![]() Bear·ENTJ |
| E_ _P | ![]() Cheetah·ESTP | ![]() Parrot·ESFP | ![]() Dolphin·ENFP | ![]() Fox·ENTP |
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.
| 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.Windows note. Claude Code for Windows has an upstream status-line trust regression in some versions. If the status line is configured but does not render, accept the project trust dialog or ensure the project is marked trusted in
~/.claude.json, then restart Claude Code.
npx petsonality
This is the recommended path for most users. It installs the MCP server, /pet skill, hooks, and status line assets, then stores runtime files in ~/.petsonality/.
claude plugin install github:nanami-he/petsonality
Use this if you prefer Claude Code's plugin install flow. The plugin runs the built Node.js server from dist/, so it does not require Bun.
Use this path if you want to develop Petsonality locally or inspect the code before installing. Requires Bun.
git clone https://github.com/nanami-he/petsonality.git
cd petsonality && bun install && bun run build
bun run install-petsonality
Restart 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 |
npx petsonality is an installer — it touches a few files on your system. Honest list, with backups noted:
~/.claude.json — adds a petsonality entry under mcpServers. Other entries left alone.~/.claude/settings.json — adds a statusLine and two hooks (PostToolUse, Stop). If you already had a statusLine, the original is backed up to ~/.petsonality/statusline.bak first.~/.claude/skills/pet/SKILL.md — copies the /pet command skill.~/.petsonality/ — runtime directory (pet state, reactions cache, server, hooks, status-line scripts).If OpenClaw is detected, also touches ~/.openclaw/openclaw.json and (until PR #65886 merges) applies a small reversible patch to OpenClaw's TUI source. Both backed up.
To remove everything: npx petsonality uninstall. To audit current state: npx petsonality doctor.
Full breakdown + other common questions in the FAQ.
LANG, 638 reactions per language)~/.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 + PowerShell)
├── skills/ /pet command routing
└── cli/ Install, doctor, npx entry
MIT
ray0907/git-mcp-server
cyanheads/git-mcp-server
io.github.b1ff/atlassian-dc-mcp-bitbucket
io.github.b1ff/atlassian-dc-mcp-jira
com.mcparmory/atlassian-jira
sirlordt/vscode-terminal-mcp