| name | report2article |
| description | 把报告编排成读者向文章:只重组排序起标题,不增删改内容。解决标题夸张、子标题冗长、逻辑弱,支持超长报告信息不丢 |
Report to Article — 研究报告编排器
这个 skill 是什么
把一份已完成的研究报告编排成一篇面向读者的文章。
定位:编排器,不是写手。 你的工作是对报告里既有的信息做重新组织、排序、串联、起标题,让读者读得下去、读得懂、记得住。你不创作内容。
🔴 红线(最高优先级,违反即作废)
不允许对研究报告的内容进行任何增、删、改。 报告里每一个事实、数据、结论、判断、对象、链接,在文章里都必须原义保留。
| ✅ 允许(编排层) | ❌ 禁止(内容层,红线) |
|---|
| 重新排列章节/段落顺序 | 改写任何事实、数据、结论、判断 |
| 调整信息分组与归属 | 新增报告里没有的事实、观点、数据、推论 |
| 写纯衔接的过渡句/导读/小结 | 删除任何信息点、对象、数据、链接 |
| 重拟主标题、各级子标题 | 把报告的判断改强或改弱(如"可能"→"必然") |
| 把"四段式/罗列式"重排为叙事流 | "润色"导致语义偏移、信息丢失 |
| 提炼报告中已有的观点作为段落主线 | 加入个人新观点、外部新信息 |
过渡句的边界:衔接句只能起"导航/黏合"作用,不得携带任何新信息。
- ✅ "看完三大云厂的动作,再把视线移到模型厂商这边。"(纯导航)
- ❌ "看完三大云厂,可见云厂正在赢得这场战争。"("赢得战争"是新判断,越线)
判定标准:删掉你写的所有过渡句后,剩下的内容必须与原报告信息完全等价——不多一个事实,不少一个事实。
必须解决的问题
① 主标题夸张 → 客观、准确、清晰
夸张词黑名单(主标题禁用,节选):颠覆、革命、碾压、王炸、炸裂、重磅、震撼、史诗级、神器、一文讲透、降维打击、遥遥领先、吊打、秒杀、最强……完整黑名单以 references/title-rules.md 为唯一准绳(此处仅示例,判定时以该文件为准)。
三条标准:①客观(陈述事实/主题,不煽动)②准确(每个词正文都有支撑,不夸大)③清晰(一眼看懂,优先「主题+范围/角度」结构)。完整对照见 references/title-rules.md。
周报类标题:保持「{主题}研究周报 · 第 N 期(日期区间)」客观格式即可,不要加夸张词。
② 子标题冗长生硬 → 精炼、自然、像路标
- 中文子标题尽量 ≤16 字,硬上限 20 字。英文/混合语言报告:按词数折算,英文子标题尽量 ≤8 词、硬上限 10 词;混合标题里的产品/公司专名不计入字数(如
Vertex AI Agent 平台 中 "Vertex AI Agent" 算专名整体),只数说明性文字。
- 禁止把研究对象全名+括号注释直接当子标题。❌
Google Vertex AI Agent Engine + Agent Builder + ADK / Gemini Enterprise Agent Platform (Google Cloud) ✅Google:Vertex AI Agent 平台
- 禁止把整句结论塞进标题。❌
OpenAI Responses API + Agents SDK(含Swarm谱系演进、AgentKit) ✅OpenAI:从 Swarm 到 Agents SDK
- 句式自然,避免机械命名。❌
本组洞察(三大云厂格局变化) ✅三大云厂:格局正在怎么变
- 同级子标题句式风格统一。
改子标题属编排层(允许),但子标题对应的正文内容一字不动。
③ 逻辑性弱 → 重组为读者认知路径
报告是平行罗列,文章需要贯穿主线。通用骨架(完整模板见 references/logic-skeleton.md):①为什么值得读(导读,只用报告已有结论提炼)②是什么/发生了什么(主体)③怎么演变/什么关系(串联)④意味着什么(收束报告已有判断)。
重组手法:把「对象A四段式→对象B四段式」重排为按主题/冲突/时间线的叙事,信息分散但不丢失;四段式(动态/数据/链接/判断)融合为连贯段落+数据嵌入+链接保留,四类一个不少;用承上启下句做黏合。
报告较长时,重排必须走「超长报告强制处理协议」(见下文 + references/long-report-protocol.md):分块编排、分块落盘、逐块销账,保报告再长也不丢。
④ 读起来像机器 → 专业、不啰嗦、有人味
信息全≠好读。文章要有真人编辑的声音:长短句交替、主动语态、具体动词、一段一个主意;砍掉"值得注意的是""总的来说""随着……的发展"这类空转废话;加粗克制、叙事用段落列表用在真正平行处、开篇强导语、结尾能收束。
🔴 关键界线:这是压缩措辞(phrasing),绝不是压缩信息(information)。删虚词可以,删事实、改数字、改判断强弱不行——与红线完全一致。完整手法、排版细则、Before/After 示例见 references/prose-style.md。
🔴 超长报告强制处理协议(强制要求,保信息不丢)
报告越长,信息丢失风险越高(输入截断只读到前半段、输出截断长文写一半就断,尾部对象静默丢失)。这两个失败模式必须用机械手段防住,不能靠"注意一下"。
触发阈值(满足任一条即强制走本协议,宁可多走流程):
- 报告对象数 ≥ 8 个,或
- 报告正文预估 ≥ 6000 字 / ≥ 8000 token,或
- 一次读取被工具截断(read 提示 more lines / API 上限)。
一句话流程:先建全量对象清单当"分母 N" → 分块编排、每块立即落盘 → 逐块销账 X/N → 末尾从原始报告重新独立核对。完整五步、切分粒度、落盘与销账细则、独立复核闸,全部以 references/long-report-protocol.md 为唯一准绳。
本质:把"信息零丢失"从"凭一次性记忆保证"升级为"分块销账 + 独立复核机械保证"——报告再长也不丢。
0. 前置检查(先看输入是否合规)
动手前先判断输入,不合规就停下问清楚,别硬编排:
- 已经是文章(有主标题、叙事流、非罗列结构)→ 本 skill 是"报告→文章",输入若已是文章,只做标题/排版体检即可,不要重复编排;先向用户确认意图。
- 无可辨识对象(不是研究报告,或全是零散笔记)→ 说明"未识别到可编排的对象结构",请用户确认这是不是要处理的报告。
- 空报告 / 内容极少 → 直接告知无内容可编排,不生成空文章。
极短报告逃生舱
报告很短(对象 ≤ 2 个 且 正文 < 800 字)时,不必启动分块协议和全套机械校验:直接做标题客观化 + 子标题精炼 + 一遍红线逐条比对即可,交付时仍报出信息校验行。重机械(分块落盘、销账、独立复核)只服务于长报告。
工作流程
- 通读报告,列全部信息点清单(对象/事实/数据/结论/链接)作为校验基准(模板
references/info-checklist-template.md)。报告较长时,本步必须分段读全、列出全量对象编号清单。
- 搭逻辑骨架,先列标题层级大纲。
- 客观化主标题,过黑名单。
- 精炼所有子标题。
- 重排+写纯衔接过渡句,形成叙事流。报告较长时,按上面「超长报告强制处理协议」分块编排 + 分块落盘,绝不一次性吞吐。
- 打磨文风:按
references/prose-style.md 收紧措辞、优化排版、注入人味——只动措辞与结构,不动事实/数据/链接/判断强弱(见红线)。
- 🔴 信息零丢失校验(见下)。
- 三问自检:主标题过黑名单?子标题都 ≤20 字(英文 ≤10 词)且自然?逻辑通顺?
输出去向
- 短报告 / 逃生舱:默认行内返回文章全文即可(除非用户指定落盘)。
- 长报告(触发分块协议):必须落盘到文件,避免输出截断。文件名默认
<报告名>-article.md(无报告名则 report-article.md),Markdown 格式,路径默认与报告同目录或用户指定目录。交付时给出文件路径。
🔴 信息零丢失强制校验(必过闸)
逐条比对清单与文章:①对象覆盖 ②事实/数据覆盖(数值一致)③结论/判断覆盖(强弱未变)④链接覆盖 ⑤零新增(文章无报告外的事实/观点)。
⚠️ 哪些能 grep、哪些只能人工看(别被"机械核对"给了假信心):
- ①②④ 可机械核对:grep 对象名、具体数字/日期、URL 在文章里逐个命中(注意:grep 的是内容特征,不是四段式结构标签——正确文章已把四段式打散融合,不该出现"本周动态/关键数据"这类标签)。
- ③④⑤ 中的语义项不可 grep,必须逐行人工比对:③结论强弱漂移(如"可能"被写成"已经/必然")、⑤过渡句是否夹带报告外的新判断——这类靠字符串搜不出来,只能把文章句子与报告原句一句句对读。
🔴 独立交叉复核(必过,不能与建清单同一次心智完成):
X==N 只证明"文章覆盖了我提取的清单",不证明"清单覆盖了整份报告"——同一个人既列清单又写文章,提取时漏掉的对象会让 N 天生就短,然后自欺地"全部对应 ✅"。所以必须加一道独立反向检查:
- 对抗式反查:假定信息已经丢了,重新打开原始报告(不是凭记忆、不是看清单),逐段扫一遍,专门找"文章里/清单里没有的对象、数字、链接、判断"。找到即补,补进清单也补进文章。
- 长报告二次派生:末尾从原始报告重新独立派生一份对象清单(而非复用开头那份),与开头清单逐条比对,两份必须一致;不一致说明开头漏提取,以原始报告为准补齐。(细则见
references/long-report-protocol.md)
超长报告额外查:对象销账 X==N(列表总数=文章覆盖数,不得因分块/截断漏掉尾部对象)。
链接边界:报告里重复出现的同一 URL 按去重后的唯一链接数计 L,交付说明注明"(去重后 L 个)";报告零链接时 L=0,写"L 链接:无原文链接(报告本身未附)✅",不要凭空补链接。
任一条不过 → 打回,不得发布。交付时报出:"信息校验:N 对象 / M 数据点 / K 结论 / L 链接,全部对应 ✅"。
反例速查(一票否决)
主标题含黑名单词 / 子标题 >20 字或搬全名 / 文章出现报告外事实 / 漏掉对象数据链接 / 过渡句夹带新判断 → 均打回。