PiiI detects personally identifiable information (PII) in text you type into AI chat assistants and helps you mask it locally, inside your browser, before anything is sent. PiiI does not collect, store on our servers, sell, or transmit your data. There is no account, no analytics, and no telemetry.
Who we are
PiiI is an open-source extension published by 10x Studio. This policy explains exactly what the extension accesses, why, and where it goes. If anything here is unclear, contact us at privacy@10xstudio.dev.
What the extension accesses
To do its job, PiiI reads the following on your device only:
- Text you type or paste into the message box on the supported AI chat sites (listed below), so it can scan that text for PII before you send it.
- The contents of files you attach on those sites (e.g. .txt, .csv, .md, .json, .pdf, .docx), which are read locally to warn you if a file contains PII before it is uploaded.
- The text you select on the page when you trigger the "always allow this term" shortcut, so the selected term can be added to your local allow-list.
This content is processed entirely within your browser and is never sent to us or to any third party. It is read, scanned, and (when you choose to mask) rewritten in place - then it is gone.
How detection works (and why it stays local)
PiiI finds PII two ways, both running on your device: pattern rules (regular expressions) for structured data like emails, phone numbers, and card numbers; and a small named-entity-recognition (NER) model for names and addresses. The model runs in your browser through onnxruntime-web (WebAssembly). No part of your message is sent anywhere during detection.
The one network request - and what it does not contain
The first time the extension runs, it downloads the NER model's weights once from the Hugging Face content-delivery network (a third-party host), then caches them in your browser. After that, detection works fully offline.
This request is a one-way download of the model to your device. It contains none of your prompts, none of your files, and none of your personal data. We do not receive anything from it; we do not operate any server that your content is sent to, at any point.
What is stored, and where
| Item | Where | Contains your PII? |
|---|---|---|
| Alias map (what NAME_1 stands for, to keep a conversation coherent) | chrome.storage.local - on your device only | Yes - stored locally so masked replies can be un-masked for you. Never transmitted. |
| Allow-list of terms you've exempted from redaction | chrome.storage.local - on your device only | Only terms you explicitly chose to allow. |
| Redaction audit log (so you can see what was masked) | chrome.storage.local - on your device only | No. Records only metadata: which categories were detected, the action taken, counts, and timestamps. It does not store the detected values themselves. |
All of this is local browser storage. None of it syncs to us or to any external service.
Data we collect, sell, or share
None. PiiI does not collect personal or sensitive user data on any server, does not sell or transfer user data to third parties, does not use your data for advertising or creditworthiness, and does not use it for any purpose unrelated to the single purpose described here. There are no analytics, trackers, or telemetry of any kind.
Permissions and why they are needed
| Permission | Why |
|---|---|
storage | Save your allow-list, alias map, and the local audit log on your device. |
| Host access to the supported sites | Read and rewrite the message box on those specific sites to detect and mask PII before sending. PiiI requests access only to the named sites below - not all websites. |
offscreen | Run the local NER model in an offscreen document (service workers cannot run the WebAssembly runtime). |
contextMenus | Provide the right-click "always allow this term" action. |
commands | Provide the keyboard shortcut for allow-listing the selected term. |
activeTab | Read your current selection when you trigger the allow-term shortcut. |
alarms | Keep the background service worker alive while the model is loaded so detection is not interrupted. |
Supported sites
PiiI runs only on the AI chat assistants it is built for:
- ChatGPT (chatgpt.com, chat.openai.com)
- Claude (claude.ai)
- Gemini (gemini.google.com)
- Microsoft Copilot (copilot.microsoft.com)
- Perplexity (www.perplexity.ai)
- DeepSeek (chat.deepseek.com)
It does not run on, read, or affect any other website.
Retention and deletion
Everything PiiI stores lives in your browser. You can clear it at any time by removing the extension, clearing the extension's storage, or deleting individual allow-list entries and the audit log from the extension. Uninstalling PiiI removes all of its local data.
An honest note on accuracy
PiiI substantially reduces the PII in your prompts, but no automated detector is perfect - some values, especially uncommon names, can be missed. When PiiI flags something it cannot place precisely, it warns you before sending rather than failing silently. Please review what PiiI shows you and treat it as a strong safeguard, not a guarantee.
Children
PiiI is a general-purpose tool and is not directed to children under 13.
Changes to this policy
If our data practices change, we will update this page and revise the "last updated" date above. Material changes will be reflected here before they take effect in a released version of the extension.
Contact
Questions about privacy: privacy@10xstudio.dev. Source code and issues: github.com/JaySmith502/PiiI.
MIT License · © 2026 10x Studio · Not affiliated with OpenAI, Anthropic, Google, Microsoft, Perplexity, or DeepSeek. PII detection uses the third-party onnx-community/multilang-pii-ner-ONNX model, trained on the ai4privacy dataset (CC BY 4.0).