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★ 96245
Generate validated, self-contained interactive architecture, workflow, sequence, data-flow, and lifecycle diagrams from repositories or system descriptions.
dream-num/dsh-univer-office★ 717
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.
Roland0511/dsh-marktext★ 604
WYSIWYG Markdown editor in the DSH right sidebar, built on MarkText's muya engine: open a .md file, edit it as a rendered document, and save back through ctx.fs with a version guard.
ECNU/EduWork#dsh-knowledge-studio★ 354
A workspace-based Studio for source-grounded reports, slides, tables, mind maps, quizzes, flashcards, audio and video, using DSH models and shared artifact services. Office generation requires Python 3.12+ with its dependencies and DSH_OFFICE_PYTHON configured; media rendering requires Chromium, and local ASR additionally requires whisper.cpp and a model.
PerryLink/dsh-industry-research★ 219
Deterministic industry research reports for DeepSeek Harness — company and industry research flows produce structured, verifiable reports from staged evidence.
joeseesun/qiaomu-ui-learn-dsh★ 84
Browse UI design references and interaction examples, take design quizzes, and export learning notes as Markdown.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.