Introduction

The plugin-based architecture of DeepSeek Harness (DSH) allows users to extend functionality for specific scenarios. For long-form reading, especially novel reading, local operation and privacy protection are core needs. Existing solutions often rely on cloud book sources or generic chat, which can easily lead to spoilers or data leakage. The dsh-reading-companion plugin aims to solve these two problems: providing a local TXT bookshelf and using a three-layer structured mechanism to ensure the AI reading companion does not spoil content.

What It Is

This is a local reader and AI reading-companion tool, maintained by developer xling001 and released under the MIT license.

  • Positioning: A local reader for novel readers + a spoiler-free AI reading companion.
  • Data: The source book, notes, and AI understanding are all stored on local disk, with no account, no cloud, and no book source.
  • Core Logic: It remembers the book’s context and progress, not fragments of a single conversation.

Core Features

The plugin provides a full workflow covering import, reading, and notes export.

  1. Local TXT Bookshelf: Supports automatic encoding detection and automatic chapter splitting (falling back to fixed-size blocks when there are no titles), and manages books and categories in the right sidebar.
  2. Spoiler-Free AI Reading Companion:
    • Three-layer anti-spoiler mechanism:
      • Prompt rules: persistent constraints.
      • Path gate (spoilerGate): hard-rejects tool calls that request the raw text of unread chapters.
      • Web gate (webGate): heuristic blocking, though it cannot fully prevent deliberate queries.
    • Progress awareness: The AI only reads chapters up to your current position and earlier retained memory.
    • Structured memory: Background state (background.md) records text type, character states, worldview, etc. in sections and is append-only.
  3. Structured Notes System:
    • Workflow: excerpt (original text) → my thoughts → tag (zero-model-call suggestions) → AI response.
    • Format: structured Markdown.
    • Safety policy: append-only and never overwrites existing notes; exports include a <!-- drc-export book=… --> marker, and files without the marker are rejected.
  4. Interaction and Export:
    • Scrolling reading: read by following the progress bar.
    • Instant interaction: selecting main text directly opens “Take Notes,” and supports returning to the source text.
    • Export: one-click export of background and all notes to note libraries such as Obsidian.

Installation and Activation

The plugin depends on the sidebar interface provided by the DSH client and does not require any additional prerequisite plugins.

Prerequisites:
* DSH >= 0.1.5-rc.2
* Node >= 22.19

Installation steps:
Run the following commands in the terminal to install the plugin:

# DSH Desktop
dsh plugin --profile desktop add "github:xling001/dsh-reading-companion"

# DSH Web
dsh plugin --profile web add "github:xling001/dsh-reading-companion"

After installation, you must restart DSH Desktop to load the new plugin. After restarting, select “Local Bookshelf” from “+” in the right sidebar to open the plugin UI.

Typical Usage

  1. Import books: Place TXT files in the $DSH_HOME/dsh-reading-companion/inbox/ directory, then click “Scan Import Directory” in the panel.
  2. Read and take notes: Select a passage in the main text, then click “Take Notes” in the floating bar. Fill in “My Thoughts” on the note page, choose a suggested tag, and click “Write Note.”
  3. AI companion: Click “Send to Chat” to send the selected text along with your thoughts to the AI. It will respond based on your current progress.
  4. Export notes: On the “Settings” page, click “Export Background and All Notes.” The generated Markdown file is appended to the specified note library directory.

Notes

  • Restart required: Plugin registration relies on reading configuration at startup; refreshing the page does not take effect, so the application must be restarted.
  • Security and privacy: The plugin uses a “path gate” rather than a “file gate” to prevent spoilers. On Windows, 8.3 short names and hard links may bypass path restrictions and point to the same file, so pay attention to the security boundary.
  • Version dependency: Ensure the DSH version is no lower than 0.1.5-rc.2; otherwise it cannot recognize the sidebar interface.

Conclusion

dsh-reading-companion provides a privacy-controlled and spoiler-controlled workflow for long-form reading through local storage, structured memory, and strict access control. For users who need deep reading and note organization, it offers a direct path from reading to finalized output.

Directory page: https://www.skillhub.cn/plugins/xling001/dsh-reading-companion
Source: https://github.com/xling001/dsh-reading-companion