前言¶
在 DeepSeek Harness(DSH)里让模型写机关公文,难点往往不在措辞,而在版式:行距 28 磅、三号字 16 磅、首行缩进两字、发文机关标志小标宋且为红色、页码奇右偶左——参数多且彼此牵连,手工调 Word 或让模型「凭感觉」排版,很容易一处记错整份不合规。
下面介绍社区插件 dsh-tool-gongwen(维护者 longaotiandedage):把 GB/T 9704—2012《党政机关公文格式》里的机械部分固化成三个原生工具,会话内可直接生成 DOCX、在具备 TeX 环境时生成 PDF,并对已有文件做版面回读校验。内容组织、文种与措辞仍由使用者与模型判断,插件不干预正文逻辑。
这是什么¶
dsh-tool-gongwen 是 DSH 的 cordis bundle 插件(当前版本 0.1.0,MIT)。简介可概括为:按国标排版中文公文,DOCX 与校验为纯 JavaScript、除 Node 内置模块外零 npm 依赖;PDF 路径依赖本机 TeX Live(xelatex)。项目在 GitHub 仓库 longaotiandedage/dsh-tool-gongwen 维护,社区目录页:skillhub.cn 插件页。目录站点为社区聚合,与 DeepSeek / 幻方无官方从属关系。
README 写明:三个工具已在 DSH 桌面版完成真实加载验证,生成 DOCX/PDF 后回读校验十一项均可符合国标(具体项以 gongwen_check 输出为准)。
核心功能¶
插件暴露三个工具,分工如下。
| 工具 | 作用 | 外部依赖 |
|---|---|---|
gongwen_docx |
生成符合国标的 DOCX | 无 |
gongwen_pdf |
生成符合国标的 PDF | 本机需装 TeX Live(xelatex) |
gongwen_check |
校验既有 DOCX 或 PDF 的版面 | 无(PDF 仅能校验页面尺寸,见下文边界) |
DOCX 生成自行实现 ZIP 与 OOXML(lib/zip.js、lib/docx.js)。版心、天头订口、字号行距等换算为 twips / 半磅后写入,与国标表一致——例如 A4、天头 37 mm、正文三号仿宋 16 磅、固定行距 28 磅、首行缩进 2 字等。
正文块类型包括:body 普通段、h1 / h2 / h3 三级标题、to 主送机关;可选版头 org、字号 docno、附件 attachments、署名与成文日期等,字段说明见仓库 README「内容规格」一节。
安装与启用¶
前置条件¶
| 项目 | 要求 |
|---|---|
| DSH | 0.2.x(cordis 规范加载 bundle) |
| Node.js | 20 及以上(可用 DSH 自带运行时) |
| TeX Live | 可选,仅 gongwen_pdf 需要 |
| 中文字体 | 仿宋、黑体、楷体、宋体;Windows 自带,macOS / Linux 可能降级替代 |
插件以当前 DSH 进程权限运行;安装前建议通读仓库源码与 LICENSE,确认可接受其能力边界与法律提示(README 第八节)。
一键安装(Windows)¶
取得源码后,在仓库根目录双击 install.bat:脚本会定位 DSH 目录与 profile、备份 package.json / pnpm-lock.yaml、登记 bundle 并安装依赖,完成后提示重启 DSH。卸载可用 uninstall.bat 或 node uninstall.mjs。
预演安装步骤、不改文件:
node install.mjs --dry-run
安装失败时脚本可还原 package.json;也可手动:
node install.mjs --rollback
手动安装¶
-
取得源码并放到固定位置(README 示例路径为
~/dsh-tool-gongwen;也可用仓库页 Download ZIP 解压后同名放置)。 -
在 profile 目录以本地路径安装:
cd ~/.dsh/profiles/desktop
pnpm add "file:$HOME/dsh-tool-gongwen"
-
在 profile 的
package.json里,向dsh.profile.bundles数组追加"dsh-tool-gongwen"(与@deepseek-ai/dsh-base等并列)。仅pnpm add而未登记 bundles 时插件不会加载,且通常不报错——这是常见踩坑点。 -
重启 DSH;若开启热加载,保存后等待片刻亦可。
bundle 通过包内 dsh.bundle.patch 指向 cordis.patch.yml,用 insert 把 dsh-tool-gongwen 挂入配置树;机制说明见 README「挂载机制说明」。
验证安装¶
重启后在会话中可试:
用 gongwen_docx 生成一份关于××的通知,输出到 test.docx
再用 gongwen_check 校验,结论应为符合 GB/T 9704—2012。不依赖 DSH 时可在仓库根目录运行:
node test/selftest.mjs
未装 TeX Live 时自检会跳过 PDF 相关项,其余照常。
典型用法¶
生成 DOCX¶
在工具调用中传入结构化字段,output 为必填,相对路径按会话工作目录解析:
gongwen_docx({
org: "华中科技大学教务处文件",
docno: "教字〔2026〕15 号",
title: "关于开展数值方法课程资源建设的通知",
to: "各教学单位:",
blocks: [
{ type: "body", text: "为加强……现将有关事项通知如下。" },
{ type: "h1", text: "一、建设目标" },
{ type: "h2", text: "(一)总体要求" },
{ type: "h3", text: "1. 讲义建设" }
],
attachments: ["1. 任务分工表", "2. 体例说明"],
signOrg: "华中科技大学教务处",
signDate: "2026年10月26日",
output: "notice.docx"
})
README 说明:examples/ 内通知为排版示例,机构名、文号、日期等为虚构,不指向真实机关。
生成 PDF¶
参数相同,将 output 改为 .pdf 即可;需本机已安装 TeX Live。
版面校验¶
gongwen_check({ path: "notice.docx" })
输出为逐项对照表(页面宽、白边、版心、字号、行距、奇偶页等),最后一行给出是否符合 GB/T 9704—2012。对 PDF,插件仅能读取页面尺寸(MediaBox);四边白边需文字坐标时,README 指向配套技能里的 scripts/verify_layout.py(依赖 PyMuPDF),不在本插件内实现。
适用场景与注意¶
适合谁: 需要在 DSH 会话里快速产出版式合规的机关公文 DOCX、在具备 TeX 时同步出 PDF、或对已有 DOCX 做国标版面自检的开发者与办公自动化场景。
能力边界: 插件不生成印章;不代替你对文种、主送机关、法定表述的审核。生成正式文件时不得冒用真实机构名称与文号——README 引用了《刑法》第二百八十条及《治安管理处罚法》(2025 年修订)相关条款,伪造、变造公文有法律风险。
运行与安全: 工具在 DSH 进程内执行,读写路径由调用参数与会话工作目录决定;安装脚本会改动 profile 下的 package.json,并可能留下 .gongwen-backup-* 备份目录,可自行清理。
结尾¶
dsh-tool-gongwen 把 GB/T 9704—2012 里易错的版式参数收进三个工具,让 DSH 输出在版面上「有据可查」,而不是反复手工改 Word。进一步了解与安装步骤以仓库 README 为准。