Skip to content
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -428,3 +428,7 @@ FodyWeavers.xsd
*.msix
*.msm
*.msp

# APM (Agent Package Manager) downloaded dependencies
apm_modules/
apm.lock.yaml
7 changes: 4 additions & 3 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,15 @@ The repo publishes plugin metadata for GitHub Copilot and Claude Code. Keep shar

**Versioned plugin manifests**:
- **GitHub Copilot** — `.github\plugin\plugin.json` is the Copilot marketplace manifest and points at the repo root.
- **Claude Code** — `.claude-plugin\plugin.json` defines the Claude Code plugin package; `.claude-plugin\marketplace.json` defines Claude Code marketplace publishing metadata.
- **Claude Code** — `.claude-plugin\plugin.json` defines the Claude Code plugin package; `.claude-plugin\marketplace.json` is the Claude Code marketplace index, generated by `apm pack` from the `marketplace:` block in `apm.yml`.
- **APM** — `apm.yml` is the Agent Package Manager manifest at the repo root. It declares the package identity, version, targets, MCP dependencies, and marketplace metadata. The `marketplace:` block in `apm.yml` is the source of truth for the APM marketplace index; `apm pack` generates `.claude-plugin/marketplace.json` from it. APM follows the existing `plugin.json` pointers to locate skills and MCP config — no separate `.apm/` directory is needed.

## Sync rules

- Event support is duplicated by design between the CLI and skill docs. When adding, removing, or renaming events, update `cli\src\config.ts`, the supported/default event guidance in `skills\microsoft-build\SKILL.md`, and affected tests/docs together.
- Treat `skills\microsoft-build\SKILL.md` as the product contract for event-session behavior. For Build, Ignite, or event-session work: default "Build" to `build-2026`, get session metadata from the live catalog through `msevents` or the endpoint, get SDK/API facts from Microsoft Learn MCP, and never invent session IDs, speakers, schedules, or links.
- Versioning gate: any meaningful `skills\microsoft-build\SKILL.md` change (agent behavior, commands/examples agents may follow, supported/default events, CLI/MCP/catalog usage, or user-facing workflow guidance) must bump both versioned plugin manifests to the same value; patch bumps are fine for guidance-only changes.
- PR review gate: GitHub Copilot/code reviewers should flag meaningful `SKILL.md` changes without synced plugin version bumps, and any plugin version drift. Typo/format-only skill edits may skip the bump only when the PR explicitly says so.
- Versioning gate: any meaningful `skills\microsoft-build\SKILL.md` change (agent behavior, commands/examples agents may follow, supported/default events, CLI/MCP/catalog usage, or user-facing workflow guidance) must bump all versioned plugin manifests (`.github\plugin\plugin.json`, `.claude-plugin\plugin.json`, and `apm.yml` including its `marketplace.packages[].version`) to the same value; patch bumps are fine for guidance-only changes.
- PR review gate: GitHub Copilot/code reviewers should flag meaningful `SKILL.md` changes without synced plugin version bumps, and any plugin version drift across the three manifests. Typo/format-only skill edits may skip the bump only when the PR explicitly says so.
- Keep README install/client guidance aligned with plugin manifest, skill, MCP, or CLI behavior changes.

## CLI
Expand Down
30 changes: 30 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ A [GitHub Copilot CLI](https://github.com/features/copilot/cli/) skill that conn
```
/plugin install microsoft/Build-CLI
```
Or install globally with [APM](https://github.com/microsoft/apm):
Comment thread
sergio-sisternes-epam marked this conversation as resolved.
Comment thread
sergio-sisternes-epam marked this conversation as resolved.
```
apm install -g microsoft/Build-CLI#v1.0.5 --target claude,copilot
```
2. Restart your Copilot CLI session:
```
/restart
Expand Down Expand Up @@ -69,6 +73,32 @@ Session results are a starting point. For broad topics, ask the agent to refine
| VS Code | Open Extensions (Ctrl+Shift+X), search `@agentPlugins microsoft-events`, and install |
| Visual Studio 2026 | Copy `skills/microsoft-build/` to a [supported skill location](https://learn.microsoft.com/visualstudio/ide/copilot-agent-skills) |
| Claude Code | `/plugin marketplace add microsoft/Build-CLI` then `/plugin install microsoft-events@microsoft-events-marketplace` |
| APM | See [Install with APM](#install-with-apm) below |

## Install with APM

[APM (Agent Package Manager)](https://github.com/microsoft/apm) is to AI agent skills what npm is to JavaScript packages — it lets you install, version, and share reusable agent instructions, skills, and MCP configurations across projects with a single command.

### Global install (all projects)

Comment thread
sergio-sisternes-epam marked this conversation as resolved.
```bash
# Both Claude Code and GitHub Copilot
apm install -g microsoft/Build-CLI#v1.0.5 --target claude,copilot

# Claude Code only
apm install -g microsoft/Build-CLI#v1.0.5 --target claude

# GitHub Copilot only
apm install -g microsoft/Build-CLI#v1.0.5 --target copilot
```

### Verify, update, and uninstall

```bash
apm deps list -g # List globally installed packages
apm outdated -g # Check for updates
apm uninstall -g microsoft/Build-CLI # Remove
```

## Scope and Limitations

Expand Down
33 changes: 33 additions & 0 deletions apm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: microsoft-events
version: 1.0.5
Comment thread
sergio-sisternes-epam marked this conversation as resolved.
description: >-
Connect your project to Microsoft Build and Ignite sessions — discover
relevant talks, explore what's new for your stack, and plan next steps
from your development environment.
author: Microsoft
license: Apache-2.0
targets: [copilot, claude]

dependencies:
mcp:
- name: microsoft-learn
registry: false
transport: http
url: "https://learn.microsoft.com/api/mcp"

marketplace:
owner:
name: Microsoft
url: https://github.com/microsoft
metadata:
homepage: https://github.com/microsoft/Build-CLI
build:
tagPattern: "v{version}"
packages:
- name: microsoft-events
description: >-
Connect your project to Microsoft Build and Ignite sessions — discover
relevant talks, explore what's new for your stack, and plan next steps
from your development environment.
source: ./
version: "1.0.5" # keep in sync with top-level version