Find the agents nobody told you about. Give each one you keep an identity.
Your agent registry is a guess. Vijil Discover turns it into a census: one row for each agent on AWS EC2, EKS or AgentCore, in Kubernetes clusters, on VMware machines, on Linux, Mac, and Windows endpoints, and in GitHub repositories, each with the evidence that found it. Register the agents you want to track, and assign each an ID based on the SPIFFE standard.
Free at any scaleScan one GitHub org on our consoleWe set up a GitHub App that your org owns, with read access to only the repositories you pick. Start for freeNobody filed a ticket to create an agent
An agent is a few lines of code and an API key. Nobody files a ticket to build one, so nobody holds the list.
“I answer for what the company’s agents do, including the ones nobody brought to me.”
“My agent is already somebody else’s shadow IT, and the first person to ask will ask during an incident.”
“I cannot assess what I cannot enumerate. The count I am given is the count somebody remembered to mention.”
All three need a census, and an identity for every agent they keep.
A row for every agent it finds, an identity for each one you keep
Plenty of scanners find undeclared agents. Discover tells you what each one is, and gives the ones you keep an identity.
1Find
Standing scanners watch AWS, Kubernetes, VMware networks, Linux, Mac and Windows endpoints, browsers and GitHub. One-shot scans read identity-provider grants, API gateways, network logs, certificates and egress.
2Read the row
Each row names the framework and the models the agent calls, the endpoints it serves, whether its auth is open, and the evidence that found it.
3Register and identify
Register the agents you want to track, then assign each an ID based on the SPIFFE standard. Vijil’s proxies enforce policy on that ID.
The row is real, from a first scan. The ID shows the registrar’s format with a placeholder trust domain.
Why SPIFFE. An agent is a workload, and SPIFFE is the open standard for workload identity: a verifiable ID issued to running software, not to a person, and proven with short-lived certificates or tokens instead of static keys. It is a graduated project of the Cloud Native Computing Foundation, so the ID works with the identity tooling your platform team already uses. Vijil is a CNCF Silver member. Vijil uses SPIRE and plans to contribute to the SPIFFE community. Meet us at KubeCon.
You have already looked, with the tools you own
It sees the runtime, the model endpoint and the credentials, and has no row for the agent they make up.
Then you have the declared agents. Discover counts the running ones, and the difference is the problem.
Either way you hold a list — a hostname and no principal, true on the Tuesday it ran.
The registry, as the auditor opens it


A census is only useful if somebody reads it. The rows are the record; the alerts are what makes it a control.
Rows on the first scan, identities for the agents you keep
- Connect a GitHub org or an AWS account
Source scans read the repositories you pick, through a GitHub App your org owns. The AWS connector runs on a schedule with an IAM role that can only list Bedrock, SageMaker and AgentCore resources, and it records which Bedrock agents have no Bedrock Guardrail attached.
- Add the places agents actually run
A Helm chart scans a Kubernetes cluster from inside it. A scanner VM or vSphere appliance covers a network. Installers for Linux, Mac and Windows and a Chrome or Edge extension cover laptops and browsers. Each scanner pulls its schedule, so nothing reaches inward and your firewall does not move.
- Register what you keep
Register on a row creates the agent in the console. Assign Identity then issues its SPIFFE ID, which Vijil’s proxies enforce policy on. In a cluster running Vijil’s SPIRE, the agent holds an X.509 certificate that proves the ID.

One org is enough to see the shape of it. From a laptop, vijil register ./my-agent registers an agent from its source.
One row per agent, and one for what it could not reach
What it is, where it runs, and whether its auth is open. A row names the framework and the models it calls, not a category like “an AI assistant”. A source scan adds the framework’s version and how many tools each agent has.

A segment nobody reached is reported in the scan report as a row carrying the reason. A coverage report that omits what it missed is a number wearing the clothes of evidence.
First, because everything after it needs a name to hold on to
Discover is the identify step of the Trusted Agent Lifecycle: it identifies what is running, and registering a found agent brings it onto the platform. Once the agent holds an identity, Dome’s proxies enforce policy on it and Diamond records it on every score.
Three ways in
We publish no list price, and nothing is metered per evaluation or per token. Finding agents is free at any scale and stays free. One agent on the rest of the platform is free on our console; beyond that it is priced per agent there, or as an annual subscription inside your own network with no agent count. Every tier is on the pricing page.
- Finds the agents running on a developer’s laptop
- Sees model use in the browser, with DLP policies on what is sent
- Pulls its schedule; nothing reaches inward
- GitHub orgs and AWS accounts, scanned on a schedule or on demand
- A row per agent, with the evidence that found it
- Recent history rather than a year of it
- Nothing is metered by how much you can see — only by how long you can keep the records.
- Your own VPC, on-premises, or air-gapped
- Every surface, including what a hosted scan cannot reach
- Identities issued by SPIRE in your own cluster, and policy over the population
- The registry stays inside your network

Scan one GitHub repository
Pick the one you would have guessed was tidy. The agents it turns up are usually the interesting part.
- Discover on our hosted console, free at any scale
- A GitHub App your org owns, reading only the repositories you pick
- A row per agent, with the evidence that found it
We open your account, usually the same day. Need it inside your own network? Talk to us.