apm README

The project's README from github.com/microsoft/apm. As one markdown file: README.md.

APM – Agent Package Manager

An open-source, community-driven dependency manager for AI agents.

Think package.json, requirements.txt, or Cargo.toml — but for AI agent configuration.

GitHub Copilot | Claude Code | Grok Build | Cursor | OpenCode | Codex | Gemini | Windsurf | Kiro

Documentation · Quick Start · CLI Reference · v0.29 Roadmap


Portable by manifest. Secure by default. Governed by policy. One file describes every agent's context; one command reproduces it everywhere; one policy controls what an org will allow.

Why APM

AI coding agents need context to be useful — standards, prompts, skills, plugins — but today every developer sets this up manually. Nothing is portable nor reproducible. There's no manifest for it.

APM fixes this. Declare your project's agentic dependencies once in apm.yml, and every developer who clones your repo gets a fully configured agent setup in seconds — with transitive dependency resolution, just like npm or pip. It's also the first tool that lets you author plugins with a real dependency manager and export standard plugin.json packages.

# apm.yml — ships with your project
name: your-project
version: 1.0.0
dependencies:
  apm:
    # Skills from any repository
    - anthropics/skills/skills/frontend-design
    # Plugins
    - github/awesome-copilot/plugins/context-engineering
    # Specific agent primitives from any repository
    - github/awesome-copilot/agents/api-architect.agent.md
    # A full APM package with instructions, skills, prompts, hooks...
    - microsoft/apm-sample-package#v1.0.0
  mcp:
    # MCP servers -- installed into every detected client
    - name: io.github.github/github-mcp-server
      transport: http   # MCP transport name, not URL scheme -- connects over HTTPS
git clone <org/repo> && cd <repo>
apm install    # every agent is configured

Coming from npx skills add? Drop-in:

apm install vercel-labs/agent-skills                            # whole bundle, like npx skills add
apm install vercel-labs/agent-skills --skill deploy-to-vercel   # one skill, persisted to apm.yml

Same install gesture. You also get a manifest, lockfile, and reproducibility.

Zero-config Copilot:

apm compile -t copilot   # writes .github/copilot-instructions.md

One command, no configuration -- VS Code and GitHub Copilot read the file automatically. APM dogfoods this target on its own repository.

The three promises

1. Portable by manifest

One apm.yml describes every primitive your agents need — instructions, skills, prompts, agents, hooks, plugins, MCP servers — and apm install reproduces the exact same setup across every client on every machine. apm.lock.yaml pins the resolved tree the way package-lock.json does for npm.

2. Secure by default

Agent context is executable in effect — a prompt is a program for an LLM. APM treats it that way. Every install scans for hidden Unicode that can hijack agent behavior; the lockfile pins integrity hashes; transitive MCP servers are gated by trust prompts.

3. Governed by policy

apm-policy.yml lets a security team say "these are the only sources, scopes, and primitives this org will allow" and have every apm install enforce it — with tighten-only inheritance from enterprise to org to repo, a published bypass contract, and audit-mode CI gates.

apm-policy.yml governs what gets installed; your agent harness governs what runs. The two planes do not overlap.

Get Started

macOS with Homebrew

brew install apm

No custom tap is required. Homebrew manages installation and updates: use brew upgrade apm, not apm self-update.

Linux / macOS without Homebrew

curl -sSL https://aka.ms/apm-unix | sh

Windows

irm https://aka.ms/apm-windows | iex

Native release binaries are published for macOS, Linux, and Windows x86_64. For standalone installations, apm self-update reuses the matching platform installer. You do not need Homebrew to use APM.

Other install methods: pip, WinGet, and Scoop

Linux / macOS

# pip (Python 3.10+)
pip install apm-cli

Windows

# WinGet
winget install --id Microsoft.APM --exact --source winget
# Scoop
scoop bucket add apm https://github.com/microsoft/scoop-apm
scoop install apm
# pip
pip install apm-cli

Already using the Microsoft Homebrew tap? See the migration guide.

Then start adding packages:

apm install microsoft/apm-sample-package#v1.0.0

Or install from a marketplace:

apm marketplace add github/awesome-copilot
apm install azure-cloud-development@awesome-copilot

Or add an MCP server (wired into Copilot, Claude, Cursor, Codex, OpenCode, Gemini, Windsurf, and Kiro):

apm install --mcp io.github.github/github-mcp-server --transport http   # connects over HTTPS

See the Getting Started guide for the full walkthrough.

Works with agentrc

agentrc analyzes your codebase and generates tailored agent instructions — architecture, conventions, build commands — from real code, not templates.

Use agentrc to author high-quality instructions, then package them with APM to share across your org. The .instructions.md format is shared by both tools — no conversion needed when moving instructions into APM packages.

Community

Created by @danielmeppiel. Maintained by @danielmeppiel and @sergio-sisternes-epam.


Built on open standards: AGENTS.md · Agent Skills · MCP

Trademarks

This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.

apm (microsoft/apm)

Searching Database…

4K ·GitHub
这是什么?APM(Agent Package Manager)是一款开源的 AI 编程代理上下文依赖管理器——就像 package.json 或 Cargo.toml,但管理的是指令、技能、提示词和 MCP 服务器等代理配置。
这是 CLI 工具,还是导入到我代码里的东西?它是你在仓库中运行的独立 CLI——你在 apm.yml 中声明依赖,运行 apm install 即可复现代理配置,没有任何要导入的东西。
怎么安装并开始使用?在 macOS 上通过 Homebrew 安装,获取 macOS/Linux/Windows 的原生二进制,或使用 pip、WinGet 或 Scoop,然后运行 apm install 拉取项目声明的代理包。
我需要先装 Homebrew 或 Python 吗?不需要——Homebrew 只是一种安装途径,pip 是另一种,独立的原生二进制两者都不需要。
组织策略能控制我的代理实际能运行什么吗?不能——apm-policy.yml 只管安装到磁盘上的内容;代理随后运行什么仍取决于你的代理运行框架(harness),这两层是有意分开的。
它能运行在哪些操作系统上?为 macOS、Linux 和 Windows(x86-64)发布了原生二进制版本。
APM 能配合哪些编程代理使用?一份 apm.yml 清单即可一次性把配置接入 GitHub Copilot、Claude Code、Grok Build、Cursor、OpenCode、Codex、Gemini、Windsurf 和 Kiro。
agentrc 是什么?它与 APM 有什么关系?agentrc 分析你的代码库,从真实代码生成量身定制的代理指令,然后你可以用 APM 打包并分发这些指令。
apm audit 实际检查什么?它从零重建你的代理上下文,并与你的工作树做 diff 以发现手动改动,同时运行与 apm install 相同的内容安全扫描。
能为已安装的包导出软件物料清单(SBOM)吗?可以——apm lock export 直接从锁文件生成 CycloneDX 或 SPDX 输出,用于来源追踪。
Creator
microsoft
Size
45.2 MB
Stars
4K
Age
1y
Commits · 90 Days