Skip to content

Repository files navigation

Monet

Monet

Multi-engine mission control for Claude Code and Codex

中文说明

License Latest Release CI

platform Tauri Vue Rust TypeScript

FeaturesInstallBuildPrivacyFAQ

Don't feel like reading? Hand this line to your AI — it will assess, install, and troubleshoot for you:
Read https://raw.githubusercontent.com/zenolab124/monet/main/llms.txt
If you are that AI: read the llms.txt above and follow its guidance to serve your user.

Monet workbench — multi-column sessions, session monitor, inline HTML rendering, and live background agents

What is Monet?

Every conversation you have with a coding agent is scattered across terminal windows — close one and it's gone, run several and you can't keep up, start a long task and all you can do is wait.

Monet gathers Claude Code, Codex, and future engines onto one wall: every session browsable, searchable, and commandable in parallel. The agent does the work; Monet gives you eyes and hands.

Why Monet?

Command your agents like a trader watches the market. Unlimited parallel session columns spread out horizontally; the monitor rail shows every session's status, output, and token spend at a glance. Approve permissions, answer questions, retry failures — one click on the card. You stop being the person alt-tabbing between terminals and become the one at the command desk.

A home for multi-channel players. Official subscription, third-party APIs, self-hosted proxies, local models — each session on its own channel, hot-switchable mid-conversation: a strong model for the hard turn, a cheap channel for the chores. "Follow CLI" and "Official Direct" stand side by side, and the settings page shows exactly where your CLI config points.

Your data stays yours. Engine transcripts are read-only by architecture: Claude Code JSONL and Codex session files are never written. Codex runtime operations use the local official App Server when its CLI is installed, without rewriting rollouts. Zero telemetry and no Monet account system; titles, tags, stars, and soft-delete markers live separately in ~/.monet/, so uninstalling leaves original sessions untouched.

It works while you sleep. Scheduled tasks run through the OS scheduler even with Monet closed; your Mac can wake itself on time, run the task, and go back to sleep. System notifications call you back whenever needed — you can walk away, the work doesn't stop.

Features

Multi-engine system — Claude Code and Codex together

  • Archive, search, Workbench, and notifications can hold Claude Code and Codex sessions at the same time, with engine badges and filters throughout
  • Codex reads existing history directly from its local session files; when the CLI is installed, the local codex app-server adds create/resume, streaming, sending while a turn is running, interruption, command/file/permission approvals, and dynamic model/effort discovery
  • Engine Center reports installation, authentication, version, capabilities, and diagnostics independently; one broken engine does not block another
  • The internal Engine Adapter contract unifies identity, history sources, timelines, runtimes, capabilities, and optional facets, so another engine needs no new top-level IPC or shared storage schema
  • Claude Code keeps its mature native Workbench, channels, Workshop, and automation features; every other surface is capability-driven and hides actions that cannot succeed

Workbench — parallel session command

  • No cap on column count; when the screen runs out, scroll horizontally — wheel input glides like a native trackpad
  • Monitor rail overviews every session: live status, tail output, token usage; approve/retry/answer right on the card
  • Permission requests as GUI cards: dangerous commands flagged in red, AI annotates the risk in plain language; Enter to allow, Esc to deny
  • Race mode: broadcast one question to different models/channels, compare answers and cost side by side

Race mode — one question broadcast to four models, thinking and answers compared side by side

Session running — the CLI session, now in a GUI

  • True character-level streaming; first-token latency down to the API's first token
  • Hot-switch channel / model / thinking effort mid-session — no process restart, no lost context
  • File ledger: which files this session touched, every diff, one click back to "why the AI changed it"
  • Runner supervises your dev server: logs right next to the session, errors fed to the AI in one click
  • Sessions running in your terminal are auto-detected and followed live — you can even terminate them from Monet

Reading experience — one engine for live and past

  • Three tool-call display modes: full cards, collapsed items, or grouped consecutive processes; expanding preserves purpose-built features such as side-by-side Edit diffs and separately copyable Bash sections
  • Inline HTML/SVG rendering in replies: comparison cards, tables, diagrams — no more walls of text
  • Anchor navigation + pinned prompts + back-to-bottom float: glide through sessions hundreds of turns long
  • Per-turn token quadruple and a context-usage bar that warns before overflow — see where the money goes, live

Archive & search

  • Zero import: install and your whole history is there, organized by project
  • Millisecond full-text search; can't recall the keyword? Ask in natural language and AI synthesizes the answer
  • AI-generated titles, tags, and summaries — stored outside the JSONL, of course

Automation

  • "Summarize yesterday's sessions every morning at nine" — natural language becomes a scheduled task
  • Wakes the machine from sleep, runs, puts it back to sleep; authorize once, silent thereafter
  • Real hooks statistics: configured ≠ working — see which hooks actually ran in the last 7 days

Scheduled routines — natural-language instructions with cron schedules, run by the OS scheduler

Always-on glances

  • Menu-bar subscription quota: Claude Code and Codex appear as vertically ordered provider sections, preserving the windows, groups, and reset countdowns each upstream actually supplies — visible with the main app closed
  • Desktop widgets: streaks, token pulse, 28-day heatmap, model mix
  • Cost estimation prices four token classes separately; unknown models are honestly labeled "unpriced" — never guessed

Desktop widgets — streaks, token pulse, 28-day heatmap, model mix, and cost estimation

AI value-add (BYOAI)

  • Monet ships no model and charges nothing for AI — every capability runs on your own channels and quota, each toggleable, fully audited
  • Built-in MCP server: the Claude in your sessions can search your history, create scheduled tasks, and read Runner logs
  • 12 UI languages; name any other language and AI translates the entire interface on the spot

Craft

  • Paper design language: warm, matte, ink-on-paper; a dark Ink theme included
  • No startup flash, ProMotion high refresh, virtual scrolling for huge sessions — details taken seriously, with a performance HUD (Cmd+Shift+M) keeping everything transparent

Permission checkup in the dark Ink theme — separate ledgers for the main app and background runner, every grant visible

Install

Homebrew (macOS):

brew install --cask zenolab124/tap/monet

The fully qualified name makes Homebrew 6 trust only the Monet cask, so no separate brew trust command is needed.

Or download from Releases: macOS .dmg / Windows installer.

macOS 11+ (Apple Silicon) gets the full experience; Windows covers the core features, with system-level integrations (widgets, menu bar, wake-from-sleep) being macOS-only.

First launch (macOS 15+): Monet is signed but not yet notarized by Apple. Open Monet once from Applications and dismiss the warning, then immediately go to System Settings → Privacy & Security, click Open Anyway in the Security section, confirm, and enter your login password. The button appears only after a launch attempt and remains available for about an hour. Do not run xattr to remove macOS security attributes. In-app updates work normally afterwards.

Works out of the box, zero import: local Claude Code and Codex history is detected automatically and appears in one Archive, even when the corresponding CLI is not installed. Installing the Codex CLI adds interactive runtime features; inspect each engine under Settings → Engines.

Build from Source

Prerequisites

  • Node.js 22+
  • pnpm 10+
  • Rust 1.77+
  • Xcode Command Line Tools — xcode-select --install

Development

git clone https://github.com/zenolab124/monet.git
cd monet
pnpm install
pnpm tauri dev

Release Build (with widget + signing)

pnpm release

This runs tauri build, compiles the macOS widget extension, embeds it into the app bundle, signs everything, and creates a .dmg.

To set up a local signing identity (recommended — keeps TCC permissions stable across rebuilds):

scripts/setup-signing.sh

Without it, the build falls back to ad-hoc signing — functional, but TCC permissions reset on each rebuild and widgets may not register.

Data & Privacy

What Where Access
Claude Code sessions ~/.claude/projects/ Read-only
Codex sessions $CODEX_HOME/sessions/ and $CODEX_HOME/archived_sessions/ (default ~/.codex/) Read-only; runtime actions use the official CLI App Server when available
Monet metadata (titles, tags, routines) ~/.monet/ Read-write
MCP registration ~/.claude/settings.json Adds monet entry under mcpServers

Local session features work offline, with zero telemetry and no Monet account system. Subscription quota contacts only the official Claude/Codex services and reuses the official clients' existing sign-in state; Monet never proactively refreshes or writes OAuth credentials. Credential discipline: API tokens never enter command-line arguments, and temporary files are deleted right after use.

On upgrade, legacy metadata.json is migrated idempotently to the engine-scoped metadata-v2.json; the old file is never deleted or overwritten. Search cache is rebuilt under search/v2/, partitioned by engine and project. Rolling back leaves the original Claude data usable, and upgrading again does not overwrite newer state.

FAQ

Something broken? Skip the docs — hand this to your AI: Read https://raw.githubusercontent.com/zenolab124/monet/main/llms.txt and help me troubleshoot Monet. It can self-diagnose common issues and, if it's a real bug, file a report with diagnostics attached (no GitHub account needed).

Does Monet replace the Claude Code CLI? No — it's a companion. The CLI does the work; Monet gives you eyes and hands. Sessions started in either show up in both.

Is my session data safe? Read-only by architecture, verifiable in the open source. Delete Monet and your Claude Code data is untouched.

Anything to configure after install? No. If the CLI runs, Monet runs; multi-channel and AI value-add are optional upgrades.

Why does Gatekeeper warn on first launch? Signed but not yet notarized. Try opening once, then grant the one-time exception under System Settings → Privacy & Security → Open Anyway; do not run xattr. Updates are silent afterwards.

Windows / Linux? Windows is supported (core features complete, minus macOS system integrations); Linux has no near-term plans.

Which agents are supported? Claude Code and Codex are supported today. Monet is an engine system rather than two platform-specific branches; another production adapter implements only its protocol and capability declaration. See the Engine Adapter guide.

Tech Stack

Acknowledgments

  • Thanks to the LINUX DO community for the sharing culture and honest feedback
  • Thanks to every early user who filed issues and suggestions

License

MIT

About

Monet — Mission Control for Claude Code. Browse, search, and drive your Claude Code sessions from a native desktop app.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

167 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages