Install
Getting a single machine running takes about five minutes — install the bundle, then one guided command:Full quickstart
Step-by-step: prerequisites, the menu-bar option, verifying, your first block,
and uninstall.
What it protects
The agent works from a host allowlist of known AI vendors — it inspects traffic to those hosts and leaves everything else untouched. The current list covers:
This covers both the AI web apps in the browser and the AI APIs behind
coding tools and SDKs. Adding a new vendor to the allowlist is a small config
change on our side — see Known Limitations for
how to request one.
For scripted or MDM deployments, stable download URLs redirect (302) to the
latest artifact:
What happens at send-time
Every paste, prompt, or upload gets one verdict in milliseconds:- Block — secrets, API keys, and prompt-injection attempts are stopped; the employee gets a clear notification with a short reference and a one-click copy-safe-version option.
- Redact — PII is masked on the device, so the AI tool never receives the raw value and the employee still gets useful help.
- Allow — everything else passes through untouched.
{category, count} summary of what was taken out so the engine isn’t
blinded by the masking. Raw prompt text is not something the agent sends
anywhere. Devices pointed at an engine we don’t run go further and default to
sending no prompt content at all — see
What the engine is shown.
If the engine is ever unreachable, the agent fails open by default — traffic
is allowed through rather than blocking the employee’s work. A refused connection
fails open immediately; an engine that accepts the connection but stalls gets a
30-second timeout. Organizations that need the opposite trade can set
on_engine_unreachable to hold, and a prompt the engine couldn’t be asked
about is then not sent at all — see
If the engine cannot be reached.
See Troubleshooting for what an outage looks like
and Privacy & Data Handling for what is
logged.
Two ways to deploy
Self-serve (today)
A user installs it and approves the certificate once. Perfect for pilots and
smaller teams. A local admin can turn it off unless you push it via MDM.
Managed for enterprise
Pushed by your MDM, with a managed certificate and a tamper-resistant
capture layer (macOS System Extension / Windows filtering driver). Same
detection — just locked down and zero-touch for employees.
Honest limits
A few things are out of scope by design or still in progress. The short version:It needs a certificate to read encrypted traffic
It needs a certificate to read encrypted traffic
Inspecting HTTPS means terminating TLS, which requires a trusted certificate
on the device — in both deployment tiers. The enterprise tier doesn’t
remove the certificate; it makes it MDM-managed and harder to tamper with.
The agent reads content on the device and sends it to the engine for a
verdict; the engine logs the verdict with a masked preview.
Certificate-pinned apps and QUIC/HTTP-3 can bypass inspection
Certificate-pinned apps and QUIC/HTTP-3 can bypass inspection
Some native apps pin their own certificate and bypass any inspection proxy,
and QUIC/HTTP-3 can route around the HTTP proxy entirely. Image OCR isn’t
supported yet either.
Updates
The agent keeps itself current — you shouldn’t have to think about versions:- Automatic by default. Updates download and install in the background. In the app’s Settings you can switch the update mode to Notify me (you approve each update) or Off.
- Every update is signed. Update packages are cryptographically signed and verified against a public key embedded in the app before anything is installed — an unsigned or tampered package is rejected.
- Staged rollout. New versions roll out to a growing percentage of devices, with a kill-switch on our side that can halt a rollout if a problem is found.
- Minimum-version floor. We can mark versions below a floor as dangerously outdated, which forces an update. Until it updates, a stale agent keeps protecting with its current policy — it never disarms — but coverage-reducing controls (like turning protection off) are locked.
- Beta channel. Opt in from Settings to receive pre-release builds early.
updater_enabledoff stops every update check. No release feed, no version-policy call. The device still polls its own engine for your organization’s update settings, which is also how it heartbeats.update_url, pointing at thelatest.jsonof your mirror of our signed releases, becomes the only update source — no dynamic endpoint on the engine host, and no GitHub fallback. Mirroring doesn’t mean re-signing: every artifact is still verified against the public key compiled into the app, wherever it came from, so a mirror cannot substitute a build of its own.
Menu bar app
The agent lives in your menu bar (macOS) or system tray (Windows / Linux):- The shield icon shows protection state at a glance — a filled shield means protected; an outline means protection is off. Hover for a tooltip with the current status.
- Right-click for a quick menu: protection status, Open, and Quit.
- Click to open the popover — home, Activity (every verdict, with detail per event), tools, settings, and help. Press Esc to go back a screen or dismiss the popover.
Next steps
Roll it out to your team
Enroll many devices with scoped, revocable credentials.
Choose where your data runs
Cloud, hybrid, or fully air-gapped.