"I'm Mr. Meeseeks! Look at me!" A Claude Code plugin that plays a Mr. Meeseeks voice line whenever Claude is genuinely waiting on you.
What's inside
FAQ
mr-meeseeks is a Claude Code plugin with hand-picked skills for productivity work, indexed on Flowy. Install it with the command on its page. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.
> /plugin marketplace add thephw/claude-meseeks> /plugin install mr-meeseeks@claude-meseeks
Repo: thephw/claude-meseeks
"I'm Mr. Meeseeks! Look at me!"
A Claude Code plugin that plays a Mr. Meeseeks voice line whenever Claude is genuinely waiting on you.
audio/done/ ("All done!", "Ooh yeah!", "Yes siree!" โฆ).audio/asking/
("Can you help me?", "You mind if we get back to the task?" โฆ).Both are driven by the Notification event, filtered by notification_type so it fires
only when you're actually needed. Autonomous work โ auto-accept/bypass-permissions runs,
background-agent and subagent activity, auth refreshes โ stays silent. Clips are random
within the category, and playback is detached and non-blocking, so a long line never freezes
your prompt.
This repository is both the plugin and its own marketplace.
/plugin marketplace add thephw/claude-meseeks
/plugin install mr-meeseeks@claude-meseeks
Or, from a local clone:
/plugin marketplace add /path/to/claude-meseeks
/plugin install mr-meeseeks@claude-meseeks
Restart or reload Claude Code and finish a turn โ you should hear Meeseeks.
An audio player on your PATH. The tool auto-detects, in order:
afplay (macOS, built in) โ ffplay โ mpg123 โ paplay โ aplay โ Windows PowerShell
Media.SoundPlayer. On macOS nothing extra is needed. On Linux, install ffmpeg
(for ffplay) or mpg123.
No Go toolchain is required to use the plugin โ prebuilt binaries ship in bin/. Go is
only needed to rebuild them (see below).
meeseeks CLIPlayback is handled by a small Go program, meeseeks, with the clips embedded directly in
the binary. You can drive it by hand too:
meeseeks play # random "done" clip, detached
meeseeks play asking # random "asking" clip
meeseeks play feedback --wait # a prompt-submit clip, blocking until it finishes
meeseeks play --clip "ALL DONE" # a specific clip by name
meeseeks list all # list every embedded clip
meeseeks status # show which categories are on/off
meeseeks disable feedback # mute a category
meeseeks enable all # unmute (categories: done, asking, feedback, all)
meeseeks toggle done # flip a category
hooks/hooks.json registers Notification and UserPromptSubmit hooks that both run
scripts/play.sh notify. That launcher execs the prebuilt bin/meeseeks-<os>-<arch> for
your platform (falling back to go build from source if there's no matching binary, or
staying silent if neither is available), passing the event's JSON through on stdin.
meeseeks notify reads that JSON and looks at hook_event_name and notification_type:
| Event | Result |
|---|---|
UserPromptSubmit (you just sent Claude a prompt) | random feedback |
Notification + idle_prompt (Claude done, your turn) | random done |
Notification + permission_prompt (needs approval) | random asking |
anything else (agent_completed, auth_success, โฆ) | silence |
The chosen clip is extracted from the embedded audio to a cache dir and handed to a system player in a detached process. Every path exits 0, so the hook never blocks or errors your session.
Each category plays by default; only automatic hook playback is gated (manual meeseeks play
always plays). See Configuring which sounds play below.
Why not the
Stophook?Stopfires at the end of every turn โ including auto-continuations โ so it plays sounds when you aren't actually being waited on. The event-type filter is the reliable signal for "it's your turn."
Use the plugin's slash commands from any Claude Code session:
/mr-meeseeks:status # show which categories are on/off
/mr-meeseeks:mute feedback # silence a category (done | asking | feedback | all)
/mr-meeseeks:unmute done # turn it back on
/mr-meeseeks:mute all # silence everything
/mr-meeseeks:help # what the categories mean + how to configure
Choices are saved to ~/.config/claude-meseeks/state.json (honoring $XDG_CONFIG_HOME) and
take effect immediately โ no /reload-plugins or restart needed. The equivalent CLI verbs
are meeseeks status / disable / enable / toggle.
Why slash commands instead of the
/pluginconfig screen? Claude Code currently renders every pluginuserConfigoption as a free-text field with no working toggle (claude-code#74289), so a real in-UI boolean toggle isn't possible yet. The slash commands are the reliable path. Power users can still setCLAUDE_PLUGIN_OPTION_enableDone/enableAsking/enableFeedbacktofalseinsettings.json; the state file above takes precedence over those.
Clips live under audio/, sorted into three folders that map to behavior:
audio/done/ โ played when Claude finishes and it's your turn (idle prompt).audio/asking/ โ played on permission/input prompts.audio/feedback/ โ played every time you submit a prompt to Claude.To change what plays, move .mp3 files between the folders or drop your own in, then
rebuild the binaries so the new clips are re-embedded:
./scripts/build.sh # regenerates bin/ for all platforms
Two constraints: filenames must end in .mp3, and โ because of a go:embed restriction โ
must not contain apostrophes (').
The theme isn't just a joke โ it's a working philosophy.
A Mr. Meeseeks is summoned to accomplish one task. It exists only until that task is done, and then it poofs out of existence, satisfied. Give a Meeseeks a single, concrete goal ("help me finish this putt") and it's cheerful and effective. Give it a vague or unbounded one, or keep it alive long past its purpose, and things degrade fast โ "existence is pain, Jerry!" โ until you get a room full of increasingly unhinged Meeseeks.
A Claude Code session works best the same way:
So: treat each session like a Meeseeks. One purpose. Accomplish it. Poof. ๐ต
Inspired by and audio sourced from the Mr. Meeseeks Soundboard at jayuzumi.com. Thanks for the clips! ๐ต
The voice clips are from Rick and Morty (via the jayuzumi.com Mr. Meeseeks Soundboard) and are included here for personal, non-commercial fun. They are the property of their respective rights holders. Please consider those rights before redistributing this plugin publicly or swap in your own audio.
.claude-plugin/
marketplace.json
plugin.json
.github/
workflows/
ci.yml
.gitignore
.tool-versions
audio/
asking/
CAN YOU HELP ME - AUDIO FROM JAYUZUMI.COM.mp3
HAVING A FAMILY PT1 - AUDIO FROM JAYUZUMI.COM.mp3
HAVING A FAMILY PT2 - AUDIO FROM JAYUZUMI.COM.mp3
HAVING A FAMILY PT3 - AUDIO FROM JAYUZUMI.COM.mp3
HEY THERE - AUDIO FROM JAYUZUMI.COM.mp3
I CANT TAKE IT ANYMORE - AUDIO FROM JAYUZUMI.COM.mp3
I HAVE TO FULFILL MY PURPOSE - AUDIO FROM JAYUZUMI.COM.mp3
I JUST WANT TO DIE - AUDIO FROM JAYUZUMI.COM.mp3
IF WE CONCENTRATE - AUDIO FROM JAYUZUMI.COM.mp3
IM MR MEESEEKS - AUDIO FROM JAYUZUMI.COM.mp3
IM MR MEESEEKS LOOK AT ME - AUDIO FROM JAYUZUMI.COM.mp3
IT DOESNT WORK LIKE THAT - AUDIO FROM JAYUZUMI.COM.mp3
ITS GETTING WEIRD - AUDIO FROM JAYUZUMI.COM.mp3
IVE BEEN TRYING TO HELP JERRY FOR 2 DAYS - AUDIO FROM JAYUZUMI.COM.mp3
JERRY - AUDIO FROM JAYUZUMI.COM.mp3
KILL HIM - AUDIO FROM JAYUZUMI.COM.mp3
LET ME TRY SOMETHING - AUDIO FROM JAYUZUMI.COM.mp3
MEESEEKS BLOOD PT1 - AUDIO FROM JAYUZUMI.COM.mp3
MEESEEKS BLOOD PT2 - AUDIO FROM JAYUZUMI.COM.mp3
MEESEEKS DONT EXSIST THIS LONG - AUDIO FROM JAYUZUMI.COM.mp3
NO 1 - AUDIO FROM JAYUZUMI.COM.mp3
OHH IM MR MESEEKS - AUDIO FROM JAYUZUMI.COM.mp3
REMEMBER TO SQUARE YOUR SHOULDERS - AUDIO FROM JAYUZUMI.COM.mp3
STOP - AUDIO FROM JAYUZUMI.COM.mp3
THIS IS AS FRUSTRATING FOR US AS IT IS FOR YOU - AUDIO FROM JAYUZUMI.COM.mp3
TRY AGAIN AND KEEP YOUR HEAD DOWN - AUDIO FROM JAYUZUMI.COM.mp3
WE ARE CREATED - AUDIO FROM JAYUZUMI.COM.mp3
WEVE BEEN OVER THIS - AUDIO FROM JAYUZUMI.COM.mp3
WHEN WE KILL HIM - AUDIO FROM JAYUZUMI.COM.mp3
YOU GOTTA RELAX - AUDIO FROM JAYUZUMI.COM.mp3
YOU MIND IF WE GET BACK TO THE TASK - AUDIO FROM JAYUZUMI.COM.mp3
YOUR FAILURES ARE YOUR OWN OLD MAN - AUDIO FROM JAYUZUMI.COM.mp3
done/
ALL DONE - AUDIO FROM JAYUZUMI.COM.mp3
feedback/
CAN DO - AUDIO FROM JAYUZUMI.COM.mp3
ITS BECOME CLEAR - AUDIO FROM JAYUZUMI.COM.mp3
LOOK AT ME - AUDIO FROM JAYUZUMI.COM.mp3
OH YEAH YES MAAM - AUDIO FROM JAYUZUMI.COM.mp3
OHH NICE - AUDIO FROM JAYUZUMI.COM.mp3
OHH OKAY - AUDIO FROM JAYUZUMI.COM.mp3
OOAH YEAH - AUDIO FROM JAYUZUMI.COM.mp3
OOH YEAH - AUDIO FROM JAYUZUMI.COM.mp3
THANK YOU - AUDIO FROM JAYUZUMI.COM.mp3
THATS OKAY - AUDIO FROM JAYUZUMI.COM.mp3
WE WILL SOLVE THIS PROBLEM - AUDIO FROM JAYUZUMI.COM.mp3
YES 1 - AUDIO FROM JAYUZUMI.COM.mp3
YES MAAM - AUDIO FROM JAYUZUMI.COM.mp3
YES SIREE - AUDIO FROM JAYUZUMI.COM.mp3
bin/
meeseeks-darwin-amd64
meeseeks-darwin-arm64
meeseeks-linux-amd64
meeseeks-linux-arm64
meeseeks-windows-amd64.exe
claude-meseeks
CLAUDE.md
commands/
help.md
mute.md
status.md
unmute.md
detach_unix.go
detach_windows.go
go.mod
hooks/
hooks.json
LICENSE
main_test.go
main.go
player.go
README.md
scripts/
build.sh
play.sh
state.goยฉ 2026 Flowy ยท Free and open source
Built for Claude Code ยท Not affiliated with Anthropic