Repository navigation
Releases: burakCokyildirim/clawde
Release list
Clawde 2.0.7
A slash command no longer leaves a session busy
Running a command such as /model could leave its session showing Active
for good, doing nothing. Newer Claude Code records those commands the way it
records a prompt, and the plugin read one as the start of a turn that never
came. Run while Claude was still working, the command landed just as the answer
did, and hid a question the session was waiting on you for. The plugin now
tells a command that runs in Claude Code from one that goes to the model, and
leaves the session as it was.
Install with Homebrew
brew install --cask burakcokyildirim/tap/clawde
The app still keeps itself up to date; Homebrew hears about each release too.
Make a character
Contributing a pet is now the easy way in: docs/characters.md
says how one is made, just preview-character shows every mood as it will
play, and a /new-character skill for Claude Code walks through it with you.
See CONTRIBUTING.md.
Comes with plugin 3.1.2; Clawde offers to update it on launch. Sessions already
open keep the old plugin until they start again — quit the Claude desktop app
and open it again, or claude --resume in a terminal.
Clawde 2.0.6
Claudie writes its question
While a session is waiting on you, Claudie no longer waves a question mark
about. It writes one over its head a stroke at a time, looking up at it as it
goes, lets the dot drop in, and waits. Then it sways from side to side, and
writes it again. Under Reduce Motion it holds the finished mark.
A restored session no longer looks busy doing nothing
A session the Claude desktop app had restored could show Active every time
you opened it, with nothing running. The app had written a prompt into it — a
finished background task's notification — that the process it came from never
answered, and the plugin read that as Claude thinking. A session's daemon now
starts quiet: whatever the transcript says was in flight died with the process
before it. A turn that ended by asking you something still shows as waiting.
Comes with plugin 3.1.1; Clawde offers to update it on launch. Sessions already
open keep the old plugin until they start again — quit the Claude desktop app
and open it again, or claude --resume in a terminal.
Clawde 2.0.5
Start your sessions again — reloading does not do it
After installing or updating the plugin, Clawde and its README used to say
/reload-plugins would bring an open session up to date. It does not: the
plugin's daemon is started by a session's start and by nothing else, so a
session that was already open never reports, however often it reloads.
Clawde now says what works, after an install and after an update, in the setup
window and in the README:
- Claude desktop app: quit it (⌘Q) and open it again. That restarts every
session in it at once; clicking a session that is already running does not. - Terminal: leave the session and pick it up with
claude --resume.
Nothing needs setting up in the desktop app itself — it reads the same
~/.claude as the CLI, so one install covers both.
Clawde 2.0.4
Settings fits on the screen again
The window was sized to its content and nothing else, so a few profiles pushed
it past the bottom of the display — with nothing to scroll to reach what was
under there. It opens at 620 points now, or whatever the screen can spare if
that is less, it scrolls, and it resizes.
Claudie asks
Waving on its own reads as hello. A question mark now bobs over the wave while
a session is waiting on you, the way Nibble and Quack already hold one up.
Clawde 2.0.3
A session that left work running no longer looks busy forever
Launching a subagent in the background reports back at once, so the plugin
keeps the session Active while it runs — and nothing ever said it had finished.
The completion is announced rather than returned, on a line the plugin was
skipping, so a session that spawned one background agent read Active until
you typed in it again. An hour, in the case this came from.
The announcement is read now, and the session goes quiet when the last of the
work is done.
A backgrounded command counts as work too
A Bash command run in the background was not tracked at all: the session read
Idle while a job it is waiting on was still running, then came back to life
out of nowhere when the job finished. It is tracked the same way now and shows
as Active with the activity background until it reports.
Requires the plugin bundled with this build (3.1.0). Clawde offers to update it
on launch. Sessions already open keep the old plugin until they start again:
quit the Claude desktop app and open it again, or leave a terminal session and
pick it up with claude --resume. (/reload-plugins does not do it — the
plugin's daemon only starts with a session.)
Setting the plugin up when there is no CLI
Clawde installs its plugin by running claude plugin install, and anyone who
reaches Claude Code through the Claude desktop app has no such command. The
offer now checks first and hands over the three /plugin steps instead, filled
in with the path on your Mac and copyable. The dropdown says so too, where it is
noticed, with a Set Up… that opens the same window.
Clawde 2.0.2
A menu bar icon you can see
2.0.1 drew Claudie one point per pixel inside an 18-point square, so the
character filled under half of the icon's height and read as a speck beside
everything else in the bar. It is two points per pixel now, cropped to what it
draws, and the status item scales it by height instead of squaring it off.
A long tool name no longer shoves the list around
The line under a session's name — folder, host app, what it is doing — had no
line limit. MCP tools report themselves as mcp__server__some_tool, which is
long enough to wrap onto three lines: that row trebled in height and pushed every
row below it down the list, then everything settled again once the call ended.
The line is one line now that trails off, and the state and time keep their place.
Clawde 2.0.1
Click a Terminal.app session and get that tab
Terminal sessions only ever activated the app, which comes forward on whichever
window was last in front. With a second window open that looked exactly like the
click had done nothing: the session is listed, you click it, and you are staring
at a different shell.
Terminal.app has no session id to aim at the way iTerm2 does, but every tab knows
the terminal device it is attached to — and so does the session's process. Clawde
now matches the two and raises that tab, window and all.
macOS will ask once for permission to control Terminal. Until you allow it under
Privacy & Security ▸ Automation ▸ Clawde, the click falls back to bringing the
app forward, as before.
A menu bar icon of its own
The status item wore the icon this project was forked from. It is Claudie now,
head-on — and drawn at the sizes the menu bar actually asks for, so it is no
longer being scaled.
Clawde 2.0.0
The first release under the project's own name.
Clawde puts a pixel-art pet above your windows that acts out whatever your
Claude Code sessions are doing — typing while one works, waving while one waits
on you, dozing when there is nothing to say — and keeps a menu bar list of every
session, with one click into the terminal, IDE or Claude desktop conversation it
belongs to.
Install
Download Clawde-2.0.0.pkg and open it, or unzip Clawde-2.0.0.zip into
/Applications. Both are signed with a Developer ID and notarized by Apple.
The app runs in the menu bar with no Dock icon; the pet is off until you turn it
on, from Settings or the paw button at the top of the menu bar dropdown.
On first launch it offers to install its hook plugin,
clawde-plugin, which is what
tells it when a session changes state. Restart any Claude Code sessions that
were already running: a session keeps the hooks it started with.
Requires macOS 15 or newer and the Claude Code CLI.
Coming from Claude Status
Clawde was forked from gmr/claude-status
and has taken identifiers of its own, so the two are separate apps. Uninstall the
old plugin (claude plugin uninstall claude-status@claude-status-marketplace),
remove the old app from Finder, and expect a fresh start — macOS keeps a group
container to the apps entitled to it, so nothing can carry across.