PromptWard 0.11.1
Local-first prompt PII guard for ChatGPT, Claude, Gemini, Perplexity, and Mistral. Detection and redaction run entirely on-device via a local ONNX model — no prompt text, placeholder map, or telemetry ever leaves your machine.
This is the first release since 0.9.3 and includes a lot of fixes (see CHANGELOG.md for the full history). The two that matter most:
Install
- Download
promptward-extension.zipbelow and unzip it somewhere permanent (don't delete the folder afterward — Chrome loads the extension from it). - Go to
chrome://extensions, enable Developer mode (top right). - Click Load unpacked and select the unzipped folder.
- Visit a supported AI chat site and send a prompt containing PII. PromptWard shows a redaction review before it goes out, and auto-sends the redacted version after a 5-second countdown (or click Send original to opt out, or click anywhere on the modal to take manual control).
The local model loads automatically on first send — no need to open the side panel first.
What's new since 0.9.3
Critical fix — protection now actually works on ChatGPT, Perplexity, and Claude.
In 0.9.3 the content script resolved the wrong editor element on rich-text composers (Lexical/ProseMirror), read empty text, and let sends through without ever running detection. No modal appeared; prompts went out unredacted. Editor lookup now ranks all editable candidates and picks the one containing your text. Verified live on chatgpt.com and perplexity.ai.
The auto-send countdown no longer vanishes. The 5-second countdown was cancelling instantly on incidental mouse movement (the cursor drifting over the modal after your click). It now only cancels on a deliberate click or keypress.
Smaller and faster.
- Packaged size dropped from ~93 MB to ~24 MB — only the ONNX Runtime WASM variant the runtime actually loads is shipped.
- Debug logging moved off the send critical path — every send was paying serialized latency for diagnostics nobody sees.
Reliability.
- Enter during IME composition (CJK input methods) no longer triggers a premature send.
- Worker/protect requests can no longer hang indefinitely — they now time out and fail closed (nothing sent) instead of stalling forever.
- Concurrent sends no longer race the model document (previously: a spurious "Prompt blocked" error on wake).
- Custom-domain input is validated before permission is requested, so one bad entry can't silently break protection on all custom domains.
- Retry results now route through the review modal like the initial attempt.
- A per-page-load crash that silently disabled diagnostics is fixed.
Removed. The side panel's "WebGPU" toggle, which was labeled "Reserved opt-in" and did nothing, is gone.
See PRIVACY.md and NOTICE for data handling and third-party model attribution (Rampart model, ONNX Runtime Web).