Lumbergh

A self-hosted dashboard for supervising multiple Claude Code sessions. Micromanage your AI interns from any device.

Get Started Documentation View on GitHub
Lumbergh dashboard showing multiple active Claude Code sessions
Install and run -- it takes 30 seconds:
uv tool install pylumbergh
lumbergh
# open http://localhost:8420
Requires tmux and git (checked on startup). No uv? Use pip install pylumbergh.

What You Get

Live Terminals

Stream and interact with real terminal sessions via xterm.js and WebSockets.

Git Diff Viewer

Watch diffs, commits, and branch changes in real time as the AI works.

Git Graph

Interactive commit graph visualization per session.

File Browser

Browse project files with syntax highlighting, right from the dashboard.

Multi-Session

Run and monitor multiple AI coding sessions from a single dashboard.

Multi-Agent

Works with Claude Code, Cursor, Aider, Gemini CLI, OpenCode, and Codex.

Advanced Git

Commit, amend, rebase, cherry-pick, stash, branch management — all from the UI.

Todos & Notes

Per-project todo lists and scratchpads to keep your sessions organized.

Prompt Templates

Reusable prompts with variables. Share via Lumbergh Cloud or browse community prompts.

Cloud Sync

Optional cloud backup, prompt sharing, and community prompt discovery.

Password Auth

Optional password protection with cookie-based sessions. Set via env var or settings.

Mobile-First

Responsive design + PWA support. Install it on your phone or tablet.

See It In Action

Live terminal with Claude Code session and git diff panel
Live terminal + real-time git diff side by side
File browser with syntax-highlighted code preview
Browse project files with syntax highlighting
Git diff viewer showing commits and changes
Track every change the AI makes
Todo list for tracking tasks per project
Per-project todos to keep sessions on track

1. Install & Launch

  1. Install the prerequisites

    You just need tmux and git:

    sudo apt install tmux git    # Debian/Ubuntu
    brew install tmux git         # macOS
  2. Install Lumbergh

    With uv (recommended):

    uv tool install pylumbergh

    Or with pip:

    pip install pylumbergh
  3. Run it

    lumbergh

    Open http://localhost:8420 in your browser. That's it.

Windows users: use WSL

Lumbergh works great inside WSL (Windows Subsystem for Linux). Install WSL with wsl --install from PowerShell, then follow the Linux instructions above inside your WSL terminal. Access the dashboard from your Windows browser at http://localhost:8420 — WSL forwards ports automatically.

Want to develop or contribute?

Clone the repo and use the bootstrap script instead: git clone https://github.com/voglster/lumbergh.git && cd lumbergh && ./bootstrap.sh. This sets up a full dev environment with hot-reloading frontend and backend. You'll also need uv, Node.js, and Claude Code.

2. Using Lumbergh

The Dashboard

The home page shows all your sessions as cards, split into Active and Inactive groups. Each card shows:

Click any card to open the session detail view.

Terminal Tips

Selecting & copying text in terminals

Since tmux captures mouse events, you need to hold Shift while clicking and dragging to select text in the browser terminal. Shift+click bypasses tmux and lets your browser handle selection normally. This applies to copy and paste too — use Shift+Right-click for the browser context menu.

Session Detail Tabs

Each session has a left pane (terminal) and a right pane with these tabs:

Quick Input Bar

The input bar at the bottom of the terminal lets you type and send text to the active session. You can choose to send text only (for composing multi-line input) or send with Enter to execute immediately. Switch between tmux windows using the window selector buttons.

Creating Sessions

Click "+ New Session" on the dashboard. There are three modes:

Lumbergh auto-generates a URL-safe session ID from the name (e.g., "Auth Feature" becomes auth-feature) and creates the tmux session for you.

Create new session modal with Direct and Worktree modes
Create a session by pointing at a repo or creating a git worktree

Prompt Templates

Build a library of reusable prompts to fire at any session with one click. Templates support two scopes:

In edit mode you can reorder templates via drag-and-drop, move between scopes, and delete. Templates persist across restarts.

Running the dev servers manually

If you're developing and prefer to manage servers yourself, run ./start.sh (or ./backend/start.sh and ./frontend/start.sh separately). The Vite dev server runs on :5420 with hot reload; the production install (lumbergh) serves everything on :8420.

3. Configuration

Click the gear icon in the top-right corner of the dashboard to open Settings.

General Settings

Settings modal showing general configuration
General settings: repo search directory and git graph config

AI Provider Setup

Lumbergh uses AI to auto-detect what each session is working on and to generate context-aware commit summaries. Configure an AI provider in the AI tab of Settings. Supported providers:

ProviderWhat You Need
Ollama (local) Base URL (default http://localhost:11434). Models auto-discovered.
OpenAI API key. Models: gpt-4o, gpt-4o-mini, gpt-4-turbo, gpt-3.5-turbo.
Anthropic API key. Models: Claude Sonnet 4, Claude Opus 4, Claude 3.5 Sonnet, Claude 3.5 Haiku.
Google AI API key. Models: Gemini 3 Flash Preview (1M context), Gemini 2.5 Flash, Gemini 2.5 Flash Lite.
OpenAI Compatible Base URL + optional API key. Use with any OpenAI-compatible endpoint.
Lumbergh Cloud (free) No API key needed. Connect your account via device code flow in the Cloud tab.
AI provider settings with model selection
Pick your AI provider and model — supports Ollama, OpenAI, Anthropic, Google AI, and any OpenAI-compatible endpoint
Recommendation: use a fast, cheap model

AI is used for short summaries and status detection, not complex reasoning. A small local Ollama model or gpt-4o-mini works great and keeps costs near zero.

What the AI does

Dark Mode / Light Mode

Toggle between dark and light themes using the sun/moon icon in the top-right corner of the dashboard. Your preference is saved to local storage and persists across sessions. Theme applies to everything including syntax highlighting, diff colors, and the git graph.

Lumbergh dashboard showing dark mode and light mode side by side
Dark and light themes — toggle with one click

Password Authentication

Lumbergh supports optional password protection. When a password is set, all routes require authentication via a login page. There are two ways to set a password:

Sessions use HMAC-signed cookies that last 30 days. Restarting the server invalidates all sessions (signing key is regenerated). If no password is configured, auth is completely disabled.

Lumbergh Cloud

Lumbergh Cloud is an optional companion service that adds cloud features while keeping the app fully functional offline. Connect via the Cloud tab in Settings using a device code flow (no API keys needed).

Data Storage

All data lives in ~/.config/lumbergh/:

No database server needed — it's all flat JSON files via TinyDB.

4. Use From Your Phone

Lumbergh is designed to be used from a phone or tablet. The UI is fully responsive and supports installation as a PWA (Progressive Web App).

Lumbergh mobile dashboard view
Dashboard on mobile
Lumbergh mobile session detail with terminal
Session detail with live terminal

Secure Remote Access with Tailscale

The recommended way to access Lumbergh from your phone is via Tailscale, which gives you a private, encrypted connection without exposing ports to the internet.

  1. Install Tailscale

    Install on both your server and your phone/tablet. It's free for personal use.

  2. Connect and browse

    Open http://<your-tailscale-ip>:8420 on your phone. That's it.

  3. Install as PWA (optional)

    In your mobile browser, tap "Add to Home Screen" for an app-like experience with no browser chrome.

Optional password protection

Lumbergh supports optional password authentication. Set a password via the LUMBERGH_PASSWORD environment variable or in the Security tab of Settings. When enabled, users must log in before accessing the dashboard. Cookie-based sessions last 30 days. If no password is set, auth is disabled and Lumbergh trusts your network — use Tailscale or an SSH tunnel if you don't set a password.

“Being able to code anywhere is a real game changer. Before, I had to lug around my laptop — now I just pull out my phone.”

— @jcamierpy24

Troubleshooting

Terminal not connecting?

Make sure tmux mouse mode is on: tmux set -g mouse on. The bootstrap script does this automatically, but if you started manually you may need to set it.

Port already in use?

Lumbergh runs on :8420 by default. Use lumbergh -p 9000 to pick a different port. In dev mode, the backend runs on :8420 and the Vite frontend on :5420.

Dependencies not installing?

Run ./bootstrap.sh again — it will tell you exactly what's missing. For Node issues, make sure nvm is loaded in your shell (source ~/.nvm/nvm.sh).

Ready to put your AI interns to work?

Two commands. Open your browser. Start supervising.

uv tool install pylumbergh
lumbergh
# open http://localhost:8420
Or pip install pylumbergh if you prefer pip.