Your AI Chief of Staff
Manages Appointments, Reads Various Important Notifications
MARVIN started as a Claude Code template that hit 850+ GitHub stars. This is the desktop app: same brain, now with a full interface and built-in integrations.
Most AI tools start every conversation like you've never met. You explain who you are, what you're working on, what happened yesterday. Every. Single. Time.
MARVIN doesn't do that. MARVIN remembers.
He remembers that your boss prefers short emails. That you corrected him about James not being a speaker (he's office security). That you write blog posts in the last week of the month. That your daughter has a dentist appointment next Tuesday.
MARVIN is an open-source desktop app that gives you an AI colleague. One that shows up in the morning, tells you what to focus on, pushes back when your plan doesn't make sense, and learns from every correction. Assistants wait for instructions. MARVIN doesn't.
MARVIN runs on top of Claude Code inside an Electron app with a three-panel interface: file explorer, markdown editor, and terminal. Everything lives in a local workspace folder. No cloud lock-in, no proprietary formats. Just markdown files you own.
When you first launch MARVIN, he asks about you: your name, your role, your goals, how you like to communicate. He creates a Memory & Persona file, his long-term brain. Then he connects to your tools (Google Workspace, Jira, Confluence) and starts working.
The magic isn't day one. It's day twenty-one.
Day 1: MARVIN is helpful but generic. He can triage your email, check your calendar, and take notes. He's a smart tool.
Day 21: MARVIN knows 16 of your coworkers by name and role. He knows your boss's emails are always P1. He tracks your content output against monthly goals and tells you when you're behind pace. He remembers what the team decided in last week's meeting, nags you about unfinished action items, and drafts your weekly report from three weeks of session logs.
After 21 days, Memory & Persona looks like this:
## Things I've Learned
### Corrections
- **James and Heidi are NOT speakers.** They are office security. I added them
to a meetup speaker list once. Sterling corrected me. Never again.
- **"Platform 2.0" is the internal name.** Don't use it in external content.
- **Dave Lund emails are always P1.** He's the boss. Never deprioritize.
### Preferences
- Sterling prefers bullet points over paragraphs for status updates
- When he says "just do it," he means don't ask for confirmation. Execute.
- Friday afternoons: don't start big new things. Wrap up, plan next week.
### Patterns
- Monday mornings: email triage and calendar review first
- Meetup weeks: extra busy. Prioritize event-related tasks.
- Content deadlines: blog posts happen in the last week of the monthThat context compounds. Every correction makes MARVIN smarter. Every session adds to the picture. After a month, MARVIN knows how you work better than most of your actual colleagues do.
Run /start and MARVIN checks your calendar (14-day lookahead), triages your inbox, reviews your open tickets, and proposes three priorities for the day. You confirm or adjust. He locks them in and tracks whether you actually did them.
At the end of each session, MARVIN writes a "Next Session Focus" section that bridges to tomorrow. When you start again, he picks up exactly where you left off. No re-explaining, no lost context.
MARVIN tracks what you've shipped (blogs, videos, events) against your goals and tells you where you stand. "1 video shipped, 0 written pieces, 14 days left in the month." He doesn't nag. He just keeps score.
Give MARVIN a transcript and he produces structured notes with action items, decisions, and open questions. Before a meeting, he researches attendees, reviews past interactions, and builds a prep brief so you walk in ready.
Quick lookups or deep multi-source research with citations. Output gets saved to your workspace for future reference.
MARVIN checks your drafts for AI-sounding filler phrases, passive voice, weasel words, and broken links. He enforces your writing voice.
Connect your accounts through the built-in Connections panel:
- Google Workspace — Gmail, Calendar, Drive, Docs, Sheets, Slides
- Atlassian — Jira and Confluence
MARVIN auto-configures permissions. No manual MCP setup needed.
Type these in the terminal to trigger workflows:
| Command | What it does |
|---|---|
/start |
Morning standup with email triage, calendar, and priority setting |
/end |
Close session, reconcile priorities, save context for next time |
/update |
Quick checkpoint without ending the session |
/report |
Generate a weekly report from session logs and goals |
/research |
Quick web research on a topic |
/deep-research |
Multi-source deep research with citations |
/review |
Check a draft for writing style issues |
~/marvin/
├── CLAUDE.md # Memory & Persona
├── state/
│ ├── current.md # Priorities, open threads, upcoming events
│ └── goals.md # What you're working toward
├── sessions/ # Daily session logs (one per day, append-only)
├── meetings/ # Processed meeting notes and prep briefs
├── research/output/ # Research findings
├── reports/ # Weekly reports
├── content/log.md # Everything you've shipped
├── .claude/
│ ├── agents/ # Specialized agents (content, research, meetings, etc.)
│ └── commands/ # Slash command definitions
└── .mcp.json # Integration configurations
Everything is plain markdown. Read it, edit it, version-control it. It's yours.
- Node.js v18+
- Claude Code CLI installed globally
- An Anthropic API key or a Claude account login via
/login(OAuth)
git clone https://github.com/SterlingChin/marvin-desktop.git
cd marvin-desktop
npm installnpm run devMARVIN walks you through onboarding on first launch: pick a workspace location, connect your accounts, and tell him about yourself.
# macOS
npm run build:mac
# Windows
npm run build:win
# Linux
npm run build:linux- Electron + React + TypeScript
- Claude Code as the AI backbone
- xterm.js for the embedded terminal
- BlockNote for the markdown editor
- electron-vite for build tooling
Contributions welcome.
- Fork the repository
- Create a feature branch (
git checkout -b my-feature) - Make your changes
- Run
npm run typecheckandnpm run lint - Open a pull request
Found a bug or have an idea? Open an issue.
MIT
