DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
C

@local/chat-message-export

Chat Message Export

Export any assistant reply, or the whole conversation, as a Markdown file from the Web chat.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:ZhaoChongyan/dsh-chat-message-export#a9c7d9ccfc3a47209bb01d792e63805bc8a9efb2
READMECompatibilityVersions

Compatibility and provenance

Chat Message Export is published as @local/chat-message-export and currently resolves to version 1.0.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
10/27/2026

Versions

1.0.0stable
10/27/2026

Related plugins

Loading related plugins…

Latest
1.0.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
10/27/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in productivity-workflow.

Acp App@deepseek-ai/dsh-acp-appThe dsh ACP profile bundle: automation-only JSON-RPC stdio and process lifecycle over dsh-baseExperimental Schedule Bundle@deepseek-ai/dsh-experimental-schedule-bundleOptional bundle that adds Schedule, its task page, and time context to the Web compositionWeb All@linxin666/dsh-web-allDSH Web UI 全家桶聚合插件:一键安装全部功能插件(task-board / pet / web-ui-settings / skin-center / community-plugins / compat shim)。compat 桥接层已并入本包(src/client),无需独立 compat npm 包。Ab Ocrdsh-ab-ocr--- description: "The out-of-tree ocr tool: recognizes a scanned PDF or image page by page, merges the pages in order only after the last one, and saves one Markdown document with the heading levels the model decided." kind: "package-reference" ---

README

chat-message-export

English | 中文

A DeepSeek Harness plugin that exports chat content as Markdown files.

WhereActionOutput
Each finalized assistant reply's action stripDownload this replydeepseek-reply-<timestamp>.md
Session headerDownload the whole visible conversationdeepseek-conversation-<timestamp>.md

The conversation export reads the Chat store's visible node order: user and steering messages become ## User sections, and each Turn contributes only its final reply — tool calls and reasoning are skipped, so the file reads as a transcript rather than a log.

Why user bubbles have no button of their own

The Harness exposes per-message actions only through conversation.chat.assistant-actions, which fires for finalized assistant messages. User-row controls (copy, timestamp) are built into the host component with no extension slot, so adding one there would mean re-implementing the whole user row — attachments, images, references, pending and echo states — and tracking upstream markup. The session-header export covers the user side instead.

Install

From a DeepSeek Harness session, point plugin_manager at this directory:

plugin_manager { action: "install_bundle", target: "<abs path>/chat-message-export" }

The package is linked into the active profile, so it applies to every session in that profile and survives restart. Refresh the Web page afterwards; the browser assembles client modules at page load.

For a local development loop, the Web client watches its own plugin bundles — a rebuilt client.js can reload without a page refresh.

Layout

client.js          browser half: slot entries, Markdown rendering, downloads
index.js           host half (empty; everything renders in the browser)
cordis.patch.yml   Loader row that inserts the package
package.json       dsh.bundle.patch + dsh.client metadata
locale/en.json     display metadata and copy (English)
locale/zh.json     display metadata and copy (Chinese)
icon.svg           plugin icon

Plain JavaScript — no build step, no dependencies. The browser half registers through window.__ModuleLoader__.load and contributes two slot entries:

  • conversation.chat.assistant-actions, id export, order 20
  • conversation.session.header.actions, id export-conversation, order 30

UI text goes through the Client locale service (ctx.locale.register); styles use only --dsw-alias-* theme tokens, so the buttons follow light and dark themes. Downloads use a transient <a download> with an object URL, so no Host route or file write is involved, and the styles tag is removed when the plugin unloads.

Package name

@local/chat-message-export is a private, unpublished scope. Keep the name in package.json, client.js, cordis.patch.yml, and the locale meta in sync if you rename it.

License

MIT