Overleaf-style LaTeX paper workbench: annotate any text in the rendered PDF and let a dsh agent revise the sources with compile checks and git history.
Install
# from npm (prebuilt)
dsh plugin --profile web add dsh-paperlab
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:maple-pwn/paperlab
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
PaperLab
An Overleaf-style paper revision workbench, powered by a DeepSeek Harness plugin.
中文 · Quick Start · Architecture · Contributing
Edit LaTeX and see the real rendered PDF in one place. Select any text to annotate, then let a DeepSeek Harness agent revise the paper annotation by annotation — with compile verification, git commits, diffs, rollback, and export.
✨ Features
| 🖥 UI | 📄 Annotation | 🤖 AI revision |
|---|---|---|
| Overleaf-style three panes, draggable | Select any text in the PDF to comment | dsh agent: read annotations → uniquely-matched edits → compile check → git commit |
| Source edits auto-save and auto-compile | Yellow highlights pinned by page coordinates | Wide-screen trace streams reasoning / tool calls / output with timer and LIVE badge |
| True PDF rendering (formulas, figures, layout) | "Locate" shows the pre-revision text in a red popup | Switch model / reasoning effort / agent preset in the workbench |
| 📜 Versioning | 📦 Engineering |
|---|---|
| Every project is a git repo with AI checkpoints | One-click export: sources (+ annotations) / PDF / git history |
| History browser, arbitrary diffs, one-click revert | Auto XeLaTeX detection, respects latexmkrc, multi-engine fallback chain |
🔄 Workflow
🏗 Architecture
The AI engine runs entirely inside DeepSeek Harness; the workbench never calls model APIs directly.
| Part | Stack | Responsibility |
|---|---|---|
web/ |
React + Vite + PDF.js | three-pane UI, PDF text selection, trace view, history/export |
server/ |
FastAPI | project management, LaTeX compile, annotations, git history, static hosting |
plugin/ |
DeepSeek Harness bundle (TypeScript) | paper-revision tools + HTTP trigger + model/preset settings proxy |
See docs/architecture.md.
🚀 Quick Start
Prerequisites: Node.js ≥ 20, pnpm ≥ 10, Python ≥ 3.11, git, DeepSeek Harness (dsh). LaTeX is optional.
git clone https://github.com/maple-pwn/paperlab.git
cd paperlab
./start.sh # or make start
Open http://127.0.0.1:8210.
🔑 Credentials belong to dsh: configure them on the Models page of the dsh Web UI (http://127.0.0.1:3080). PaperLab never touches your API keys.
📦 Installing the plugin
The repository root is an official-format dsh bundle (dsh.bundle + cordis.patch.yml + prebuilt lib/):
dsh plugin --profile paperlab add dsh-paperlab # npm
dsh plugin --profile paperlab add github:maple-pwn/paperlab # GitHub
dsh plugin --profile paperlab add . # local development
⚠️ Installing a plugin runs third-party code with your permissions. Review the source and try it without your credentials first.
🧪 Tests
make test
📄 License
MIT © 2026 PaperLab contributors
🔗 Community
- Join the DeepSeek Harness plugin ecosystem (topic:
dsh-plugin) - Issues & ideas: GitHub Issues
Links
More in this category
tt-a1i/archify#integrations/deepseek-harness★ 74360
Generate validated, self-contained interactive architecture, workflow, sequence, data-flow, and lifecycle diagrams from repositories or system descriptions.
dream-num/dsh-univer-office★ 442
Give DeepSeek Harness a real office environment. Univer Office Plugin brings spreadsheets, docs, slides, canvases, relational tables, and more into one runtime — with connected data, validation, versioned changes, and isolated worktrees for multi-agent collaboration.
PerryLink/dsh-industry-research★ 186
Deterministic industry research reports for DeepSeek Harness — company and industry research flows produce structured, verifiable reports from staged evidence.
HuanLinOTO/dsh-plugin-mineru★ 47
Expose MineRU document parsing tools to the model.
kw78/dsh-office-tools★ 26
Workspace-safe Office tools for agents: create/read Word, create/read/update Excel, and create/read PowerPoint decks with PNG/JPG/GIF image placement.
PolinniZhong/dsh-knit★ 18
Lists the Markdown documents, images and video that already exist anywhere in the session workspace in the DSH sidebar, ranked by relevance to the current conversation: recent messages are matched locally against document title, summary and body with IDF weighting, with no model calls and no network. Because the list is scanned from the workspace instead of remembered, restarting DSH or starting a new session does not empty it. Images and video preview in place, with relative-path images resolved and video streamed over HTTP Range. A references bar under the preview header shows which documents cite the one being previewed and which it cites, with one click to jump between them. The same ranking is exposed to the agent as a knit_docs tool, which returns the most relevant documents along with the passage that matched in each, where one is found.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.