Inspiration:

We kept running into the exact same problem whenever we tried to shop online: figuring out if a product was actually worth buying took way too long. Researching companies, checking product quality, trying to figure out if "eco-friendly" claims were real or just greenwashing, and digging through tiny fine print just to check basic return policies felt exhausting and tedious. We spent hours cross-referencing reviews, and we realized everyone around us was dealing with the exact same headache.

When we looked at existing shopping extensions, we realized most of them were making the problem worse. They either pushed sponsored affiliate links or silently tracked everything we did in the background. We wanted to build something built purely for the consumer: a tool that respects your privacy until you actually ask for help, strips away marketing noise, and gives you honest answers instantly.

What it does:

Unmasked is an on-demand browser extension and post-purchase helper that makes online shopping transparent and risk-free.

Here is what Unmasked does:

  • Verifies Seller Claims: When you click the extension on a product page, it extracts bold claims (like price per unit, eco-certifications, or materials) and checks them against independent reviews and real data. If there is strong evidence that a claim is misleading, it shows you a side-by-side comparison.
  • Exposes Hidden Fine Print: It scans return policies, cancellation flows, and hidden fees so you aren't caught off guard by a bad return window or restocking fee.
  • Personalized Buyer Warnings: If you give it permission, Unmasked looks at your past shopping history and review preferences to warn you about things you personally care about (for example, "You previously returned a similar shirt because the material wore out quickly").
  • Multi-Agent Knowledge Registry: For new products or unverified sellers, our backend uses a network of AI agents that verify findings and vote using a Raft consensus model before saving that information to a shared Supabase database.
  • Post-Purchase Updates via Photon 2.0: After buying, you can drop in your phone number to get SMS or WhatsApp updates from a Photon agent that tracks delivery dates, return policy windows, and any sudden policy changes.

How we built it:

  • Browser Extension: Built with JavaScript (Manifest V3), HTML, and CSS. The content script inspects the active page directly (preferring schema.org Product blocks) without running ambient background surveillance or tracking. It stays completely inactive until the user clicks the button, keeping user privacy front and center.
  • Backend Logic & AI: Built using Python and FastAPI, handling endpoints like POST /page-notes, POST /alternatives, and POST /ask. We used the Gemini API and OpenAI to analyze page text, compare prices, and break down dense return policies, while Tavily searches independent sites like Reddit and customer review boards for real buyer feedback.
  • Shared Registry: Powered by Supabase, where user accounts, order history, and personal preferences live in private tables, while the unmasked_registry handles public product and seller findings. Agents check and vote on new seller insights using a Raft consensus model before making them permanent.
  • Messaging Agent: Built using Photon 2.0 so users can receive real-time updates on their phone via SMS or WhatsApp without having to keep checking their email.
  • Code Quality & Safety: We connected VEYZL to our GitHub repository to run automated compliance checks on our pull requests and catch security vulnerabilities before merging code.

Challenges we ran into:

  1. Extracting Clean Data Across Messy Stores: Every e-commerce site formats things differently. Our extension looks for schema.org Product blocks first and falls back to visible return/warranty lines, while skipping search pages. But because neither our script nor trafilatura execute full page JavaScript, text hidden behind dynamic click-to-open buttons was tough to catch.
  2. Stopping AI Hallucinations on Obscure Products: When we tested products with zero independent reviews online, our models naturally wanted to guess or make up answers. We had to build strict guardrails so that if data is missing, no model is called at all, it just outputs a clean, honest "No independent reviews were found for this claim."
  3. Securing Agent Queries Against Data Leaks: Early VEYZL audits flagged that our POST /demo/ask endpoint could accidentally echo sensitive strings like API keys or test data if prodded the wrong way. We fixed this by putting a strict input filter in front of OpenAI that blocks unsafe queries and strips phone numbers, emails, and token-shaped strings from the output.

Accomplishments that we're proud of:

  • Putting Consumer Privacy First: We built a tool that doesn't track you in the background. It only works when you explicitly hit the button.
  • Real User Testing: During the hackathon, we ran quick user testing rounds with other hackers and attendees. Watching people test it on real product pages and instantly understand the return policy traps was super rewarding.
  • Fixing Real Audit Issues & Flaws: We initially thought building a cool AI feature set was going to be the easiest part, but user testing and judge feedback hit us with humbling reality checks, like when our tool accidentally started pulling up blood-pressure monitors on a computer monitor page just because both shared the word "monitor"! Catching those errors felt frustrating at first, BUT we took that feedback, went straight back to our code, overhauled our matching filters, and successfully used VEYZL on our pull requests to spot privacy flaws and fix them before shipping our final demo.
  • Getting Multi-Agent Consensus Working: We got our Raft-inspired agent voting system working on Supabase so individual agents don't push false data into our shared knowledge registry.

What we learned:

Our conversations with judges and mentors during the event really helped us tweak our ideation and focus on refining the product. In our early discussions, to be honest, judges brought up tough edge cases, specifically asking what happens when the browser extension encounters a product with almost no information available online, or how data attribution errors happen between company footprints and product specs. We were pretty stumped at first, but we found it as a way to approach this problem better.

Taking that feedback, we went back to our code and built explicit fallback states. Instead of having the AI guess or display vague summaries, we tuned it to be totally upfront with the user. We learned that in consumer tech, being honest about missing data builds way more trust than trying to give an answer every single time.

We also learned a lot about multi-agent systems, browser extension security, and how to design AI tools that empower users rather than exploiting their data.

What's next for Unmasked:

  • Expanding the Agent Network: Allow everyday shoppers to submit unverified seller tactics to the registry and earn rewards for flagging fake store fronts.
  • Automated Refund & Return Requests: Expand our Photon 2.0 phone agent so it can automatically help users draft return emails or start cancellation flows directly with seller support.
  • Deeper Fine Print Scanning: Improve our policy parsers to catch subtle subscription traps and recurring payment tricks across a wider variety of store platforms.

Built With

Share this project:

Updates

Submission history