Privacy-First AI Prompt Sanitizer - Remove Sensitive Data Before Sharing
π Live Demo: CleanMyPrompt.com
Clean My Prompt is a 100% client-side web tool that sanitizes sensitive data from text before you share it with AI assistants like ChatGPT, Claude, or Gemini. It detects and replaces emails, API keys, passwords, credit cards, phone numbers, IP addresses, names, and moreβall in your browser's memory.
- π 100% Offline Processing - Zero network requests after page load
- π§ Smart NLP Detection - Uses Compromise.js to detect names, places, companies
- π International Support - Handles US, EU, and German data formats
- β‘ Real-Time Sanitization - Updates as you type
- π¨ Two Modes - Placeholder mode (
[EMAIL_1]) or Realistic mode ([email protected]) - π§ Custom Patterns - Add your own regex patterns for domain-specific data
- π― 15+ Detection Patterns - Emails, URLs, IPs (v4/v6), phones, credit cards, IBANs, API keys, credentials
- π Open Source (MIT) - Fully auditable, fork-friendly
Developers and professionals accidentally leak sensitive data when using AI assistants:
- π API keys and secrets in debugging prompts
- π§ Customer emails in support tickets
- π³ Credit card numbers in payment troubleshooting
- π’ Real names and locations in document drafts
- π Server IPs and database credentials
One-click sanitization that works entirely in your browser. No trust requiredβverify in DevTools that zero network requests are made.
- Paste your text containing sensitive data
- Watch real-time sanitization (no button needed!)
- Copy the cleaned output to clipboard
- Share safely with AI assistants
User Input β Browser RAM β NLP Analysis β Regex Matching β Sanitized Output
β
No Network I/O
No Server Storage
No Data Persistence
Detection Pipeline:
- NLP First: Compromise.js detects people, places, organizations
- Regex Second: 15+ patterns catch structured data (emails, IPs, keys, etc.)
- Instant Output: Sanitized text generated in milliseconds
| Category | Examples | Formats |
|---|---|---|
| π§ Emails | [email protected], [email protected] |
Universal |
| π Phones | (555) 123-4567, +49 176 1234567, 0176265124 |
US, EU, DE |
| π API Keys | sk_live_abc..., AKIAIOSFODNN7..., ghp_xyz... |
AWS, GitHub, Stripe, generic |
| π IPs | 192.168.1.1, 2001:0db8:85a3::8a2e:0370:7334 |
IPv4, IPv6 |
| π³ Credit Cards | 4532-1234-5678-9010, 5425 2334 3010 9903 |
Universal |
| π¦ IBANs | DE89370400440532013000, FR14 2004... |
EU |
| π Credentials | password: abc123, username: admin |
Universal |
| π URLs | https://api.example.com, www.site.com |
Universal |
| π€ Names | John Smith, Dr. Emily Chen (NLP) |
Universal |
| π’ Companies | Microsoft, Apple Inc. (NLP) |
Universal |
| π Locations | Seattle, Berlin, Munich (NLP) |
Universal |
Visit CleanMyPrompt.com - works immediately in any modern browser.
# Clone the repository
git clone https://github.com/Eulex0x/cleanmyprompt.git
cd cleanmyprompt
# Open in browser
open index.html # macOS
start index.html # Windows
xdg-open index.html # LinuxNo build process, no dependencies, no installation required!
Upload all files to any static hosting:
- GitHub Pages
- Netlify
- Vercel
- AWS S3 + CloudFront
- Your own web server
- β Your prompts or sanitized text
- β Personally identifiable information
- β IP addresses
- β User accounts
- β Behavioral data
- β Tracking cookies
- β Minimal anonymous analytics (country-level aggregates only)
- β Page views (not who viewed them)
- Open browser DevTools (F12)
- Go to Network tab
- Paste sensitive text and sanitize
- Observe: Zero requests after initial page load
Offline Test: Disconnect from the internetβthe tool still works perfectly!
- πΊπΈ United States: US phone formats, ZIP codes
- π©πͺ Germany: German phones (
0176...), IBANs, postal codes - πͺπΊ European Union: IBAN validation, EU phone formats, GDPR compliance
- π¬π§ United Kingdom: UK phones, postal codes
Missing your region? Open an issue or submit a PR!
Click "Try Demo" button in the app to load a comprehensive benchmark with 60+ test cases including:
- US & European phone numbers
- AWS, GitHub, and Stripe API keys
- IPv4 and IPv6 addresses
- Credit cards and IBANs
- Names, companies, and locations
- Browser extension (Chrome, Firefox)
- CLI tool for terminal workflows
- Mobile PWA
- Import/export custom pattern libraries
- Advanced NLP models
- Multi-language UI
Contributions welcome! Please:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Before submitting:
- Test locally in multiple browsers
- Ensure no network requests during sanitization
- Update documentation if needed
This project is licensed under the MIT License - see the LICENSE file for details.
TL;DR: Use freely, commercially or personally. Attribution appreciated but not required.
- Compromise.js - Client-side NLP
- Tailwind CSS - Utility-first CSS framework
- Privacy advocates - For pushing user-first design
- π Bug Reports: GitHub Issues
- π‘ Feature Requests: GitHub Discussions
- π Documentation: Technical Deep Dive
Made with β€οΈ and respect for privacy
Website β’ Technical Details β’ About
β Star this repo if it helps keep your data safe!