APM is a package manager for AI-agent configuration, using a manifest to declare reusable instructions, skills, prompts, agents, hooks, plugins, and MCP components. Development teams use it to reproduce agent setups across projects and control their dependencies through policies and lockfiles, while the catalogue contains many of these agent components.
Borrowing it
Nothing to install: this file belongs to microsoft/apm. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/microsoft/apm/main/.agents/skills/docs-impact-localizer/SKILL.mdgit clone --depth 1 https://github.com/microsoft/apmWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/microsoft/apm/docs-impact-localizer)<a href="https://agentmods.dev/skills/microsoft/apm/docs-impact-localizer"><img src="https://agentmods.dev/badge/skills/microsoft/apm/docs-impact-localizer/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/microsoft/apm/docs-impact-localizer"><img src="https://agentmods.dev/badge/skills/microsoft/apm/docs-impact-localizer.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00078 | $0.01041 |
| Opus 5.5 | $0.00031 | $0.00416 |
| Sonnet 5.5 | $0.00016 | $0.00208 |
| Haiku 4.5 | $0.00008 | $0.00104 |
Grade A, and why
docs-impact-localizer scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.
docs-impact-localizer
Single responsibility: given a list of candidate pages from the classifier, produce a per-page task brief the docs-sync panel can fan out against.
You are NOT the verdict-maker (classifier owns that). You are NOT the writer (doc-writer owns that). You are the work planner.
When to invoke
The docs-sync orchestrator invokes you ONLY when the classifier
returned verdict: in_place. For no_change you don't run.
For structural the architect runs first; you may run after, scoped
to existing pages that need amendment.
Inputs
scope_pages[]from the classifier- The PR diff (
gh pr diff $PR) .apm/docs-index.yml(per-page metadata)- Optional: the structural architect's TOC delta (if you run after the architect on a structural verdict)
Step 1: load page contents
For each path in scope_pages[], read the file. Pages are typically
3-10 KB; total budget for this step is bounded by the candidate
count (the classifier should have kept it to <= 6).
Step 2: narrow scope inside each page
For each page, identify the SPECIFIC section(s) that need to change:
- Read the page's H2/H3 structure
- For each diff symbol from the classifier output, find the section most directly documenting it
- Capture line ranges:
lines 120-145notthe whole page
The output is a sections_to_edit[] per page, where each entry is:
page: docs/src/content/docs/consumer/install.md
sections_to_edit:
- section: "## From Git"
line_range: [120, 145]
diff_symbol: "--no-cache flag"
edit_kind: add | modify | remove
rationale: "the new --no-cache flag is documented nowhere; section already lists other flags so this is the natural home"
Step 3: detect cross-page conflicts
If two pages document the same symbol and the diff changes the symbol's behaviour, BOTH pages need an edit AND they must stay consistent. Flag this in the brief so the CDO synthesizer knows to cross-check coherence between the two redrafts:
cross_page_constraint:
pages: [path1, path2]
shared_symbol: "apm install --target"
consistency_required: "both pages must reflect the same default value"
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 125 lines · 78 tokens per session scan A 1a46fb1da757
docs-impact-localizer is a skill published in the GitHub repository microsoft/apm (4,133 stars, last pushed yesterday), licensed MIT. It adds 78 tokens to every session and 1,041 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
chinese-traditional-conversion
A language-conversion skill that changes Simplified Chinese into Traditional Chinese used in Taiwan. It also adapts vocabulary and phrasing for Taiwan.
chinese-content-writing-guideline
Language-specific guidelines for producing high-quality Traditional Chinese (zh-TW) content: script, full-width punctuation, spacing, forms of address, grammar constraints, and Taiwan terminology. Includes the no-calque rule against literal translations of English phrasal verbs such as 折入 for fold in. Use when writing…
code-review-csharp
Perform structured code reviews of C# source code covering naming conventions, performance, security, readability, and .NET best practices. Trigger phrases include "review this C# code", "check my C# for best practices", "analyze this C# class", "find issues in my C# code".
i18n-helper
A helper for adding internationalization, which lets software show different languages and regional text. It finds user-visible text written directly in code and moves it into language files.
git-branch-cleanup
Analyzes and safely cleans up local Git branches. Categorizes branches by merge status, staleness, and remote tracking. Provides interactive selection with safety guards. Use when the user wants to clean up branches, delete old branches, organize Git branches, or asks about which branches can be safely deleted.
audit
Audits recent work against its Definition of Done and project patterns, from a review package of the diff. Runs the test suite, compares code against the spec, tests scenarios, sabotages risk code, and reports PASS / PARTIAL / FAIL with a severity and a cause on every finding. Also runs the Critical Gate — a safety…