Detection tools

A second opinion before the model acts.

Instructions can hide in look-alike letters, invisible characters, encodings and images. These tools undo the hiding step by step, then check what's left for injection and escalation before a response is generated. The harness has its own link to the Witness.

Split-Brain Harness

The check in front of the model.

Public · Rust · v1.6.0

split-brain-harness

Wraps any LLM as a drop-in OpenAI-compatible proxy and checks each request for prompt injection, insider-threat patterns, authority impersonation and multi-turn escalation before a response is generated. Works offline against a local model; single static binary.

Benchmarks: published in the repo with their limits, including a figure we withdrew and why.

  • LLM proxy
  • Offline
  • Witness layer

Hidden-text detectors · MIT

Run before any LLM call. Each returns cleaned input for the model and a report for the audit trail.

Public · Rust · v1.18.1

deobfuscate

Multi-pass text deobfuscation and encoding-evasion detection: homoglyphs, invisible characters, base64, ROT13, split keywords and more. Fast enough to run on every request.

  • Pre-filter
  • Audit report
  • WASM demo
Public · Rust · v1.0.0

unicode-interference

Finds look-alike letters from other alphabets hidden in Latin text, using forward/reverse script interference. Zero dependencies; no_std library and CLI.

  • Homoglyphs
  • no_std
  • Zero-dep
Public · Rust · v0.1.0

deobfuscate-vision

Image-borne prompt-injection detection: pulls every machine-readable text channel out of an image — white-on-white, tiny fonts, alpha overlays, EXIF, QR codes — and scores it with the deobfuscate engine. Not on crates.io yet; depend on it by git tag.

  • Multimodal
  • Image injection
Public · Python

glyph-validator

Deterministic CJK glyph geometric-coherence validator: a pre-processing gate that catches malformed or spoofed glyphs. No LLM, no network.

  • CJK
  • Deterministic

Try them

The in-browser demos, built from the published crates and the Witness code via WebAssembly. Nothing you type is sent anywhere.

Public · Rust · Go

sgail-playground

Hidden Text X-Ray: paste anything and see the hidden characters, look-alike letters and encoded instructions, and what a model would receive. Tamper-Evident Farm Log: try to change a poultry house's log and see what the witness catches.

  • WebAssembly
  • Runs locally

Putting a check in front of your model?

For a deployment, or a pipeline that also needs a record, get in touch.