kasper0406/claude-mood

Claude Code plugin: webcam/mic mood sensing so your agent notices when you groan, laugh or doomscroll

Python

1

18 commits

updated Sep 26, 2026

See the code

See what people are saying

SourceMessageScoreDate

Claude-mood: Claude Code can see my suffering

1

Sep 26, 2026

README

claude-mood: give Claude Code visibility into your frustration

Just for fun. This is a prototype made for the lolz, with no intention behind it beyond that. No roadmap, no support, macOS only.

Claude answers a riddle wrong, I facepalm, and Claude corrects itself without me typing a word

Claude Code watches your face through the webcam, listens through the mic, and reacts:

  • Scowl, groan, say "come on" or swear at an answer: Claude wakes up and re-checks it. No typing needed. If you get frustrated while it's working, it rethinks its approach, and after two frustrated turns it may hand off to an Opus subagent.
  • Laugh or smile: a one-line acknowledgement, and it keeps things lean.
  • Pick up your phone: a status update while it works, "Claude is done. Put the phone down." when it finishes, and a roast if you keep scrolling.
  • Come back after 5+ minutes away: a one-line recap.

Try it

Needs macOS, uv and a working python3 (on a fresh Mac, run xcode-select --install first).

# 1. In a terminal: start the sensor. Allow camera + mic; the first run downloads ~1.5 GB of models
uv run https://raw.githubusercontent.com/kasper0406/claude-mood/main/moodd.py
# 2. In Claude Code: install the plugin
/plugin marketplace add kasper0406/claude-mood
/plugin install claude-mood@claude-mood

For the first 2 minutes, look at the screen with a neutral face while it learns what your resting face looks like. Ctrl-C stops the sensor, and /plugin uninstall claude-mood@claude-mood removes the plugin.

Run from a clone

uv run moodd.py --show              # sensor with a debug window (face box, emotion, head pose)
claude --plugin-dir /path/to/claude-mood

Privacy

Frames, audio and transcripts never leave the daemon and are never written to disk. mediapipe is pinned to 0.10.21 or older because later PyPI builds include an undocumented usage logger that uploads to Google (clearcut, play.googleapis.com). Derived scores and matched keywords (e.g. said "wtf" x2) are sent to Claude, and so to Anthropic, as context in the focused session.

Built on

Contributors

kasper0406

18 commits

kasper0406/claude-mood

Claude Code plugin: webcam/mic mood sensing so your agent notices when you groan, laugh or doomscroll

Python

1

18 commits

updated Sep 26, 2026

See the code

See what people are saying

SourceMessageScoreDate

Claude-mood: Claude Code can see my suffering

1

Sep 26, 2026

README

claude-mood: give Claude Code visibility into your frustration

Just for fun. This is a prototype made for the lolz, with no intention behind it beyond that. No roadmap, no support, macOS only.

Claude answers a riddle wrong, I facepalm, and Claude corrects itself without me typing a word

Claude Code watches your face through the webcam, listens through the mic, and reacts:

  • Scowl, groan, say "come on" or swear at an answer: Claude wakes up and re-checks it. No typing needed. If you get frustrated while it's working, it rethinks its approach, and after two frustrated turns it may hand off to an Opus subagent.
  • Laugh or smile: a one-line acknowledgement, and it keeps things lean.
  • Pick up your phone: a status update while it works, "Claude is done. Put the phone down." when it finishes, and a roast if you keep scrolling.
  • Come back after 5+ minutes away: a one-line recap.

Try it

Needs macOS, uv and a working python3 (on a fresh Mac, run xcode-select --install first).

# 1. In a terminal: start the sensor. Allow camera + mic; the first run downloads ~1.5 GB of models
uv run https://raw.githubusercontent.com/kasper0406/claude-mood/main/moodd.py
# 2. In Claude Code: install the plugin
/plugin marketplace add kasper0406/claude-mood
/plugin install claude-mood@claude-mood

For the first 2 minutes, look at the screen with a neutral face while it learns what your resting face looks like. Ctrl-C stops the sensor, and /plugin uninstall claude-mood@claude-mood removes the plugin.

Run from a clone

uv run moodd.py --show              # sensor with a debug window (face box, emotion, head pose)
claude --plugin-dir /path/to/claude-mood

Privacy

Frames, audio and transcripts never leave the daemon and are never written to disk. mediapipe is pinned to 0.10.21 or older because later PyPI builds include an undocumented usage logger that uploads to Google (clearcut, play.googleapis.com). Derived scores and matched keywords (e.g. said "wtf" x2) are sent to Claude, and so to Anthropic, as context in the focused session.

Built on

Contributors

kasper0406

18 commits

Languages

Python

100.0%