Self-hosted · MIT fork of localterm · One tab

The deck your agents work on.

You run coding agents in terminals all day. TermDeck puts those terminals in the browser and wires everything around them: file paths you can click, docs that render, HTML you can annotate and send back to the agent, and a canvas for thinking. Your machine, your files, one tab.

Built on localterm by @monotykamary · wiki inspired by anh-chu/wiki-viewer

TermDeck — the deck your agents work on TermDeck: terminal, wiki, and grid in one browser tab

Terminal

Every tab is a shell. Every shell survives the tab.

A real terminal multiplexer in the browser: sessions keep running when you close the tab, reattach from any device on your tailnet — the phone included. The grid shows every session live, so a wall of agents is one glance.

TermDeck terminal with session sidebar

Click-to-preview

Every file path in output is a link.

Your agent prints report.md, dashboard.html, src/search.ts:42 — in TermDeck those are links. Click one and it opens rendered in a drawer beside the terminal: Markdown with typography, code with syntax highlighting jumped to the line, CSV as tables, images, PDFs, HTML as the actual page. The terminal never moves.

Clicking a file path in terminal output opens a rendered drawer

agent prints paths → click → rendered markdown → click code path → line 42, highlighted

Tweak mode

Point at the pixel. The agent gets the selector.

The drawer renders HTML — a vault file or your deployed app through a same-origin proxy. Toggle Tweak and the page becomes an element picker: click the thing that's wrong, type what should change, and TermDeck sends the agent a structured message — robust CSS selector, element snippet, your note — straight into its terminal session.

Tweak mode: pick an element, write a note, batch and send to the agent

render dashboard.html → tweak mode → pick element → note → batch → “Send 2 tweaks”

Wiki

A reading room for your Markdown.

The same daemon serves your notes as a wiki: serif reading surface, frontmatter panel, reading stats, full-text search, filters, and Obsidian [[wikilinks]] that resolve. Editing is WYSIWYG with slash commands — frontmatter preserved verbatim, markdown round-trips losslessly.

TermDeck wiki reading view

Canvas new

An infinite whiteboard, offline, in the same tab.

The third mode is a tldraw canvas — fully offline (assets bundled, document in IndexedDB, no accounts, nothing leaves your machine). And it understands what you paste: mermaid source becomes a live diagram, a Markdown doc becomes a rendered card — tables, code, and embedded charts included.

Pasting markdown onto the canvas renders it as a card with inline mermaid

paste a markdown doc → rendered card with table + live mermaid flow

Pasted mermaid source rendered as a live diagram shape

paste bare mermaid → a diagram shape; double-click to edit the source in place

Install

Running in a minute.

Node 24+, pnpm. Clone, build, start — then open the printed URL anywhere on your tailnet.

# clone the deck
git clone https://github.com/huytieu/termdeck-localterm
cd termdeck-localterm

# build everything (server + frontend)
pnpm install && pnpm build

# start the daemon
pnpm start
✓ termdeck up on http://localhost:3417