The private mapping stays with you.
local-pii detects names, emails, phones and more inside the caller trust boundary — protected semantic content uses placeholders before the generation model, and the reply is restored locally. Opaque reasoning, metadata, and options stay caller-owned. The private mapping never leaves that boundary.
Ontem encontrei João Silva. Tel +49 151 12345678.
Ontem encontrei [GIVEN_NAME_1] [SURNAME_1]. Tel [PHONE_1].
Rampart Detection
A 14.7 MB Rampart Detection model finds names, addresses and IDs in your app or the browser. Inference runs locally; in the browser the model artifacts may download on first use.
Tool calls, solved
Placeholders survive JSON and tool-call arguments. Your tools run with real values; adapters protect supported semantic content toward the generation provider.
Any LLM
Drop-in adapters for the Vercel AI SDK, OpenAI / Grok, and TanStack AI. Protect, call, restore — you barely change your code.
Zero-dep core
The detection + placeholder core has no runtime dependencies and runs in React Native, the browser and Node.
note ─▶ rules (email · phone · card · IBAN · SSN · IP)
─▶ your dictionary
─▶ Rampart Detection (names · addresses · IDs)
─▶ placeholders ─▶ Generation model
│
reply ─▶ restore(reply) ─▶ restored textSee it protect, live.
Type a note and watch personal information turn to placeholders in your browser — Detection runs locally.