What it does
Rehydra detects personal data and secrets in text headed for an LLM, replaces each value with a stable placeholder, and can restore the originals afterwards. Structured items such as emails, phone numbers, IBANs and card numbers are caught with patterns, while names, organizations and locations are found by a model that runs on the device, so the README says no data leaves the machine. It also looks for API keys, JWTs, private keys and database connection strings. It comes in several forms: a library for Node.js, Bun and browsers; a CLI proxy that sits in front of coding tools such as Claude Code and Cursor; a Chrome extension for ChatGPT and Gemini; and a plugin for OpenCode. The same value keeps the same placeholder across a session, and originals are kept in an AES-256-GCM encrypted map so tool-call arguments such as file writes can be rehydrated before they run. Some limits are stated. The quantized on-device model is about 280 MB and downloads on first use. The proxy example needs an Anthropic API key, not a Claude subscription login. Default address detection covers UK postcodes and numbered English-language street addresses, and other formats need custom recognizers.
Capabilities
- Reversible placeholders for names, emails, phone numbers and secrets
- On-device detection with no cloud calls
- Local proxy for coding agents that rehydrates tool-call arguments
- Chrome extension for ChatGPT and Gemini
- Library for Node.js, Bun and browsers
- OpenCode plugin that scrubs secrets from conversations
When to use it
- Keeping customer names, emails and keys out of prompts sent to hosted LLMs
- Running a coding agent on a codebase that holds secrets or personal data
- Adding PII masking to an app that calls LLM APIs