Pen TestingCloud PostureShadow-AI discoveryCI/CDContinuous PlatformReportsIdentity & accessAgent Trust Fabric
Shadow-AI discovery
Find the AI nobody registered.
Find AI assets across the surfaces you can actually see, and state honestly what you cannot. Discovery never auto-registers anything — every result is a candidate an operator confirms.
5 surfaces
repos, one repo, cloud, external and a public link
25 repos
scanned per org run by default, and the cap is reported
Zero
auto-registered — a candidate is only ever confirmed by a person
Inventory
GET /api/shadow · candidate identity is surface|target
One deduped inventory, with its coverage stated
All discovery runs merge into one inventory with a combined coverage banner and a lifecycle. A re-run never duplicates, and a confirmed or dismissed candidate keeps its ruling.
Candidates
acme/support-agent
repos · LLM-SDK signal
bedrock:agent/claims-intake
cloud · managed service
llm.acme.dev:11434
external · Ollama exposed
Coverage
Never a claim that no other AI exists
Confirm or dismiss
The sweep
Four surfaces in range, and the two that need an operator.
Repos across a connected GitHub org
in range
A single repo
in range
One public link, turned into targets
in range
Managed AI services in your clouds
operator-enabled
Exposed model endpoints, externally
operator-enabled
Anything outside the sweep is reported as coverage, not silence — 25 of 41 repos scanned means 16 skipped, and it says so.
How discovery works
01
Look where you can see
Repos across a connected GitHub org, managed AI services in your clouds, exposed model endpoints on your external surface, and a single public URL turned into scannable targets.
02
Say what you missed
Every run reports its coverage — repos scanned, total, and skipped — so the cap is visible. Coverage is never presented as proof that nothing else exists.
03
Confirm, or dismiss
Confirming registers the candidate as a Continuous asset. Dismissing marks it not-AI, known, or ignored. Nothing enters your inventory on its own.
Five surfaces, and what each one finds.
Cloud and external live enumeration is operator-gatedCloud and external take an agentless inventory or probe results and map them deterministically to candidates. Their fully automated live enumeration is operator-gated.