Skip to content
K

Desktop App

The Monday Morning desktop app is a native application built with Tauri 2.x and Svelte 5 (using Runes). It is an AI work orchestrator: a place to run many Claude Code sessions across all your projects at once, see what each one is doing, and decide what to do next — without losing context between them.

The app uses a two-process architecture:

  • Rust backend (Tauri) — File system access, secure credential storage, process management, terminal/session orchestration, and system integration.
  • Svelte frontend — Reactive UI rendered in a native webview, communicating with the backend via Tauri commands.

Project data lives in .mm/ directories inside your repositories. The desktop app reads and writes these files directly — there is no separate database or server process.

The app is a permanent three-column shell. The columns are always present (the Conductor hides only on the project Overview), so the layout never re-arranges underneath you:

┌───────────┬──────────────────────────────┬────────────┐
│ Session │ Focus Pane │ Conductor │
│ Rail │ (terminals · preview · │ (your AI │
│ (projects │ Comms · Team) │ orchestr- │
│ + live │ │ ator) │
│ sessions) │ │ │
├───────────┴──────────────────────────────┴────────────┤
│ Shell Footer │
└────────────────────────────────────────────────────────┘
ColumnWhat it holds
Session Rail (left)Every project you’ve added and the live Claude sessions running inside each one.
Focus Pane (center)The workspace — terminals, a live preview, and the project’s Comms and Team views.
Conductor (right)Your AI orchestrator: reads state across sessions, captures plain-English requests, suggests what’s next, and launches work.
Shell Footer (bottom)A live status strip — session counts by state, the active git branch, repo status, and app version.

Each column scrolls independently and fills the viewport below the title bar.

The left rail is your project and session navigator.

  • Projects are grouped by activity. Projects with running sessions (and the one you’re in) sit at the top; projects with recent .mm/ activity stay visible with an age chip; everything else collapses behind an Idle disclosure with a count.
  • A project that’s going quiet with unfinished work shows a “pick it back up” nudge — the most-advanced incomplete spec’s progress (e.g. 74% · 8d) — so revivable work doesn’t silently fall off the list.
  • Expand a project to see its sessions. Each session card shows its title, an optional PLAN badge for planning sessions, task progress (e.g. 3/8), a meta line (spec · activity · branch), and a status dot: running (blue, pulsing), needs input (amber), stopped (red), or done (green, no dot).
  • Hover a project for quick actions: open the folder, open it in your system terminal, or start a new session.
  • Search the rail by typing a project name, or press / from anywhere to jump straight to the search box. Press ⌘O / Ctrl+O to open the project finder.

See Sessions & Terminals for how sessions work.

The center column is where the work happens. A tab bar runs across the top, starting with the active project name as a breadcrumb:

  • Dev — your terminal sessions. A layout dropdown next to it switches what fills the pane:
    • Terminals — your sessions, in a grid or full-screen.
    • Preview — a full-screen live preview of your running app.
    • Terminals + Preview — a side-by-side (or stacked) split, with a draggable divider.
  • Comms — the project’s communications view (e.g. ingested email/Slack threads turned into actionable items).
  • Team — team activity and management. Only shown on the Team plan.

The right column is the Conductor — covered in full on its own page: The Conductor. In short, it reads everything happening across your sessions, turns plain-English requests into running work, keeps an inbox of parked ideas and suggested next steps, and lists the specs and tasks that are ready to build.

A compact status strip pinned to the bottom of every view (except the Overview). It summarizes your sessions by state (building, shaping, in review, blocked, queued), and on the right shows the GitHub repo name, the current git branch, whether the working tree is clean or modified, and the app version.

The app ships with switchable visual skins (Default Dark, Light, Midnight, Terminal) built on design tokens. Toggle dark/light with ⌘T / Ctrl+T, or pick a skin in Settings. See Design System & Skins.

Plugins can extend the desktop UI declaratively through the ui property on MondayMorningPlugin. The app renders these contributions uniformly — badges, sidebar/nav items, dashboard widgets, and actions. For example, the Harvest plugin surfaces a compact “budget hours left” chip in the Conductor when it’s configured for a project. See Plugin Architecture.