dsh-docx-export:在 DeepSeek Harness 中导出真实 Word 文档

在 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,以便新的插件包挂载生效。

  1. 通过 npm(推荐):
    dsh plugin --profile desktop add dsh-docx-export
  1. 从 GitHub 安装:
    dsh plugin --profile desktop add github:Cai-Chengyu/dsh-docx-export
  1. 从本地目录或压缩包安装:
    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
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜