# Fact Check Cy

> 通用事实核查与证据审计 Skill。用于核验单条事实声明、数字与统计口径、引文、URL、图表、报告、网页、数据表以及图片或视频中的可核验内容；也用于检查现成研究结果的引用是否真的支持结论、识别过时信息、共同信源、断章取义、错误归因和证据缺口。当用户说“事实核查”“查证”“核实”“验证报告”“数字靠谱吗”“来源是真的吗”“核对引用”“溯源”“三角验证”“fact check”“verify this claim”时必须使用。开放式探索由 deep-research 负责；已有声明或材料的真假与证据支持关系由本 Skill 负责。

- Skill: `cy-chenyue/fact-check-cy` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add cy-chenyue/fact-check-cy`
- Raw SKILL.md: https://api.skillmd.com/api/skills/cy-chenyue/fact-check-cy/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Research & Search
- Author: cy-chenyue (https://skillmd.com/u/cy-chenyue)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/cy-chenyue/fact-check-cy

---


# 通用事实核查

把任何待核内容转换成可复核的“声明—证据—结论”记录。目标不是给网站打一个笼统的权威分，也不是把“搜到相同说法”当成证明，而是回答：

1. 原话究竟声称了什么；
2. 什么证据能够支持或推翻它；
3. 当前找到的证据实际说明了什么；
4. 仍有哪些未知、冲突和使用风险。

## 一、职责边界

### 本 Skill 负责

- 核验一条或多条可证伪的事实声明。
- 审计报告、网页、表格、图表中的数字、引文、链接与结论。
- 检查来源身份、原始出处、证据内容、统计口径、适用范围和时间状态。
- 识别多个页面是否来自同一原始信源，避免把转载数量当成独立证据。
- 同时寻找支持证据、反证和限制条件。
- 输出逐声明结论、证据链、风险与下一步行动。

### 本 Skill 不负责

- 从零探索一个宽泛主题。遇到“行业现在发生了什么”“帮我全面研究”等开放问题，路由到 `deep-research`。
- 把观点、价值判断、预测或偏好强行判为真假。只能核验其中隐含的事实前提。
- 仅凭域名、HTTP 状态码、搜索结果摘要、AI 检测器或内容凭证判定事实真假。
- 默认改写用户原文。除非用户明确要求“核查并修正”，否则只给核查结果与修改建议。
- 代替医生、律师、审计师、投资顾问或业务负责人做高风险最终判断。

若一个任务同时包含开放研究与核验：先接收 `deep-research` 的候选来源和待核声明，再执行本 Skill；不要在两个 Skill 中重复同一阶段。

## 二、输入与模式

支持：

- 对话中的一句话或一组声明；
- 本地文本、Markdown、CSV 或其他可读文件；
- 用户给出的 URL、网页、报告或数据集；
- 图片、截图、图表、音视频及其传播说法；
- `deep-research` 交接的研究问题、候选来源和待核声明。

自动选择核验深度：

| 模式 | 使用条件 | 覆盖 |
|---|---|---|
| 快速 | 用户只需初筛，或材料很大但只需识别最高风险 | 关键声明、明显错误、主要引用和证据缺口；必须声明未覆盖部分 |
| 标准 | 默认 | 全部实质性声明、引用、关键数字和相互矛盾之处 |
| 深度 | 医疗、法律、金融、安全、公共政策，或证据高度冲突 | 标准模式 + 方法学、共同来源、反证、专家/监管边界与复核要求 |

不要用固定分钟数承诺深度。材料很多时先按“影响 × 中心性 × 不确定性”排序；若无法完整覆盖，明确抽样规则与未核范围。

## 三、统一数据模型

### 1. 声明记录

每条待核声明至少保留：

- `claim_id`
- 父声明 ID 与原文位置（从复合声明拆出时）
- 原始表述与原始位置
- 拆分后的原子声明
- 声明层：来源归因 / 底层事实 / 分析解释
- 声明者、发布时间及原始载体（已知时）
- 时间、地域、对象、单位、定义和限定条件
- 类型：事实 / 数字统计 / 引文 / 因果 / 比较 / 时间敏感 / 媒体真实性
- 重要性：高 / 中 / 低

复合句必须拆分，但不能丢掉原始语境。例如“销量增长 40%，因此成为行业第一”至少拆成增长值、统计区间、比较口径和排名四项。

“公司称 X”与“X 真实成立”必须是两条记录：前者可由公司原文支持，后者仍需适合该事实的证据。比较口径、完整竞争集合等必要证据条件记录为 `verification_requirements`，不要伪装成原话中的声明。

### 2. 证据记录

每份证据至少记录：

- 标题、发布者、URL 或文件位置、发布日期、访问日期；
- 证据角色：原始记录 / 一手数据 / 二手分析 / 转述 / 反证；
- 与哪条声明相关，以及支持、反驳、限制还是无关；
- 能直接看到的关键内容或数据位置；
- 时间、地域、对象、定义与统计口径是否匹配；
- 与其他证据的共同来源和利益关系；
- 访问限制、缺页、付费墙、版本变化或其他局限。

“来源真实存在”和“来源支持这条声明”是两件事，必须分别检查。

另行记录证据状态“充分 / 不足 / 冲突 / 访问受限”和工作流状态“未核 / 机器初判 / 待人工 / 人工确认”。机器初判不得冒充人工确认。

### 3. 结论标签

只使用以下标签，不生成未经校准的百分制“可信度”：

| 标签 | 含义 |
|---|---|
| 支持 | 高相关证据与声明一致，未发现足以改变结论的强反证 |
| 不支持 | 可靠证据直接否定声明，或原始材料与声明相反 |
| 部分支持 | 声明包含多个实质部分，其中只有一部分获得支持 |
| 证据冲突 | 可靠来源给出实质不同结果，当前无法合理消解 |
| 证据不足 | 没有找到足够且适配的证据，不等于声明为假 |
| 不可核验 | 主要是观点、预测、定义不清，或缺少可观察条件 |

另行记录“表达风险”，例如：缺少语境、错误归因、过度外推、因果拔高、过时、伪多源或无。事实结论与表达风险不能互相替代。

另给出结论把握度“高 / 中 / 低”，并解释限制。把握度描述的是证据充分程度，不是事实为真的概率。

## 四、执行流程

### Step 1：确认核验契约

从上下文提取：核验对象、用途、受众、时效截止日、地域、风险等级和期望输出。能合理推断就继续，不因非关键缺口停下。

只有当不同解释会改变核验对象或结论时才提问。否则列出假设继续执行。

### Step 2：保留原话并原子化

1. 保存原始表述、链接或文件位置。
2. 区分可核事实与观点、预测、建议。
3. 拆分复合声明并补齐隐含比较项、分母和时间范围。
4. 将归因声明、底层事实和分析解释分开；把必要证据条件写入 `verification_requirements`。
5. 回看原文，确认所有限定条件仍被覆盖；不要为了“原子化”产生与原话无关的新问题。
6. 按“影响 × 中心性 × 不确定性”排序。

详细拆分规则见 [method-and-evidence.md](./references/method-and-evidence.md)。

### Step 3：盘点已有证据

- 提取已有 URL、脚注、来源名、精确数字、日期、引文和图表来源。
- 对较大的本地文本或 Markdown，可运行：

```bash
python3 scripts/inventory_evidence.py path/to/file.md --format markdown
```

- 脚本只做证据线索盘点，不做真假判断。
- URL 能打开不代表内容匹配；403、登录墙或付费墙只标为“访问受限”，不能直接判为失效。

### Step 4：横向阅读并追到原始出处

对每个高优先级声明：

1. 查声明者是否给出依据；有条件时寻找其原始出处，不擅自联系外部人员。
2. 离开当前页面，调查发布者是谁、为何有能力知道、是否有利益关系。
3. 沿引用链追到原始数据、法规、论文、财报、完整访谈、原图或原始视频。
4. 检查发布时间、修订版本和声明发生时可获得的信息；核验“当时是否成立”时，不把后来材料冒充当时已有证据。
5. 主动搜索有能力推翻、限制或重新解释该声明的证据。

优先最接近事实生成过程且方法透明的来源，但“第一手”不自动等于中立或正确。

### Step 5：判断来源是否适合这条声明

逐声明回答，不给整个网站永久打分：

1. 身份：谁发布、谁负责，能否确认？
2. 接近性：是否直接产生、观察或保管相关数据？
3. 可审计性：原始数据、方法、样本、定义和版本是否可见？
4. 适配性：时间、地域、人群、单位、口径是否与声明一致？
5. 独立性：多个来源是否实际复制同一通讯稿、数据集或研究？
6. 动机与限制：是否存在商业、政治、法律或选择性披露动机？
7. 反证：是否存在同等或更强的相反证据？

来源数量由声明性质决定。法规生效日可由一个主管机关原文充分证明；趋势、因果、效果和市场规模通常需要不同方法或独立来源交叉。不得机械要求“两条链接”。

### Step 6：按声明类型专项核验

- **数字与统计**：核对数值、单位、分母、样本、时间、地域、名义/实际值、同比/环比、估算方法；如有推导，展示公式并复算。
- **图表与表格**：文本抽取顺序不等于视觉对应关系。涉及数值—标签、图例—系列、表头—单元格或多级分类时，必须查看原始版面或保留坐标的结构，逐项记录映射与页码，并用合计、单位和上下文交叉检查；无法确认映射时标为证据不足，不按抽取顺序猜测。
- **引文**：找到完整原文或录音录像，核对说话人、时间、上下句、删节和翻译。
- **法规与政策**：核对司法辖区、正式文本、版本、生效日、过渡条款和主管机关解释。
- **科学与医疗**：区分单项研究、系统综述、指南与监管结论；检查研究设计、样本、终点和外推边界。
- **公司与产品**：区分公司自报事实、审计/监管披露和第三方评价；公司材料能证明“公司这样报告”，不自动证明行业结论。
- **图片与视频**：核对最早传播、原始文件、时间地点、反向搜索、关键帧和编辑痕迹。内容凭证只能帮助判断来源与修改历史，不能单独证明画面所述事实。

媒体核验的详细边界见 [media-and-provenance.md](./references/media-and-provenance.md)。

### Step 7：形成逐声明结论

每条结论必须能回指到证据记录。明确：

- 哪些证据支持；
- 哪些证据反驳或限制；
- 为什么采用该标签；
- 是否存在独立的表达风险；
- 还有什么未知；
- 该结论适用到哪个时间点。

不要把“未找到”写成“不存在”，除非已覆盖足以支持存在性判断的权威记录。

复合声明先展示子声明，不用平均分聚合。若用户需要原句总判定：

- 所有必要子声明均获支持，原句才可标为“支持”；
- 必要子声明存在反驳时，按原句逻辑判断“不支持”或“部分支持”；
- 没有反驳但任一必要子声明证据不足时，整句不能标为支持；
- 因果、比较、合取和析取关系分别判断，并说明聚合理由。

### Step 8：输出并决定下一步

默认输出：

1. 核验范围与截止时间；
2. 结论摘要；
3. 逐声明事实结论、表达风险与工作流状态；
4. 关键证据与共同来源；
5. 未决问题、访问限制和高风险项；
6. 建议保留、改写、删除或补证的行动。

使用 [output-contract.md](./references/output-contract.md) 的模板。来源链接放在其支持的声明附近。

若关键证据缺口需要宽泛探索，制作以下交接包给 `deep-research`：

- 待回答问题；
- 已核声明及定义；
- 已查来源与失败路径；
- 需要补齐的证据类型；
- 截止时间、地域和排除项。

## 五、并行与停止条件

材料包含十条以上相互独立的高优先级声明时，可按声明组并行检索；每个分支返回“证据记录 + 局限”，主 Agent 统一判断，避免分支直接给相互不一致的最终结论。

出现以下情况时暂停该声明并清楚报告：

- 原话、对象或统计定义存在决定性歧义；
- 原始材料需要登录、付费、私有权限或新增授权；
- 高质量证据持续冲突且无法解释；
- 高风险领域缺少所需专业判断；
- 资料在截止时间之后更新，无法回答“当时是否成立”。

不得为填满报告而自行补规则、来源或事实。

## 六、领域配置

通用核心不内置行业网站白名单、黑名单或固定阈值。若项目有内部政策、指定数据源、法定依据或验收规则，按 [domain-profiles.md](./references/domain-profiles.md) 建立可选领域配置；配置只能规定优先顺序和合规要求，不能预先决定结论。

## 七、方法依据

本 Skill 吸收 SIFT/横向阅读、IFCN 透明度原则、Claim/ClaimReview 结构、开放域自动事实核查研究和 C2PA 来源凭证边界。它们各自适用范围不同，不把任何一套框架包装成通用真理。设计依据、适用边界与官方资料见 [sources.md](./references/sources.md)。

