Skip to content

Add dedicated APM Dependencies reference page#20674

Merged
pelikhan merged 2 commits intomainfrom
copilot/update-apm-dependencies-documentation
Mar 12, 2026
Merged

Add dedicated APM Dependencies reference page#20674
pelikhan merged 2 commits intomainfrom
copilot/update-apm-dependencies-documentation

Conversation

Copy link
Contributor

Copilot AI commented Mar 12, 2026

The dependencies: section in the frontmatter reference undersold APM: no link to the docs site, no explanation of the reproducibility story, missing plugin support, no version-pinning examples, and no mention of the underlying apm pack/apm unpack commands.

Changes

New page: docs/src/content/docs/reference/dependencies.md

Full APM dependencies reference (sidebar order 330) covering:

  • APM docs linkhttps://microsoft.github.io/apm/ in the opening paragraph
  • Reproducibility & governanceapm.lock pins packages to exact commit SHAs; lock diffs are PR-reviewable; links to the APM governance guide
  • Plugins — primitive list now includes plugins (Claude plugin.json format)
  • Expanded package reference formats tableowner/repo, owner/repo/path, owner/repo#ref
  • Full examples block — full package, individual primitive, plugin, version-pinned (#v2.0, #main), and git URL with sub-path/ref:
dependencies:
  - microsoft/apm-sample-package
  - github/awesome-copilot/plugins/context-engineering
  - microsoft/apm-sample-package#v2.0
  - git: https://github.com/acme/coding-standards.git
    path: instructions/security
    ref: v2.0
  • apm pack / apm unpack named explicitly in the compilation behavior section, with a link to the pack and distribute guide for local debugging
  • Reference table collecting all relevant URLs (APM docs, governance, pack guide, gh-aw integration, apm-action)

Updated: frontmatter.md

The dependencies: entry is now a concise summary with a version-pinning example, pointing to the new dedicated page for full details.


📱 Kick off Copilot coding agent tasks wherever you are with GitHub Mobile, available on iOS and Android.

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Copilot AI changed the title [WIP] Update dependencies documentation to improve APM guidance Add dedicated APM Dependencies reference page Mar 12, 2026
@pelikhan pelikhan marked this pull request as ready for review March 12, 2026 13:50
Copilot AI review requested due to automatic review settings March 12, 2026 13:50
@pelikhan pelikhan merged commit 605eefa into main Mar 12, 2026
59 checks passed
@pelikhan pelikhan deleted the copilot/update-apm-dependencies-documentation branch March 12, 2026 13:50
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a dedicated documentation page for APM dependency management and updates the frontmatter reference to link to it, aiming to better explain formats, reproducibility, and pack/unpack behavior.

Changes:

  • Added a new APM Dependencies reference page (reference/dependencies.md) with formats, examples, and related links.
  • Updated the dependencies: section in the frontmatter reference to be a shorter summary and to link to the dedicated page.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
docs/src/content/docs/reference/frontmatter.md Replaces the detailed dependencies: documentation with a concise description, adds a version-pinning example, and links to the new dependencies reference page.
docs/src/content/docs/reference/dependencies.md New standalone reference page describing dependencies: formats, examples, compilation behavior, and external APM resources.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

You can also share your feedback on Copilot code review. Take the survey.

Comment on lines +154 to 161
Specifies [APM (Agent Package Manager)](https://microsoft.github.io/apm/) packages to install before workflow execution. APM manages AI agent primitives such as skills, prompts, instructions, agents, hooks, and plugins (including the Claude `plugin.json` format). When present, the compiler runs `apm pack` in the activation job and `apm unpack` in the agent job for faster, deterministic startup.

```yaml wrap
dependencies:
- microsoft/apm-sample-package
- github/awesome-copilot/skills/review-and-refactor
- anthropics/skills/skills/frontend-design
- microsoft/apm-sample-package#v2.0 # version-pinned
```
Copy link

Copilot AI Mar 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The docs now show version pinning via owner/repo#ref (e.g. microsoft/apm-sample-package#v2.0), but the compiler’s frontmatter JSON schema currently rejects # in dependencies entries (see pkg/parser/schemas/main_workflow_schema.json where dependencies item pattern is ^[a-zA-Z0-9_-]+/[a-zA-Z0-9_./-]+$). As written, users following this example will fail schema validation at compile time.

Either remove the #ref example/claims here, or update the schema (and any related validation/docs) to explicitly allow #ref for dependency entries.

Copilot uses AI. Check for mistakes.
Comment on lines +41 to +46
| Format | Description |
|--------|-------------|
| `owner/repo` | Full APM package |
| `owner/repo/path/to/primitive` | Individual primitive (skill, instruction, plugin, etc.) from a repository |
| `owner/repo#ref` | Package pinned to a tag, branch, or commit SHA |

Copy link

Copilot AI Mar 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This page documents owner/repo#ref dependency references, but the current frontmatter schema disallows # in dependencies entries (see pkg/parser/schemas/main_workflow_schema.jsondependencies item pattern: ^[a-zA-Z0-9_-]+/[a-zA-Z0-9_./-]+$). Users following this format will hit a schema validation error during compilation.

Either adjust the docs to match the schema (no #ref), or update the schema (and ideally add tests) to permit optional #ref suffixes for dependency strings.

Copilot uses AI. Check for mistakes.
Comment on lines +61 to +64
# Git URL with sub-path and ref (object format)
- git: https://github.com/acme/coding-standards.git
path: instructions/security
ref: v2.0
Copy link

Copilot AI Mar 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The example shows a dependencies entry as an object (- git: … path: … ref: …), but gh-aw only extracts dependency entries as strings (see extractAPMDependenciesFromFrontmatter in pkg/workflow/frontmatter_extraction_metadata.go) and renders them as - <string> lines for microsoft/apm-action (see GenerateAPMPackStep in pkg/workflow/apm_dependencies.go). This object-form per-item reference won’t compile/work.

Either remove this example, or extend the schema + frontmatter extraction + pack-step generation to support structured dependency objects and map them to whatever input format apm-action expects.

Suggested change
# Git URL with sub-path and ref (object format)
- git: https://github.com/acme/coding-standards.git
path: instructions/security
ref: v2.0

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

The dependencies: documentation undersells APM and lacks guidance for users

3 participants