claudemux
Claudemux is a lightweight, dependency-minimal message bus that lets multiple Claude Code sessions communicate in real-time over tmux, enabling one session to ask another a question and receive the answer without manual intervention.
它用纯shell脚本取代了基于Node的状态行,利用墙钟时间实现无状态动画,宠物的情绪作为上下文使用率、待审批和努力程度的视觉测量仪。
A two-line status line for Claude Code with an ASCII pet.
132 lines of bash. No npm, no node, no build step.
ʕ•ᴥ•ʔ☕ Opus 5 · high · think 5h 41% · 7d 63%
▓▓▓▓░░░░ 62% ⎇ main* ● serai:vegrun
There are plenty of good Claude Code status lines. Two things make this one different.
Your status line re-runs every few seconds, forever. Every render is a fresh process. Spawning a Node runtime on that loop is a strange thing to do to your laptop.
This is one bash file with two dependencies you already have (git, jq).
Install is a curl and one line of JSON. There is nothing to update, nothing to
audit, and nothing in node_modules.
The bear's mood is derived from session state, so you can read how the session is doing without reading any numbers:
| State | Pet | Meaning |
|---|---|---|
| context ≥ 90% | ʕ⊙ᴥ⊙ʔ‼ red, flailing | you are about to compact |
| context ≥ 75% | ʕ•﹏•ʔ💦 yellow, sweating | start wrapping up |
| pending approvals | ʕ•ᴥ•ʔ❗ yellow, alert | something is waiting on you |
effort xhigh / max | ʕ◣_◢ʔ⚡ locked in | the expensive gear is engaged |
| context ≥ 50% | ʕ◔ᴥ◔ʔ focused | working |
| otherwise | ʕ•ᴥ•ʔ idle | blinks, glances, leans |
Peripheral vision does the monitoring. You only look directly at the line when the bear changes.
And when nothing is wrong, it does things. Roughly every 10 seconds it pulls a ~4-second stunt — nap, dance, wave, table flip (and sets the table back), flower, coffee, sparkle, hug, wander.
Claude Code runs the status line command fresh on every render. There is no process to hold a frame counter in, so conventional animation is impossible.
So the frames are indexed by wall-clock time instead of by state:
T=${SL_TICK:-$(date +%s)}
frame() { local -a a=("${@:2}"); PET="${a[$(( $1 % ${#a[@]} ))]}"; }
frame "$T" "ʕ•ᴥ•ʔ" "ʕ•ᴥ•ʔ" "ʕ-ᴥ-ʔ" "ʕ◕ᴥ◕ʔ" # idle: blinks
Each render independently computes which frame it is right now. The script
stays completely stateless and the pet still walks through its frames as time
passes. Stunts use the same idea at two scales: T % 10 picks the position
within a stunt, (T / 10) % 9 picks which stunt
Two-line Claude Code status line with a state-driven ASCII pet. 132 lines of bash, no npm.
根据分类、Topic 和编程语言匹配的相似项目。
Claudemux is a lightweight, dependency-minimal message bus that lets multiple Claude Code sessions communicate in real-time over tmux, enabling one session to ask another a question and receive the answer without manual intervention.
OpenClaude is an open-source CLI coding agent that runs on any platform and supports a wide range of LLM providers, offering the same tools and workflows as Claude Code.

tty7 is a fast, GPU-accelerated terminal workbench with persistent sessions, built-in input tools, SSH support, and coding agent awareness.