Info Catcher

Inspiration

The internet gives anyone a voice, but it also allows misinformation to spread quickly. Anyone can upload a false claim, present it confidently, and reach people who may believe it. When misleading information appears alongside reliable content, it can be difficult to know what to trust.

We built Info Catcher to help people navigate the modern internet with greater independence and confidence. By bringing explanations and sources into the viewing experience, we want to give viewers the context to question what they hear, evaluate the evidence, and form their own conclusions

What it does

Info Catcher is a browser extension that runs in the background while you watch YouTube videos. It identifies potentially misleading claims, assigns agents to research them, and presents explanations alongside supporting sources to prevent the spread of misinformation.

When a new video is loaded, a “Video checks” tab appears in the top-left corner of the page. After a scan begins, a loading animation indicates that claims are being processed, and results become available as each assessment finishes. When playback reaches a flagged statement whose assessment is ready, the button highlights its timestamp and flag label. Clicking the button opens the available flags in timestamp order. Viewers can expand each entry to read the original quote, a brief explanation, and source links, or click its timestamp to revisit that moment.

How we built it

We connected a browser extension to a local Python backend that processes video transcripts and audio and used Cartesia's Speech-to-text model to convert the audio files into a readable JSON file transcript. After that, we pass the extracted video and audio transcripts into a multi-modal claim extractor, Claude Sonnet 5.5 (Light). The model then outputs claims.json file that contains important attributes of the text such as the categories that the text belongs in, how confident the agent is in tagging that label to that text, the original text from the video, and its timestamps. We pass the claims.json to two types of agents using the Claude Sonnet 5.5 models (medium) such as the Researcher and Assessor. During the phase of Researcher Agents (3 agents in parallel) are used to identify claims worth checking and research the validity of whether or not the tagged text is considered a claim, meaning that the statement is not an opinion, a joke, or a fact stated. After, the Researcher agents research them using web search and page retrieval, and Assessor agent determine to output that specific text that was flagged and its available evidence.

To reduce waiting, we use three parallel research workers, with claims queued in chronological order. Results become available individually as research finishes. The extension synchronizes those results with video playback so viewers encounter the information in context.

We also refined the interface to keep explanations brief and make sources easy to access as the pop-up appears once the user starts the video after they've installed the extension on Google Chrome.

Challenges we ran into

Our biggest challenge was deciding what deserves checking. Early versions spent time researching jokes, trivial arithmetic, opinions, and statements that did not matter to the viewer. We had to improve claim selection without making the system so restrictive that it overlooked meaningful claims.

Another challenge was separating incorrect information from statements that need context. A claim can contain a true detail while implying something the evidence does not support. We learned that limited research should not automatically become a confident accusation.

Of course, speed and cost matter as well. At first, we attempted to build a pipeline of having a manager agent that manages the sub-agents of Researchers and Assesors, which seemed promising at first. Despite the accuracy of the agents correctly identifying which text is consiedered a claim, the API cost spiked when the extension was being used to analyze on videos that were longer than twenty minutes.

Lastly, parallel research improved responsiveness, but introduced challenges around incomplete results, loading states, and keeping the interface synchronized with playback.

What we learned

We learned that misinformation rarely has a clear-cut definition. A statement can be technically accurate but misleading without context, while a joke, opinion, or quoted claim can look false when taken literally. Building this project showed us how difficult it is for AI agents to distinguish these cases and why uncertainty needs to remain part of the assessment.

Useful fact-checking starts before research: selecting the right claims is just as important as assessing them. We focused on complete, consequential factual claims and used surrounding dialogue to avoid flagging incidental remarks or statements the speaker was actually rebutting.

We also learned that explanations and sources can be more valuable than a label alone. Connecting a flag to the original quote, its timestamp, and supporting evidence gives viewers a way to understand and inspect the assessment. Our goal became helping viewers make informed judgments, rather than presenting an AI verdict as the final word.

Accomplishments that we're proud of

We built an end-to-end experience that connects transcript analysis, parallel research, and timestamp-aware explanations inside YouTube. Through repeated testing, we reduced irrelevant flags and made results easier to explore without interrupting the video. Through Info Catcher, we are proud to be able to be the starting step of preventing misinformation from spreading.

What's next for Info Catcher

We want to give viewers more control over what gets explored, including the ability to select a statement and ask for supporting evidence. We also plan to improve claim selection across different video formats and make uncertainty clearer when the available sources cannot settle a question. We want to figure out how to accurately and effectively address misinformation to further increase the range of misinformation we capture. Moreover, we hope to make Info Catcher more accessible to everyone, especially for people who are more susceptible to misinformation such as people with no access to higher education or have language barriers.

Built With

  • cartesia
  • claude
  • codex
  • cursor
  • python
Share this project:

Updates

Submission history