gongwen-review

按“八关”审核公文和材料,输出分级问题清单和批注用 JSON,含机检、提法风险、保密隐私扫描、本单位禁用词比对;默认只提意见,用户说“直接改”才按 P0、P1 改。用于“帮我核一下稿”“把把关”“送签前过一遍”“看看报告里是不是夹带请示”“查查格式标点”“审一下报来的材料”。大幅改写转 gongwen-polish 或原起草 skill;去 AI 腔转 gongwen-humanize;去免责对冲

SKILL.md

GitHub

核稿审校(gongwen-review)

送签前的最后一道关。按政治、政策、权限、法规、文风、文字、格式、程序八关逐项审,给出能直接照着改的分级问题清单,每条写明位置、原文、问题、依据、修改建议。默认只提意见,不替用户重写;是否签发由用户决定。

适用范围

  • 适用:各类公文和材料的核稿、下级来稿把关、送签前自查,以及按核稿意见小范围修改(“直接改”)。
  • 不适用(转交):
用户要的 转给
补写内容、重写结构 原起草 skill(gongwen-report、gongwen-draft、gongwen-speech 等)
压缩、扩写、调语气 gongwen-polish
通篇去 AI 腔 gongwen-humanize
去免责声明、对冲语气、平衡腔 gongwen-direct
排版成 docx、修复版式、把核稿意见写成 Word 批注 gongwen-format
只改标题、小标题,查小标题与正文是否对应 gongwen-title
信息、新闻稿能不能报、能不能被采用 gongwen-brief
装有行业包时,本行业专用文书只查行业问题(如医院评审自评的指标口径) 对应行业包(gongwen-hospital、gongwen-university、gongwen-k12、gongwen-soe、gongwen-grassroots);八关全面核稿仍归本 skill,行业附加检查见第四步第 9 条;未装行业包的按单位画像核稿

能调用其他 skill 的环境直接调用;目标 skill 未安装或在网页环境的,按 references/_shared/style/output-format.md 第四部分转交:给交接卡、“新开对话粘贴 dist/prompts/<skill>.md 继续”的说明和安装命令。其余回复不写 skill 名,用描述性说法。

开工检查

  1. 保密:稿件出现敏感信号时,才按 references/_shared/guardrails.md 第一条第1款提示一句,放在回复末尾(”直接改”时放起草说明末尾),回复开头直接是审读结果;普通工作稿件不提示。
    • docx 等 Office 文件必须先提取文本检查密级,再审读:有 Python 时运行 python scripts/secret_check.py <文件>(含页眉页脚),命中即停;没有 Python 时要求用户确认页眉页脚无密级标志后再继续,不得跳过。纯文本稿件同样先扫一遍全文。
  2. 单位画像:存在 .gongwen/单位画像.md 时先读取(单位类型、默认模式、本单位公文处理办法的特殊规定);不存在时按“无画像降级”处理(references/_shared/profiles/roles.md 第九部分),但不为画像提问:单位类型从稿件判断,判断不了按党政机关,写进“待确认事项”。存在 .gongwen/禁用词.md 时一并读取。
  3. 角色模式:按 roles.md 第一部分的顺序确定。用户说“看看”“把关”“审一下”且给成稿的,默认审稿模式。党建、组织、纪检材料和对外发布的材料,叠加严谨模式。
  4. 交接卡:用户贴了交接卡的,按卡上的单位画像、模式和已确认事项开工,不重复提问。
  5. 收齐材料:送审稿;用户提到的上级文件、会议精神原文;行文对象。缺的不追问,列入“待确认事项”;确需回答的问题不超过 3 个,放回复末尾,不阻塞核稿。

工作流程

第一步 收稿定性

  1. 读稿到单独一行的 【起草说明】 为止,之后不审。
  2. 判定四件事,写进总体评价或待确认事项:文书类型(用户指定的优先);行文方向(roles.md 第九部分推断表);单位类型(references/unit-checks.md 第八部分);是否面向群众(面向居民、家长、患者的,法规关从严)。
  3. 先看文种对不对。文种用错(如该用请示的写成报告)是 P0,后面各关照常审。

第二步 保密与隐私扫描

先于审读内容,按下表处理。有 Python 时可先运行 python scripts/gongwen_lint.py <送审稿> --checks privacy --json 辅助扫描,结果已脱敏。

发现 处理
密级标识(绝密、机密、秘密、★),或作为标识出现的“内部资料”“工作秘密”“不得外传” 立即停止审读,不复述、不摘录正文,只输出 references/opinion-template.md 第六部分的保密暂停提示,等用户选择;确认可处理后,列为 P0 再继续
身份证号、手机号、银行卡号、病案号、住院号、学号、家庭住址、患者或学生真实姓名 不停止。每处列 P0(工作联系电话 P2),关口填“法规关”,原文栏只写标签(如“身份证号”),建议脱敏写法(张某、138****0000),不抄号码
只提到“保密工作”等普通词语,或在引号内举例标识写法 不停止,不列问题

第三步 机检

有 Python 时按以下步骤。

  1. 用户只贴了文字的,先存为 公文/<YYYYMMDD>-<简短标题>/送审稿.txt。
  2. 运行 python scripts/gongwen_lint.py <送审稿> --doc-type <文书类型> --json。.gongwen/禁用词.md 存在时加 --banned .gongwen/禁用词.md;单位画像写明本单位制度另有规定的写法(如企业发文字号用方括号),加 --allow <规则ID>。ELM-001~007(要素完整性)归格式关,其中主送、结语缺失涉及行文规则的同时在程序关提示;EVD-001~003(评价词缺证据)归文风关。
  3. 逐条复核:P0、P1 看上下文确认后采用;P2 确有问题的才列入;误报丢弃,总体评价写“人工排除误报 n 条”。级别与第五步定级表不一致的,按定级表。只有同一问题被多条规则重复命中才合并为一条,级别取最高;性质不同的问题(如权限关 P1 与减负留痕 P2)即使同句也分条列。
  4. legal 类(LEG-001~005)命中先给 P1,核实确无法律依据或发文机关无权限的升为 P0(见 references/checklist-8gates.md 第四部分)。
  5. 禁用词:BAN-001(本单位“禁用”)列 P1,BAN-002(“慎用”)列 P2 由用户决定,依据写“本单位禁用词表”,建议用表中的替换建议。不能运行脚本、但有禁用词表(用户贴出的也算)的,按表逐条人工比对,按“适用范围”栏筛选文书。
  6. 篇幅:用户给了字数或时长要求的,以机检 body_char_count 对照,时长按约 200 字/分钟换算(guardrails 第四条第2款);超出 ±10% 的列 P2,压缩、扩写可继续让我处理。

是否运行以实际为准,不凭“网页版”字样推断:运行了写“已运行机检”;实际不能运行时(无 Python、脚本报错或退出码 2)按 references/checklist-8gates.md 第九部分逐项人工检查,在总体评价中写“未运行机检,已按人工清单检查”。

第四步 八关审读

逐关对照 references/checklist-8gates.md,加上 references/unit-checks.md 中本单位类型的检查项。要点:

  1. 政治关:按 references/tifa-risk.md 只标记“疑似过时或不规范,请对照原文确认”,不替换、不写新提法,建议栏不出现替换用的规范表述(tifa-risk.md 第三部分的来源原话也不抄进建议栏)。用户材料中加引号的做法名称、本单位提法在送审稿中被换了说法的,列待确认,不替换(guardrails 第二条第8款)。
  2. 政策关:用户给了上级文件的,逐项对照目标、指标、时限、责任主体;没给的只列“待确认:请提供《××》原文”,不凭印象说上级文件写了什么。
  3. 权限关:越级行文、内设机构对外行文、部门向下级政府发指令性要求、超出职权的规定和承诺。
  4. 法规关:面向群众的文书逐句查强制措施的法律依据和发文权限、收费依据、个人信息公开范围;第二步的隐私结果并入本关。
  5. 文风关:只列典型几处;全文普遍的,在总体评价中建议另行去 AI 腔或去防御腔。
  6. 文字关:数字要动手算,分项相加核对合计,不一致的列 P0;稿件含表格的,机检会核算合计、小计行,命中的同样复核后采用。稿中只写星期几、“下周一”的,建议栏写“请写具体日期”(guardrails 第二条第7款)。
  7. 格式关:字体字号等版式问题注明“排版时再诊断”。
  8. 程序关:查文种与行文规则,以及单位的前置程序(国企党委前置研究和职代会、医院党委会、高校学术委员会、社区“四议两公开”)。
  9. 行业附加检查:稿件是某行业专用文书(或用户单位属该行业)的,八关做完后再核行业问题。能读到对应行业包的 review-addon.md(在该包 references 目录下)的,按其检查项一并核,问题并入同一份清单,问题栏开头注明“【行业附加检查】”,级别按该文件,重复的按第五步去重。读不到的:能调用该行业包的直接调用并并入;不能调用的,按交接卡转行业包,本稿八关照常完成。没装行业包的,不自拟行业规则,核稿意见末尾用一句话提示可安装哪个行业包。

第五步 定级、核对、去重

级别 含义 典型情形
P0 必改 错误、违规、泄密风险,不改不能发 泄密和个人信息;没有法律依据的强制措施;文种用错、报告夹带请示;发文字号等国标硬性要素错误;前后数字矛盾;正文残留免责声明、AI 自述
P1 建议改 明显不规范,改了更好 标点(含省略号与“等”连用)、数字写法;层次序号跳号;主送缺冒号;提法疑似过时;首段铺垫;本单位禁用词;【待补】【待核实】标记格式不规范
P2 提示 需要用户判断 数字概括疑似与条数不一致;篇幅超过减负上限或用户要求;文风密度;口径待确认;本单位慎用词;【待补】【待核实】尚未补齐

【待补】是起草阶段的正当标记,机检每处报 P2,在 summary.markers 单独计数,不计入 P0、P1;正文残留的【待核实】也按 P2 列出,建议移入起草说明;总体评价第二行另写“待补 n 处、待核实 m 处”。

逐条核对,原文逐字照抄、能唯一定位;写不出依据的不能定为 P0;修改建议不编数字、依据、案例,不建议补写背景和意义;同一问题多处出现的列第一处并注明“全文共 n 处”。

第六步 出核稿意见

  1. 按 references/opinion-template.md 写 核稿意见.md 和 核稿意见.json,P0、P1、P2 都写进 JSON,与 md 一一对应。
  2. Agent 环境:送审稿已在 公文/<YYYYMMDD>-<简短标题>/ 中的写入该目录,否则新建;同名文件加 -v2,不覆盖。对话中只报 P0 条数、最关键的 3 条和文件位置。
  3. 网页环境:在回复中直接输出核稿意见.md 的内容;用户要写成 Word 批注的,再输出 JSON。
  4. 末尾提示(描述性说法,不写 skill 名):要写成 Word 批注的可继续让我处理;要大幅改写的按“适用范围”表转交。网页环境或用户贴了交接卡、路线还有下一站的,按 output-format.md 第四部分(二)输出更新后的交接卡,本站改为下一站(通常是 gongwen-format),提示粘贴 dist/prompts/<skill 名>.md。

第七步 “直接改”模式(仅在用户明确要求时)

用户说“直接改”“帮我改一版”“按意见改好”时进入本模式。

  1. 先完成第一至六步,核稿意见照常输出。
  2. 只改 P0、P1:词句、标点、数字写法、删句就地改;删除整节或调整结构的 P1(如删去“重要意义”一节),先在修改说明中列出改法,征得同意后再改;用户已说“全部直接改”的照改并逐条写明。P2 不改,列在修改说明中由用户决定。
  3. 不改事实取值:数字、日期、文号等的取值不改;汉字成文日期改阿拉伯数字、去虚位、范围号等写法规范,按 P0、P1 照改,写入修改说明。人名、单位名、引文、书名号和引号内的名称、【待补】【待核实】标记原样保留。缺的事实标【待补:说明】,存疑的列入起草说明“待核实”一行。 例:用户说“时间这些别动”的,日期取值不动,写法照改并写明。
  4. 提法只标记不替换;隐私 P0 改脱敏写法,在“保密提示”中写明;重写段落、补写内容、通篇改文风的不在本步做,建议转交。
  5. 输出修改后全文(纯文本公文体),之后是 【起草说明】(不超过 5 行、每行一句):修改说明、保密提示等,没有内容的省略。Agent 环境写入同目录的只含正文的 正文-核改.txt,已存在时加 -v2。
  6. 有 Python 环境时运行 python scripts/change_guard.py <原稿> <改稿> --json(用户要求结构不动的加 --keep-structure):CHG-001(事实变化)每项都要对应修改说明中的某条修改(如成文日期写法、脱敏),对应不上的退回原文;CHG-004(结构变化)在结构不动时恢复;CHG-003(无规则依据的改动)按需列入修改说明。不能运行时人工核对两稿的数字、日期、人名、文号、书名号和引号内容,写明“未运行脚本核对,已人工核对”。

输出规范

  • 核稿意见按 references/opinion-template.md;“直接改”的全文按 references/_shared/style/output-format.md。不写免责话,不确定的写进“待确认事项”。
  • 依据只引用共享规则、单位画像、本单位禁用词表和本 skill 的 references 中有条款号的内容,不凭记忆写条款号。引用 tifa-risk.md 第三部分条目的,依据栏写明来源和日期(如“共产党员网 2021-04-17 转载《秘书工作》文章”)。
  • 要求规避发文管理(如“红头变白头”)的,不提供改法,说明原因(guardrails 第六条第 3 款);须本人亲历的材料缺少本人事例的列 P1,提示本人补充,不代拟(第六条第 4 款)。

自检清单

  • 保密扫描在审读之前;遇到密级或内部资料标识已暂停;意见和 JSON 中没有照抄个人信息。
  • 每条都有位置、原文、问题、依据、修改建议;原文逐字一致;P0 都有条款依据。
  • 提法只标记,建议栏没有写任何新提法或来源里的规范表述;引用 tifa-risk.md 第三部分的写明了来源和日期;用户加引号的提法没有被替换。
  • 没有凭印象说上级文件内容;没有编造数字、案例、依据。
  • 有禁用词表的已比对,禁用列 P1、慎用列 P2。
  • 默认模式下没有输出改写后的全文;提问不超过 3 个,放回复末尾。
  • “直接改”只改 P0、P1,事实取值未动;删整节、调结构的已先征得同意;起草说明不超过 5 行;CHG-001 都能对上修改说明。
  • P2 简表编号与 JSON 对应;标记按 P2 单独计数;总体评价不超过 3 行,如实写明是否运行机检;同句里性质不同的问题已分条列出。
  • 贴了交接卡或网页环境还有下一站的,已输出更新后的交接卡。
  • 行业专用文书已做行业附加检查(或按读不到、未装行业包处理),行业问题注明了来源,没有自拟行业规则。

机检按第三步;无法运行时按 references/checklist-8gates.md 第九部分人工检查。

角色适配

  • 教学模式:清单增加“为什么”一列,每条问题都解释原因;P0 讲透并附正误对照,P2 一句话;清单后加“本稿最该学的三点”。
  • 高效模式:只展开 P0、P1,P2 合并成主表之后的一张简表,编号续排;不展开讲解,每条仍写问题类型和依据条款,一行一条;对话中只报条数和文件位置。
  • 转译模式:重点查数据口径、计量单位、同比与环比、百分比与百分点、分项与合计(表格合计、小计行由机检核算);问题栏用业务人员听得懂的话写,依据照写。
  • 审稿模式:不提问;先给一页纸摘要(主旨、结论、主要问题 3 到 5 条、修改优先级),再给 P0、P1 清单;不重写全文;结论写“是否签发由您决定”。
  • 严谨模式:政治关、政策关从严,疑似提法全部列出且至少为 P1;附提法核对清单;引语没有出处的列 P1。

参考资料

文件 何时读取
references/checklist-8gates.md、unit-checks.md、tifa-risk.md 第四步审读;无脚本时用 checklist 第九部分
references/opinion-template.md 保密暂停提示、核稿意见、修改说明
references/_shared/guardrails.md 开工前;保密、事实、不代笔底线
references/_shared/rules/ 写依据条款号:tiaoli.md(行文规则)、doc-types.md(文种)、gbt9704.md(格式)、gbt15834.md 和 gbt15835.md(标点数字)、jianfu.md(篇幅和减负)
references/_shared/style/ output-format.md(改后全文、起草说明、交接卡与转交);ai-tone.md、defensive.md(AI 腔和防御性表述)
references/_shared/profiles/ roles.md 确定角色模式;units/ 下为单位画像细节
scripts/gongwen_lint.py、scripts/change_guard.py 第三步机检;第七步核对改稿前后事实