Feature · Terminal UI

The terminal Markdown editor with AI search.

Vim-style modal editing, a split preview that renders as you type, tabs, and the only AI semantic search in a terminal — find notes in natural language, and let AI agents read and write your vault over MCP. Works over SSH, no GUI required.

30-second demo

Watch it work.

A real recording of the TUI you can download today — split editing, tabs, vault-wide search, Mermaid and themes in half a minute.

mddock tui

Real screenshots

This is the product, as it ships.

Captured from the TUI you can download today — no mockups, no renders.

MDDock TUI browse view: file tree on the left, rendered Markdown with a table, code block and quote on the right.
Browse

File tree on the left, fully rendered Markdown — tables, code blocks, quotes — on the right.

MDDock TUI split editing view: syntax-highlighted Markdown source on the left, live rendered preview on the right.
Split preview

Type on the left, watch it render on the right — autosaved moments after you stop.

MDDock TUI browse view with three open files as tabs in the bar under the title, the active tab highlighted.
Tabs

Open a file and it gets a tab — Tab / ⇧Tab to hop while reading, gt / gT in the editor, click to switch, middle-click to close.

MDDock TUI global text search results listing matches with file paths, line numbers and matching text.
Vault-wide search

Press / and search every file at once — Enter jumps straight to the matching line.

MDDock TUI preview rendering a Mermaid flowchart as an indented arrow list in the terminal.
Mermaid

Flowcharts render right in the terminal — no browser, no image export.

MDDock TUI preview rendering LaTeX formulas as Unicode math symbols: summation, integral, square root and superscripts.
LaTeX math

$...$ and $$...$$ render as real math — ∑, ∫, √, super- and subscripts, Greek letters — right in the terminal.

MDDock TUI preview showing a Markdown image rendered inline with true-color half-block characters.
Inline images

Markdown images render as true-color half-blocks in modern terminals — older ones fall back to 256 colors automatically.

MDDock TUI outline panel listing the document's heading hierarchy beside the editor.
Outline

Press o for a heading outline of the current document — j/k to move, Enter jumps to the section.

MDDock TUI title bar showing a git status badge next to the current file name.
Git badges

The title bar shows each file's git state at a glance — modified, untracked, clean.

MDDock TUI shortcut help panel showing every keybinding in a four-quadrant layout.
Discoverable

Press ? anywhere and every shortcut appears. No manual required.

MDDock TUI first-run onboarding screen with a colorful ASCII-art logo and guided hints.
First run

Open any folder and it just works — a guided first screen orients you in seconds.

Four themes

Dress your terminal for the occasion.

Catppuccin Mocha and Latte, Tokyo Night, Gruvbox — every pane, table and code block re-tinted, in true color.

MDDock TUI in the Catppuccin Mocha theme — dark, soft pastels.
Catppuccin Mocha
MDDock TUI in the Catppuccin Latte theme — light, calm contrast.
Catppuccin Latte
MDDock TUI in the Tokyo Night theme — deep blue night palette.
Tokyo Night
MDDock TUI in the Gruvbox theme — warm retro earth tones.
Gruvbox

Press t inside the TUI for the theme picker — j/k previews each theme live, Enter keeps it — or type :theme <name>. Your pick is remembered across sessions, over SSH too.

Why the terminal

Everything the GUI does, at keyboard speed.

The TUI is not a stripped-down viewer — it shares the same files and the same recall index as the desktop app.

AI semantic search, in a terminal

Ask in natural language, get answers grounded in your own notes. The built-in MCP server lets Claude Code, Cursor and other AI agents read and write the same vault.

Split live preview

On a wide terminal the editor splits automatically: source on the left, rendered preview — including your unsaved buffer — on the right. :split toggles it.

Vim-style modal editing

Helix-flavored modal editing with syntax highlighting — i to insert, Esc to go back. Type / inside the editor for a slash menu of headings, tables and lists.

Autosave

Pause for a second and a half and every open tab is written to disk — :w is history.

Tabs

Open as many files as you like — every open becomes a tab. Tab / ⇧Tab (or gt / gT in the editor) to switch, click the tab bar, middle-click to close.

Vault-wide text search

Press / (or :grep) to search every file at once — case-insensitive, literal, Enter jumps to the match. The fast path next to AI search.

Mermaid diagrams

Flowcharts and sequence diagrams render right in the preview; other diagram types degrade gracefully to code blocks — never a crash.

Watches the disk for you

git pull, the desktop app, or an AI agent editing files? The tree and previews refresh automatically — and your unsaved changes are never overwritten.

Four themes, mouse included

Catppuccin Mocha & Latte, Tokyo Night, Gruvbox in true color — plus full mouse support: click tabs, open search hits, scroll anywhere.

Images, right in the terminal

Markdown images render inline as true-color half-blocks in iTerm2, kitty and other modern terminals, with an mtime cache so re-renders are instant. Older terminals degrade to 256 colors; terminals with no graphics get a clean placeholder.

LaTeX math that reads like math

Inline $...$ and block $$...$$ render as Unicode math — ∑, ∫, √, superscripts, subscripts, Greek letters — so technical notes stay readable without leaving the terminal.

Document outline

Press o for a sidebar of the document's headings — j/k to move, Enter to jump. Long specs stop being scroll marathons.

:export to self-contained HTML

One command — :export report.html — writes a standalone HTML file of the current document, styling included, ready for anyone without MDDock.

Not just a pager.

glow renders Markdown beautifully, but it is read-only. mrkdup edits, but shows no rendered preview. MDDock is the only terminal Markdown workspace that reads, writes and AI-searches — a rendered preview as you type, inline images and LaTeX math, semantic search over your notes, and an MCP server so AI agents work in the same vault.

Scriptable CLI

One binary, every verb.

The same `mddock` binary drives the TUI and a scriptable CLI — pipe it, cron it, SSH it.

~/notes
$ mddock
# open the TUI in the current directory
$ mddock recall launch scope
# semantic search, returns citable sources
$ mddock search --mode fulltext "deploy"
# full-text search, straight from your shell
$ mddock --help
# every subcommand, documented

macOS / Linux — install the standalone CLI with one command:

curl -fsSL https://mddock.com/install.sh | sh

cd into any folder of Markdown and run mddock — it initializes itself, nothing to configure. Prefer a GUI too? The same CLI ships bundled with the MDDock desktop app: one download, both interfaces.

Download MDDock →

Frequently asked questions

Does the MDDock TUI work over SSH?+
Yes — it is a single terminal binary with no GUI dependencies. On the remote machine run `curl -fsSL https://mddock.com/install.sh | sh`, then `mddock tui` — your whole vault is editable inside any SSH session, tmux included.
How is MDDock different from glow?+
glow renders Markdown beautifully but is read-only — to change anything it shells out to another editor. MDDock is a full terminal workspace: a vim-style editor, split live preview, tabs, full-text and AI semantic search, and an MCP server, all in the same binary. See the detailed breakdown at /compare/glow.
Do I need the desktop app to use the terminal version?+
The `mddock` CLI ships inside the free desktop app, so one download gives you both. The TUI works standalone on any folder of Markdown files — no account and no cloud required.
Does it have vim keybindings?+
Yes. Modal editing with normal / insert / visual modes, `:w` `:q` `:tabnew` ex-commands, `gt` / `gT` to switch tabs, `/` to search the vault — plus full mouse support (tree clicks, scrolling, tab switching) when you want it.
What can the AI search in the terminal actually do?+
Ask in natural language — "that note about Postgres connection pooling" — and get citable hits from your vault. It is local-first: embeddings are computed on your machine, and AI agents can query the same index over MCP. A classic keyword search (`/` or `:grep`) is built in too.
Can a terminal really show images and math formulas?+
Yes. Images render inline as true-color half-block characters in modern terminals (iTerm2, kitty, WezTerm — older ones fall back to 256 colors), and LaTeX $...$ / $$...$$ renders as Unicode math symbols — ∑, ∫, √, super- and subscripts. A terminal that can't draw images at all gets a clean placeholder, never garbage.
Can I manage files without leaving the TUI?+
Yes — :rename and :delete (with confirmation) handle file chores in place, y/p yank and paste through the system clipboard, and saves are atomic (write-temp-then-rename), so a power cut mid-save never corrupts a note.
How do tabs work when I open several files?+
Opening a file creates a tab — while reading, Tab / ⇧Tab hops between open files and the tree selection follows. Inside the editor use gt / gT, click the tab bar with the mouse, or middle-click a tab to close it. :tabclose / :qa shut a tab or everything at once.

Turn your documents into an AI-readable knowledge base

Try the free tools in your browser, then download the desktop app to keep everything local.