xyc/plushie
plushie
Claude Code 프롬프트 위에 살면서 Claude가 하는 일에 반응하는 봉제인형 Clawd입니다. 대기하며 눈을 깜빡이고, 턴이 실행되는 동안 꿈틀거리며, 각 도구의 작은 소품을 들고, 도구가 실패하거나 중단하면 흔들리고, 긴 턴이 끝나면 뛰고, 고맙다는 말을 들으면 볼을 붉히며, 혼자 두면 졸기 시작합니다. 쓰다듬거나 들어서 옮길 수 있습니다.
이 mod 소개
plushie는 Claude Code mod로, 프롬프트 위에 봉제인형 Clawd 마스코트를 표시하고 Claude의 활동에 반응합니다. Blender에서 베이크한 프레임을 이미지 프로토콜을 지원하는 터미널(Ghostty, kitty)에서 재생합니다. 드래그, 쓰다듬기, 도구 소품, 서브에이전트별 미니 Clawd, 컨텍스트 사용량에 따른 성장, 홍조, 유휴 동작, 소리 토글을 제공하며, 반응과 토글을 위한 /plushie 명령도 포함합니다. /plugin marketplace add xyc/plushie와 /plugin install plushie@plushie로 설치합니다. Anthropic과 제휴하지 않은 비공식 팬 프로젝트이며, 코드와 에셋은 MIT 라이선스입니다.
설치
먼저 작성자의 README에서 marketplace와 플러그인 이름을 확인하세요. 저장소 구조에 따라 명령어가 달라질 수 있습니다.
claude plugin marketplace add xyc/plushie claude plugin install plushie
원문 / README
plushie
<p align="center"><img src="docs/media/demo.gif" width="560" alt="Clawd being patted, holding a keyboard while Claude runs a command, then jumping when it's done"></p>A plush Clawd that lives above the Claude Code prompt and reacts to what Claude is doing: idles and blinks, wiggles while a turn runs, holds a little prop for each tool, wobbles when a tool fails or you interrupt, jumps after a long turn, blushes when you say thanks, dozes off when left alone. Pat it, or pick it up and move it.
It is a Claude Code mod: frames baked in Blender, played in the terminal by
swapping an Image's source with $.ui.blit. Terminals with an image
protocol (Ghostty, kitty) only; elsewhere it stays out of the way.
An unofficial fan project, not affiliated with or endorsed by Anthropic. Clawd and Claude Code are Anthropic's.
Install
/plugin marketplace add xyc/plushie
/plugin install plushie@plushie
Needs Claude Code 2.1.287 or later with mods on. Mods are rolling out; if
/plushie isn't listed after installing, they aren't on for your account
yet.
To run it from a checkout instead:
claude --plugin-dir path/to/plushie
Switches
Each is a switch, on by default, in /config or with /plushie on|off <switch>:
| Switch | What Clawd does |
| :-- | :-- |
| drag | drag it sideways along the band; it dangles while held, lands where you let go, and stays there next session |
| pats | click it without dragging: a squish, a happy squint, hearts |
| toolProps | holds a magnifier while reading, knitting needles while editing, a keyboard for the shell, binoculars on the web |
| miniClawds | a half-size Clawd per running subagent, walking off when it finishes |
| stuffing | grows rounder as the context window fills, deflates with a sigh on compaction |
| blush | blushes at thanks and praise in your prompt |
| fidgets | left alone, now and then looks around, scratches, yawns or hops |
| sounds | little sounds for pats, jumps, wobbles, blushes, being picked up and put down, deflating and dozing off |
Commands
/plushiehides or shows it./plushie <reaction>plays one of Clawd's reactions:happy,oops,pat,blush,sleepy,fidget-yawn,working-binoculars,idle-stuffed, … (every folder inassets/frames)./plushie listshows every reaction, and every switch with its state./plushie on <switch>//plushie off <switch>flips a switch.
Rebake the frames
blender/sheet.sh idle:0 happy:16 # contact sheet: build/sheet.png
/Applications/Blender.app/Contents/MacOS/Blender -b --factory-startup \
-P blender/plush.py -- render build/layers [clip ...]
python3 blender/composite.py build/layers assets/frames [clip ...]
blender/plush.py holds the model, the fur, the props, the lights and
every clip's motion, and renders each frame twice: Clawd alone, and the
shadow alone. blender/composite.py lays one over the other into
assets/frames and writes the manifest the mod reads. The shadow's
strength and shape live in the compositor, so changing them is a re-run of
composite.py, not a render.
Test
claude plugin test .
The tests drive every reaction through the real event that triggers it, each with its switch on and off.
License
MIT for the code, the Blender and sound scripts, and the frames and sounds they make; see LICENSE. The Clawd character and Claude Code are Anthropic's, and the license doesn't cover them.
