Open source · Tauri + Rust · Linux

Every claude session, in its own real terminal

Mandor runs the genuine interactive claude CLI in a terminal per session — native prompts, slash commands, resume, remote control — and keeps every session in one window you can actually navigate.

No reimplementation. It hosts the real CLI — nothing parsed, nothing faked.

The Mandor window: a sidebar of grouped claude sessions beside an active terminal running interactive Claude Code.
Why Mandor

Be the best possible shell around the real CLI — and reimplement none of it.

I built this for my own working day. My work is spread across separate repos — backend, frontend, research — and a single ticket usually spans more than one of them: one touching both BE and FE means two sessions, in two repos, at two different stages. Terminal tabs stop scaling right about there: which one's in which repo, which is waiting on you, which were you about to resume? Mandor keeps each session a genuine terminal and gives the pile a home.

What you get

Everything around the session that a terminal leaves out.

Everything below wraps the real session — so full CLI fidelity comes for free, and the management layer is all upside.

Session sidebar

Group sessions, drag to reorder, and read state at a glance — which are working, which need you.

New & resume

Start in any directory with a recent-directory picker, or resume an existing session. Worktrees, model, and remote control supported.

🕶

Incognito sessions

Run against a throwaway config directory so nothing lands in your ~/.claude history.

Themes & fonts

Catppuccin flavors, a Ghostty-style dark, or paste your own palette. Any monospace family, point sizing, optional ligatures.

🔔

Attention & bell

A titlebar bell, desktop notifications, and an audible chime the moment a background session finishes or asks for input.

Split view

Tile up to four sessions in one window — the backend and frontend halves of the same ticket, side by side.

Suspend idle sessions

Stop an idle session's claude to reclaim its memory while keeping it resumable — by hand, or automatically after N hours. Pin the ones that must keep running.

Find, pop-out, PRs

Search within a session, pop one into its own window, and see a badge when a session has an open pull request.

How it works

A pseudo-terminal per session. That's the whole trick.

01

Pick a directory

Point Mandor at any folder — a repo, a worktree, anywhere you'd normally launch the CLI.

02

It spawns real claude

Mandor opens a PTY and runs interactive claude inside it, rendered with a full terminal emulator.

03

Switch freely

Every session keeps running in the sidebar. Flip between them instantly; reconnect after a reload.

Get started

Install the build, or run it from source.

Download the latest release — Linux (.deb, .rpm, AppImage), a macOS universal .dmg, or a Windows .exe. Mandor launches claude from your PATH, so make sure the CLI runs in a terminal first.

Tested on Ubuntu only. I use Mandor daily on Ubuntu 26.04; the macOS and Windows builds compile and install, but I don't run them day to day. The macOS .dmg and Windows installer are also unsigned, so both will warn on first launch.

Install (Linux)
# Debian / Ubuntu
sudo dpkg -i Mandor_*_amd64.deb
# Fedora / RHEL
sudo dnf install ./Mandor-*.x86_64.rpm
# any distro (Arch/CachyOS included)
chmod +x Mandor_*.AppImage && ./Mandor_*.AppImage
macOS (unsigned)
# open the .dmg, drag to Applications, then on
# first launch right-click the app → Open, or:
xattr -cr /Applications/Mandor.app
Windows (experimental)
# run the installer; it is unsigned, so
# SmartScreen warns → More info → Run anyway
Mandor_*_x64-setup.exe
Build from source
bun install
bun run tauri build
# → src-tauri/target/release/bundle/
A word on scope

This is one person's workflow. Fork it.

Mandor is shaped end to end by how I work — the grouping, the defaults, the shortcuts, what earns a notification and what doesn't. That's the point: it's a tool I use every day, not a product trying to suit everyone.

So if something here doesn't fit your style, don't wait on me — fork it and make it yours. That's the intended outcome, and the GPL-3.0 license guarantees you can. Issues and pull requests are welcome too, but a fork that fits your day beats a feature request that half-fits mine.

Credits

Built on good open source.

Mandor stands on the work of others — with thanks to the projects and creators below.

Framework

Tauri

The Rust-powered desktop shell — windowing, tray, and native plumbing.

Terminal

xterm.js

Renders every live PTY session inside the app.

Typeface

JetBrains Mono

The default terminal font. SIL Open Font License.

Sound

Notification bell

“Film special effects — short digital notification alert” by Pixabay. Pixabay Content License.