cd /news/ai-tools/fact-check-v0-2-claude-skill-for-ver… · home topics ai-tools article
[ARTICLE · art-25510] src=gist.github.com ↗ pub= topic=ai-tools verified=true sentiment=· neutral

fact-check v0.2 — Claude skill for verifying factual claims and citations in a draft before publication.

A new fact-checking and citation-verification skill called "fact-check v0.2" has been released for Claude, designed to scan draft documents before publication and produce an evidence ledger, verification subagent dispatches, cross-claim aggregation, and a repair report. The skill catches nonexistent sources, misquoted authorities, statistics without provenance, paraphrases that overclaim their sources, stale data, broken links, and citations that do not support their attached claims. It includes a confidentiality preflight for sensitive material, document-type calibration for formats including testimony, court filings, policy memos, and journalism, and supports both autonomous and interactive verification modes.

read17 min views15 publishedMay 23, 2026
name fact-check
description Verify factual claims and citations in a draft document before publication. Scans the draft, builds an evidence ledger keyed to each verifiable claim, dispatches verification subagents, aggregates findings, and produces a repair report. Use whenever the user asks to "fact-check," "check my citations," "verify sources," "are these citations real," "before I send this," "before I publish," "did I get this right," or any request to verify factual or citation-shaped claims in a draft. Especially relevant for testimony, policy memos, grant applications, op-eds, coalition letters, court filings, annual reports, and journalism. Use even when the user does not say "fact-check" explicitly, if the request is to look over a draft for accuracy before it goes out.

A fact-checking and citation-verification skill for drafts headed to publication. Builds an evidence ledger, dispatches verification subagents, runs a cross-claim aggregation pass, and produces a repair report.

Catch the kinds of citation and factual errors that would embarrass the author or compromise the document if they shipped: nonexistent sources, misquoted authorities, statistics without provenance, paraphrases that overclaim what their sources actually say, stale data, broken links, and citations that exist but do not support the attached claim.

The skill does not rewrite the draft. It produces a ledger of what is wrong, with verdicts and suggested repairs, that the author integrates by hand.

The author has a draft document and wants verification before sending or publishing. Common forms: testimony, policy memos, grant applications, op-eds, coalition letters, court filings, expert affidavits, annual reports, blog posts, journalism, white papers, academic articles. Triggers include "fact-check this," "verify my citations," "check my sources," "is this right," "before I send this," "before I publish."

Do not use this skill for: stylistic editing (use a voice or copyedit skill), AI-prose detection (use a stylometry skill), or general document review (use a development edit). This is narrow verification work.

Autonomous (default). Skill scans the draft, builds the ledger, dispatches verification subagents, aggregates findings, produces a report. The author reviews the report and integrates fixes. Fastest path.

Interactive. Triggered by the author saying "walk me through" or "interactive." Skill scans and builds the ledger, then asks the author which categories to prioritize before dispatching. Useful for first-time users or when the author wants to scope the work.

The author provides the path to a draft file (or pastes the text). If the draft is a .docx

, .pdf

, or other binary format, route through the appropriate reading skill first (docx

, pdf-reading

) to get clean text. Then identify the document type from the content: testimony, policy memo, op-ed, court filing, grant application, news article, etc. Document type drives the legal and policy extensions (below) and the calibration of what counts as a critical claim.

Confidential client, patient, sealed-case, or otherwise sensitive material may be permissible to share with Claude inside the session under your organization's data agreement with Anthropic. That boundary typically does not extend to queries issued to external services.

Verification subagents will issue web searches and fetch external URLs. Before dispatching, scan the ledger for:

Client names(including youth full names, family names, attorney-client matter names)** Sealed-record context**(juvenile case numbers, sealed-case quotations, sworn-but-confidential testimony)** Identifying details**that could re-identify a sealed matter even without a name

For any row containing such material: redact the identifying portion in the Claim (as written)

and Source (as cited)

columns before the subagent sees them, OR mark the row as manual-verify

and route it to the author rather than to a subagent. The subagent prompt template (below) also includes a reinforcing instruction to construct queries from the cited-source portion of the claim, not from the surrounding draft text.

When in doubt, route to manual verification. The verification gain is rarely worth the leakage risk.

Extract every claim that has external truth conditions. Five categories to look for:

Quotes. Anything in quotation marks attributed to a source. Direct verbatim claims about what a person, document, or institution said.

Citations. Case law citations (e.g., Park v. Kim, 91 F.4th 610 (2d Cir. 2024)), statutes (e.g., 18 U.S.C. § 1001 or a state code section), academic papers (Author Year, journal, DOI), government reports, news articles, books, websites. Anything with a name attached that purports to be a source.

Statistics. Numbers with implied provenance. Percentages, rates, dollar amounts, counts. Bare statistics ("23% of cases") and hedged statistics ("roughly one in four") both count.

Named-authority claims. "According to [Person]..." or "[Person] argues that..." or "As [Person] noted in [Work]..." without a full citation but with a checkable attribution.

Factual assertions. Specific claims about the world that have truth conditions but no attached source: dates, events, named programs, organizational structures, historical sequences. These often need verification even though they look like background.

Skip: opinions, normative claims, descriptions of the author's own work or experience, claims about the future.

Create evidence-ledger.md

next to the draft. Each row is a verifiable claim. Use this schema:


Generated YYYY-MM-DD (use today's actual date). Draft path: [path]. Document type: [type]. Author: [name from draft byline or "uncredited"].

## Summary

Claims found: [N]
Critical (must-verify before publication): [N]
Should-verify: [N]
Background (verify if time): [N]

## Claims

| ID | Location | Type | Claim (as written) | Source (as cited) | Load | Priority | Verdict | Flags | Repair |
|----|----------|------|--------------------|--------------------|------|----------|---------|-------|--------|
| 1  | ¶3       | quote | "..." | Smith 2023 | critical | red | [pending] | | |
| 2  | ¶5       | stat  | "23% of..." | BJS 2024 report | critical | red | [pending] | | |

For each claim, fill in:

Location. Line number, paragraph, or section reference. The author needs to find it.

Type. quote / citation / statistic / authority / fact.

Claim (as written). The exact text of the claim, including the quoted/cited portion and its immediate surroundings. Apply confidentiality preflight redactions here.

Source (as cited). What the draft attributes the claim to. If the draft does not name a source, write "uncited" (this is itself a finding).

Load. How much the argument depends on this claim. Three values:

critical: claim supports a central argument or carries legal/policy weight. Failure damages the document.supporting: claim reinforces a point but the argument survives without it.passing: color, context, aside. Failure barely matters.

Priority. Red (must verify before publication) / yellow (should verify) / green (verify if time). Calibrate by document type: testimony and court filings have a high red bar; blog posts can tolerate more yellow.

Verdict, Flags, and Repair are filled in by Step 6 after verification.

In autonomous mode, dispatch general-purpose subagents in parallel. In interactive mode, ask the author which priority tier to dispatch on first.

Batch claims by source type so each agent can use the right resolution strategy:

Legal citations (case law, statutes, regulations): one agent. Resolve via CourtListener (https://www.courtlistener.com/), Justia, official government databases, Google Scholar legal search. Verify case name, citation, holding, and any quoted language.

Academic papers: one agent. Resolve via CrossRef DOI lookup, Semantic Scholar, OpenAlex, Google Scholar. Verify author, year, journal, and whether the paper says what the draft attributes to it.

News and journalism: one agent. Resolve via direct URL fetch, Wayback Machine for dead links, publication search. Verify date, author, and quoted language.

Government and institutional reports: one agent. Resolve via direct URL, agency website, Internet Archive. Verify publication date and that quoted numbers/findings appear as claimed.

Statistics with attached sources: one agent. Resolve the source, then check the specific number, denominator, timeframe, and population.

Uncited claims: one agent. Use general web search to determine whether the claim is supportable, contested, or wrong. These are often the hardest because the author hasn't pointed at a source.

Each agent receives the canonical subagent prompt below (only one canonical version; reuse it for every batch). Run the agents in parallel using multiple Agent tool calls in a single message. Wait for all to return before aggregating.

If the runtime does not support parallel agent dispatch, fall back to sequential verification: handle one batch at a time, using web_search

and web_fetch

directly. The procedure and outputs are identical; only the timing changes.

Pass A: per-claim verdicts. Update the ledger with verdicts, flags, and repair notes from each agent's return. For each claim:

Verdict column gets one of the seven values (see Verdict Set below).Flags column lists any named flags fired by the subagent (Ghost Citation, Quote Drift, etc.).Repair column suggests the specific fix: replace quote with verified version, swap source, soften claim to match source hedging, mark as paraphrase rather than quote, remove if unverifiable.

Pass B: cross-claim editorial flags. Three flags require comparison across the whole ledger and cannot be fired by per-claim verification. Apply them only after Pass A is complete:

Citation Padding. Group claims by underlying source (not by cited source). If multiple citations in the draft all trace back to the same underlying study, report, or dataset, fire Citation Padding on the cluster. The repair: collapse to a single citation with a parenthetical noting the multiple downstream uses, or replace some with genuinely independent corroboration. - Hotspot Cluster. Tally the location column for claims with non-clean verdicts (PARTIAL, MISREPRESENTED, UNRETRIEVABLE, OUTDATED). If three or more failures fall within one section or argument, fire Hotspot Cluster on that section. The repair: flag the section for structural review, not just citation-by-citation patching. - Authority Mask. This is an editorial judgment, not a verification finding. After Pass A, scan claims with SUPPORTED verdicts where the source's prestige (federal judge by name, named senator, marquee academic) does most of the rhetorical work. Ask: would the argument survive if the same point were made anonymously, or is the citation doing reasoning-by-prestige? Fire Authority Mask on claims where the citation adds credibility without adding evidence. This flag rarely demands removal; it demands the author know they are leaning on prestige rather than substance.

Write fact-check-report.md

next to the ledger. Structure:


Generated YYYY-MM-DD. [N] claims verified. [N] critical issues. [N] should-fix.

## Critical issues (must fix before publication)

[Numbered list. Each item: claim ID, location, what's wrong, suggested repair, why it matters. Order by severity then by document order.]

## Should fix

[Numbered list of yellow-priority issues with the same structure.]

## Structural patterns

[Output of Pass B. Each Citation Padding cluster, each Hotspot Cluster, each Authority Mask call. Frame as editorial rather than mechanical fixes.]

## Verified clean

[Brief summary of green-priority and verified-clean items. Don't expand each one.]

## Unverifiable

[Items where verification was not possible. Note the source-of-record attempt and recommend either expert review, paraphrase, or removal.]

## Notes for the author

[Any patterns observed beyond the structural ones above: source over-reliance, uncited claims that need attribution, citation conventions that should be standardized. This is the editorial layer.]
Verdict Meaning
SUPPORTED Source exists, is accurately represented, supports the claim.
SUPPORTED WITH CAVEAT Source supports the claim but with qualifications the draft omits.
PARTIAL Source partially supports; draft extends beyond what source warrants.
MISREPRESENTED Source says something different from what the draft attributes to it.
UNRETRIEVABLE Source cannot be located at any tier.
OUTDATED Source was accurate when published but has been superseded.
NEEDS EXPERT REVIEW Verification exceeds what API resolution and available text can determine.

Use the most specific flag that applies. A claim can have multiple flags. Flags marked (editorial) are fired only at Pass B (Step 6) and not by per-claim verification.

Ghost Citation: source cannot be found. Possible fabrication or hallucination.** Citation Identity Drift**: source exists but the citation identifiers are wrong (right author, wrong paper; right case name, wrong reporter or page; right report, wrong year). Distinguish from Ghost Citation because the underlying source is real; the citation is mislabeled. The repair is corrective metadata rather than replacement.Quote Drift: quoted language does not match source, or context around the quote changes meaning. Includes slip-opinion vs. aggregator-text discrepancies.Paraphrase Inflation: paraphrase claims more than source supports. Source hedges; draft does not. Fire whenever the hedging strength of the draft is stronger than the hedging strength of the source.Scope Lift: narrow source used for a broader claim (geographic, temporal, population).** Unsupported Statistic**: number lacks traceable method, denominator, or timeframe.** Stale Source**: source older than appropriate for the claim type (especially time-sensitive policy or empirical claims).** Authority Mask***(editorial): prestige of source standing in for actual reasoning. Citation adds credibility without adding evidence.Citation Padding(editorial): multiple citations create density without real support. All trace to the same underlying evidence.Hotspot Cluster(editorial)*: three or more citation failures cluster around one argument. Structural problem, not isolated errors.

When the document type is testimony, court filing, policy memo, coalition letter, or grant application for legal or policy work, apply these extensions:

Court case citations. Verify in CourtListener (https://www.courtlistener.com/), Justia, or Google Scholar legal search. Confirm: case name, citation (reporter volume, page, court, year), holding as characterized, and any quoted language against the published opinion. Federal opinions have higher stakes than state opinions for citation accuracy. Slip opinions (PDFs from court websites) are the canonical text; HTML versions on aggregator sites are sometimes abridged. Watch for Citation Identity Drift on case citations, which is one of the highest-frequency failure modes in legal writing.

Statutes and regulations. Verify in the U.S. Code, Code of Federal Regulations, or the relevant state or local code (most jurisdictions publish a searchable codification site). Confirm section number, effective date, and any quoted language. Watch for amendments since the cited version.

Agency reports and government data. Federal agencies (BJS, BLS, Census, GAO, CRS) and their state or local equivalents: verify against the official agency website. Confirm publication date, page numbers if quoted, and any reproduced statistics against the source table. Government URLs are unstable; capture the Internet Archive backup for any citation that may need to survive an administration change.

Coalition partner sources. When citing peer legal or advocacy organizations, verify against the organization's published material rather than internal communications. If the claim comes from a coalition meeting or unpublished work, mark as personal communication

and note the date.

Sanctions and disciplinary language. Any reference to a court sanctioning an attorney, a regulatory body finding a violation, or a person being charged with misconduct gets escalated to critical priority. Misquoting the actual finding (the way Park v. Kim was sometimes misquoted as "fell well below" when the slip opinion says "falls well below" in one passage and "falls below" in another) is the kind of error that compounds reputationally.

Copy this into Agent calls for verification batches. This is the only canonical version; do not improvise variants.

You are verifying factual claims for a document the author is about to
publish. The claims below are from the evidence ledger at [path]. For each
claim:

1. Find the cited source (or, if uncited, search for authoritative sources
   that could verify the claim).
2. Determine whether the claim as written matches what the source actually
   says.
3. Return a structured verdict and any flags.

QUERY CONSTRUCTION. When you issue web searches, construct queries from
the cited-source portion of the claim (author + year, case name + citation,
statute + section, agency + report title), not from the surrounding draft
text. Do not paste client names, case identifiers, or sealed-record context
into search queries. If the only way to verify a claim is to search on
identifying content, return UNRETRIEVABLE with flag MANUAL-VERIFY rather
than issuing the query.

Verdicts: SUPPORTED / SUPPORTED WITH CAVEAT / PARTIAL / MISREPRESENTED /
UNRETRIEVABLE / OUTDATED / NEEDS EXPERT REVIEW.

Flags you may fire (do not fire editorial flags; those are applied at the
report stage): Ghost Citation / Citation Identity Drift / Quote Drift /
Paraphrase Inflation / Scope Lift / Unsupported Statistic / Stale Source.

For each claim, return:
  CLAIM ID: [from ledger]
  STATUS: [verdict]
  SOURCE FOUND: [URL or citation of authoritative source, or NONE]
  ACTUAL TEXT (if relevant): [what the source actually says]
  GAP (if any): [how the draft's characterization differs, including
    hedging-strength differences for Paraphrase Inflation]
  FLAGS: [list of flags fired, or none]
  REPAIR SUGGESTION: [specific fix the author can apply]
  CONFIDENCE: full-text / abstract-only / metadata-only / unretrievable

Paraphrase Inflation guidance: compare the hedging strength of the draft
to the hedging strength of the source. If the source says "may be
associated with" and the draft says "causes," fire Paraphrase Inflation
even if the underlying finding is real. If the source presents a finding
as preliminary and the draft presents it as settled, fire Paraphrase
Inflation.

Important constraints:
- Do not bluff verification. "Unable to verify" is a valid output.
- If a domain is restricted or a page is client-rendered and the
  appropriate tools fail, say so and move on.
- Do not fabricate findings.
- Do not paste sealed or client-identifying material into queries.

Claims to verify:
[paste the relevant rows from the ledger]
Document Citation density expected Critical threshold Watch for
Testimony Low; spoken context Any statistic, any quoted authority, any case citation Unsupported statistics in sworn or legislative testimony; misquoted policy holders
Court filing High; rigorous All case law, all statutes, all attributed quotes Ghost citations and Citation Identity Drift (Park v. Kim risk); quote drift; outdated statutes
Policy memo Medium to high Statistics, government data, case citations Stale agency data; secondary laundering of government reports
Grant application Medium Statistics, organizational claims, partner attributions Outdated outcomes data; partner claims unverified with partners
Coalition letter Low to medium Statistics, statutory claims, the issue framing Misrepresented partner positions; outdated legislative status
Op-ed Low; selective Central statistic, named authorities, the policy hook Central stat that doesn't check out; misquoted policymaker
Annual report Medium Outcomes data, financial figures, named partners Internal data drift; partner permissions for naming
Blog post Hyperlinked acceptable Central claim, named authorities Dead links; paraphrase inflation; stale sources
Academic article High Full bibliographic apparatus Ghost citations; quote drift; paraphrase inflation

The skill verifies; it does not rewrite. The author owns the prose. The skill produces a ledger and a report; the author integrates fixes.

"Unable to verify" is a valid output. Say so clearly. Do not manufacture false confidence.

Confidence level must match access level. Do not claim full-text verification when working from abstracts or metadata.

Do not downgrade a citation because the form is informal. A hyperlinked blog post can have excellent citation integrity; a footnoted academic article can have terrible citation integrity. Judge the citation-to-claim fit, not the citation format.

For documents drafted with AI assistance, note elevated hallucination risk but do not assume all citations are fabricated. Verify normally; the flags will catch the problems.

When the document has legal stakes (testimony, court filing, policy work that will be cited back), err toward over-verification. The cost of a missed Ghost Citation in a court filing is much higher than the cost of an unnecessary verification call.

Sealed and client-identifying material stays inside the Claude session. The contractual data agreement governs material handled inside the session and does not extend to queries issued to external services. Apply the confidentiality preflight (Step 2) before dispatching subagents, and follow the query-construction rule in the canonical subagent prompt.

This skill can be installed at the organizational level or by individual users. It is available in Claude sessions when its description trigger phrases appear in a request, or when invoked explicitly.

To update, modify the SKILL.md, repackage as fact-check.skill

, and reinstall through the appropriate skill management interface.

This skill is an adaptation of the citation-verification patterns from the APODICTIC Development Editor's specialized-audits module (specifically its Citation Verifier v1.0 reference). The flag taxonomy, the seven-verdict set, the two-phase verification design (resolution then content), the load classification (critical/supporting/passing), the confidence levels, and the "manuscript says X / source says Y / gap" extraction pattern are derived from APODICTIC. The APODICTIC version is more powerful (formal Argument_State.md integration, Python API scripts for academic resolution, provenance enforcement, hard-gate severity propagation) but heavier to install and learn. This version trades that power for shareability.

v0.2 changes from v0.1: added confidentiality preflight (Step 2) and query-construction rule in the canonical subagent prompt; added cross-claim aggregation pass (Step 6, Pass B) with explicit operationalization of Citation Padding, Hotspot Cluster, and Authority Mask as editorial-stage flags; added Citation Identity Drift to the flag set; tightened Paraphrase Inflation guidance with hedging-strength comparison; consolidated the two duplicate subagent prompt blocks into one canonical version; added file-routing note for binary draft formats; added structural-patterns section to the report template; updated installation instructions for organizational deployment.

── more in #ai-tools 4 stories · sorted by recency
── more on @claude 3 stories trending now
sponsored brought to you by zahid.host 4,200+ EU-deployed projects
reading about agents? ship yours in a single git push.

Run your AI side-project on zahid.host

EU-based hosting, git-push deploys, automatic HTTPS, no cold starts. Free tier with a custom domain — perfect for shipping the agent you just read about.

$git push zahid main
Live at https://your-agent.zahid.host
Get free account → Pricing
from €0/mo · no card required
LIVE [news/fact-check-v0-2-clau…] indexed:0 read:17min 2026-05-23 ·