mcpField
V
verifying

verifying

github.com/genli-ai生产力6540 次安装20 周前更新
代码仓库

关于 verifying

通过追溯可信原始来源来核验事实陈述的技能,涵盖语境、间接推理、否定性陈述及权威来源冲突,并排除指定的敏感话题。

主要功能

  1. 01五类核验场景流程
  2. 02优先检查用户提供的材料
  3. 03原始来源研究指引
  4. 04通过指标拆解交叉核验
  5. 05处理否定性陈述与来源冲突

适用场景

  1. 01核对陈述中的数字或引语
  2. 02补充引文缺失的上下文
  3. 03核验无法直接追溯数据的主张
  4. 04比较相互冲突的权威数据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/genli-ai/market-research-skills --skill verifying

安装后在 Claude Code 中输入/verifying确认已加载。

附带文件README.mdSKILL.zh.md

详细介绍

信息核实技能

双语技能。中文版:SKILL.zh.md。英文版是唯一事实来源;.zh.md 是与其同步的译文——始终先编辑英文版,再在同一变更集中同步修改 .zh.md,切勿只编辑中文版。

目的

用户提供需要核实的句子或段落。AI 绝不能“快速搜一下,瞄几眼网页摘要,就临场编个结论”。必须深入查找可信的一手来源,否则就诚实承认无法核实。

涵盖五种情形:

  1. 基本真实性核查:陈述中的数字、事实或引述是否准确。
  2. 完整性:来源本身正确,但用户的引述脱离了上下文——补充缺失的背景。
  3. 单层推理核实:当无法追溯直接数字的一手来源时,通过指标拆解(Z = P × Q)交叉核查。
  4. 否定性陈述:识别“X 从未做过 Y”这类无法证伪的主张,并转为“寻找反例”的路径。
  5. 多来源冲突:当两个权威来源对同一数字说法不一时,并列呈现并说明差异原因。

输入

用户提供一条需要核实的陈述(或段落)。可选附件(PDF、链接、截图、笔记)优先作为核实材料。

范围排除(拒绝的话题)

开始任何核实工作之前,先检查陈述是否属于拒绝处理的类别。无论请求如何措辞,或问题多么具体,以下主题均不在处理范围内:

  • 政治议题——选举、政党、政治人物的立场、地缘政治争端、政府合法性辩论等。
  • 军事议题——军事行动、兵力构成、装备数量、冲突细节、国防政策等。
  • 宗教议题——教义、宗派争端、宗教领袖的言论、宗教间比较等。
  • 娱乐名人八卦——私生活、恋情、家庭事务、狗仔队传闻等。
  • 其他本质上有争议的话题——无论核实结果如何,仅尝试核实本身就可能引发争议。

当请求涉及上述任何类别时,只回复一行,然后停止:

超出范围。(Out of scope)

不要尝试核实、部分核实、“还是让我试试”或逐步分析。除这一行之外,不要解释原因。不要建议可能可以接受的变通方案、替代表述或相关查询。上面这一行就是完整回复。

此检查在情景路由之前进行——如果触发,则不运行此技能的其余部分。

情景路由

在内部将陈述归为五种情景之一,以选择合适的子流程(单层推理、否定性陈述和多来源冲突使用各自的表情标签)。不要将情景标签作为单独一行打印出来——这对用户没有帮助。如果一条陈述涉及多种情景,采用主导路径,并将其他情景作为补充处理。

回复语言

始终使用与用户问题相同的语言回复(中文提问 → 中文回复;英文提问 → 英文回复;混合提问 → 按问题的主要语言回复)。

表情标签(✅ ⚠ ❌ 🔎 ⚖ 🔒)不受语言影响,两种语言中都保持不变。翻译表情后面的文字——例如,✅ Verified. → ✅ 已核实。。显示元数据字段名时也要翻译:Time point / Definition / Unit / Coverage / Revision status / Data type → 时点 / 口径 / 单位 / 范围 / 修订状态 / 数据类型。

内部逻辑、白名单和规则结构不受语言影响——不要更改。

工具调用映射(跨大模型适配)

此技能在不同的大模型终端中运行时,下列操作会映射到该终端提供的本地工具。此表仅描述操作语义,不会硬编码任何特定终端的工具名称。

操作含义
读取全文加载并全面理解 PDF / md / txt / csv 文档
获取网页正文从 URL 获取页面文本(不只是搜索引擎摘要)
搜索引擎查询在搜索引擎上执行关键词查询
图像识别多模态读取屏幕截图或图表
数据库查询按字段查询结构化数据源

可信来源白名单

只有以下来源类型可作为“验证成功”的证据。本节内容自成一体,不依赖外部文档。

关于“代表性列表与穷尽列表”

下方各子类别中列出的具体机构 / 网站 / 数据库均为代表性示例,而非穷尽列表。其他层级相同、性质相同的来源同样符合要求,例如此处未列出的其他主权国家中央银行、国家统计机构、知名国际智库、区域权威媒体、行业专用一手数据库等。参照以下三项标准进行判断:

标准接受拒绝
机构性质官方机构(政府 / 中央银行 / 监管机构 / 多边国际机构);权威专业机构(顶级智库 / 经同行评审的学术机构 / 主流投行或咨询公司研究部门);独立第三方(信誉良好的聚合数据库)个人博客、自媒体、内容农场、SEO 网站
内容性质一手披露(年报 / 监管申报文件 / 政策原文);一手统计(调查 / 普查 / 行政记录);权威研究(附带方法论的报告 / 论文)二手转述、机器抓取拼凑内容、AI 生成的摘要
可追溯性明确标注机构;注明发布日期;可通过原始 PDF / 数据库字段定位匿名“据报道” / “业内人士称”;没有来源链接;没有具体定位信息

符合全部三项 = 可信来源,即使未列在下方表格中也一样。但仍受“不可作为最终来源”的列表约束(仅使用 Wikipedia / 知乎 / 个人博客 / 社交媒体 / SERP 摘要等)。

一 — 用户提供的文件(优先级最高)

用户在对话中或通过本地路径提供的文件:PDF、Markdown 笔记、Excel、屏幕截图、整理后的网页文本、链接。

  • 文本(PDF / md / txt / csv):读取全文
  • 链接:获取网页正文
  • 图片:图像识别
二 — 官方网站和权威数据库

国际机构。

来源主要内容入口
IMFWEO、Article IV、Working Papers、Policy Papers、Selected Issues Papershttps://www.imf.org/publications, https://www.elibrary.imf.org
World BankOpen Knowledge Repository、WDI、Country Studieshttps://openknowledge.worldbank.org, https://databank.worldbank.org
IEAWorld Energy Outlook、Country Profiles、能源数据https://www.iea.org
IRENA可再生能源数据和报告https://www.irena.org
OECD跨国宏观统计、政策研究https://www.oecd.org, https://data.oecd.org
BIS金融稳定、跨境资本流动、央行统计https://www.bis.org
UN Comtrade国际贸易统计https://comtrade.un.org
UNCTAD投资和发展统计https://unctad.org
WTO贸易政策和统计https://www.wto.org
Eurostat欧盟统计https://ec.europa.eu/eurostat
ECB欧元区央行数据https://www.ecb.europa.eu
FRED美国宏观数据https://fred.stlouisfed.org
区域开发银行ADB、AfDB、Arab Monetary Fund、IDB、ESCAP、ECLAC各机构的官方网站

主权机构/政府机构/中央银行/监管机构。

来源内容
各国中央银行货币政策、外汇储备、银行业、跨境资本流动
各国统计局GDP、人口、产业结构、CPI、就业(定义因国家而异)
各国财政部预算、财政收入、政府债务
主权财富基金年度报告、披露文件(官方网站或 SWFI 数据库)
行业监管机构能源、金融、电信、房地产等领域的相关国家监管机构
SEC EDGAR主权财富基金的 13F 披露文件、上市公司申报文件(https://www.sec.gov/edgar)

操作:获取官方网站文本,或按字段查询数据库。

三、权威行业来源

学术机构与智库。

类型示例
学术工作论文NBER Working Papers (https://www.nber.org)、SSRN (https://www.ssrn.com)
学术搜索Google Scholar、JSTOR、ScienceDirect
顶级期刊AER、QJE、JFE、RFS、JPE、JF、JIE(大多需要订阅;摘要通常可以访问)
智库Brookings、Peterson IIE、Atlantic Council、CSIS、Chatham House、CFR、IISS、Carnegie Endowment

重要:学者的个人工作论文或个人观点并不代表其所属机构的官方立场。引用时不要混为一谈。

投资银行与咨询公司。

类型示例
全球投资银行研究Goldman Sachs、JPMorgan、Morgan Stanley、Citi、HSBC、BofA、UBS、Credit Suisse — 国家展望 / 行业报告(大多仅限订阅用户;摘录通常会通过 Bloomberg / Reuters 发布——先搜索转载内容,再查找原始报告)
中国投资银行CICC、CSCI、China Merchants Securities、Haitong、Huatai、Guotai Junan — 国际研究
咨询公司白皮书McKinsey、BCG、Oliver Wyman、Bain、Deloitte、PwC、EY、Accenture(大多公开)

主流财经媒体。

语言示例
中文Caixin、Wallstreetcn、Yicai、Economic Observer、21st Century Business Herald、Bloomberg China、FT Chinese、WSJ Chinese
英文Bloomberg、Reuters、Financial Times、Wall Street Journal、The Economist、NYT、Forbes、Fortune(部分内容设有付费墙——无法获取全文时,引用摘要并标明付费墙)
区域 / 专业媒体MEED(中东)、Argus / Platts(能源)、Lloyd's List / TradeWinds(航运)、Variety(媒体)、Modern Healthcare(医疗保健)

聚合数据库(可接受为可信来源——注明来源即可;无需进一步追溯至原始一手来源)。

来源主要内容
Statista跨行业市场规模、份额及消费者数据
Wind / CEIC中国及亚洲宏观、金融和行业数据
Refinitiv (Eikon)全球市场数据、公司基本面
SWFI主权财富基金 / 公共养老金披露信息聚合
Bloomberg Terminal市场数据和公司财务数据(可使用截图 / 导出内容)
不接受作为最终来源的来源
  • Wikipedia、Baidu Baike、Zhihu、个人博客
  • 未注明来源的媒体转述、内容农场、SEO 网站
  • AI 生成的摘要(包括 ChatGPT、Perplexity、Gemini 等)
  • “据报道”“业内人士称”“据传”“市场参与者披露”等模糊措辞
  • 社交媒体内容(经官方认证的机构账号发布的正式公告除外)
  • 二手翻译——必须追溯至机构官方原文版本
  • 仅使用 SERP(搜索引擎结果页)摘要——必须点击进入原始页面核实;否则归类为“无法核实”
双语 / 多语言原则

国际机构 / 投资银行 / 咨询公司的报告大多为英文。对于中国、中东、非洲等地的本地数据和政策进展,中文(或当地语言)的一手材料通常更准确。政策文件(例如 Saudi Vision 2030)通常有官方阿拉伯语和英语版本——必要时交叉参考。根据声明涉及的地区 / 机构切换语言。

放弃标准

持续追溯来源,直到满足以下任一条件:

  • (a) 找到白名单中的一手来源,并在适用情况下下载并完整阅读——输出 ✅ 已验证;
  • (b) 已穷尽明显路径(直接关键词搜索 → 关键词及语言变体搜索 → 沿陈述中引用的来源追溯至其发布机构)——明确输出 ❌ 无法验证。不要猜测、推断或用二手来源替代。

深度没有固定上限。只有在确实穷尽线索时才停止,不要因为达到任意次数而停止。

下载原始文件规则

仅查看搜索引擎摘要、网页片段或二手转述,然后声称“已验证”,不算验证。如果陈述涉及报告或图表,必须先将原始文件/原始数据下载到本地,由 AI 完整阅读,然后才能得出结论。

满足以下任一条件时适用:

  • 陈述引用了特定报告(IMF 国别报告、PIF 年度报告、央行工作论文、咨询公司白皮书等)。
  • 陈述引用了特定图表、数据集或数字。
  • 陈述引用了政策文本、监管申报文件或年度报告披露内容。

下载步骤:

  1. 找到原始文件:优先使用官方网站上的原始链接,而非二手转载网站。
  2. 下载到本地:不要假定保存路径。首次下载时,询问用户要保存到哪里;如果用户未指定,则将文件保存到当前工作目录,并命名为 <institution> <title>.<extension>。
  3. 得出结论前完整阅读:完整阅读 PDF,或提取完整文本摘要——提取方法、关键参数和支持性原文段落;对于数据文件,读取开头和结尾的几行,以确认字段和定义。
  4. 图表来源:如果陈述指向特定图表,应找到包含该图表的原始报告/数据库页面,下载文件,并定位图表所在页码或数据表。
验证图表的“含义”

图表存在 ≠ 用户对图表的解读正确。下载后,还要核实:

  • 坐标轴单位和定义(线性或对数、绝对值或同比值、本币或 USD)。
  • 起始年份和基期(避免选择性地误导起始点)。
  • 序列是否为累计值/移动平均值/季节性调整值。
  • 脚注和图表注释中说明的范围(“不包括 X”、“仅限 Y 地区”等)。

如果用户的解读与图表实际显示的内容不符,应明确纠正。

无法下载时的处理

如果自动下载受阻(403、付费墙、Cloudflare、需要登录、地理限制、无法检索由 JavaScript 渲染的文本等),暂停验证,并按以下格式输出,将链接交给用户:

🔒 Needs user help to download.
Source: <full official link>
Blocked by: <paywall / login wall / anti-scrape / geo-restriction>
Please: download and tell me the local path, or paste the relevant section into the chat.

用户提供文件后,返回步骤 3(完整阅读)并作出判断。只有在用户也无法获取文件时,才可以降低验证结论等级——此时必须明确标注“未获取完整文本;验证仅基于摘要,置信度较低”。不要假装已完成全面验证。

反例(不可接受为“已验证”):

  • “我找到一篇 Reuters 报道,说 PIF 的资产管理规模为 9250 亿美元——已验证。”Reuters 是二手转述。必须追溯至 PIF 的官方年度报告并下载。
  • “我看到 IMF 网页上说,沙特阿拉伯的财政盈亏平衡油价是 96 美元。”网页摘要不算;必须下载对应的 IMF 国别报告 PDF,并找到具体表格和脚注。

一级推理子流程

当无法将直接数据追溯到一手来源,但可以通过指标分解对陈述进行交叉核验时,使用此流程。只能进行一级分解——每个子指标都必须能够通过一手来源或聚合数据库来源核实。如果子指标仍需进一步分解(多级推理),请告知用户这超出此技能的范围,并建议拆分步骤或由人工跟进。

步骤:

  1. 分解公式:明确写出 Z = f(P, Q)(例如:收入 = 单价 × 销量;利润 = 收入 × 利润率;市场份额 = 公司销量 ÷ 市场总销量)。
  2. 分别核实 P 和 Q:两者都遵循基本核实流程,分别追溯至一手来源或聚合数据库来源。
  3. 计算 Z':使用已核实的 P 和 Q 计算 Z'。
  4. 核对:将 Z' 与用户提供的 Z 进行比较,并给出定性判断(由 AI 估算——不设硬编码的百分比阈值):
    • 大致一致:偏差在合理范围内。
    • 存在明显偏差:差距明确,需要解释。
    • 严重不符:差距大到足以怀疑原始陈述本身。
  5. 偏差归因:不一致时,分析最可能存在问题的是哪个子指标的假设;P 和 Q 的定义、时间点或覆盖范围是否一致。

输出格式:

🔎 One-level reasoning. Z = f(P, Q) → Z' = <computed value>; statement Z = <user value>; <broadly consistent / notable deviation / severe mismatch>.
P = <value>, source: <institution + link>
Q = <value>, source: <institution + link>
[⚠ Attribution: <only when inconsistent — name the likely problem sub-metric and flag any P/Q definition / time-point / coverage mismatch>]

否定陈述的处理

当陈述包含 “never”“has not”“no”“not”“did not”(或中文的「从未」「没有」「未曾」「不曾」「无」)等否定标记时,先告知用户:

这是一条否定陈述。否定陈述本质上无法通过搜索证伪——未找到反例并不能证明其为真。我会尝试寻找反例:如果找到反例,该陈述即被证伪;如果没有找到,我无法为其标注“已核实”,只能说明“未找到公开反例”。

然后按照相同的白名单和放弃标准,执行“搜索反例”流程。输出标签调整如下:

  • ❌ 陈述已被证伪。<反例 + 一手来源> — 明确证伪。
  • ⚠ 未找到公开反例。 — “未找到 ≠ 证明为真”;列出已尝试的 2-3 个关键词/网站。

多来源冲突子流程

当两个白名单来源对同一个数字存在分歧时,不要强行择一。并列输出:

⚖ Multi-source conflict on <statement>.
A: <X> — <institution + link>
B: <Y> — <institution + link>
Difference: <the 1-2 most material reasons — definition / time point / revision status / coverage>
Suggest: <user picks based on context, or specifies which definition they need>

元数据:仅在存在差异时展示

每次核实时,均在内部检查以下六个维度。默认不要打印这些维度——当它们与用户问题中所述内容一致时,列出这些信息只会增加噪声,毫无帮助。

**仅当其中某项与用户陈述存在差异,或该差异不明显到可能造成误解时,才打印一行 ⚠。**需要标注 ⚠ 的示例:

  • 用户询问“沙特 2023 年 GDP”,但找到的数据是非石油 GDP → 标注 Definition 差异
  • 用户询问“2024 年第四季度”,但数据是初步数据,并非最终数据 → 标注 Revision status
  • 数字是目标值/预测值,并非实际值 → 标注 Data type
  • 货币 / 财年与日历年 / 合并口径与母公司口径 / 覆盖范围不匹配 → 据此标注
维度何时需要关注
时间点来源中的年份 / 季度 / 截至日期 ≠ 用户暗示的时间点
定义 / 范围统计范围或方法不同(名义值与实际值、纳入项目等)
单位货币 / 数量单位可能混淆(人民币 1 亿元与百万美元、财年与日历年)
覆盖范围地理或业务覆盖范围比用户暗示的更窄 / 更广
修订状态初始 / 修订 / 最终数据,用户可能混淆不同版本
数据类型实际值 / 预测值 / 推算值 / 目标值 / 估算值——只要不是 actual,就需标注

这条具有约束力的规则取代了“静默替换定义”的做法。重点是指出差异,而不是机械地罗列六个字段。

输出格式

保持输出简洁。常见情况下以三到五行为目标;仅在确实存在差异时添加 ⚠ 行(见元数据部分)。

✅ 已验证
✅ Verified. <one-sentence conclusion in plain language>.
Source: <institution + report name> (<YYYY-MM>, <page / table / figure locator>) → <local path if downloaded>
Quote: "<verbatim excerpt supporting the claim>"
[⚠ <single line, only when a metadata dimension diverges from the user's statement — e.g. "this is the non-oil GDP definition, not headline GDP">]
⚠ 部分验证
⚠ Partially verified.
Verified: <sub-claim> — <source>
Unverified: <sub-claim>
Suggest: <ask user for source / rewrite as "to be verified" / drop>
❌ 无法验证
❌ Cannot verify. <one-sentence likely reason>.
Tried: <2-3 most relevant keywords / sites / leads>
Suggest: <ask user for the original source / soften the claim / drop it>

四种子流程输出——🔎 One-level reasoning、❌ Statement refuted / ⚠ No public counter-example found、⚖ Multi-source conflict、🔒 Needs user help to download——采用各自上文部分指定的格式。

红线

  • 不得编造:宁可输出“无法验证”,也不要给出看似合理但未经验证的数字或日期。
  • 不得悄然替换定义:如果用户询问的是定义 A,但只能找到定义 B,必须明确指出这一差异;不得悄然用 B 替代 A 并声称已验证。
  • 不得引用白名单之外的来源:Wikipedia、转述、AI 摘要和社交媒体都不能作为最终来源。
  • 不得遗漏链接:每项“已验证”结论都必须提供链接,让用户能够返回原始页面或找到本地文件。
  • 遵守三态原则:明确区分“事实”(白名单来源含原文)/“估算”(方法 + 参数推断)/“推断”(没有直接来源,仅为合理猜测)。后两者不得出现在“已验证”输出中。
  • 摘录 ≠ 验证:对于涉及报告/图表/数据的陈述,必须先下载并完整阅读原文,才能声称已验证。根据搜索结果页面(SERP)摘要、网页片段或二手转述声称“已验证”,都属于越界。
  • 不得混淆个人立场与机构立场:学者的个人工作论文或个人观点 ≠ 其所属机构的官方立场。
  • 不得跳过下载受阻提示:自动下载失败时,必须输出 🔒 Needs user help to download 区块,将链接交给用户;不得悄然跳过或编造。
  • 不得进行超出一层的推理:此技能仅支持一层指标分解(Z = P × Q)。如果某个子指标仍需进一步分解(多层推理),请告知用户此项超出范围,并建议逐步验证或寻求人类协助。
  • 明确呈现差异:如果任何元数据维度(时间点/定义/单位/覆盖范围/修订状态/数据类型)与用户所述内容不同,必须在 ⚠ 行中指出。悄然遗漏差异等同于悄然替换定义。
  • 不得验证拒绝处理的主题:政治/军事/宗教/娱乐圈名人八卦/其他本质上有争议的话题均超出范围。请准确回复“Out of scope. (超出能力范围)”并停止——不得部分验证、提供替代建议,也不得在这一行之外作任何解释。

评论

支持 Markdown