Shadow AI Discovery¶
Shadow AI Discovery lists the AI software in your environment, including software that never went through an approval process. It finds AI tools, agents, SDKs and Model Context Protocol (MCP) components, and shows each one with its parent asset, version and findings.
Discovery confirms that a tool is installed. It does not confirm that anyone uses it. A supported AI agent appears even when it is not running and has never contacted an external AI service.
| Where AI runs | What finds it | Where you see the result |
|---|---|---|
| Endpoints and VMs | The Omni agent scans the disk on Linux, Windows and macOS | Unmanaged tab |
| Kubernetes | The in-cluster scanner reads container images | Unmanaged tab |
| Cloud accounts | A read-only API connection reads the account | Managed tab |
| Browser | The AccuKnox browser plugin records access to GenAI services | User identity, timestamp and accessed domain |
Watch the two-minute tour
Watch AccuKnox find AI agents, SDKs and MCP servers on VMs and containers.
Supported AI Tools¶
All 50 tools are live. Each tool appears on the Unmanaged tab with its parent asset. Package scanning also classifies AI software outside this list.
CLI coding agents 16
IDEs and IDE extensions 18
Desktop apps and local model runners 11
Agent frameworks and workflow builders 5
Where Results Appear¶
Open AI/ML Security → Assets in the AccuKnox console. The inventory has two tabs because AccuKnox finds cloud resources and installed software in different ways.
| Tab | What it lists | Source |
|---|---|---|
| Managed | AI resources in your cloud accounts, such as models, datasets, compute and managed agents | A read-only API connection to the onboarded cloud account |
| Unmanaged | AI software installed on endpoints, VMs and containers | The Omni agent on endpoints, and the in-cluster scanner in Kubernetes |
Shadow AI appears on the Unmanaged tab. That tab lists AI software outside centrally managed cloud AI resources and outside the approved software inventory.
AI Categories¶
Each item on the Unmanaged tab belongs to one of seven categories. Detection rules decide the category, and not every category is detected on every operating system.
| Category | What it covers | Example packages |
|---|---|---|
| AI Agent | AI assistants and agent frameworks installed on endpoints or workloads | LangChain agents, CrewAI, AutoGen |
| AI Automation | Tools that build or run AI workflows | Flowise, Langflow |
| AI Gateway | Components that route or control access to models | LiteLLM, Portkey |
| AI Inference Engine | Runtimes that run or serve models | vLLM, TGI, Triton, llama.cpp, Ollama |
| AI-ML | Machine learning frameworks and libraries | PyTorch, TensorFlow, scikit-learn, Transformers |
| AI SDK | Kits that call AI models from an application | OpenAI, Anthropic, Cohere, Google GenAI |
| MCP | Model Context Protocol servers and clients | MCP server and client packages |
See the seven categories on the Unmanaged tab
Each category shows its asset count and its findings by severity.
Asset Details¶
Each asset can show its name, category, technology, version, license, parent VM or endpoint, artifact label and discovery timestamp. A field stays empty when the installation artifact does not record that value.
See the parent asset view and the asset detail view
Group the Unmanaged tab by parent asset type to see how many AI components sit on VMs and on containers.
The asset detail view shows the category, version, license and raw classification payload, plus Findings and Parent Asset tabs.
How Discovery Works¶
Endpoints and VMs¶
The Omni agent scans the local filesystem for installation evidence. It finds CLI agents, desktop AI apps and IDE extensions whether or not anyone has opened them.
- 1. OnboardInstall Omni on a Linux, Windows or macOS endpoint.
- 2. ScanOmni reads the disk for AI installation artifacts and packages.
- 3. ReportOmni uploads the results through the artifact API.
- 4. ClassifyAccuKnox assigns each component an AI/ML category.
- 5. ReviewEach tool appears on the Unmanaged tab with its endpoint.
The AI tool needs no network access to be discovered, but Omni needs a path to upload results to AccuKnox. On an air-gapped endpoint, Omni can still scan. The results reach the console only through an approved transfer process.
Package scanning. Omni does not search for a fixed list of AI product names. It inventories every package on the scanned host, image or container, across language ecosystems and OS package managers. For each package it records the name, version, known vulnerabilities and location.
AccuKnox then compares those packages against its AI/ML classification rules, so AI inside a custom application still appears. A workload that bundles a model-serving runtime is an AI Inference Engine, even inside a custom wrapper. A workload that bundles a vendor model client is an AI SDK.
Agentic runtimes. Agentic AI runtimes install like any other package, so the same scan finds them. AccuKnox scans VMs for OpenClaw instances and reports each one on the Unmanaged tab with its parent host, version and vulnerability data.
Kubernetes¶
The in-cluster scanner does the same job as Omni. It walks nodes and namespaces, reads container images and the workloads scheduled on them, and maps each AI component to its parent workload.
Cloud Accounts¶
After you onboard a cloud account, AccuKnox reads it through a read-only API. For each AI asset it records normalized metadata, inbound connectivity and exposure, and the services the asset connects to. The pipeline view traces those connections, so a model endpoint appears with its subscription, resource group and services.
The same path finds managed AI agents from Microsoft Copilot Studio, Microsoft 365 Agents, Azure AI Foundry, AWS Bedrock AgentCore and AWS Bedrock Agent. Each agent shows its source cloud, deployment status and finding counts. The detail pane shows memory configuration, IAM role and attached knowledge bases. See AI App Inventory.
See the Managed tab, the discovery flow and the pipeline graph
The Managed tab groups cloud-discovered assets into Models, Datasets, and Computes, filterable by category, cloud type, and scan status.
The pipeline graph shows a model endpoint with the subscription, resource group, and services it is reachable through.
Browser¶
The AccuKnox browser plugin detects access to known GenAI services such as ChatGPT, Claude, Gemini and Copilot. It records the user identity, timestamp and accessed domain. You get audit evidence and policy violation detection for AI use that installs nothing on the endpoint.
Onboarding¶
Each guide covers installation, verification and troubleshooting.
| Target | How the scan runs | Guide |
|---|---|---|
| Linux VM | Daily, through the omni.timer systemd timer. Supports air-gapped install. |
Agent-Based VM Scanning for Linux |
| Windows endpoint | Through the AccuKnox Omni Vuln Scan scheduled task. Supports air-gapped install. |
Agent-Based VM Scanning for Windows |
| macOS endpoint | Daily, through the com.accuknox.omni launchd job. Online install only. |
Agent-Based Scanning for macOS |
| Kubernetes | The in-cluster scanner reads container images and the workloads that run them. | In-cluster container image scanning |
| Cloud accounts | A read-only API connection reads the onboarded account. | AWS, Azure, GCP |
Test Discovery¶
AccuKnox tested endpoint discovery on a Linux VM, a Windows endpoint and a Mac, with one Omni scan on each. Every tool appeared on the Unmanaged tab, mapped to the expected endpoint and artifact label.
| Endpoint | AI tools found in one scan |
|---|---|
| Linux VM (Ubuntu) | JunieGitHub CopilotOpenCodeCodyBLACKBOX AICursor |
| Windows | Codex CLIChatGPT desktop appClineAnythingLLMTabnineGitHub Copilot |
| macOS | Gemini CLIKiroContinueCodex CLIGitHub Copilotnpm: @google/gemini-clinpm: @github/copilot |
The tests cover the three ways a developer installs an AI tool on an endpoint:
- CLI coding agents run in a terminal with the developer's shell access. Tested with Codex CLI on Windows, Gemini CLI on macOS and OpenCode on Linux.
- Desktop AI apps install as standalone applications. Tested with the ChatGPT desktop app on Windows and Kiro on macOS.
- IDE extensions install inside an editor. Tested with Cline and Continue in Visual Studio Code.
See the scan results on each operating system
Six AI coding agents found on one Ubuntu VM, each with its version and license. None had to be running.
One Windows endpoint shows a CLI agent (Codex CLI), a desktop app (ChatGPT) and an IDE extension (Cline) in the same AI Agent list.
Hostnames and the tenant name are redacted in every screenshot. The onboarding guides show each test in two shots: the tool installed on the endpoint, then the same tool on the Unmanaged tab.
Repeat the test on your own endpoint
- Install an AI tool on a test endpoint, such as Codex CLI, the ChatGPT desktop app or the Cline extension in Visual Studio Code.
- Confirm that the tool runs on the endpoint.
- Install Omni with your artifact endpoint, tenant ID, artifact label and Artifact API token. Use the guide for the operating system from Onboarding.
- Let the first scan finish. Check the scan log for errors.
- Open AI/ML Security → Assets → Unmanaged in the AccuKnox console.
- Find the tool and confirm that it lists the expected endpoint and artifact label.
You do not need to sign in to the AI tool or send it a prompt. An installed tool is enough for discovery.
Limits¶
These limits apply to endpoint discovery.
- Usage stays invisible. Discovery confirms installation evidence. It does not record who ran a tool, when, or what data the tool sent.
- Only supported tools appear. Coverage depends on the operating system, the Omni version, the detection rules and the evidence the install leaves on disk.
- Results need a reporting path. An endpoint that cannot reach the AccuKnox artifact endpoint scans locally. Its results reach the console only through an approved transfer process.







