{"slug": "dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you", "title": "DockTerm: A notch mascot that tells you when Claude Code needs you", "summary": "Munetic released DockTerm, a free, open-source (MIT) terminal-first workspace for Anthropic's Claude Code that keeps the user's real `claude` session and adds checkpoints, live subagent activity, diff review, safe Git staging and commit, file and MCP panels, and 5-hour and weekly usage limits with reset times. DockTerm's munu mascot displays Claude's state in the macOS notch or pinned anywhere on screen and surfaces permission prompts even over a fullscreen app on another desktop. DockTerm runs on macOS, Windows and Linux with no account and no telemetry, and never calls an AI of its own.", "body_md": "English | [简体中文](https://github.com/munvard/dockterm/blob/main/README.zh-CN.md)\n\n**Run Claude Code, then go do something else.**\n\n  A terminal-first workspace for [Claude Code](https://www.anthropic.com/claude-code) — keep your real `claude` session, with checkpoints, live agents, diffs, Git, files, MCP & usage one keypress away.\n\n  And **munu**, a face in your notch — or pinned anywhere on screen — tells you the moment Claude needs you, even in a fullscreen app on another desktop.\n\n**macOS, Windows and Linux.** Free, open source (MIT), no account, no telemetry.\n\n[Download](#install) · [Website](https://munetic.net/dockterm) · [Report a bug](https://github.com/munvard/dockterm/issues)\n\n<sub>One calm window — your real `claude` sessions front and center, with files, diffs, Git, MCP and usage on demand. A project per pane.</sub>\n\n## dockterm-demo.mp4\n\n**▶ Watch the 54-second tour**(sound on)\n\n- 🔔 **munu** — a notch mascot (or pin it anywhere) that reads Claude's state and surfaces permission prompts, even over a fullscreen app on another desktop. Pick your face: munu, nvurd, guru, or adanana.\n- 🧭 **Checkpoints for your Claude chat** — see the prompts in the current session, jump back to them, and hand off restores to Claude's own`/rewind` .\n- 🛰️ **Live agent activity** — when Claude spawns subagents, DockTerm shows the count, what they are doing, elapsed time, and finished results.\n- ✂️ **Send selection to Claude** — select terminal text and send it into Claude as a referenced snippet, without building a separate chat UI.\n- 📊 **Usage at a glance** — how much of your**5-hour and weekly limits** is left, and exactly**when they reset** — live, in a panel and a top-bar pill.\n- 🔍 **Diff review + safe Git** — see exactly what changed, then stage and commit, without leaving the terminal.\n- 🗂️ **Files, editor, MCP, skills & agents** — they appear when you ask and vanish when you don't. Multi-select files, send paths to Claude, or drag real files into other apps.\n- 🪟 **A project per pane** — a grid where each pane is a different repo; the side panels follow whichever you focus. Drag panes to reorder.\n- 🔒 **Local-only** — no accounts, no telemetry; it never calls an AI of its own.\n\nRunning Claude Code means living next to a terminal — alt-tabbing to read a diff, to commit, to check whether it's stuck on a `[y/n]`. DockTerm keeps that terminal central and brings the rest to you, so you can let Claude work and actually step away. Claude Code does the work; DockTerm is the calm window around it.\n\n**It keeps your real `claude` — it doesn't replace it.** Unlike Claude Code GUIs that swap your terminal for a custom chat UI (Claudia/Opcode), DockTerm wraps your actual session and builds views around it. Nothing to relearn, and it stays compatible as Claude Code evolves.\n\n|  | Raw terminal | Full IDE | Claude GUIs | **DockTerm** | \n|---|---|---|---|---|\n| Keeps your real `claude` session | ✅ | ✅ | ❌ replaces it | ✅ | \n| Highlighted diff review of Claude's changes | ❌ | ✅ | ~ | ✅ | \n| Stage & commit without raw `git` | ❌ | ~ | ~ | ✅ | \n| Tells you when Claude needs you (even fullscreen) | ❌ | ❌ | ❌ | ✅ **munu** | \n| Shows Claude subagents while they run | ❌ | ❌ | ~ | ✅ | \n| Checkpoints for the current Claude session | ❌ | ❌ | ~ | ✅ | \n| Send selected terminal text back to Claude | manual | manual | ~ | ✅ | \n| Usage limits & reset times at a glance | ❌ | ❌ | ❌ | ✅ | \n| Stays out of the way | ✅ | ❌ heavy | ~ | ✅ | \n| No telemetry, local-only | ~ | ❌ | ~ | ✅ | \n\n*A terminal alone can't show a highlighted diff of what Claude changed, or let you commit safely, or tell you Claude is waiting while you're in another window. Opening a full IDE to review three lines breaks the flow. DockTerm sits in between.*\n\nDockTerm reads Claude's state from the terminal output and shows it as **munu**, a small face near your menu bar — in the notch, on a MacBook. At a glance you can tell whether Claude is working, finished, or waiting for a `[y/n]`, even when DockTerm is behind another window. When Claude pauses to ask permission, munu surfaces the prompt so you can answer with one click — including multi-choice and free-text answers — and never lose your flow. It infers everything from the terminal; it **never auto-answers** and **never calls an API**.\n\n<sub>Go watch something fullscreen — munu floats over it (even on another desktop/Space) and brings Claude's prompt to you, so you never miss it.</sub>\n\nBy default munu tucks into the notch, slides out on hover, and peeks for a few seconds when Claude's state changes. Prefer it always in view? **Pin it and drag it anywhere on screen** — it stays put and visible wherever you put it. On Windows and Linux it's a small auto-hiding (or pinned) pill at the top of the screen.\n\n| **munu** | **nvurd** | **guru** | **adanana** | \n\n| resting | working | needs you | done | no project | \n\n- **Real terminal** — xterm.js on a native PTY (your real shell). Tabs, splits, grids, true-color, unicode, search, and native, instant scrolling. Drag a pane to reorder the grid.\n- **Chat mode:** press`⌘R` /`Ctrl Shift R` on any pane to read Claude's session as a clean conversation, with a working timer, permission prompts as buttons, and a composer for attachments, smart paste,`/` and`@` menus, history and drafts. Hold the mic to talk through Claude's own voice mode. The real terminal keeps running underneath; press the shortcut again to go back.\n- **Reading comfort:** a docked or floating Reading view of the current conversation, a warm low-glare Reading theme, line height, letter spacing and padding controls with one-tap presets, and Zen mode (`⌘.` /`Ctrl Shift .` ) that dims the panes you're not using.\n- **Claude workflow helpers** — one-click`claude` /`claude --resume` , a checkpoint rail for the current conversation, and a Send to Claude selection toolbar for turning terminal text into a referenced prompt snippet.\n- **Live agent activity** — a top-bar count pill, Activity panel, and munu swarm show Claude Code subagents as they start, run, and finish, grouped by project and read from local transcripts.\n- **Terminal memory after quit** — DockTerm restores each terminal's visible scrollback after a full app quit, so updating the app does not leave you staring at a blank shell. Use`claude --resume` to continue Claude's actual conversation.\n- **Usage limits, live** — a Usage panel and a top-bar pill show how much of your rolling**5-hour** and**weekly** windows remain and**when each resets** , calibrated from your own history. Read locally; tokens-only; nothing leaves your machine.\n- **Diff review** — see exactly what changed since your last commit, this session, or a pinned checkpoint, and open a side-by-side diff for any file before you trust it.\n- **Beginner-safe Git** — grouped status, stage/discard, commit, push/pull, branches, with confirmations on the risky actions that show the exact command they'll run.\n- **Files, editor & previews** — file tree, Monaco editor with a save-conflict guard, image and binary previews; drag a file or folder into a terminal to insert its path, multi-select with`⌘` /`Ctrl` , and drag the actual files into other apps.\n- **MCP, skills & agents** — read-only views of your MCP servers (project, user, claude.ai connectors, and plugin-provided) with secrets masked, plus your skills, slash-commands and subagents; browse and scaffold skills.\n- **A project per pane** — a grid where each pane is a different repo; focus a pane and the side panels follow it, including a live`cd` .\n- **Command palette** —`⌘K` /`Ctrl Shift P` to jump anywhere.\n- **Themes & zoom** — ten themes (incl. Tokyo Night, Catppuccin, Nord, Rosé Pine, an Ubuntu-style Aubergine, and Gruvbox) plus follow-system, and`⌘` /`Ctrl``+ / − / 0` to scale the whole UI.\n- **In-app updates** — DockTerm checks for new releases and can download and install the latest for your platform in one click.\n\nDockTerm does not replace Claude Code with a chat clone. It watches the real terminal and local Claude transcripts, then adds small workflow surfaces around them:\n\n- **Checkpoints rail** follows the focused terminal's active Claude session. It lists your prompts, filters out system/tool noise, jumps back to the selected checkpoint, and opens Claude's own`/rewind` when you choose to restore.\n- **Send to Claude** appears when you select terminal text. In a normal shell it uses the terminal selection; inside Claude Code it can use Claude's copied selection, so the same button still works.\n- **Agent Activity** shows live subagents globally, grouped by project, with elapsed timers and result previews. munu can briefly reveal a small swarm when agent count changes.\n\nDockTerm uses the shortcuts you already know from each platform's default terminal, and never steals keys the shell needs (plain `Ctrl C`/` Ctrl W` always go to the shell).\n\n| Action | macOS | Windows / Linux | \n|---|---|---|\n| New tab | `⌘T` | `Ctrl Shift T` | \n| New window | `⌘N` | `Ctrl Shift N` | \n| Close tab | `⌘W` | `Ctrl Shift W` | \n| Command palette | `⌘K` | `Ctrl Shift P` | \n| Open project | `⌘O` | `Ctrl Shift O` | \n| Files / Git / Review panel | `⌘B` /`⌘G` /`⌘E` | `Ctrl Shift B / G / E` | \n| Chat mode for the focused pane | `⌘R` | `Ctrl Shift R` | \n| Zen mode | `⌘.` | `Ctrl Shift .` | \n| Compose a long prompt | `⌘⇧⏎` | `Ctrl Shift Enter` | \n| Split right | `⌘D` | `Ctrl Shift D` | \n| MCP panel | `⌘⇧M` | `Ctrl Shift M` | \n| Mini terminal | `⌘J` | `Ctrl Shift J` | \n| Settings | `⌘,` | `Ctrl Shift ,` | \n| Zoom in / out / reset | `⌘ + / − / 0` | `Ctrl Shift + / − / 0` | \n| Scroll to top / bottom | `⌘↑ / ⌘↓` | `Shift PageUp / PageDown` | \n| Summon / hide DockTerm (global) | `⌘⇧`` | `Ctrl Shift `` | \n\n**macOS, with Homebrew:**\n\n```\nbrew install --cask munvard/dockterm/dockterm\n```\n\n**Or download** from [Releases](https://github.com/munvard/dockterm/releases):\n\n| System | File | \n|---|---|\n| macOS (Apple Silicon) | `DockTerm-<version>-macOS-Apple-Silicon.dmg` | \n| macOS (Intel) | `DockTerm-<version>-macOS-Intel.dmg` | \n| Windows 10/11 | `DockTerm-<version>-Windows.exe` | \n| Linux (x86-64) | `DockTerm-<version>-Linux.AppImage` | \n\nmacOS builds are **signed and notarized**, so they open normally. Windows builds are unsigned for now — if SmartScreen appears, choose *More info → Run anyway*. Installs per-user, no admin. After that, DockTerm can keep itself up to date from inside the app.\n\nDockTerm is built to be trusted with your code:\n\n- **No telemetry, no accounts, no AI of its own.** It only ever runs*your*`claude` .\n- Usage stats are read from your local `~/.claude` transcripts,**read-only** — token counts only, never message content, and nothing is uploaded.\n- `contextIsolation` and`sandbox` are on; production loads over a custom protocol with a strict CSP and no remote content.\n- Every IPC channel is an explicit, schema-validated verb with a sender check.\n- Filesystem access is jailed to the open project (symlink-safe). Reading `~/.claude` is a separate opt-in.\n- Checkpoints and Agent Activity read local Claude transcript files under `~/.claude` read-only; they do not modify, upload, or execute them.\n- Every `git` call runs with`core.hooksPath=` , so a malicious repo's hooks can't execute.\n- MCP and skill config is read-only and never executed; secrets are shown as key names only.\n\nMore in [docs/SECURITY_MODEL.md](https://github.com/munvard/dockterm/blob/main/docs/SECURITY_MODEL.md).\n\n**Does my code or any data leave my machine?**\nNo. DockTerm has no telemetry and never calls an AI of its own. Usage stats come from your local `~/.claude` transcripts, read-only.\n\n**Do I keep using my normal `claude`?**\nYes — DockTerm wraps your real Claude Code session in a real shell. Nothing to relearn, and it stays compatible as Claude Code evolves.\n\n**Are the usage percentages exact to my plan?**\nAnthropic doesn't expose your exact quota locally, so DockTerm calibrates the percentage from your own history — it tracks your real limits closely (especially once you've hit one), and the **reset times are exact**.\n\n**Windows says \"unknown publisher.\"**\nThe Windows build is unsigned for now: choose *More info → Run anyway*. macOS is signed and notarized.\n\n**Does munu ever answer Claude for me?**\nNever. It only surfaces the prompt; you click. It infers state from the terminal and never calls an API.\n\n```\ngit clone https://github.com/munvard/dockterm && cd dockterm\nnpm install\nnpm run dev        # run with hot reload\nnpm test           # unit tests (vitest)\nnpm run build      # production bundles\n```\n\nRequires Node 22+. Architecture notes are in [CONTRIBUTING.md](https://github.com/munvard/dockterm/blob/main/CONTRIBUTING.md).\n\nEarly but actively developed, used daily, and **built and maintained with Claude Code itself.** It's an Electron app, so the download is fairly large. macOS builds are notarized; Windows is unsigned for now. Bugs and rough edges are expected — [issues](https://github.com/munvard/dockterm/issues) and PRs are welcome.\n\n[MIT](https://github.com/munvard/dockterm/blob/main/LICENSE). Built with Electron, xterm.js, Monaco, and simple-git.", "url": "https://wpnews.pro/news/dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you", "canonical_source": "https://github.com/munvard/dockterm", "published_at": "2026-10-01 23:06:30+00:00", "updated_at": "2026-10-01 23:16:09.690289+00:00", "lang": "en", "topics": ["ai-tools", "ai-agents", "developer-tools", "ai-products"], "entities": ["DockTerm", "Munetic", "Claude Code", "Anthropic", "munu", "MCP", "Claudia", "Opcode"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you", "markdown": "https://wpnews.pro/news/dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you.md", "text": "https://wpnews.pro/news/dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you.txt", "jsonld": "https://wpnews.pro/news/dockterm-a-notch-mascot-that-tells-you-when-claude-code-needs-you.jsonld"}}