What WitnessAI actually governs.
The architecture is the argument. WitnessAI sits in the path AI traffic already takes and makes its decisions there — which is what makes it fast to deploy, and what draws the line around the set of things it can decide about.
The three modules
The product is presented as three layers over the same traffic, and each one is worth scoring separately.
- Observenetwork-level discovery against a catalogue of over four thousand AI applications, with no endpoint client and no browser extension required. It reaches native desktop applications as well as browser use, and it distinguishes agentic sessions from ordinary chat by reading tool advertisements in the traffic itself.
- Controlintent-based policy over that traffic: routing by risk, cost and purpose, allowed-tool lists for agents, and organization-level bans that a team admin cannot re-enable. Audit records carry the user, the agent, the tool and the rule that fired.
- Protectbidirectional runtime defence — prompt-injection and jailbreak attempts blocked before they reach a model, harmful or off-brand output filtered before it reaches a user, and sensitive data tokenized on the way in and detokenized on return.
Three deployment models carry all of it: proxy chaining onto existing secure-edge infrastructure, direct API integration, and an agentless option for the endpoints that never traverse a corporate proxy. Nothing is installed on the device.
Where WitnessAI is strongest
Two of the sixteen rows below go to WitnessAI and three are level. They follow from a real architectural difference: the traffic path is a layer they own and we deliberately do not.
- Network-layer enforcementthe layer the whole product is built on. We govern the action rather than the path to the model, and run alongside whatever already sits in that path rather than replacing it.
- Data protection on the way to the modeltokenization before a model receives the data, detokenization on return, and a purpose-built detection model behind it. A complete capability, scored level with ours.
- Ecosystem and marketplace reachcloud-marketplace listings and secure-edge partnerships give them a wider distribution footprint than ours today.
Where the traffic layer ends
An agent does two kinds of things. It talks to a model, and it acts on a system — writes a record, moves money, sends a message, calls an internal API that has nothing to do with AI. The first kind of work is traffic, and traffic is exactly what a path-based product is good at. The second kind is an action, and an action is only visible from the path if it happens to travel it.
This is not a gap that more policy fixes. It is where the architecture draws its line, and it is the reason runtime enforcement scores a 3 rather than a 5: real inline blocking, on a bounded set of things to block.
Traced is not the same as accountable
Attribution is the strongest part of the identity story here, and it is genuinely good: an agent-to-agent chain is traced back to the human who triggered the original action, and the audit record names the user, the agent, the tool and the rule.
The dependency is the word triggered. It resolves to whoever started the session. An agent that runs on a schedule, or one started by another system, has no originating session to point at — and because agents are recognised from their traffic rather than enrolled as identity objects, there is no standing owner recorded between sessions either. A trace tells you what happened. An owner is who answers for it.
Three questions to put to a proxy-layer product
Observe, Control and Protect all read the same traffic, so the useful questions are about what that traffic contains and what it leaves out. The table is organised around three of them.
- Be at runtimeWitnessAI decides inline on the prompt, the response and the tool call it can see. The question is whether the write to a ledger or the call to an internal API that follows gets a verdict too, or only a line in the audit trail.
- Know the identitya chain traced back to the user who triggered it is real attribution. The question is who answers for the run that nobody triggered — the scheduled job, the agent started by another system.
- Cover everythingproxy chaining and the agentless option reach whatever crosses the monitored path. The question is the agent that never does: one acting on systems rather than models, or one facing your customers rather than your staff.
Cost is where the architecture shows up on the invoice. The platform is metered per user against a seat minimum, with agent visibility on a separate per-agent SKU, so the bill grows with headcount while the thing being governed grows with deployments.