Paste any text, skill file, or MCP tool description. Unmask decodes zero-width characters, bidi overrides, Unicode tag smuggling, and homoglyphs: the hidden Unicode you can't see, but a model reads in full.

What you see

What the model sees

What Unmask checks for

Unmask is a browser tool that reveals the Unicode characters hiding in text a language model will read but a person cannot see. Paste a prompt, a skill file, an MCP tool description, or any block of text, and it scans every character against four kinds of hidden content.

Zero-width and invisible characters render as nothing on screen but still count as real characters to a tokenizer. Bidirectional override controls reorder how a line displays without changing the order stored on disk, so a sentence can read one way to you and another way to the model. Unicode tag characters, the invisible block originally meant for language tags on emoji flags, can carry a full ASCII sentence that never appears on screen. Homoglyphs are letters borrowed from Cyrillic or Greek that look identical to Latin letters but are different code points, the trick behind look-alike domain names.

Everything runs in your browser. Nothing you paste is uploaded, logged, or sent to a server, which matters when the text you are checking is a private prompt or an internal tool definition. The left pane shows the raw text with each hidden character marked in place. The right pane shows what the model actually receives, with every invisible character spelled out as its code point. A findings list links the two, and one button strips the hidden characters and copies a clean version back to your clipboard.

To use it, paste text or drop a .md, .txt, or .json file into the left pane, read the findings list to see what was caught and why, then click Copy sanitized for a cleaned copy or Copy report for a plain-text audit you can share.

FAQ

Does Unmask send my text anywhere?
No. Every scan runs locally in your browser with no network calls. You can open the page, disconnect from the internet, and it still works.
What can I check?
Paste any text directly, or upload a .md, .txt, or .json file up to 1MB. Skill files, MCP tool descriptions, and shared prompts are the common cases.
What does sanitize actually remove?
It deletes zero-width, bidi-control, and Unicode tag characters outright, and folds homoglyphs back to the Latin letter they imitate. The visible words stay; the hidden channel is gone.
Is this a security guarantee?
No. Unmask flags known hidden-character tricks and common injection phrases as a review aid. It is a magnifying glass, not a firewall, so treat it as one input to your own judgment.