Quick Start
Three commands. Three minutes. Your AI agent learns your project’s standards automatically.
Install APM
Section titled “Install APM”macOS / Linux:
curl -sSL https://aka.ms/apm-unix | shWindows (PowerShell):
irm https://aka.ms/apm-windows | iexVerify it worked:
apm --versionFor Homebrew (macOS/Linux), Scoop (Windows), pip, or manual install, see the Installation guide.
Start a project
Section titled “Start a project”Create a new project:
apm init my-project && cd my-projectOr initialize inside an existing repository:
cd your-repoapm initEither way, APM creates an apm.yml manifest — your dependency file for AI agent configuration:
name: my-projectversion: 1.0.0dependencies: apm: []Install a package
Section titled “Install a package”This is where it gets interesting. Install a package and watch what happens:
apm install microsoft/apm-sample-package#v1.0.0APM downloads the package, resolves its dependencies, and deploys files directly into the directories your AI tools already watch:
my-project/ apm.yml apm.lock.yaml apm_modules/ microsoft/ apm-sample-package/ .github/ instructions/ apm-sample-package/ design-standards.instructions.md prompts/ apm-sample-package/ accessibility-audit.prompt.md design-review.prompt.md .claude/ commands/ apm-sample-package/ ... .cursor/ rules/ design-standards.mdc agents/ design-reviewer.md .opencode/ agents/ design-reviewer.md commands/ design-review.mdThree things happened:
- The package was downloaded into
apm_modules/(likenode_modules/). - Instructions, agents, and skills were deployed to
.github/,.claude/,.cursor/, and.opencode/(when present) — the native directories that GitHub Copilot, Claude, Cursor, and OpenCode read from. - A lockfile (
apm.lock.yaml) was created, pinning the exact commit so every team member gets identical configuration.
Your apm.yml now tracks the dependency:
name: my-projectversion: 1.0.0dependencies: apm: - microsoft/apm-sample-package#v1.0.0That’s it
Section titled “That’s it”Open your editor. GitHub Copilot, Claude, Cursor, and OpenCode pick up the new context immediately — no extra configuration, no compile step, no restart. The agent now knows your project’s design standards, can run your prompt templates, and follows the conventions defined in the package.
This is the core idea: packages define what your AI agent knows, and apm install puts that knowledge exactly where your tools expect it.
Day-to-day workflow
Section titled “Day-to-day workflow”When a new developer joins your team:
git clone <your-repo>cd <your-repo>apm installThe lockfile ensures everyone gets the same agent configuration. Same as npm install after cloning a Node project.
Add more packages as your project evolves:
apm install github/awesome-copilot/skills/review-and-refactorWhat to commit:
apm.ymlandapm.lock.yaml— version-controlled, shared with the team..github/deployed files (prompts/,agents/,instructions/,skills/,hooks/) — commit them so every contributor (and Copilot on github.com) gets agent context immediately after cloning, before they runapm installto sync and regenerate files..claude/deployed files (agents/,commands/,skills/,hooks/) — same rationale for Claude Code users: committed files give instant context on clone, whileapm installremains the way to refresh them fromapm.yml..cursor/deployed files (rules/,agents/,skills/,hooks/) — same rationale for Cursor users.apm_modules/— add to.gitignore. Rebuilt from the lockfile on install.
Next steps
Section titled “Next steps”- Your First Package — create and share your own APM package.
- Dependency management — version pinning, updates, and transitive resolution.
- CLI reference — full list of commands and options.