If you use AI coding assistants, Microsoft APM is a new open-source tool that installs your agent’s skills, prompts and MCP servers from one file, much like npm does for code. Run apm install and your setup is rebuilt the same way on every machine.
It fixes a quiet mess: agent setups that live in scattered folders, copied prompts and half-remembered settings.
Here are the quick facts:
- What it is: an MIT-licensed dependency manager for AI agents, hosted in the microsoft/apm repository on GitHub.
- Announced: November 7, 2026, according to a DEV Community news digest.
- Works with: GitHub Copilot, Claude Code, Cursor, Codex, Gemini, Windsurf, Kiro, OpenCode and Grok Build.
- Cost: free to install, with Homebrew, pip, WinGet and Scoop options.
The date comes from a secondary source. The GitHub page itself shows no release date, so treat Nov. 7 as reported, not official.
Why Microsoft APM exists: agent setups are a mess
Think about how you set up an AI coding assistant today. You add a skill here, an instruction file there, maybe a couple of MCP servers for GitHub or your database. Then you do it all again on your laptop, your work PC and a teammate’s machine.
Nothing records what you installed or which version. When a teammate gets different results from the same prompt, you can’t easily tell why.
APM treats those pieces like software dependencies. You declare them, install them, pin them and audit them. We saw a similar worry in our piece on the Postman Claude Code plugin that appeared without asking, where a plugin showed up with no clear record of how it got there.
How Microsoft APM works in three steps
The workflow will feel familiar if you have ever used a package manager. There is one manifest, one install command and one lockfile.
First, you install the tool. On a Mac, brew install apm works. On Windows, you can use winget install --id Microsoft.APM --exact --source winget, and pip install apm-cli works anywhere with Python 3.10 or newer.
Second, you describe your setup in apm.yml. The project’s own example lists a target assistant, a few skills pulled from GitHub repos, and an MCP server such as the GitHub one.
Third, you run apm install. APM fetches everything and writes a lockfile, apm.lock.yaml, so the next install matches exactly. Its README shows a first test with apm install microsoft/apm-sample-package#v1.0.0.
Because it builds on the AGENTS.md, Agent Skills and MCP standards, the same manifest can feed different assistants. That is the real time-saver if you switch tools often.
The security features worth knowing about
Installing instructions that an AI will obey is a bit like running a script, so the security side matters. APM leans toward “deny by default.”
- It scans installed content for hidden Unicode characters that could secretly change what an agent does.
- It blocks transitive MCP servers unless you declare them or trust them.
- The
apm auditcommand checks content on demand and flags hand-edits that drift from the lockfile. - It can export an SBOM in CycloneDX or SPDX format.
The project says the SBOM is for provenance, not a compliance guarantee. Teams can also add an apm-policy.yml file, where rules can only get stricter as they move from enterprise to org to repo, per the DEV Community summary.
APM vs. setting things up by hand
| Task | By hand | With Microsoft APM |
|---|---|---|
| Where skills and prompts live | Copied between repos and chat apps | Listed once in apm.yml |
| Reproducible installs | Hope everyone copied the same version | Lockfile pins versions and content hashes |
| Switching tools | Rewrite config for each assistant | One manifest, nine supported tools |
| Hidden-text risk | Easy to miss in a pasted prompt | Scanned for hidden Unicode on install |
| MCP servers | Added by hand, sometimes by a dependency | Transitive ones need explicit consent |
The biggest gain is not speed on day one. It is that your setup becomes something you can review, share and rebuild.
Who should try it, and who should wait
APM fits best if you work in a team, use more than one AI assistant, or keep a growing pile of skills and MCP servers. Solo users with one simple config may not need it yet.
It is also young. The repository shows about 4,200 stars and dozens of open pull requests, so expect rough edges. If you want a wider view of agent tooling, our guide to Mistral Managed Agents shows another way to run agents across platforms.
A sensible first step: test it in a throwaway project with the sample package before touching your main setup.
Frequently Asked Questions
What is Microsoft APM?
It is an open-source dependency manager for AI agents. You list skills, prompts, plugins and MCP servers in one file, and it installs them for you.
Is Microsoft APM free?
Yes. It uses the MIT license, so you can use it freely. Your AI assistant’s own subscription is separate.
Does APM work with Claude Code and GitHub Copilot?
Yes. The README lists GitHub Copilot, Claude Code, Cursor, Codex, Gemini, Windsurf, Kiro, OpenCode and Grok Build.
Is it safe to install skills with APM?
It adds real safeguards, like hidden-Unicode scans and consent for extra MCP servers. Still, you should read any skill from a source you don’t know before you trust it.
How do I update APM?
If you installed with Homebrew, use brew upgrade apm. The apm self-update command is for standalone installs.
The idea is overdue: if agents are going to run parts of your work, their setup should be as trackable as your code. Try Microsoft APM on one small project this week. If your team shares agent configs, adopt it early, because the lockfile alone will save you some confusing “works on my machine” debugging.


Leave a Reply