dsh-annotation: A Text Annotation Plugin for DeepSeek Harness
omdsh-dev/dsh-annotation
DSH plugin for Web: select text, annotate, send with message; replies correspond by number, zero flicker.
Select text in the DeepSeek Harness Web interface to add annotations, which are sent with your message, and the model replies by number.
dsh plugin --profile web add github:omdsh-dev/dsh-annotation- Category
- Tools & Capabilities
- Platform
- DSH-Plugin
- Author
- omdsh-dev
- Distribution
- Plugin
dsh-annotation Key Features
dsh-annotation Repository

dsh-annotation Repo Summary
dsh-annotation is an official bundle plugin (DSH plugin) for DeepSeek Harness (DSH), designed for the DSH Web interface. It solves the pain point of asking questions or annotating specific passages in long assistant replies. You can select any text in an assistant reply to add an annotation (the annotation body may be left empty, just to mark the passage). Annotations accumulate across messages and turns, and an "Annotations ×N" chip appears next to the input box—hover to view or delete them. Press Enter, and the annotation block is sent to the model together with whatever question is in the input box, while your message bubble shows only the question and the chip (the annotation content is hidden before paint, zero flicker). The model replies by number (e.g., Annotation 1: …), and each annotation label in the reply is a hoverable chip showing the annotated passage and your note. Maintained by omdsh-dev, licensed under MIT, last updated 2026-08, this is an official bundle plugin with zero core changes—no DSH files are touched.
What core features does the dsh-annotation DSH plugin support?
- Select-to-annotate: Select assistant text → toolbar "Annotate" → write your note (may be empty); dismiss by clicking elsewhere or pressing Esc.
- Numbered marker + highlight: A blue numbered marker + highlight anchored to the passage, viewport-anchored with collision avoidance, never lost when scrolled out of view.
- Cross-turn collection: Any number of annotations accumulate across messages/turns, numbered from 1.
- "Annotations ×N" chip: Small chip beside the input box; hover shows every annotation, deletable individually.
- Enter sends with your message: Annotation block + the question in the input box are sent to the model together (the model receives the full content).
- Hidden in your bubble: The annotation block is removed from your bubble's DOM the moment you send (before the browser paints), leaving only the question + the chip (hover to view); historical messages self-heal after a refresh.
- Numbered reply correspondence: A format instruction is injected into the message so the model replies
Annotation 1: ……Annotation N: …one by one. - Reply annotation chips:
Annotation N:in the reply renders as hoverable chips showing the passage + your note.
How to install dsh-annotation?
As an official bundle plugin, use the following installation command:
dsh plugin --profile web add github:omdsh-dev/dsh-annotation
After installation, the plugin is injected into the browser via dsh.bundle and dsh.client declarations (client-modules); the Node half is an empty implementation, requiring no extra configuration.
Which DeepSeek Harness versions and platforms are compatible with dsh-annotation?
This plugin targets the DSH Web platform. As an official bundle plugin, it makes zero core changes—no DSH files are modified; cordis.patch.yml only inserts its own id once, and the profile patch stays []. Therefore, it is compatible with all DSH Web interface scenarios.
What is the interaction flow of dsh-annotation?
The interaction flow is clear: select assistant text → toolbar "Annotate" → write note or save empty → blue numbered marker + highlight; accumulate any number across turns; "Annotations ×N" chip appears beside the input (hover to view/delete); press Enter, the model receives the annotation block (number + passage + note) and your question, your bubble shows only the question + chip, and the model replies Annotation 1: … etc., each label hoverable.