Do you want to verify citations that have hyperlinks?
This workflow physically opens every URL in a document, confirms the cited content is actually on the page, takes screenshot proof, and automatically fixes any broken links.
Under the Hood
This is the actual text of the workflow
Link Verification and Repair Workflow
Use this workflow after producing any document that contains hyperlinks with cited content (fact-check memos, research notes, legal analyses, articles, etc.). The goal is to ensure every link actually works and contains the content it's cited for.
Important: All URLs in the source document should be written out as full plaintext wrapped in angle brackets (e.g., <https://www.example.com/article>), not hidden behind markdown hyperlink syntax like [link](url). Wrapping them in angle brackets ensures they are clickable in markdown viewers while keeping the full URL visible. If you encounter hidden hyperlinks or unwrapped plaintext links during verification, format them to be raw URLs wrapped in angle brackets.
I. When to Use
- After completing any workflow that produces citations with URLs (e.g., fact-check workflow, legal-analysis workflow, article workflow)
- When the user reports that links in a document are broken
- When reviewing any document with external hyperlinks before final delivery
II. Process
III. Step 1: Extract All Links
Collect every URL in the document. For each URL, also note:
- The quoted text or claim it's supposed to support
- The line number in the document where it appears
IV. Step 2: Open Every Link and Take Screenshot Proof
[!CAUTION] VERIFICATION MEANS PROOF. Checking a link does NOT mean "I believe the data is there." It means you physically opened the URL, found the specific cited number/quote/fact on the page, and took a screenshot showing it. If you cannot produce a screenshot with the cited content visible, the citation is NOT verified. Period.
For each URL, open it using a browsing method from the web browsing policy (web browsing policy skill). Do NOT use any method that cannot take a screenshot of the rendered page (e.g., read_url_content). The entire point of this workflow is visual proof — if you can't photograph what's on screen, you can't verify. Resume-after-cancellation: If this workflow was interrupted and restarted, check the working directory for existing proof_citation_*.png screenshots before re-verifying links that may already be done. For each link, do ALL of the following:
- Does the page load? (Not a 404, 500, blank page, or redirect to a homepage)
- Find the exact cited content on the page. If the citation claims a specific number, quote, or fact, you must scroll to where that content appears and visually confirm it matches what the document says. Use Ctrl+F or manual scrolling to locate it.
- Take a screenshot proving the content is there. The screenshot must show the cited number, quote, or fact visibly on-screen at the URL in question. Save the screenshot to the project's working directory with a descriptive filename (e.g.,
proof_citation_03_bea_deficit.png). - If the cited content is NOT on the page — even if the page loads fine — the citation is BROKEN. A working URL that doesn't contain the claimed data is just as bad as a 404. Proceed to Step 3 to fix it.
- If the page is paywalled or login-gated, note this — the link may still be "correct" but inaccessible. Ask the user to verify if needed.
[!IMPORTANT] DATA VERIFICATION, NOT JUST LINK CHECKING. The most dangerous failure mode is a link that loads successfully but doesn't actually contain the specific number or quote you cited. This happens constantly when AI search tools summarize data — the URL is real but the number was hallucinated or came from a different source. You MUST confirm the specific data point, not just that the domain is reachable.
[!IMPORTANT] PURELY MECHANICAL CHECK. This workflow is strictly a mechanical check of the link's integrity. If the exact quoted text is visible on the page, the link is verified. Do NOT judge the quality, independence, or primary nature of the source. Substantive evaluation of sources (like rejecting circular or echo reporting) belongs in the fact-check or credibility-check workflows, not here.
V. Step 3: Fix Broken Links (Exact Match)
CRITICAL ANTI-PATTERN: Never report that a link is "broken but the quote is verified externally." If a link leads to a 404 or is otherwise broken, the link itself is NOT verified. Your job is to ensure the document contains a working link. You must either replace the broken URL in the document with a working one, or explicitly flag the citation as lacking a working source.
For each link that fails Step 2:
- Take the exact quote from the citation (or if no quote, the key claim and article title)
- Search Google for the quote in double quotes (e.g.,
"Element Fuels has received the necessary permitting") - Open the top results and verify the quoted content actually appears on the new page
- Replace the broken URL in the document with the working URL
- If the article title also needs updating (e.g., because the content was republished under a different title), update that too
VI. Step 3b: Fix Broken Links (Broader Search Fallback)
If the exact-quote search in Step 3 returns no results, do not give up yet. Try progressively broader searches:
- Key phrases from the quote: Instead of the full quote, search for 2-3 distinctive phrases from it (e.g.,
"greenfield refinery" "since the 1970s" Brownsville) - Article title + author/publication: Search for the article title and author name or publication mentioned in the citation
- Same domain: Search within the original domain using
site:example.complus key terms — the content may have moved to a new path - Topic keywords: Search for the general topic and look for a different source that makes the same substantive point with similar language
If a broader search finds a page that contains the same substantive information but with slightly different wording:
- Update the URL to the working page
- Update the quote in the citation to match what the page actually says (use the new exact wording)
- Note in the citation if the source or wording changed from the original
VII. Step 4: Handle Unfixable Links
If you cannot find a working URL even after the broader search in Step 3b:
- Do not silently leave the broken link. Flag it for the user with a clear note: "I could not find a working link for this citation. The quote is: [quote]. Can you help locate it?"
- If the quote itself might be inaccurate, flag that too
VIII. Step 5: Format All Citations (Chicago Style)
Once all links are verified or flagged, format every citation in the document into a prominent Chicago style citation format. Ensure this is done even for links that were accurate from the start.
IX. Step 6: Build the HTML Verification Packet
Create a self-contained HTML file in the working directory. Structure:
- An executive summary at the top showing total links checked, how many passed, how many failed, and how many were fixed.
- One verified card per link that passed, containing:
- A green numbered badge (VERIFIED 1, VERIFIED 2, etc.)
- The cited claim or quote in large, bold font
- The source URL as a clickable link
- The screenshot embedded directly below the link via
<img>tag, showing the cited content visible on the page - A caption under the screenshot describing what to look for in the image
- One failure card per link that could not be verified or fixed, containing:
- A red numbered badge (BROKEN 1, BROKEN 2, etc.)
- The cited claim or quote in large, bold font
- What went wrong: 404, content not found on page, paywall, etc.
- If the link was fixed (old URL replaced with new URL), show old → new URL and mark the card yellow/amber instead of red
- If the link could not be fixed at all, keep the card red and include the note flagged for the user
- Formatting rules:
- Use a dark theme with clean, modern typography (Inter font from Google Fonts)
- All screenshots must be embedded as local file references (relative paths), NOT base64
- The HTML file must be self-contained (all CSS inline in a
<style>block, no external dependencies except Google Fonts)
- Naming convention: Name the file
[document_name]_link_verification.html
X. Step 7: Preview and Report
- Open the HTML file in the visible Chrome browser to confirm:
- All screenshots load correctly
- All source links are clickable and correct
- The document looks professional enough to send in an email
- Report to the user:
- How many links were checked
- How many worked
- How many were broken and fixed (with old → new URL)
- How many could not be fixed (flagged for user)
XI. Common Failure Patterns
- Content moved to a new URL on the same domain (most common — search the domain for the article title)
- Content republished by a different outlet (search Google for the exact quote)
- Aggregator links that redirect to the wrong article (find the original source instead)
- URL encoding issues where special characters in the URL got mangled
The Output
When you run this workflow, the AI agents will generate the following folders and files:
proof_citation_[number]_[description].png— Screenshot proof files showing the cited content visible on each verified page.- Example:
proof_citation_03_deficit_data.png
- Example:
[document_name]_link_verification.html— A self-contained HTML verification packet with an executive summary, green VERIFIED cards with embedded screenshots, and red BROKEN cards for failed links.- Example:
memo_link_verification.html
- Example:
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:
- Copy the raw workflow script from the "Under the Hood" section above.
- Save it as
C:\Users\[Your Name]\.gemini\antigravity\global_workflows\verify-links-in-document.md. - 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_partnerskill must be saved toC:\Users\[Your Name]\.gemini\antigravity\skills\legal_analysis_partner\SKILL.md. - Once all files are saved, open Antigravity and type
/verify-links-in-documentin the chat to run it.
New to Antigravity? Read the Master Installation Guide first.