utility-pm-skill-auditor — Claude Code skill: repo-wide audit
Runs every validator across the repo, re-derives aggregate counters and surfaces cross-cutting issues that no single validator catches.
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a claude-codeWhat utility-pm-skill-auditor does
The skill dispatches the pm-skill-auditor sub-agent, which walks the whole repository: it invokes the enforcing validator suite, compares re-derived counters against the values declared in CONTEXT.md, AGENTS.md and README.md, then runs cross-cutting checks such as a skill without a command, sample gaps or orphaned family contracts. You get a report graded P0/P1/P2/P3 with a machine-readable status.
Runtime detection decides the path. On Claude with the pm-skills plugin installed it calls @agent-pm-skills:pm-skill-auditor. On other clients it reads agents/pm-skill-auditor.md and executes that body inline for the turn, following four steps: validators via Bash (canonical entry point bash scripts/pre-tag-validate.sh), cross-cutting checks, counter re-derivation, layered report. Scope arguments like --scope changed, --since-tag v2.15.0 or --severity-floor P1 pass through.
The auditor only detects. Fixing what it finds is your call, and a deep check of one skill against authoring conventions belongs to utility-pm-skill-validate instead. The inline pattern needs a client that can read a file by path, run Bash and treat the agent definition as operating instructions; when any of those is unreliable on a given client, you fall back to invoking validators by hand.
What it helps with
- run the whole validator suite before tagging a release
- reconcile re-derived counters with the values declared in CONTEXT.md and AGENTS.md
- spot skills that ship without a paired slash command
- catch cross-cutting issues individual validators miss
- produce a machine-readable audit status for a pipeline
Example prompts for the agent
- run a repo-wide audit with utility-pm-skill-auditor
- audit only what changed: --scope changed
- run the audit with --severity-floor P1
How to install utility-pm-skill-auditor
1Skills CLI (Vercel)
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a claude-code2Manually: put the files in place
~/.claude/skills/utility-pm-skill-auditor/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/utility-pm-skill-auditor/
1Skills CLI (Vercel)
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a codex2Manually: put the files in place
.agents/skills/utility-pm-skill-auditor/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a cursor2Manually: put the files in place
.cursor/skills/utility-pm-skill-auditor/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install product-on-purpose/pm-skills utility-pm-skill-auditor2Manually: put the files in place
.github/skills/utility-pm-skill-auditor/SKILL.md1Skills CLI (Vercel)
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a gemini-cli2Platform CLI
gemini skills install https://github.com/product-on-purpose/pm-skills --path skills/utility-pm-skill-auditorManually: put the files in place
.devin/skills/utility-pm-skill-auditor/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about utility-pm-skill-auditor
How do I install utility-pm-skill-auditor in Claude?
Run npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a claude-code. The skill file then lives at ~/.claude/skills/utility-pm-skill-auditor/SKILL.md.
What does utility-pm-skill-auditor do?
It dispatches the pm-skill-auditor sub-agent, which runs the validators repo-wide, re-derives aggregate counters and checks for cross-cutting problems. Output is a report graded P0/P1/P2/P3 with a machine-readable status.
How is it different from utility-pm-skill-validate?
The auditor goes wide across the catalog; utility-pm-skill-validate goes deep on one skill against the authoring conventions. For a single PM artifact such as a PRD or persona, use utility-pm-critic.
Source text
SKILL.md · Apache-2.0
---
name: utility-pm-skill-auditor
description: Run a repo-wide cross-cutting governance audit via the pm-skill-auditor sub-agent. Aggregates the enforcing validator suite, re-derives aggregate counters, and surfaces cross-cutting issues no single validator catches, graded P0/P1/P2/P3 with a machine-readable status. Use for pre-release readiness checks or a periodic repo health audit.
license: Apache-2.0
metadata:
classification: utility
version: "1.1.0"
updated: 2026-06-10
category: governance
frameworks: [triple-diamond]
author: product-on-purpose
---
<!-- PM-Skills | https://github.com/product-on-purpose/pm-skills | Apache 2.0 -->
# PM Skill Auditor (Dispatch Skill)
Cross-client dispatch wrapper for the `pm-skill-auditor` sub-agent. Detects runtime; dispatches to the native sub-agent on Claude Code; reads `agents/pm-skill-auditor.md` and executes inline on non-Claude clients.
## When to Use
- You need a repo-wide audit pass: all enforcing validators, cross-cutting checks (skill-without-command, sample gaps, family contract orphans, etc.), and aggregate counter re-derivation against declared values in CONTEXT.md + AGENTS.md + README.md
- You are running on a non-Claude AI client without native pm-skill-auditor sub-agent support
- You are running on Claude Code and prefer skill-invocation semantics (e.g., for chaining inside a workflow that also uses other dispatch skills)
## When NOT to Use
- You want to review a specific PM artifact (PRD, OKR, persona) -> use `utility-pm-critic` instead
- You want to draft a CHANGELOG entry -> use `utility-pm-changelog-curator` (ships in Phase 4)
- You want to ship a release -> use `utility-pm-release-conductor` (ships in Phase 5)
- You want to FIX issues found in an audit -> the auditor is detection-only; remediation is maintainer judgment or future `pm-frontmatter-doctor` (v2.17+)
- You want a deep, single-skill check against the authoring conventions -> use `utility-pm-skill-validate`. The auditor goes wide across the catalog; it does not go deep on one skill.
## Instructions
**Runtime detection step.** Determine which AI client is invoking this skill.
### If you are running in Claude Code with the pm-skills plugin installed
Invoke `@agent-pm-skills:pm-skill-auditor` on the repo. Pass any scope arguments from `$ARGUMENTS` (e.g., `--scope changed`, `--since-tag v2.15.0`, `--severity-floor P1`). Return the sub-agent's audit report to the user.
### If you are running in any other AI client
Codex CLI, Cursor, Windsurf, Copilot, Gemini CLI, or any other client without native pm-skills plugin sub-agent support:
1. Read the canonical sub-agent definition at `agents/pm-skill-auditor.md`
2. Execute the system prompt body in that file as your operating instructions for this turn
3. Run the four-step audit flow:
- Step 1: Invoke validators via Bash (prefer `bash scripts/pre-tag-validate.sh` as canonical entry point)
- Step 2: Run cross-cutting checks from the catalog at `docs/internal/release-plans/v2.16.0/spec_pm-skill-auditor.md#cross-cutting-check-catalog`
- Step 3: Re-derive aggregate counters from filesystem and compare to declared values
- Step 4: Compose layered output report
4. Apply scope and severity-floor arguments from `$ARGUMENTS`
5. Return the layered output per master plan D26 (full report + Status Summary + Status YAML)
## Cross-Client Notes
See [Sub-Agent Compatibility Matrix](../../docs/reference/sub-agent-compatibility.md) for the canonical cross-client status. Summary for this skill as of v2.16.0: PRODUCTION on Claude Code + Codex CLI (Codex CLI successfully invoked the validator suite via Bash + produced a layered audit report with re-derived aggregate counters); EXPERIMENTAL on Cursor / Windsurf / Copilot CLI / Gemini CLI.
The "read canonical agent definition and execute inline" pattern depends on the AI client being able to:
1. Read a referenced file path
2. Execute Bash to invoke validator scripts
3. Treat the agent definition body as operating instructions for the current turn
Most AI clients support all three. If any are unreliable on a specific client, that client falls back to manual validator invocation + manual cross-cutting checks.
## Reference Files
- Canonical sub-agent definition: [`agents/pm-skill-auditor.md`](../../agents/pm-skill-auditor.md)
- Behavioral spec: [`docs/internal/release-plans/v2.16.0/spec_pm-skill-auditor.md`](../../docs/internal/release-plans/v2.16.0/spec_pm-skill-auditor.md)
- Runtime components catalog: [`docs/reference/runtime-components.md`](../../docs/reference/runtime-components.md)
- Cross-cutting check catalog: `docs/internal/release-plans/v2.16.0/spec_pm-skill-auditor.md#cross-cutting-check-catalog`
- Pre-tag validator bundle: `scripts/pre-tag-validate.{sh,ps1}`
- Output template: `references/TEMPLATE.md`
- Worked example: `references/EXAMPLE.md`
© product-on-purpose · Apache-2.0 · product-on-purpose/pm-skills