dsh-reading-pad
Manifest validImmersive read-only reading panel for DeepSeek Harness. The model delivers pre-formatted Markdown via the `reading_pad_send` tool into a better-sidebar tab: three low-blue-light themes (Paper/Sepia/Ni
dsh-reading-pad
An immersive read-only reading panel for DeepSeek Harness —— the model pushes a typeset Markdown into your right sidebar, or you flip through the chapters of your current writing project.
中文 · English
What you get
- 📖 AI-delivered prose —— ask the model to push a typeset Markdown through
reading_pad_sendand read it in the panel; the text is rendered as-is, zero processing. - 📚 Manuscript chapters —— switch to the "Manuscript" mode and flip through the chapters of your current writing project, without opening the writing workspace.
- 🎨 Three low-blue-light themes —— Paper (warm white) / Sepia (cream) / Night (dark grey), one-click switch, your choice is remembered.
- 📐 30em measure typography —— line width fixed at 30em (about 30 Chinese characters), line-height 1.6, 2em first-line indent, 0.8em paragraph gap —— designed after a printed book's rhythm, easy on the eyes.
- 🔤 A⁻ / A⁺ font sizing —— zoom between 16 and 20px, reflows automatically.
- 📊 Progress bar + chapter browser —— a thin bar shows where you are in the current chapter; the "Next chapter" button at the end of the chapter never auto-jumps (avoids accidental paging); first and last chapters grey out.
- 💾 Scroll position persistence —— close the tab and reopen it, you continue exactly where you stopped.
- 🔔 New-content badge —— when the AI delivers a new draft and the tab is unfocused, the tab title shows a "New" badge without stealing focus.
Install
dsh plugin --profile web add dsh-reading-pad
After installing, restart dsh web, then open the right sidebar → add the "📖 Reading Pad" tab from the "+" menu.
Requires DSH client packages >=0.1.5-rc.2. Uses the official native right-sidebar keyed slots (sidebar.right.pane.tab), no dependency on dsh-better-sidebar.
You can also install directly from GitHub (skipping npm):
dsh plugin --profile web add github:shengyvself/dsh-reading-pad
What you can do with it
After installing, just talk to the agent:
- "Push this draft to the reading pad" —— the AI calls
reading_pad_sendto deliver the typeset Markdown - "Read chapter one" —— switch to the "Manuscript" mode and open the first chapter of your current writing project
- "Switch to Night theme" —— flip to the dark low-blue-light mode
- "Bump the font up a bit" —— press A⁺ to enlarge
The panel never acts on its own; it only shows content when you or the AI trigger it.
Content sources
| Source | How |
|---|---|
| AI-delivered prose | The AI calls the reading_pad_send tool → the panel displays it. Typesetting is the AI's job; the panel renders as-is. |
| Manuscript chapters | The client reuses the writing module's existing HTTP RPC (/api/writing/workspaceIndex and /api/writing/chapterText) to read the current writing project's chapter list and full text. |
Outline / lore / drafting-pad drafts are phase-2 placeholders (greyed out).
Compatibility
| Use case | DSH version | Plugin version |
|---|---|---|
| Recommended | 0.1.5-rc.2+ (currently maintained) | 0.1.0 |
| Minimum compatible | 0.1.5-rc.2+ | 0.1.0 |
Installing the plugin does not upgrade the host DSH. The peerDependencies declare a minimum client-package version of >=0.1.5-rc.2; verified working on 0.1.5-rc.2.
Security
The reading pad is a read-only consumer, with explicit boundaries:
- Writes only the local plugin state file (
~/.dsh/<state>.json, session display text + history ≤20 FIFO); never touches canon / creative files. - No heavy third-party Markdown renderer. Rendering is a pure front-end M1 subset (headings / paragraphs / bold-italic / strikethrough / inline code / links-images / single-level lists / blockquote / hr / fenced code blocks / GFM tables); HTML is escaped, URLs restricted to
http/https/ relative paths. - No network calls. Except for reusing the host's existing
/api/writing/*HTTP RPC, there are no outbound requests.
Full policy: SECURITY.md.
Dependency notes
Server-side dependencies (@deepseek-ai/dsh-tools, @deepseek-ai/dsh-typert-protocol) are declared in peerDependencies —— provided by the host DSH, never written to dependencies (avoids manifest shadowing the host version). Client-side packages also go through peerDependencies (cordis / dsh-client-* / react).
Since v0.1.0 the panel is decoupled from dsh-better-sidebar: it registers to the official native keyed slots (sidebar.right.pane.tab + .title) via ctx.sidebarRightTabs.register (two-step registration).
Build
node scripts/build.mjs # server-side ESM copy + client esbuild to browser CJS (ModuleLoader wrapper, id=dsh-reading-pad)
Development
See CONTRIBUTING.md, ARCHITECTURE.md, CHANGELOG.md.
License
Apache License 2.0 © shengyvself
Comments
Loading…
Similar plugins
by MrElysium
DeepSeek Harness plugin: quiz-style reading (答题式阅读) of any Markdown document — 5-stage game loop with a sidebar panel and a reading-area tab.
★ 6
MIT
JavaScript
Aug 18, 2026
dsh plugin --profile web add dsh-md-quizAll-in-one UI enhancement layer for DeepSeek Harness web: prompt library with quick-insert and management, two-step AI polish, predicted-reply dock with click-to-send, MCP tool management, scheduled a
★ 0
dsh plugin --profile web add dsh-enhance-toolby linhx1999
Markdown writing pad for the DeepSeek Harness web GUI: per-session editing, preview, and in-session AI-assisted rewrite.
★ 3
↓ 89/wk
MIT
TypeScript
Aug 25, 2026
dsh plugin --profile web add dsh-writing-padby ShineFree7
Right-side document rail for the DeepSeek Harness web GUI — Markdown/plain-text viewer with light & deep-navy themes, drag-resize, recent files, auto-sync. (中文:dsh web 右侧文档面板,支持浅色/深蓝主题、拖宽、最近文件、自动同步)
★ 0
MIT
TypeScript
Sep 3, 2026
dsh plugin --profile web add dsh-doc-railDockable Markdown preview for the DSH Web UI: side-by-side with the conversation, a per-session recently-read .md list, local relative-path images render in place, and clicking an in-chat .md referenc
★ 0
dsh plugin --profile web add dsh-md-previewA calmer reading view for DeepSeek Harness with auto-collapsing process, a minimap-style message navigation rail, in-page search, unified failure cards, and generative MCP Apps (SEP-1865) in sandboxed
★ 0
dsh plugin --profile web add dsh-deckseek