Skip to content

Enforcement coverage and tamper alerts

AI-use policy is only enforced while the clients that enforce it are running. Discover → AI usage → Coverage shows, for the current environment, which enforcement points report in, and Shield360 raises an alert when one goes missing.

Shield360 has three enforcement points, each enrolled as a device:

Enforcement pointWhat it governsHow often it calls in
Collector (computer)Coding agents, through the hooks it installs, and the AI apps on the computerEvery 5 to 15 minutes while the computer is awake, plus an hourly heartbeat
Browser extensionAI sites in one browser profileEvery 15 minutes while the browser is open
AI proxyAPI traffic sent through itA heartbeat every minute

Every authenticated call a client makes updates its device’s Last seen time. From that, each device is in one of three states:

  • Reporting: it called in within its threshold.
  • Silent: no call for longer than its threshold. A computer or browser extension is silent after 24 hours, so a laptop closed overnight isn’t flagged. An AI proxy is silent after 15 minutes, because it’s a server that sends a heartbeat every minute.
  • Never seen: it enrolled but has never called in.

Revoked devices aren’t listed.

The collector installs Shield360’s hooks into supported coding agents (Claude Code, Cursor, Codex, Gemini CLI, Windsurf and GitHub Copilot CLI). Its heartbeat reports, by agent name only, which agents are on the computer and which of them have the hooks. No paths or settings are sent.

HooksMeaning
InstalledEvery coding agent found on the computer has the hooks
MissingAt least one agent on the computer doesn’t have the hooks. The agents are listed
No agentsNo supported coding agent is installed
Not reportedThe collector hasn’t reported hook state. It’s older than this feature, or it runs as a system service, which can’t read each person’s agent settings

A person is the name on their devices: the OS account the collector runs as, or the email of the browser profile. The two count as one person when the identity directory maps the account to that email, or when the account is the email’s name (jo and jo@acme.example) and no other email has that name.

CoverageMeaning
CoveredA computer and a browser extension are both reporting, and every coding agent on a reporting computer has the hooks
PartialAt least one enforcement point is reporting, but something is missing: no computer or browser extension, one is silent, or hooks are missing
SilentThe person has devices, but none is reporting
Never seenNone of the person’s devices has ever called in

The Gaps column says what keeps a person from Covered. AI proxies serve many people, so they’re listed as devices but don’t count toward anyone’s coverage.

By default the page shows Gaps only. Choose Everyone to include covered people and reporting devices.

Two alerts appear in the Alerts inbox. To send them to Slack, Teams, email or PagerDuty, add an event rule for their kind.

KindRaised whenSeverity
enforcement.point_silentA device goes silent past its threshold. Shield360 checks every five minutesWarning, or critical for an AI proxy
collector.tamperHooks are removed from a coding agent that had them. Either the hooks are gone from an agent that’s still installed, or the collector’s hourly pass had to put them backCritical while missing, warning when put back

Each alert fires once per episode:

  • A silent device alerts once. It can only alert again after it calls in and then goes silent again.
  • A hooks alert fires once per gap, and again only after a report shows the hooks back in place.
  • An agent that never had the hooks (for example, because automatic install is off) shows as Missing on the page but doesn’t raise collector.tamper. Neither does uninstalling the agent itself.
  • Devices already silent for more than a week past their threshold when Shield360 first checks them aren’t alerted on, so turning this on doesn’t flood the inbox with machines retired long ago. They still show as Silent on the page.

Alerts name the kind of enforcement point and carry the device’s host name as the hostName attribute. They never name the person. With collector.tamper now raised, the Collector tampered with, then permissions bypassed detection template can be turned on. It flags a computer whose hooks were removed and where a coding agent then ran with permission prompts bypassed.

GET /api/visibility/coverage

The route needs the View computers and people permission and reads only the caller’s current environment. It returns people, devices and a summary of counts per state.