在 DeepSeek Harness (DSH) 的会话中,智能体通常以 Markdown 或文本形式产出内容。直接保存为 .docx 需要手动转换或依赖第三方工具。dsh-docx-export 解决了这个问题,它将 DSH 会话中的文本导出为真正的 Word 文档,而非重命名的 Markdown 文件。
这是一个客户端插件,由 Cai-Chengyu 维护,采用 MIT 许可证。它的核心价值在于零运行时依赖(仅依赖 Node.js 内置的 zlib),且不依赖 @deepseek-ai/* 包,因此可以承受 Harness 版本漂移,安装后作为插件包挂载,无需额外配置。
核心能力¶
该插件将 Markdown 语法转换为 Word 原生支持的 OOXML 结构,支持以下特性:
- 标题与目录:Heading 1–6 样式(模板友好,目录就绪)。
- 字符格式:粗体、斜体、删除线、代码,支持中日韩(CJK)字体。
- 列表:真正的多级项目符号和编号列表。
- 复选框:将
- [x]转换为 ☑,将- [ ]转换为 ☐。 - 代码块:等宽字体、背景阴影和边框的代码区域。
- 引用:带有左侧边框的引用样式。
- 表格:生成真实的 Word 表格,支持列对齐。
- 媒体:嵌入图片(PNG/JPEG/GIF/BMP)和可点击的外部超链接。
- 文档属性:自动填充标题、作者和时间戳。
- 页脚:默认包含页码。
安装与启用¶
安装插件后需要重启 DeepSeek Harness,以便新的插件包挂载生效。
- 通过 npm(推荐):
dsh plugin --profile desktop add dsh-docx-export
- 从 GitHub 安装:
dsh plugin --profile desktop add github:Cai-Chengyu/dsh-docx-export
- 从本地目录或压缩包安装:
dsh plugin --profile desktop add G:\path\to\dsh-docx-export
dsh plugin --profile desktop add .\dsh-docx-export-1.0.0.tgz
如果 dsh 不在系统 PATH 中,请使用 Harness 自带的 CLI 路径。安装完成后,插件会在下次启动时生效。
典型用法¶
安装完成后,主要有三种调用方式。
1. 会话对话¶
直接在 DSH 会话中向智能体提问即可。模型会调用 export_docx 工具:
Export what you just wrote as a Word document titled “Q1 analysis”, with a table of contents.
2. JSON 工具调用¶
直接调用 export_docx 工具,传入 Markdown 内容和配置参数。
{
"content": "# Title\n\nBody **bold**\n\n| col | value |\n|:--|--:|\n| a | 1 |\n",
"title": "Q1 analysis",
"outputPath": "G:\\dsh\\analysis.docx",
"toc": true,
"pageSize": "a4"
}
3. 命令行¶
插件自带 CLI,可在 DSH 外部使用,处理本地 Markdown 文件。
node bin/docx-export.mjs report.md -o report.docx --title "Quarterly report" --toc
配置与注意事项¶
配置¶
在 Harness 的 cordis.patch.yml 中可以覆盖默认配置:
- id: docx-export
name: dsh-docx-export
config:
toolName: export_docx # 重命名工具名以避免冲突
outputDir: "D:/exports" # 默认输出目录(空字符串则为会话工作目录)
fontFamily: Calibri # 西文字体
eastAsiaFont: 微软雅黑 # 中日韩字体
monoFont: Consolas # 代码字体
fontSize: 11 # 字号
pageSize: a4
toc: false # 默认插入目录
footer: true # 默认包含页码
allowOutsideWorkspace: false # 是否允许写入工作目录外
allowedRoots: [] # 允许的额外目录
maxContentChars: 400000 # 单次导出内容限制
注意事项¶
- 环境要求:需要 Node.js >= 20,兼容 DSH 0.1.7+。
- 权限安全:默认情况下,插件仅写入会话的工作目录。若需写入外部路径,必须在配置中显式设置
allowOutsideWorkspace或通过allowedRoots指定路径。图片嵌入也仅限于允许的范围内。 - 版本漂移:由于没有导入
@deepseek-ai/*包,插件可以长期在 Harness 的不同版本中运行。
生态与链接¶
该插件遵循 DSH 的插件化理念,已发布至社区目录,源码托管于 GitHub。
- GitHub 仓库: https://github.com/Cai-Chengyu/dsh-docx-export
- 社区目录: https://www.skillhub.cn/plugins/Cai-Chengyu/dsh-docx-export