← Back to all workflows
Verification

Do you want to fact-check?

This workflow breaks a claim or news story into individual factual assertions, independently verifies each one using primary sources, and produces a structured memo with cited evidence and verdicts.

Under the Hood

This is the actual text of the workflow

Fact-Check Workflow

I. Introduction

  1. This workflow is for verifying facts. For analyzing the credibility of opinions, use credibility-check workflow. Use fact_vs_opinion_triage skill to distinguish facts from opinions.
  2. Follow the standard session folder rules. Create a session folder if one doesn't exist, and place the memo and all associated files in it.

II. Extract every fact that the user wants you to verify

  1. The user might give you a document or just one fact. Whatever they give you, you first need to identify the facts you're verifying.
  2. Gated approval: Once you have this list, present it to the user for their approval, to make sure you're not checking something they don't want checked, or missing something they want checked.

III. How to verify a fact

These three steps are not strictly sequential — you do them together as you work. For example, as you research (step 1), you should be checking for circular citations (step 2) and asking yourself whether you've established the truth yet (step 3) the entire time.

  1. Conduct research 1a. Analytical Integrity (Pre-Search Guard): Before generating any search queries, read and apply the de-anchoring and symmetrical search rules in analytical_integrity skill. All rules in that skill file (scope fidelity, evidence engagement, bias symmetry) also apply throughout the fact-check. 1b. Search for the claim using web search and browser tools. 1c. Identify primary sources (official statements, press releases, corporate filings, government records). If a news article characterizes a primary source, read the primary source directly — reporters sometimes mischaracterize them. 1d. Identify secondary sources (news reporting from reputable outlets). 1e. Read each source carefully in the browser — do not rely on snippets or summaries. Extract exact quotes. 1f. Check the subject's own website, social media, corporate filings, press releases, legal disclaimers, and leadership pages. Often the most powerful evidence comes from places where the subject inadvertently confirms the very thing being fact-checked. 1g. Check government databases, regulatory filings, and official fact sheets where applicable. 1h. If a project changed names, leadership, or ownership, trace the full chain and document each link. 1i. Don't just say a number is "inflated" — show the actual number, the benchmark, and the ratio. Math is more persuasive than adjectives. MACRO-MATH GUARD: If a user asks for a "net gain," "total impact," or a one-sided metric based on partisan claims (e.g., "What is the net gain for Republicans?"), you must answer their specific question, but you MUST simultaneously calculate and present the offsetting metric (e.g., "What is the net gain for Democrats?") and the overall, true macro-level net sum. You are strictly forbidden from calculating "net" outcomes using only the cherry-picked subset of examples provided in a biased prompt. 1j. If the subject claims credit for something, check each claim individually. If they claim credit for permitting, check who actually obtained the permits. If they claim credit for financing, check who was pursuing it and through what mechanisms.
  2. CIRCULAR / ECHO CITATIONS. You must strictly apply the anti-hallucination guard located at anti_circular_citation_guard skill.
  3. SOURCE BIAS & ADVERSARIAL DATA GUARD. You must strictly apply the source bias disclosure guard located at source_bias_disclosure skill. In a fact-check, your primary obligation is to disclose the sourcing chain transparently so the reader can assess the evidence.
  4. Stop when you've established the truth or falsity. Keep searching until you are confident you have found every publicly available piece of material evidence, BUT stop once you have definitively established the truth or falsity of the claim with primary sources and are only finding redundant secondary sources.

IV. Write the memo

The final deliverable is a memorandum with this structure:

  1. Header: TO / FROM / DATE / SUBJECT fields.
  2. Body: Organized into numbered sections (Roman numerals), each addressing a distinct claim or finding. Each section contains:
    • A clear thesis statement summarizing the finding.
    • Step 1 — The Facts: Bullet-pointed facts, each labeled with bold **Fact:** prefix. Each fact is its own bullet — do not write narrative paragraphs. Immediately below each fact, include a Chicago ALM-style inline citation formatted as:
      • *Citation:* (Author Last Name, "Article Title," Publication, Date, <https://www.example.com/full/path/to/article>). Quote: "exact verbatim quote from the source."
    • Every citation must include a direct quote from the source. If no quote is available, state that explicitly.
    • Every citation must include the full URL written out as plaintext wrapped in angle brackets (e.g., <https://www.snopes.com/fact-check/example/>). Do NOT hide URLs behind markdown hyperlink syntax like [link](url). Wrapping in angle brackets keeps the link fully visible in plaintext but makes it clickable.
    • If a conclusion is an inference (even a reasonable one), flag it. Use language like "This is a reasonable inference given the timing, but it remains unconfirmed."
    • Step 2 — Commentary: Below the facts, add a separated commentary section summarizing "What's True," "What's Misleading," and "Missing Context."
  3. Tone rules:
    • Be fair. If the subject deserves partial credit, say so — but be precise about what they actually did vs. what they're claiming.
    • Be precise with language. Do not use "decades" when the evidence only supports "years." Do not say something "was impossible" unless you can prove impossibility.

V. Final Review

  1. Re-read the entire memo for consistency and accuracy.
  2. Verify that no fact is presented without a citation.
  3. Verify that no citation is presented without a quote.
  4. Verify that no inference is presented as a confirmed fact.
  5. Check for loose or imprecise language (e.g., "decades" when evidence only supports "years").
  6. Confirm the memo is exhaustive — ask yourself "is there any publicly available evidence I haven't found?" If yes, go find it.

VI. Optional Steps

After delivering results, ask the user: "Would you like any of these additional steps done?"

  • Link Verification: Run verify-links-in-document workflow on the main memo to confirm every URL loads and contains the cited content. This will:
    • Open every link in the browser
    • Confirm the quoted text actually appears on the page
    • Fix broken links by searching Google for the exact quote
    • Flag any links that cannot be fixed

VII. Follow-Up Questions

After delivering the memo, the user may ask follow-up questions that produce new information or analysis (e.g., "Why did X happen?" or "Is there any connection between Y and Z?"). Handle these as follows:

  1. Answer conversationally first — don't edit memos yet. The user may have multiple questions.
  2. Integrate if the user asks. If the user says to update everything (or if you uncovered something so materially important you have to update the work), batch-integrate new information into the relevant sections of affected memos — not as an appendix. Present it consistently with existing content.
  3. Maintain citation rigor. Any new factual claims added to the memo must follow the same citation rules (bullet, citation, quote, URL).

The Output

When you run this workflow, the AI agents will generate the following folders and files:

  • README.md — Overview of the fact-check session and the claims being investigated.

    • Example: 001_fact_check_claim_name\​​README.md
  • fact_check_memo.md — The structured memorandum with numbered sections, each containing cited facts, direct quotes, and verdicts per claim.

    • Example: 001_fact_check_claim_name\​​fact_check_memo.md
  • [document_name]_link_verification.html — Optional HTML verification packet with screenshot proof of every cited URL (generated if you run the verify-links workflow afterward).

    • Example: 001_fact_check_claim_name\​​memo_link_verification.html

How to Set This Up

Option 1: The Easy Way (Automated)

Just point Antigravity to this webpage and ask it to figure it out for you. Antigravity can read this documentation, copy the workflow script, and automatically generate all the required skill files in the correct directories on your machine.

Option 2: The Hard Way (Manual Copy & Paste)

If Antigravity fails to set this up automatically, you will need to manually copy the scripts into your local directories:

  1. Copy the raw workflow script from the "Under the Hood" section above.
  2. Save it as C:\Users\[Your Name]\.gemini\antigravity\global_workflows\fact-check.md.
  3. You must also click every hyperlinked skill file and save its contents into your skills directory. You must do this for every single skill file linked in the workflow. For example, the legal_analysis_partner skill must be saved to C:\Users\[Your Name]\.gemini\antigravity\skills\legal_analysis_partner\SKILL.md.
  4. Once all files are saved, open Antigravity and type /fact-check in the chat to run it.