// BROWSER EXTENSION
PII masking in the browser
Every time you submit a message in an AI chat, the Omna extension intercepts the outgoing request and scans it for personal information. Anything it finds is swapped for a structured placeholder — `[PERSON_1]`, `[EMAIL_1]`, and so on — before a single byte leaves your browser. The AI receives only the masked version.
PII masking works on its own — it does not require the Omna Mac app.
How masking works
Omna operates at the network level, not the UI level. Instead of reading what you type, it intercepts the outgoing network request that carries your message to the AI's API. Because it works from the network's perspective, masking behaves the same regardless of how the site is built — complex frameworks, shadow DOM, and non-standard inputs all work.
The masking engine runs as WebAssembly directly inside Chrome. No server calls, no external API, no dependency on the Mac app. As long as the extension is enabled, masking is active.
What gets masked
| Category | Examples |
|---|---|
| Names | Full names, usernames |
| Contact details | Email addresses, phone numbers, postal addresses |
| Government IDs | SSNs, passport numbers, driver's licence numbers |
| Financial data | Credit card numbers, bank accounts, IBANs |
| Healthcare data | Diagnoses, prescriptions, insurance details |
| Employment data | Salaries, HR records, performance reviews |
| Credentials & API keys | Passwords, API keys, access tokens |
Placeholder format
Each detected value becomes a category label plus an incrementing number. The same value always maps to the same placeholder within a session, so the AI can still reason about relationships in your data:
Original: Please email jane@acme.co and call (415) 555-0132 about the account.
AI receives: Please email [EMAIL_1] and call [PHONE_1] about the account.The local registry
Omna keeps a session-scoped registry that maps every placeholder back to its real value. It exists only in memory — never written to disk, never sent anywhere, never persisted beyond the current tab. This means:
- No data at rest — sensitive values are never stored where they could be read later.
- Session isolation — a new tab starts with a clean registry.
- No sync — the registry is not shared between tabs or windows.
Shield mode
Turn Shield mode on (extension popup → Protection → Shield mode) and Omna swaps placeholders back to real values in the AI's response before it appears on screen. The model processed anonymized data; you read a natural answer with the real names and addresses.
Privacy guarantees
- The masking engine runs entirely as WebAssembly in your browser — no server is ever involved.
- No analytics, no telemetry, no data collection.
- Placeholders and the registry that maps them clear automatically when you close the tab or browser.
- The Mac app is not required for PII masking.