gbt9704-format
ASecurity政府报告 Word 格式自动修复与审查:依据 GB/T 9704—2012 适用部分,对任何政府委托 报告(规划、监测报告、行业/产业报告等非红头文稿)一键统一排版并逐一修复格式 问题——页边距、字体字号、行距、标题与正文缩进、结构层次序数写法(一、(一) 1.(1))、全文及表格内多余空格、全半角标点混用、省略号/重复标点、六角括号、 连接号、成文日期。封面与目录自动识别保护,且封面/目录不排页码、正文首页 页码从 1 起算。加粗、高亮、表格字体字号一律保留不动。固定产出两个版本: 修改前的全量批注版(批注按问题类别分作者)与修改后的 clean 版,已改掉的 批注在批注版里标灰。全程由 Claude 自动运行脚本,用户无需任何手动操作。明显的序号问题直接 修复("23 《文件》"缺点号自动补、"一、二、四"明显跳号自动改号)。另有审查 模式:输出"批注版"单文件——修复直接落文,敏感修复留【已修复】批注供核对, 重号乱序、图表编号断档、专名引号等机器不敢改的留【检查】批注在原文位置。 凡用户说"调格式""统一排版" "按公文格式/GB/T 9704 规范这份 Word""格式...
- 2 stars
- 0 votes
- 0 copies
- 1 view
- Added September 6, 2026
Security analysis
92/100- Installs packages at runtime which could introduce malicious dependencies
Pro scans all 12 files and shows the line behind each finding
npx -y skills add shuzhao1133/gbt9704-format --agent claude-codeAre you the author of gbt9704-format?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/shuzhao1133-gbt9704-format)---
name: gbt9704-format
description: >-
政府报告 Word 格式自动修复与审查:依据 GB/T 9704—2012 适用部分,对任何政府委托
报告(规划、监测报告、行业/产业报告等非红头文稿)一键统一排版并逐一修复格式
问题——页边距、字体字号、行距、标题与正文缩进、结构层次序数写法(一、(一)
1.(1))、全文及表格内多余空格、全半角标点混用、省略号/重复标点、六角括号、
连接号、成文日期。封面与目录自动识别保护,且封面/目录不排页码、正文首页
页码从 1 起算。加粗、高亮、表格字体字号一律保留不动。固定产出两个版本:
修改前的全量批注版(批注按问题类别分作者)与修改后的 clean 版,已改掉的
批注在批注版里标灰。全程由 Claude 自动运行脚本,用户无需任何手动操作。明显的序号问题直接
修复("23 《文件》"缺点号自动补、"一、二、四"明显跳号自动改号)。另有审查
模式:输出"批注版"单文件——修复直接落文,敏感修复留【已修复】批注供核对,
重号乱序、图表编号断档、专名引号等机器不敢改的留【检查】批注在原文位置。
凡用户说"调格式""统一排版"
"按公文格式/GB/T 9704 规范这份 Word""格式修一下""改成标准格式",或要"审查版"
"带批注检查格式""格式体检",都应使用本 skill。**除了格式,本 skill 还会自动用
content_fix.py 扩展处理高置信度的错字/重复问题**——"自动改 clean 版 + 批注版
逐条留痕",专有名词/政策术语等拿不准的一律不动,不做模糊判断;一般书写硬伤的
完整审校仍请用 proofread-comments skill 出批注版。
---
# 政府报告格式自动修复与审查(GB/T 9704)
## 一、Skill 定位
把政府报告的 Word 文稿**格式**修到位,同时自动处理高置信度的错字/重复问题。
- 适用:政府委托的规划、监测报告、行业/产业报告等**非红头**文稿;红头版头要素
(份号、密级、发文机关标志、印章、版记)不在范围内,也不标"缺失"。
- 格式问题按第三节规则直接修;错字/重复问题**默认自动**用第六节的 `content_fix.py`
扩展处理,走"自动改+批注版逐条留痕"模式,专有名词/政策术语/拿不准的一律不动,
不做模糊判断。一般书写硬伤(语法、逻辑、一致性等更广的审校)仍需 proofread-comments
skill 出批注版,本 skill 不覆盖那一层。
- 修复依据:GB/T 9704—2012 适用部分 + 机构《文稿排版格式基本规范》定版参数
(规范细节见 references/ 四份文件)。
- **不生成修改记录**。完成后在对话里报一句汇总即可。
## 二、输入输出
**输入**:一个 .docx 文件(.doc/.wps 老格式先说明需另存为 .docx 再处理)。
**输出**(两种模式):
| 模式 | 命令 | 产出 |
|---|---|---|
| 默认(修复) | `format_fix.py 文稿.docx -out 原名-终稿.docx` | 排版好的终稿一个文件,输出到源文件同目录 |
| 审查 | `format_fix.py 文稿.docx --review` | `原名_GBT9704批注版.docx` 单文件:全部自动修复直接落文;敏感修复(序号补点、跳号改号)各留【GB/T9704已修复】批注供核对;机器不敢改的留【GB/T9704检查】批注(署名"GB/T9704格式审查") |
可选参数:`--no-layout` 保留原版式只修文字硬伤;`--indent-headings` 恢复红头
公文式全段缩进(默认真标题顶格)。`--no-layout --review` 组合下版式只查不改,
偏差汇总为批注。
**执行流程(全自动,用户只给文件)**:
1. 静默自检依赖:`python3 -c "import docx"` 失败则 `pip3 install python-docx`
(需 python-docx ≥ 1.1,批注功能用到)。
2. 运行 `python3 <skill目录>/scripts/format_fix.py …`(按上表选模式;用户要
"审查版/带批注/检查一下格式"就加 `--review`)。
3. 通读一遍第2步产出的终稿全文,按第六节标准找出高置信度的错字/重复问题,整理成
`fixes.json`,运行 `content_fix.py` 产出"内容已修复"的 clean 版和"批注版-内容
留痕"对照版(没有发现任何高置信度问题时,这一步产出可以为空,不强行凑数)。
4. 对话里给一句汇总(格式改了什么+内容改了什么两部分都要报)。
不要把命令展示给用户让他自己跑,不要让用户装任何东西。
## 二之二、固定产出:批注版 + clean 版(v2.4.0 用户定版)
**除非用户当次明说只要一个文件,本 skill 一律产出两个版本。**
| 版本 | 内容 | 命名 |
|---|---|---|
| ①批注版 | **修改前的原稿,一字不改**,全量批注 | `原名-修改前批注版.docx` |
| ②clean 版 | 已自动修改格式与可机械确定的错字,不带批注 | `原名-clean版.docx` |
两版对照,用户即可核对每一处改动落在哪。
**批注规格(参照 2026-07 定版样式)**:
- 批注**按问题类别分设作者名**,便于在 Word 审阅窗格按作者筛选。常用作者名:
`公文格式批注`(本 skill 的格式类)、`错别字`、`语法病句`、`逻辑重复`、
`数据核对`、`序号编号`、`表述规范`、`标点符号`、`结构体例`。
格式类必须署 `公文格式批注`;非格式的书写硬伤按类别另署,不要混在一起。
- 批注正文格式:`【类别】问题一句话。修改:具体改法`。格式类要写出具体字符
变动(如 `"、"→""`),便于核对。**例外——直引号改弯引号:只写类别名
「直引号改弯引号」,不写处数、不列字符明细**(引号计数按字符算会把一对
算成两处,误导;明细里引号套引号也没法读)。同条批注混有其他类别问题时,
其他类别的描述与明细必须完整保留,只省略引号部分(2026-07-21 用户定版)。
- 一段内同类多处合并为一条批注,不逐字符批。
- 锚点取改动位置前后各 8 字的窗口,让用户看得到上下文。
- 文档原有的他人批注完整保留,不得覆盖。
**标灰规则**:clean 版里**真改掉**的问题,其对应批注要在批注版里标灰。用
`scripts/mark_resolved.py` 处理,同时做两件事(用户定版,两种都做):
批注锚定的原文加灰色底纹 `D9D9D9`;该批注作者名改为 `已处理`。
(Word 的批注颜色由作者自动分配,无法逐条设色,改作者名是唯一可行的区分办法。)
python3 scripts/mark_resolved.py 批注版.docx -out 批注版-已标灰.docx \
--keywords 错别字 重复 序号重号
python3 scripts/mark_resolved.py 批注版.docx --list # 先看批注编号
**版式变更无法批注**:页边距、行距、字体、页码这些改动批注里体现不出来,
完成后必须在对话里逐项列清楚(改了什么、从什么改成什么),补上这个盲区。
凡是脚本静默改掉而批注覆盖不到的,都要主动说,不能默默改。
## 三、自动修复规则(脚本确定性执行)
**版式**(缺省套用;用户当次明说"保留现有版式"才加 `--no-layout`):
- 页边距上 3.7 / 下 3.5 / 左 2.8 / 右 2.6 cm(A4,GB/T 9704 版心 156×225mm)
- 题目:方正小标宋简体二号不加粗居中;章级标题(第X章/篇/编/部分、前言/目录等):
黑体三号不加粗居中,标题内空格保留
- 一级黑体、二级楷体_GB2312、三/四级仿宋_GB2312,**全部不加粗**,均三号;
楷体/仿宋一律用 **GB2312 版字体名**(2026-07-12 用户定版,与机构规范原文
一致;除非用户当次明确要求,不要改回新版名"楷体/仿宋")
- **缩进(2026-07-12 定版)**:真标题顶格;正文、"1.《文件》"式清单、连排段
缩进 2 字符(真标题/清单二分判定见 references/title-rules.md)
- 行距:标题固定 32 磅、正文固定 28 磅,段前段后清零;正文两端对齐、标题左对齐(居中/右对齐的图题、落款保留);数字英文 Times New Roman
- **封面与目录保护**:章级标题开篇的文档,封面区(题目除外)与目录(SDT/TOC
样式)完全不动;含目录域时置 updateFields 让 Word 打开自动刷新页码
- 页码(7.5):宋体 4 号"— N —",距版心下缘 7mm,单页居右、双页居左各空一字。
**封面与目录所在节不排页码,正文首页页码重新从 1 起算**(v2.4.0 用户定版)。
实现靠分节:脚本自动判定正文起始节,其前各节页脚清空,正文首节写
`w:pgNumType start=1`。若封面/目录与正文同处一节(无法单独取消),脚本
**不会自动插分节符**(结构改动风险高),只在终端提示用户手动加分节符后重跑。
清页脚走 XML 层删除 `w:ftr` 全部子元素——原页码常包在 `w:sdt` 内容控件里,
python-docx 的 `footer.paragraphs` 看不到,不这样清会与新页码叠成两个
- **加粗与高亮一律不动**(v2.4.0 用户定版):不再按标题层级强制取消加粗,
也不清除任何 highlight。彩字与下划线只在文档确实设置了非常规值时才规范化,
不再给每个 run 写冗余属性(旧版会把 `<w:u w:val="none"/>` 从 9 处膨胀到 1200+ 处)。
段落/字符底纹、页面背景仍清除
- **表格字体与字号一律不动**(v2.4.0 用户定版):只清段落底纹;表内出现的非仿宋
中文字体在终端汇总里报告,由用户自行决定是否统一
**文字格式硬伤**(正文+表格逐格;完整清单见 references/punctuation-rules.md):
空格清理(英文单词间保留);半角标点转全角、全角字母数字转半角;省略号/重复
标点;序号写法("1、"→"1."、"(一)、"→"(一)"、"一,"→"一、"、"(1)"→"(1)"、
短标题末句号删除);**序号缺点号自动补**("23 《文件》/23《文件》"→"23.《文件》",
数字+书名号情形);**明显跳号自动改号**(同级缺口≤2 自动前移并级联,
"一、二、四"→"一、二、三",批注版留【已修复】说明);
并列书名号/引号间顿号删除;发文字号六角括号、删"第"删虚位;
年份范围一字线(含全角连字符);汉字日期转阿拉伯、月日虚位、"号"改"日";
百分数范围补%;千分位逗号删除;成对直引号转弯引号;附件说明"附件:1.xx";
正文区空白段删除(封面、图片段、两表之间保留)。
## 四、人工检查规则(只提示/批注,不自动改)
默认模式打在终端汇总里;`--review` 模式逐条落为 Word 批注——锚定问题段落,
需人工项前缀【GB/T9704检查】、敏感自动修复项前缀【GB/T9704已修复】,
同类超 8 条只批前 8 条并提示全文排查:
- **序号缺标点(歧义型)**:数字+空格+汉字("23 零售业态分类说明")、汉字序数
缺顿号("一 规划范围")只批注,序号与空格原样保留(量词"5 个项目"不误报);
数字+书名号情形已走自动修复
- **序号重号/乱序/大缺口跳号/越级**:按章重置计数;缺口≤2 的明显跳号已自动
改号(留【已修复】批注提醒核对交叉引用),缺口更大、重号(含隔位)、乱序
只批注——该改号还是补内容,机器无法判断;越级仅对真标题提示(并列清单不报)
- **图表编号**:表/图题体例混用、断档乱序;**表题/图题缺编号**(段首为"表/图"
且后接空格却无编号,如"表 ××××")——该空格按表题分隔符保护不删,同时提示
补编号(v2.4.0 修正:旧版只认"表+数字",会把这个空格当多余空格删掉)
- **题目回行**:约超一行提示人工排梯形/菱形(7.3.1)
- **附件本体**:未另面编排提示人工分页(7.3.7)
- **引号落单**:奇数个直引号无法配对
- **书名号不配对**、**发文字号年份缩写**(〔24〕5号)
- **数字用法**(GB/T 15835):五年规划专名未加引号(裸"十五五")、
世纪年代汉字("上世纪八十年代")、约数叠用("约30家左右")
- **文末日期落款**:提示核对右空四字编排
- `--no-layout --review`:版式偏差(字体/字号/行距与规范不符的显式设置)
汇总为批注
## 五、不可修改内容(边界)
- **文字内容**:语法、病句、逻辑、数据等更广的书写硬伤——一律不动,建议用户转
proofread-comments 出批注版;**错字/重复**这一类高置信度问题,默认自动使用
`scripts/content_fix.py`(见六)处理,且必须走"自动改+批注版逐条留痕"的模式,
不允许静默改动
- **需人工判断的格式**:上节【检查】类项目只批注不改(重号乱序改哪个号、
大缺口是否缺内容、图表编号联动正文引用,均涉及内容判断)
- **封面、目录**:不动(题目排版除外)
- **表格**:字体、字号、加粗、单元格背景/表格样式一概不动(v2.4.0);只清段落底纹
- **加粗、高亮**:全文一律不动(v2.4.0),也不因此加提示批注
- **文档原有批注**:他人的审阅批注完整保留
- **红头版头/版记要素**:不检查、不添加、不标缺失
- 脚本改动都是确定性规则;任何拿不准语义的字符一律不动
## 六、明显错字/重复的"自动改+批注版逐条留痕"(`content_fix.py`)
**默认自动启用**,每次跑本 skill 都会执行这一步,不需要用户额外要求。这一步**需要人(或
Claude)先通读全文、逐条判断哪些是高置信度的明显问题**,本脚本不包含判断逻辑,只负责按判断结果
批量执行改动——这一点和格式修复的其余规则不同:格式规则全部是确定性模式匹配,这一步
依赖语义判断,误判风险明显更高(尤其容易把专有名词、政策术语、地名误判成错字),
**必须从严掌握"明显"的标准,拿不准的一律跳过,不要为了凑数量硬找问题**。
用法:
```
python3 scripts/content_fix.py 文稿.docx fixes.json \
-clean-out 终稿-内容已修复.docx -review-out 批注版-内容留痕.docx
```
`fixes.json` 每条包含 `anchor`(文中逐字存在的原文片段)、`replacement`(改后文字)、
`category`("错字"或"逻辑重复")、`note`(一句话说明判断依据)。
**产出两个文件,缺一不可**:
- clean 版:`anchor` 直接替换为 `replacement`,其余不动
- 批注版:原文**一字不改**,在原位置加批注"【内容已修复:类别】原文:'X' → 改为:'Y'"
批注作者名沿用二之二的分类规则:错字类署"错字",逻辑重复类署"逻辑重复",与格式类
批注(署"公文格式批注")区分开,不要混在一起。
Files in this skill
- CHANGELOG.md
- CLAUDE.md
- SKILL.md
- gbt9704-format.skill
- references/gb-t-9704-2012-standard.md
- references/numbering-rules.md
- references/punctuation-rules.md
- references/title-rules.md
- scripts/content_fix.py
- scripts/format_fix.py
- scripts/mark_resolved.py
- tests/test_format_fix.py
Attribution
Comments
Loading comments…
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.