> For the complete documentation index, see [llms.txt](https://docs.stepsecurity.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.stepsecurity.io/developer-machines/ide-and-ai-agents.md).

# IDE & AI Agents

A developer's setup is no longer one editor. It is a set of coding tools, the extensions installed into them, the plugins added to AI agents, the MCP servers those agents are wired to, and the skills they load at runtime. Each layer is installed separately, updates on its own schedule, and runs with the developer's own privileges.

This section gives you an inventory of every layer across your fleet, reported by the Dev Machine Guard agent on each device, so you can see what your developers are actually running rather than what was approved. It also includes Extension Advisor, which checks an extension before anyone installs it.

#### What's in this section

| Page                                                                            | What it shows                                                                                                                                                                        |
| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Coding Tools](/developer-machines/ide-and-ai-agents/coding-tools.md)           | The AI coding agents, CLI tools, IDEs, and local AI runtimes installed across your fleet, on how many devices, and at which versions.                                                |
| [IDE Extensions](/developer-machines/ide-and-ai-agents/ide-extensions.md)       | The extensions installed in VS Code, Cursor, Windsurf, JetBrains IDEs, and other editors, with a security score for each and flags for compromised or typosquatted items.            |
| [Extension Advisor](/developer-machines/ide-and-ai-agents/extension-advisor.md) | A security score for any extension, looked up by its ID before it is installed, whether or not anyone in your organization has it.                                                   |
| [Agent Plugins](/developer-machines/ide-and-ai-agents/agent-plugins.md)         | The Claude Code and Codex plugins installed across your fleet, which marketplace each came from, whether it is enabled, and the skills, commands, and MCP servers it brings with it. |
| [MCP Servers](/developer-machines/ide-and-ai-agents/mcp-servers.md)             | The MCP servers your developers' agents are configured to call, how each is invoked, and which tool or plugin registered it.                                                         |
| [Agent Skills](/developer-machines/ide-and-ai-agents/agent-skills.md)           | The skills your developers' agents can load, where each came from, whether it ships executable content, and whether every device runs the same version.                              |

{% hint style="info" %}
"Plugin" means two different things in this section. JetBrains IDE plugins are editor extensions, so they appear on **IDE Extensions** with the kind `Plugin`. Claude Code and Codex plugins extend an AI agent, so they appear on **Agent Plugins**.
{% endhint %}

### How the layers fit together

The inventories describe one stack, and most useful questions cross between them.

A developer installs Cursor and Claude Code, which appear under **Coding Tools**. They add extensions to Cursor, which appear under **IDE Extensions**. They configure an MCP server in Cursor so its agent can reach a ticketing system, and that server appears under **MCP Servers** with Cursor as its config source. Then they install a plugin into Claude Code from a marketplace. That plugin appears under **Agent Plugins**, and the skill and MCP server it brings appear under **Agent Skills** and **MCP Servers**, attributed to the plugin rather than to anything the developer configured by hand.

Every layer can run code as the developer. An extension runs inside the IDE. A single plugin install can add skills, commands, hooks, and MCP servers at once. An MCP server is either a process the agent starts on the device or a remote service the agent sends data to. A skill can ship scripts, register hooks, and embed shell commands. So the question that matters is rarely "which AI tools do we use". It is what each tool has been extended with, and where that came from.

### Investigating across the stack

| If you need to know                                         | Start on                                                                                                | Then                                                                                                                                                             |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Which devices run an AI agent that was compromised upstream | **Coding Tools**, searched for the agent, with the row expanded to show each device's installed version | Check those devices on [Credentials](/developer-machines/credentials.md) for cloud and registry credentials the agent could reach                                |
| Where a malicious or unexpected MCP server came from        | **MCP Servers**, where the config source names the tool or plugin that registered it                    | If a plugin supplied it, open the plugin on **Agent Plugins** to see its marketplace and every device that has it                                                |
| How far a compromised plugin or marketplace has spread      | **Agent Plugins**, searched by plugin or publisher                                                      | Check enablement and installations to separate devices where it is active from devices where it is installed but disabled, then review the components it brought |
| Whether a shared skill has drifted                          | **Agent Skills**, where content hashes show when devices run different versions                         | Open the skill and group its devices **By content hash** to see which devices hold which version                                                                 |
| Whether an extension is safe to allow                       | **Extension Advisor**, by exact extension ID                                                            | Use its link to **IDE Extensions** to see whether the extension is already installed in your fleet                                                               |

#### Where to start

* **Take stock of what is in use.** Open [Coding Tools](/developer-machines/ide-and-ai-agents/coding-tools.md) and filter by category. Most organizations find agents they did not know were deployed.
* **Look for known-bad extensions.** [IDE Extensions](/developer-machines/ide-and-ai-agents/ide-extensions.md) flags compromised and typosquatted items directly, which is the fastest route to something actionable.
* **See what your agents have been extended with.** [Agent Plugins](/developer-machines/ide-and-ai-agents/agent-plugins.md) shows every plugin and its source. Plugins installed from local directories or unlisted URLs are worth reviewing first.
* **Review what the agents can reach.** [MCP Servers](/developer-machines/ide-and-ai-agents/mcp-servers.md) shows every configured integration. Remote servers deserve a closer look than local ones, because they receive data from the agent.
* **Check an extension before it is installed.** [Extension Advisor](/developer-machines/ide-and-ai-agents/extension-advisor.md) scores any extension by its ID.

#### Enforcing decisions

The pages in this section report what is installed. To control what developers can install, use [Device Policy](/developer-machines/device-policy.md). IDE extension policies for VS Code enforce an allow-list or block-list of extensions and versions, and can point devices at a private extension marketplace. See [Policies](/developer-machines/device-policy/policies.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.stepsecurity.io/developer-machines/ide-and-ai-agents.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
