Unit 80
A local-first desktop AI companion that guards, operates, and never phones home.
Meet him — his SYNAPSE core, live on a mock desktop
Right-click UNIT-80 to navigate his menu, then open CITADEL — his security & vitals console — and arm Sentry to watch it react. Everything animates like the real thing; none of it is doing any actual work here.
- 1Right-click UNIT-80(or tap ☰)→
- 2Open CITADELhis security console→
- 3Explore the tabs & arm SentryVITALS · NETWORK · MAP · IOC…
// a glimpse, not the whole machine.This is a self-contained demo state — no local model, no live system access, no real telemetry. The real UNIT-80 runs an on-device LLM, a dual SQLite + ChromaDB memory, PyTorch vision, voice, and 64 working tools entirely offline. What you see here is a faithful window into how he looks and feels; it only hints at what he actually does.
What it is
Unit 80 is a character-driven desktop companion that lives on the Windows desktop as an animated retro-neon persona — but under the hood it's four systems at once: a conversational assistant, an autonomous OS operator, an EDR-style security sentinel called CITADEL, and a network/device operator. It runs on a local Ollama model (qwen2.5:7b, with llama3.1/3.2 fallbacks) with a dual SQLite + ChromaDB memory, PyTorch vision, and voice I/O.
Local-first, by design
The entire point is that nothing leaves the machine. The model is local, memory is local, and even the security features are engineered to preserve privacy rather than trade it away.
- ▹ Google Safe Browsing wired through the v4 UPDATE API, not Lookup: ~2.7M hash prefixes are downloaded and matched locally — only a 4-byte prefix ever leaves, and only on a collision.
- ▹ Offline URL triage detects homograph/punycode tricks, credential-in-URL, brand-impersonation and more — with no keys and no network call.
- ▹ It starts its own local model engine, and never claims a service is up until it has actually answered.
CITADEL — the security sentinel
An armable sentry that pre-flights every link the companion is asked to open, refusing only on a critical structural signal or a confirmed malicious match — and failing open, because a security add-on that bricks ordinary browsing is worse than the risk it mitigates. Verdict precedence is deliberate: the user's own IOC watchlist beats Safe Browsing beats structural heuristics. It never reports a link 'safe' — the best verdict is 'no local signals'.
The engineering discipline behind it
Unit 80 is where I hold myself to the same honesty standard I bring to detection work. A recurring theme across its development was killing 'status theatre' — indicators that reported success regardless of reality. Red now means something is actually happening (a detection), not that a setting is on. Every feature is verified by exercising its real code path, guarded by 518 automated checks, and I mutation-test new checks — break the thing on purpose and confirm the test catches it — because several checks passed on broken code until proven otherwise.