packages/dsh-skill-explorer
zhu1090093659/dsh-web技能中心:按来源分级浏览已加载的全部 skill,启用/禁用模型调用、创建新技能、删除进可恢复回收站。
中文公文全流程处理工具:GB/T 9704 格式检查、自动修复、内容修订(红色标注+删除线)、模板生成、Markdown 转公文、版头/版记/页码注入,覆盖通知/请示/报告/函/会议纪要等 24 类公文。
中文公文全流程处理专家——基于 GB/T 9704《党政机关公文格式》 国家标准,支持 格式检查与修复、内容优化(Word 原生修订+批注/差异对比版)、模板生成、Markdown 转公文、版头版记页码注入、事实核验、风格增强 等完整能力。原生支持 DeepSeek Harness (DSH) 技能系统,打包为可被 AI Agent 直接调用的 Skill,完全自包含,克隆即用。
本 Skill 源自开源桌面项目 AI 公文智能优化助手,将其核心格式引擎抽取、剥离桌面端/数据库依赖后独立发行,支持公文的模板建立、解析、规则检查、自动修复、内容优化、Markdown 转公文全流程能力。同时原生集成 DeepSeek Harness (DSH) 技能系统,支持 DSH Agent 自动发现与加载。
能力 · 命令 · 说明 📋 列类型 · list-types · 列出 25 种支持的公文类型(新增主持词 host_speech;含新闻稿/讲话稿) 🏗️ 模板生成 · template · 按类型生成 GB/T 9704 标准空白模板 🔍 解析 · parse · .docx → 结构化 DocumentModel(含文本框/修订摘要) ✅ 格式检查 · check · 按国标检查,分级 P0/P1/P2(只读) 🔧 格式修复 · optimize · 自动修复字体/字号/行距/页边距,输出合规文档;--verify 单命令闭环自动复查、P0 存在时退出码非 0;--json 结构化输出 ✍️ 内容优化 · `optimize-content` · 内容润色:默认 Word 原生修订+批注(审阅面板逐条接受/拒绝),可选行内差异对比版;--precheck 预检 changes 与原文一致性、--preset quick/full/review 参数收敛 📝 草稿转公文 · md2docx · Markdown 文本直接转为格式化 .docx(支持 Front Matter) 🚀 一站式生成 · draft · Markdown 草稿 → 国标成品 + 自动验证(路径 C 四步合一) 📄 模型生成 · generate · 从 JSON 模型生成 .docx 🔴 版头 · header · 注入发文机关标志 + 发文字号 + 签发人 + 红色反线 📑 版记 · footer · 注入抄送机关 + 印发机关 + 印发日期 + 分隔线 🔢 页码 · pagenum · 注入 Word PAGE 域动态页码(宋体 4 号,默认单右双左适配双面打印) 🖊️ 首句加粗 · bold-first · 正文段落首句自动加粗(公文规范) 🧰 一键修复 · fix-common · 路径 D 一键修复常见格式:段落类型修正 + 编号拆分 + 首句加粗 + 加粗范围修复 📋 桌签生成 · table-signs · 批量生成 A5 横版会议桌签 🔍 审稿生成 · review · 按五角色审稿机制生成审稿意见 🧩 完整审校 · full-review · 修订+批注联合命令(句子级差异修订 + 分类批注) 🎨 样式学习 · style-learn / style-list · 上传标准文档学习 Run/段落/页面三级样式(字体/字号/字间距/行距/缩进/页边距),生成命名模板持久化,后续用 optimize -t 模板名 套用 🔄 版本自检 · check-update · 版本自检(PyPI pip 包权威判定 + GitHub 备用,GitCode/AtomGit 作国内镜像提示;GitHub 不可达时自动做 DNS 污染诊断 + hosts 建议) 🩺 自我诊断 · doctor / repair · 全面诊断 23 项(Python/依赖/版本一致性/字体/DSH 文件/DSH 技能 frontmatter/代码风格/网络 DNS),自动修复常见问题;--offline 跳过网络检查 🕵️ 文档审计 · audit · 检查删除线/加粗/AI 声明等痕迹 🤝 会话交接 · handoff · 跨会话上下文传递(--list / --latest / Agent 长任务收尾必写) ⚙️ 规则管理 · rule-export/import/list · YAML 规则三层定制(官方/单位/用户) 🧭 向导式交互 · wizard · 交互式路径引导(A/B/C/D/E)+ 一键执行;Agent 用 --answers 非交互 / --dry-run 只打印命令
在 AI 对话中调用 gongwen-skill,输入自然语言指令,自动生成符合 GB/T 9704 国标格式的正式公文。
本工具针对不同能力层级的 AI 调用环境,提供不同的使用方式。AI 读取本文件后,请先判断自身环境属于哪一类,再按对应指引执行:
环境类型 · 典型平台 · 能力 · 使用方式 ① 可执行代码的 Agent · WorkBuddy、CloudCode、Claude Code、AtomCode、DeepSeek Harness · 可运行命令、读写本地文件 · 直接执行 python -m gongwen ,见下方「快速开始」与「通过 Agent 调用」 ② 纯对话 LLM(无代码执行能力) · 豆包、Kimi、ChatGPT 网页版等 · 只能阅读文本、给出建议,不能运行命令或读写文件 · 引导用户手动执行,见下方「纯对话 LLM 使用指引」
如果你是无法执行代码的纯对话 AI(如豆包、Kimi、ChatGPT 网页版等),请按以下方式协助用户:
# 步骤 1:克隆仓库
git clone https://github.com/linhut/gongwen-skill.git
cd gongwen-skill
# 步骤 2:安装依赖(需要 Python 3.10+)
pip install -r requirements.txt
# 或直接安装 PyPI 包:
# pip install gongwen-skill用户需求 · 建议用户执行 检查公文格式 · python -m gongwen check 公文.docx -t notice --json 自动修复格式 · python -m gongwen optimize 公文.docx -o 成品.docx -t notice --apply 生成标准模板 · python -m gongwen template notice -o 通知模板.docx Markdown 转公文 · python -m gongwen md2docx 草稿.md -o 正式公文.docx -t report 内容润色(修订+批注) · python -m gongwen optimize-content 原文.docx --changes 修订内容.json --apply --mode tracked 注入版头/版记/页码 · python -m gongwen header/footer/pagenum 公文.docx ... 从标准文档学样式做模板 · python -m gongwen style-learn 标准公文.docx -n 模板名,之后用 optimize -t 模板名 套用 安装标准字体 · python -m gongwen font install
项目内置以下文字性资源,纯对话 AI 可以直接读取,用作公文写作指导的知识库:
资源 · 位置 · 内容 公文语言风格提示词库 · prompts/style-prompts.md · 6 套风格(庄重严谨/平实简洁/宏观概括/请示商洽/法规条文/讲话稿),每套含用词规范、句式和语气指导 使用指引与决策速查 · prompts/usage-prompts.md · 最小可用指引、决策速查、每种公文类型的用法模板、常见问题解答 公文类型规则库 · rules/official/*.yaml(25 个文件) · 每种公文类型的格式规范 + 内容层定义(如"请示应以'妥否,请批示'结尾""通知应以'特此通知'结尾") 通用格式标准 · rules/official/_common.yaml · GB/T 9704 国标全文参数:字体/字号/行距/页边距等 技能完整指令 · SKILL.md · 路径路由、执行标准、质量评审、禁令清单、审稿机制
使用方式:纯对话 AI 在回答用户关于公文写作的问题时,可直接引用上述资源中的内容,例如:
rules/official/notice.yaml 的结语规范和 style-prompts.md 的庄重严谨风格request.yaml 和 report.yaml 的规则说明_common.yaml 中的 GB/T 9704 标准style-prompts.md 中对应的风格提示词这些资源均以纯文本格式存储,纯对话 AI 可直接读取解读,无需执行任何代码即可提供专业的公文写作指导。
git clone https://github.com/linhut/gongwen-skill.git
cd gongwen-skill
pip install -r requirements.txt
# 生成一份标准通知模板
python -m gongwen template notice -o 通知模板.docx
# 检查公文格式(只读)
python -m gongwen check 公文.docx -t notice --json
# 自动修复格式(--apply 确认执行,默认预览);--verify 生成后自动复查,P0 存在时退出码非 0
python -m gongwen optimize 公文.docx -o 成品.docx -t notice --apply --verify
# 一步到位:检查 + 修复 + 版头/版记/页码全注入(--layout 指向 JSON 配置)
python -m gongwen optimize 公文.docx -o 成品.docx --layout 版式.json
# Markdown 草稿 → 正式公文(支持管道输入和 Front Matter 元数据)
python -m gongwen md2docx 草稿.md -o 正式公文.docx -t report --signer "XX单位" --date "2026年8月1日"
# 一步到位:Markdown 草稿 → 国标成品 + 自动验证(路径 C 四步合一)
python -m gongwen draft 草稿.md -o 正式公文.docx -t report --signer "XX单位" --date "2026年8月1日"
# 内容优化(默认 tracked 模式:Word 原生修订+批注,审阅面板逐条接受/拒绝)
python -m gongwen optimize-content 原文.docx --changes 修订内容.json --apply --mode tracked -t news
# 预检 changes 与原文一致性(不生成文档,输出不匹配清单+相似度诊断;不匹配时退出码 1)
python -m gongwen optimize-content 原文.docx --changes 修订内容.json --precheck
# 预设组合:quick 精简快速 / full 完整默认 / review 完整审稿(显式参数优先)
python -m gongwen optimize-content 原文.docx --changes 修订内容.json --apply --preset full
# 注入版头(发文机关标志 + 发文字号 + 签发人 + 红色反线)
python -m gongwen header 公文.docx -o 红头公文.docx --org-name "XX单位" --doc-number "〔2026〕1号"
# 注入版记(抄送 + 印发机关 + 印发日期)
python -m gongwen footer 红头公文.docx --cc "各单位" --printer "XX办公室" --print-date "2026年8月1日"
# 注入页码(Word PAGE 域动态页码)
python -m gongwen pagenum 红头公文.docx --alignment right
# 版本自检(PyPI pip 包权威判定 + GitHub 备用渠道)
python -m gongwen check-update
# 安装公文标准字体(方正小标宋简体/仿宋_GB2312/楷体_GB2312)
python -m gongwen font install # 安装字体到系统
python -m gongwen font check # 检查字体安装状态
python -m gongwen font list # 列出字体清单
# 从标准文档学习排版样式,生成自定义模板(后续用 optimize -t 模板名 套用)
python -m gongwen style-learn 标准公文.docx -n 模板名
python -m gongwen style-list # 列出已学习的模板工具内部已统一按 UTF-8 输出(gongwen/_bootstrap.py 强制 stdout/stderr/stdin 重配置为 UTF-8, 保证管道/Agent 调用无编码问题)。若在原生 cmd(默认 GBK 代码页 936)看到中文乱码,任选其一:
chcp 65001 切换 UTF-8 代码页,再运行命令PYTHONIOENCODING=utf-8(与工具内部行为一致)说明:GBK 乱码仅影响原生 cmd 的交互显示,不影响文件内容与 --json 的机器可解析性。公文标准字体是 GB/T 9704 排版的关键。项目内置 3 个标准字体文件(assets/fonts/),支持自动安装:
字体 · 用途 · TTF 大小 方正小标宋简体 · 公文大标题 · 3.7 MB 仿宋_GB2312 · 正文 · 3.8 MB 楷体_GB2312 · 二级标题 · 3.9 MB
安装方式:
assets/fonts/ 中,直接安装font install 会自动从 GitHub 仓库 下载到 ~/.gongwen-skill/fonts/ 缓存后安装python -m gongwen font install # 一键安装 3 个标准字体
python -m gongwen font check # 检查安装状态--mode)模式 · 说明 tracked(默认) · Word 原生修订标记(w:del/w:ins)+ 批注(comments.xml),审阅面板逐条接受/拒绝 comment-mode · 仅 Word 原生批注(可审阅→接受/拒绝) inline · 行内差异对比版(原文灰色删除线 + 优化后红色高亮 + 修改说明)
批注/修订按语义类别自动分配角色与颜色,Word 中可按审阅者筛选:
角色 · 类型 · 颜色 · 色值 · 语义类别 格式审校 · 批注 · 蓝 · 2E86C1 · 格式优化 用语审校 · 批注 · 绿 · 27AE60 · 用语优化 逻辑审校 · 批注 · 红 · E74C3C · 逻辑优化 法规审校 · 批注 · 紫罗兰 · 9B59B6 · 法规合规 综合审校 · 批注 · 橙 · F39C12 · 内容优化 事实核验 · 批注 · 青 · 00BCD4 · 事实核验 GongWen-Skill修订 · 修订 · 玫红 · E91E63 · 内容/事实核验修订 风格审校 · 批注+修订 · 深紫 · 6C3483 · 风格优化(自动应用)
--background):实体提取(人名/职务/机构全称)→ 互联网交叉核验 → 生成"存疑/已确认/未经核验"批注GONGWEN_LLM_API 后 LLM 内容理解提取(主通道)+ 规则提取(兜底)--background 传入 docx/pdf/md/txt/URL 构建基准,已确认实体自动过滤--output-tasks / --input-tasks)Skill 定位为工具层——确定性工作自己做,需 LLM/搜索判断的环节交由 Agent:
# 1. Skill 输出待处理任务(待核验实体 + 风格增强请求),同时生成基础版文档
python -m gongwen optimize-content 新闻稿.docx --changes changes.json \
--output-tasks tasks.json --apply --mode tracked -t news
# 2. Agent 用自身 LLM+搜索能力处理 tasks.json(核验人事信息、生成风格建议),输出 tasks_result.json
# 3. Skill 读入回填结果,合并到 changes 后执行(去重/已确认过滤/独立修订作者)
python -m gongwen optimize-content 新闻稿.docx --changes changes.json \
--input-tasks tasks_result.json --apply --mode tracked -t newsstructure_checker.py):按 rules YAML 的 structure 定义检查必要段落/要素,多候选评分定位段落focus_checker.py):逻辑闭环(听取→指出→强调→要求)/时间一致性/事实表述客观克制/稿源编辑信息/简称定义规范--mode tracked|inline 输出模式(默认 tracked)
--reviewers 3|5|6 审稿角色数(默认 6 完整版)
--changes <json> 变更列表(paragraph_index/original_text/optimized_text/reason/category)
--background <paths> 背景资料(事实核验基准)
--auto-generate 无 changes.json 时基于内置规则自动生成优化建议(需 LLM)
--output-tasks <json> 输出待 Agent 处理任务
--input-tasks <json> 读入 Agent 回填结果
--style <名称> 语言风格(--style 显式 > changes.style > doc_type 映射 > 默认庄重严谨)
--no-style-enhance 禁用风格增强(默认开启)
-t/--doc-type <类型> 显式指定公文类型(默认自动检测)
--show-rules 输出文档类型内容层规则摘要
--show-confirmed 已确认实体也生成批注交互式引导选择处理路径并一键执行,适合不熟悉命令行的用户;Agent 可走非交互模式:
python -m gongwen wizard # 终端交互:菜单选 A/B/C/D/E → 逐项填参 → 预览确认 → 执行
python -m gongwen wizard --answers 答案.json # Agent 非交互:跳过提问直接执行
python -m gongwen wizard --answers 答案.json --dry-run # 只打印将执行的命令--answers 扁平 JSON(顶层带 path):
{"path": "A", "input": "原文.docx", "doc_type": "notice", "output": "成品.docx", "apply": true}路径:A 格式优化(optimize)|B 内容优化(optimize-content)|C 生成模板(template)|D 一键格式修复(fix-common)|E 样式学习(style-learn)。A/B/D 默认先预览再 y/n 确认;不写 apply 时非交互模式仅预览不执行(安全默认)。
元素 · 字体 · 字号 · 对齐 公文标题 · 方正小标宋简体 · 二号(22pt) · 居中 一级标题(一、二、三) · 黑体 · 三号(16pt) · 顶格 二级标题((一)(二)) · 楷体_GB2312 · 三号(16pt) · 首行缩进2字符 三级标题(1. 2.) · 仿宋_GB2312 加粗 · 三号(16pt) · 首行缩进2字符 正文 · 仿宋_GB2312 · 三号(16pt) · 首行缩进2字符 西文/数字 · Times New Roman · 与中文字号一致 · — 页码 · 宋体(4号半角) · 四号(14pt) · 单页右/双页左(双面打印) 页边距 · — · — · 上2.8/下2.8/左2.7/右2.7 cm(工具实际采用值,见 _common.yaml)
页边距为国标默认(上3.7/下3.5/左2.8/右2.6 cm);标题方正小标宋简体 24pt 居中、行距 35pt;一级标题黑体 18pt、二级标题楷体_GB2312 18pt;署名/日期楷体_GB2312 18pt 居中、行距 35pt;正文仿宋_GB2312 18pt 不加粗、行距 30pt exact、首行缩进 2 字符;跳过版头/版记/发文字号/密级检查。(样式以最终版定稿为准)
页边距与普通公文一致(上2.8/下2.8/左2.7/右2.7 cm);标题方正小标宋简体 24pt 居中、行距 35pt;主持人信息/日期楷体_GB2312 18pt 居中、行距 30pt;正文仿宋_GB2312 18pt 不加粗、行距 30pt exact、首行缩进 2 字符,议程引导句("下面,进行第X项议程…")可局部加粗;跳过版头/版记/发文字号/密级检查。(样式以最终版定稿为准)
通知 · 请示 · 报告 · 函 · 会议纪要 · 纪要 · 决定 · 通告 · 公告 · 命令 · 通报 · 议案 · 批复 · 指示 · 制度 · 公报 · 意见 · 总结 · 方案/计划 · 桌签 · 技术方案 · 决议 · 新闻稿/简报 · 讲话稿 · 主持词
每种类型对应 rules/official/*.yaml,含格式规则 + 内容层定义(structure/focus_checks/title 等),驱动 check/optimize/optimize-content 全链路。规则以 YAML 定义,三层优先级 official < custom < user:
rules/official/*.yaml~/.gongwen-skill/user_rules/*.yaml(同名字段覆盖官方)python -m gongwen rule-export notice -o notice_rules.yaml
python -m gongwen rule-import my_company -f 公司规范.yaml
python -m gongwen rule-list --source all[XXX] 占位"两种状态,严禁推理/猜测填造XXX 占位将本仓库放入 Agent 的 skills 目录,Agent 读取 SKILL.md 后自动调用命令。支持三条路径:
draft 命令可一步到位)平台适配:SKILL.md 采用通用 frontmatter(name/description/whenToUse/user-invocable),兼容 WorkBuddy、CloudCode、Claude Code、AtomCode、DeepSeek Harness 等以 SKILL.md 为技能清单的平台;纯对话 LLM(无代码执行能力)请参见上方「纯对话 LLM 使用指引」。
Agent 加载 skill 后必须执行版本追新自检,确保使用最新版本:
python -m gongwen check-update——以 PyPI(pip 包发布源)为权威判定渠道并发查询比对本地(pip install -U 即从 PyPI 拉取);PyPI 不可达时回退 GitHub tag(备用渠道)。全部渠道不可达时明确告知"版本自检跳过"。GitHub 为海外渠道(国内常超时)采用短超时快速降级;GitHub 不可达时自动提示国内代码镜像(GitCode/AtomGit,与 GitHub 同源 tag)、GitHub520 hosts 加速方案,并自动做 DNS 污染诊断(对比系统解析与安全 DNS/DoH 真实 IP,输出可直接粘贴的 hosts 条目建议)git -C "" describe --tags --abbrev=0;若安装目录不在 git 管理下,应告知用户"无法执行版本对比,建议手动检查 GitHub 更新"check-update 会按安装形态自动给出精准更新命令(pip 包安装:pip install --upgrade gongwen-skill;git/skill 目录安装:cd && git pull && git fetch --tags),不得静默使用旧版本