Preface¶
In DeepSeek Harness (DSH), valuable content in conversations with models is often scattered across multiple messages: a troubleshooting approach, an interface agreement, an experimental conclusion. When you want to organize these into notes afterward, common practices involve copying to an external editor or relying on note-taking services with databases. The former disrupts your workflow, while the latter introduces additional dependencies.
Here we introduce dsh-md-notes, a third-party note-taking plugin for DSH Web users. It stores notes as local .md files, providing a full-screen manager and editor. It supports one-click excerpts from conversations and allows injecting note content into the model’s context via @. Optional Git synchronization enables backup and multi-device collaboration. The maintainer is XieZongChen, and it is categorized as “Memory” in the SkillHub community directory.
What Is This¶
dsh-md-notes is a third-party bundle plugin for DSH, currently at version 0.8.0 (MIT license). It provides a note entry point in the DSH Web sidebar and saves content as plain Markdown files in the .dsh-notes/ directory of each workspace, without relying on databases or cloud storage.
Target users: developers who want to complete the “conversation → note → re-reference” loop within DSH and prefer file-based, Git-manageable solutions.
Core Features¶
Note Management and Editing¶
There is a note entry at the bottom of the sidebar (above Settings) that opens a full-screen note manager. Notes are grouped by workspace with collapsible sections. You can create, edit, preview Markdown, save, and delete notes (with in-page confirmation). Note files are located in the .dsh-notes/ directory under each workspace and can be opened directly with any editor.
Excerpt from Conversations¶
A note icon appears next to each assistant reply (next to the copy button). Click it to select an existing note or create a new one, and the current conversation (user question + final answer) will be appended to the note, with “Session Title – Timestamp” as the section heading. Text is extracted directly from the conversation without waiting; reasoning processes are not included. Section labels localize with DSH’s language (Chinese/English).
Reference Notes in Chat (@)¶
Type @ in the input box to select notes across workspaces. When sent, the host injects the note content into the model’s context, allowing the model to reference it directly without additional requests to read files.
Git Synchronization (Optional)¶
Enable Git mode via configuration:
- shared: All workspaces use a single remote repository, with subdirectories per workspace.
- own: Each workspace has its own configured URL, branch, and sub-path.
Push performs mirror synchronization (including deletions); Update pulls and confirms on three-way conflicts; notes can auto-pull when opened. The manager displays a Git sync card (“Synced” / “N unpushed commits” and remote new commit alerts). Cloned repositories are stored in $DSH_HOME/md-notes-repos/.
Other Capabilities¶
- Write Mutex: Notes are locked when written across multiple sessions, keeping the sidebar, selector, and manager in sync until writing is complete.
- Settings Panel: DSH Settings → MD Notes allows configuring mode, repository URL/branch/sub-path, auto-pull, commit author, etc.
- Themes and i18n: Follows DSH’s light/dark themes and Chinese/English interface; a yellow “Update Available” tag appears when a new version is available on npm.
The roadmap (see docs/TODO.md in the repository) includes visual Git conflict handling, note search/directory/wiki links, editor dirty state reminders, and keyboard shortcuts.
Installation and Enabling¶
Prerequisite: dsh CLI is installed, and the target profile is web.
Install from npm (recommended):
dsh plugin --profile web add dsh-md-notes
After installation or upgrade, restart dsh web—bundle layers and client package metadata are cached in the process, and changes won’t take effect without a restart.
Upgrade:
dsh plugin --profile web update dsh-md-notes
Uninstall:
dsh plugin --profile web remove dsh-md-notes
Uninstalling does not delete existing note files. The plugin runs with the current dsh process permissions. Before installation, it’s recommended to review the GitHub repository source code and MIT license.
Compatibility (per README): Plugin version 0.8.0 has been verified on deepseek-harness mainline 0.1.1-rc.2; runtime dependencies are resolved from the dsh installation and not pinned to a specific mainline commit.
Typical Usage¶
- Install the plugin using the above command and restart dsh web.
- Create a Note: Click the note entry in the sidebar → Click + in the workspace row (generates an “Untitled note \<date>” title) → Edit → Save.
- Excerpt a Conversation: Click the note icon under any assistant reply → Select the target note or create new → Write to note.
- Reference a Note: Type
@in the chat input box to select a note; after sending, the content enters the model’s context.
Optional: Override plugin configuration in the profile’s cordis.patch.yml, for example:
- id: md-notes
config:
route: '/plugins/md-notes' # HTTP API prefix, default is fine
gitMode: 'off' # 'off' | 'shared' | 'own'
gitAutoPull: true # Pull before opening a note
| Configuration Item | Default Value | Description |
|---|---|---|
route |
/plugins/md-notes |
Plugin HTTP API prefix |
gitMode |
'off' |
Git sync: Off / Shared repository / Per-workspace repository |
gitAutoPull |
true |
Pull from remote before opening a note |
The plugin has no environment variables or secret configurations; networking is limited to the local loopback API, with no external requests or telemetry.
Use Cases and Considerations¶
Suitable for: developers who want to conduct conversation consolidation within DSH Web, organize technical notes by workspace, and use Git for backup or cross-device Markdown synchronization.
Note:
- Only supports the web profile; requires a restart to take effect.
- Notes are bound to workspaces; you must first create a workspace in the sidebar and ensure the
.dsh-notesdirectory is writable. - Git synchronization is optional; by default, when
gitMode: 'off', notes are stored locally only. - If the interface doesn’t change after installation, restart dsh web first; if icons are abnormal, hard-refresh the page.
- The plugin is maintained by the community; SkillHub is an independent community directory and has no official affiliation with DeepSeek or幻方.
Summary¶
dsh-md-notes connects DSH conversations with local Markdown notes: management and editing are handled within the plugin, excerpts and @ references reduce switching costs, and Git synchronization facilitates backup and collaboration. The current GitHub repository has about 13 stars, and installation instructions and updates are available in the community directory and repository.
- Community Directory: https://www.skillhub.cn/plugins/XieZongChen/dsh-md-notes
- GitHub: https://github.com/XieZongChen/dsh-md-notes