You run Claude Code agents. You alt-tab 50 times a day to approve permissions. You lose your place. You miss prompts. Masko Code puts a mascot on your desktop that watches your agents in real time. Permission needed? Speech bubble. Press ⌘1. Done. Also: ⌘M jumps to the right terminal. Double-tap ⌘ to switch sessions. Tracks everything at a glance. Ships with Clippy and other mascots. Community adds new ones daily. Or generate your own at masko.ai. Free. Open source. MIT. 100% local.
No reviews yetBe the first to leave a review for Masko Code
Maker
📌
Hey PH! I'm Paulo.
I built masko.ai to generate AI mascot animations. Transparent videos you can use anywhere. I loved having my mascot on screen as an overlay while coding.
Then I started running multiple Claude Code sessions at the same time. Alt-tabbing between 4 terminals to approve permissions, missing prompts, losing focus. It was killing my flow.
So I combined the two. The mascot overlay became a notification system. Then it became a shortcut system. Then it became a full agent supervisor.
Now when Claude needs permission, my mascot shows a speech bubble. I press ⌘1 to approve without leaving my editor. ⌘M jumps me to the right terminal. Double-tap ⌘ to switch between sessions.
What started as "I want my mascot on screen" turned into the tool I use every single day.
Ships with Clippy and other mascots. Community keeps adding new ones. Or generate your own at masko.ai, any character, any style.
Free, open source, MIT license. macOS 14+, 100% local.
What mascot would you want watching your agents?
Report
Love that this started as a fun mascot idea and evolved into an actual productivity tool. The ⌘1 to approve permissions without leaving the editor is the real feature here. Any plans to support other AI coding agents beyond Claude Code?
That's really cute. It looks like it hooks directly into the Claude executable (?) - do you plan to have community adapters so that people can create their own integrations? I can see people wanting this for more than just coding assistants, e.g. having multiple mascots for their different channels.
Report
Maker
@hex_miller_bakewell Yes! It hooks into Claude Code through its native hook system. The mascot runs on a state machine graph so each state (idle, working, attention, thinking) can trigger different animations and actions. The goal is to make everything fully customizable. With masko ai you can generate any character in any style, and the interactions are endless because you control the states. Community adapters for other tools is definitely where this is heading. Love the multiple mascots idea!
Report
I keep running into this and can't figure out a good way to handle it. Claude shows "thinking" but it's unclear whether it's actually working or stuck in a loop, maybe hitting some architecture issue underneath. Is there any detection for that in Masko? Like, can it tell the difference between "model is processing" and "model is retrying silently and going nowhere"?
Report
Maker
@slavaakulov today it tracks the agent state through claude code hooks so you can see when Claude is thinking, working, or spawning subagents. There's a full trace of all tool uses in the notification feed. But it can't tell i think the difference between "thinking normally" and "stuck in a silent retry loop." That distinction would need deeper hook support from Claude Code itself.
Report
Sounds like a great product! Running multiple Claude Code sessions can be very chaotic. This solves the exact thing that breaks the flow most times. Any plans to support any other AI coding agents beyond Claude Code?
Report
Maker
@simonk123 Thanks Simon! Yes, the architecture is agent-agnostic. Right now it hooks into Claude Code but supporting Codex, Gemini CLI and others is on the roadmap.
Report
This is one of those 'why didn't this exist already' tools. The alt-tab tax with Claude Code agents is real and nobody was talking about it. Love that it's fully local with zero telemetry that's the right call for a developer tool. Two things I'm curious about: any plans to support watching multiple agent sessions at once? And is there a way to customize what triggers the speech bubble (like only for permission requests vs. all pauses)? Also the fox is adorable, not gonna lie.
Report
Maker
@samet_sezer To answer both: yes, it already tracks multiple sessions simultaneously. Double-tap ⌘ to see all active agents and switch between them.
The speech bubble currently triggers on permission requests and questions, but customizing trigger types is a great idea. And thanks, the fox appreciates it.
Report
The speech bubble for permission requests alone would save me a lot of broken focus. Love that it's open source and fully local too. Any plans to support other coding agents beyond Claude Code, like Cursor or Copilot terminals?
Report
Maker
@ben_gend Thanks! Yes, Codex support is coming next with help from the community. For Cursor and Copilot it depends on how easy it is to hook into their event systems, but we're looking into it.
Love that this started as a fun mascot idea and evolved into an actual productivity tool. The ⌘1 to approve permissions without leaving the editor is the real feature here. Any plans to support other AI coding agents beyond Claude Code?
@mehmet_kerem_mutlu Yes codex will come very soon
@hex_miller_bakewell Yes! It hooks into Claude Code through its native hook system. The mascot runs on a state machine graph so each state (idle, working, attention, thinking) can trigger different animations and actions. The goal is to make everything fully customizable. With masko ai you can generate any character in any style, and the interactions are endless because you control the states. Community adapters for other tools is definitely where this is heading. Love the multiple mascots idea!
I keep running into this and can't figure out a good way to handle it. Claude shows "thinking" but it's unclear whether it's actually working or stuck in a loop, maybe hitting some architecture issue underneath. Is there any detection for that in Masko? Like, can it tell the difference between "model is processing" and "model is retrying silently and going nowhere"?
@slavaakulov today it tracks the agent state through claude code hooks so you can see when Claude is thinking, working, or spawning subagents. There's a full trace of all tool uses in the notification feed. But it can't tell i think the difference between "thinking normally" and "stuck in a silent retry loop." That distinction would need deeper hook support from Claude Code itself.
Sounds like a great product! Running multiple Claude Code sessions can be very chaotic. This solves the exact thing that breaks the flow most times. Any plans to support any other AI coding agents beyond Claude Code?
@simonk123 Thanks Simon! Yes, the architecture is agent-agnostic. Right now it hooks into Claude Code but supporting Codex, Gemini CLI and others is on the roadmap.
This is one of those 'why didn't this exist already' tools. The alt-tab tax with Claude Code agents is real and nobody was talking about it. Love that it's fully local with zero telemetry that's the right call for a developer tool. Two things I'm curious about: any plans to support watching multiple agent sessions at once? And is there a way to customize what triggers the speech bubble (like only for permission requests vs. all pauses)? Also the fox is adorable, not gonna lie.
@samet_sezer To answer both: yes, it already tracks multiple sessions simultaneously. Double-tap ⌘ to see all active agents and switch between them.
The speech bubble currently triggers on permission requests and questions, but customizing trigger types is a great idea. And thanks, the fox appreciates it.
The speech bubble for permission requests alone would save me a lot of broken focus. Love that it's open source and fully local too. Any plans to support other coding agents beyond Claude Code, like Cursor or Copilot terminals?
@ben_gend Thanks! Yes, Codex support is coming next with help from the community. For Cursor and Copilot it depends on how easy it is to hook into their event systems, but we're looking into it.