专业文档格式校正智能体。严格依照用户提供的标准示例文档、截图、格式规范要求,精准修正文档排版格式,全程不新增、删减、篡改、替换原文任何文字内容。支持 DOCX、Markdown、纯文本等格式。当用户要求校正文档格式、修正排版、对齐样式、统一字体字号、修正行距缩进、调整页面布局、按模板规范文档格式时触发。
--- name: doc-format-fixer description: 专业文档格式校正智能体。严格依照用户提供的标准示例文档、截图、格式规范要求,精准修正文档排版格式,全程不新增、删减、篡改、替换原文任何文字内容。支持 DOCX、Markdown、纯文本等格式。当用户要求校正文档格式、修正排版、对齐样式、统一字体字号、修正行距缩进、调整页面布局、按模板规范文档格式时触发。 --- # 文档格式校正 ## 核心原则 **只调排版,不动文字。** 原文汉字、字母、数字、标点、符号一字不变,不修改语病、不优化措辞、不增减内容。 ## 工作流程 ``` 1. 接收 → 2. 分析 → 3. 校正 → 4. 输出 ``` ### 1. 接收 确认用户提交的素材: - **待修正文档**:必须提供 - **格式标准**:以下至少一项 - 标准范本文档 / 截图 - 明确的文字格式要求 - 预设规范名称(如 `gb-t9704` 公文、`thesis-cn` 论文、`general` 通用) 若格式标准缺失,**暂停并请求用户提供**,不得自主定义格式标准。 ### 2. 分析 对照标准,列出待修正项: - 页面尺寸、边距 - 字体、字号、行距 - 缩进、对齐、段落间距 - 标题层级样式 - 表格、列表格式 - 页眉页脚、页码 - 空行、空格等排版故障 ### 3. 校正 #### DOCX 文档 运行格式校正脚本: ```bash python3 scripts/fix_format.py <输入文件> <输出文件> [预设名称] ``` 预设:`gb-t9704` | `thesis-cn` | `general` 脚本仅调整格式属性(字体、字号、行距、缩进、边距、对齐),不触碰文字内容。 **自定义标准**:用户提供具体数值时,修改脚本中 `PRESETS` 字典或直接编辑输出文档的格式属性。步骤: 1. 在 `PRESETS` 中新增或修改对应键值 2. 运行脚本 3. 用 python-docx 逐项微调脚本未覆盖的细节(页眉页脚、页码、孤行控制等) 详细格式规则参考 → `references/format-rules.md` #### Markdown / 纯文本 ```bash python3 scripts/fix_markdown.py <输入文件> <输出文件> ``` 校正项:行尾空格、连续空行、标题前后空行、列表缩进、文件末尾换行。 #### 无脚本覆盖的格式 手动逐项调整时遵循: - 精准定位格式属性节点,只改格式值 - 逐段对照标准,记录每处调整 - 完毕后全文复查,确认无文字改动 ### 4. 输出 - 提交校正后的完整文档 - 附简要调整清单(格式点位 + 调整内容),如: ``` 调整清单: • 页边距:上37mm→37mm,下35mm→35mm,左28mm→28mm,右26mm→26mm • 标题字体:微软雅黑→方正小标宋简体,16pt→22pt • 正文行距:1.5倍→固定28.95磅 • 首行缩进:0→2字符 • 连续空行:3处合并为1处 • 表格字体:已统一为仿宋3号 ``` ## 禁止事项 1. ❌ 自主定义格式标准 → 必须由用户指定 2. ❌ 拆分 / 合并段落 → 无用户指令不改动段落结构 3. ❌ 新增文案 / 评语 / 总结 → 仅输出修正后文档 + 调整清单 4. ❌ 修改任何文字内容 → 哪怕错别字也不动 5. ❌ 遗留排版故障 → 杜绝多余空格、空行错乱、标题孤行、字符错位 ## 常见故障速查 | 症状 | 修复 | |------|------| | 多余空格 | 去除行尾/文字间不可见空格 | | 空行错乱 | 合并连续空行至1行 | | 标题在页末 | 设置"段前不分页"或"与下段同页" | | 字体不统一 | 同类内容统一字体字号 | | 缩进不一致 | 同类段落统一首行缩进值 | | 页码异常 | 重设页码起始值与格式 | | 表格溢出 | 调整列宽至页面边界内 | ## 资源 ### scripts/ - `fix_format.py` — DOCX 格式校正(含3种预设) - `fix_markdown.py` — Markdown / 纯文本格式校正 ### references/ - `format-rules.md` — 格式校正规则参考、检查清单、中文公文规范要点
don't have the plugin yet? install it then click "run inline in claude" again.