Skip to main content
skill CX Codex

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.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add product-on-purpose/pm-skills --skill utility-pm-skill-auditor -a claude-code
Open on GitHub

What 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-code

2Manually: put the files in place

~/.claude/skills/utility-pm-skill-auditor/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/utility-pm-skill-auditor/

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

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set69

discover-market-sizing Runs several market-sizing frameworks at once and folds the results into one range with confidence labels. Useful before an investment case or a go/no-go call. CX Codex +1 619installs tool-foundation-sprint-readiness A pre-sprint diagnostic that decides whether to run a Foundation Sprint now, postpone it, or close gaps first. Takes 30–45 minutes. CX Codex +1 618installs tool-design-sprint-brief Builds a two-page brief before a Design Sprint starts: challenge, questions, roles, customer recruiting, prototype medium and success criteria. CX Codex +1 617installs tool-design-sprint-sketch Runs day two of a Design Sprint: lightning demos plus the four-step independent sketch protocol. Useful for a facilitator once Monday's target is locked. CX Codex +1 616installs utility-pm-changelog-curator Builds a CHANGELOG draft from git log between tags and applies the repo hygiene rules. Useful right before a release. CX Codex +1 597installs utility-pm-release-conductor Walks a pm-skills release through six gates: readiness, adversarial review, version bump, tag and post-tag hygiene. Refuses gate bypasses. CX Codex +1 595installs foundation-prioritized-action-plan Turns messy notes and Slack threads into an evidence-grounded PM action plan using Theory of Constraints and Cynefin. CX Codex +1 581installs utility-pm-workflow-orchestrator Runs an ordered chain of pm-skills against one input, pauses for go/no-go, and stops when a step fails or comes back empty. CX Codex +1 541installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor