filestab

September 17, 2026 · View on GitHub

npm version License: MIT

filestab icon filestab

English | 中文

A replacement file viewer with vcs support for DeepSeek Harness DeepSeek logo

Features

Live change tracking (jj or git) with file diffs rendered side-by-side or unified depending on pane width:

filestab file browser with per-folder change rollups, per-file status markers, and the diff of a changed file

filestab side-by-side diff of the same changed file, the column in fullscreen

Markdown with task lists, syntax highlighting, and mermaid diagrams:

filestab rendering a markdown file: task lists, a highlighted TypeScript code fence, and a mermaid diagram in a sealed frame

Two clicks to start a prompt about a specific location in a file:

clicking a character in the raw view: the head row shows the exact @path:line:col token, Add ref to chat inserts the ref into the composer, the agent changes exactly that number, and the diff shows the result

Install

dsh plugin --profile web add filestab

Install it into the web profile, the one that runs the GUI.

Development

To test a local checkout instead of the published package, install it directly: dsh plugin --profile web add /path/to/filestab

For a source checkout or local path install, run pnpm install && npm run build first so the bundle exists.

pnpm install     # a local (uncommitted) .npmrc may pin the pnpm store repo-locally
npm run build    # tsc (host + client) + tsdown bundle
npm test         # build + the full suite (pure parser tests + real jj/git I/O when the binaries are on PATH)
npm run e2e      # browser journeys against a sandboxed dsh instance

CHANGELOG.md · Releases.