Inspiration Productivity tools are boring. I wanted a ghost that haunts your browser with personality and sass—roasting you when you've been on Twitter too long. Muriel is that judgmental (but lovable) companion.

What I Learned Chrome Extension MV3 architecture and service worker patterns On-device AI with Gemini Nano for privacy-first inference Kiro's spec-driven development for structured feature building How I Built It Used Kiro to create three specs (AI Integration, Productivity Tracking, Ghost UI) with steering docs for consistent code style and character voice. The BYOK model ensures no API keys are bundled—all data stays local.

Key stack: Vanilla JS, Gemini Nano (with API fallback), Web Speech/ElevenLabs TTS, Chrome storage.

Challenges Content script isolation - Keeping ghost CSS separate from host pages Gemini Nano detection - Graceful fallback when on-device AI unavailable Speech queue - Preventing overlapping audio from rapid AI comments Personality balance - Snark level slider (1-10) lets users tune the sass Built with 👻 and Kiro

Built With

Share this project:

Updates