-
-
Choose the sensitive information you want to protect and monitor live speech in real time.
-
When a protected phrase is detected, Say Shield warns the speaker and offers a natural recovery line.
-
Add private words locally and get ready-to-say recovery lines when a risk is detected.
-
Say Shield detects a protected phrase and helps the speaker recover without breaking the conversation.
Inspiration
We live in a time when almost anyone can be connected through the internet. That makes everyday conversations more visible—and a small slip can sometimes reveal more than we intended.
While streaming, on a call, or speaking online, someone might accidentally mention their real name, nearest station, workplace, phone number, or another detail that makes them easier to identify or contact. This is a risk that many people already carry without realizing it.
I built Say Shield because I believe this risk can be reduced. I wanted to create a small, practical tool that helps people notice a privacy risk while they are speaking and recover naturally without making them afraid to speak.
What it does
Say Shield is a real-time privacy guard for live conversations.
It uses browser-based speech recognition to create a live transcript and detect sensitive phrases that the user chooses to protect. It includes presets for identity, location, affiliation, and contact details. Users can also add their own custom NG words, such as a specific station name, company name, or other private term.
When Say Shield detects a protected phrase, it immediately displays a warning and suggests a natural recovery line. Instead of interrupting the conversation, it gives the speaker a small moment to notice the risk and smoothly move on.
Privacy shaped the product from the beginning. Custom NG-word settings remain on the user’s device, and this MVP does not store monitoring audio, transcripts, or detection history on a server.
How we built it
Say Shield started from better-t-stack, which provided the initial full-stack TypeScript foundation with Next.js, Hono, and tRPC. I then customized and extended it with TypeScript, Tailwind CSS, Cloudflare, browser-based speech recognition, and a local-first privacy design.
Codex and GPT-5.6 were central to the development process. I started with a rough question: “What if there were a small shield for people who accidentally reveal private information while speaking?” With Codex, I turned that idea into a multilingual web MVP with browser speech recognition, NG-word detection, warning states, recovery suggestions, tests, and deployment.
I also used Codex with Skills and MCP tools to make implementation decisions, troubleshoot the stack, and work through privacy and browser-compatibility concerns. This led to an important product decision: removing accounts and the database from this MVP so that user settings could remain local-first.
GPT-5.6 powers an optional context-aware recovery suggestion after a detection.
Challenges we ran into
The main challenge was balancing real-time protection with privacy. A product that helps protect sensitive information should not create another place where that information is stored. This led to a local-first design and a browser-based MVP that avoids storing monitoring audio, transcripts, and detection history on the server.
I also explored using OpenAI Realtime transcription. For this version, I chose a browser-first approach so that the demo would stay lightweight and easy to test.
What I learned
I learned that privacy-focused products need to reflect their tradeoffs in the product itself, not only in a privacy policy.
I also learned how quickly an idea can become a working product when Codex is used as a development partner—from shaping the product flow and implementing features to checking edge cases and improving deployment.
What's next for Say Shield
The next step is a native desktop app that can run quietly in the background instead of only in a browser tab.
This could make Say Shield more useful for creators and streamers, while also opening possibilities for customer-support teams that need to notice privacy risks or sensitive disclosures during live conversations. I also want to improve speech recognition reliability, add more languages, and refine recovery suggestions for different contexts.
Built With
- api
- cloudflare
- codex
- css
- gpt-5.6
- hono
- next.js
- openai
- tailwind
- trpc
- typescript
Log in or sign up for Devpost to join the conversation.