microsoft/apm

Agent Package Manager

APM – 代理包管理器

它是什么

  • 一个专为AI驱动的编码代理(Copilot、Claude、Gemini等)设计的开源依赖管理器。
  • 工作方式类似于npm或pip,但清单文件(apm.yml)列出的是代理原语:技能、提示词、插件、MCP服务器以及整个代理包。

核心理念

  1. 清单可移植 – 一个apm.yml(加上锁文件)完整描述代理的上下文。运行apm install可在任何机器上重现完全相同的设置。
  2. 默认安全 – 包会扫描隐藏的Unicode字符,内容哈希存储在apm.lock.yaml中,apm audit命令可检测漂移或受损资产。
  3. 策略治理 – 可选的apm-policy.yml允许组织白名单化来源、作用域和原语,并与GitHub规则集集成以进行CI强制。

主要特性

  • 传递依赖解析 – 包可以依赖其他包;锁文件固定整个依赖树。
  • 插件创作 – 构建具有正确依赖跟踪的Copilot/Claude/Cursor插件,并导出标准的plugin.json。
  • 市场支持 – 通过单条命令从精选注册表安装捆绑包。
  • 打包 – apm pack创建用于分发的zip或独立插件。
  • CI/CD集成 – 微软维护的GitHub Action(microsoft/apm-action)自动运行审计和锁文件检查。
  • SBOM导出 – 直接从锁文件生成CycloneDX或SPDX清单。
  • MCP(模型上下文协议)服务器处理 – 在清单中声明远程上下文服务器;安装时强制显式信任。

快速开始

# macOS(Homebrew)
brew install apm

# Linux/macOS(脚本)
curl -sSL https://aka.ms/apm-unix | sh

# Windows(PowerShell)
irm https://aka.ms/apm-windows | iex

其他选项:pip install apm-cli、WinGet或Scoop。

典型工作流

# apm.yml – 放置在您的仓库中
name: my‑project
version: 1.0.0
dependencies:
  apm:
    - anthropics/skills/skills/frontend-design   # 技能集合
    - github/awesome-copilot/plugins/context-engineering
    - microsoft/apm-sample-package#v1.0.0
  mcp:
    - name: io.github.github/github-mcp-server
      transport: http
# 克隆仓库后
apm install          # 解析、验证并写入代理上下文
apm compile -t copilot   # 生成.github/copilot‑instructions.md
apm audit               # 检查漂移或安全问题

谁可能使用它

  • 构建需要可复现技能集和提示词的AI编码助手的团队。
  • 希望围绕LLM代理可执行内容强制安全和策略的企业。
  • 需要正式包格式和依赖图的插件开发者。
  • 需要在部署前验证代理配置的CI流水线。

项目健康

  • 由微软贡献者积极维护(Daniel Meppiel、Sergio Sisternes)。
  • 提供文档站点、快速入门指南和路线图。
  • 发布为macOS、Linux和Windows的原生二进制文件,以及包管理器(Homebrew、pip、WinGet、Scoop)。
  • 社区渠道:讨论区、GitHub Action和路线图项目。

所有信息直接取自仓库的README。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目