# Audit

> Audit existing project documentation for quality, completeness, consistency, and code alignment. Scans docs against the actual codebase to find stale references, missing coverage, internal contradictions, and quality issues. Generates a structured findings report with severity levels and actionable fix recommendations. Works on any project with a docs/ directory.

- Skill: `majiayu000/audit-5` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/audit-5`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/audit-5/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Security
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/audit-5

---


# Audit — Documentation Quality & Consistency Review

Systematically review existing project documentation for quality, completeness, consistency with code, and internal coherence. Produce a prioritized findings report.

## Core Principles

1. **Evidence-based**: Every finding must cite a specific file, section, or line — no vague complaints
2. **Code-grounded**: Cross-reference documentation claims against the actual codebase
3. **Prioritized**: Findings are classified by severity so the user can fix what matters first
4. **Read-only by default**: This skill only reads and reports — document modifications require explicit user opt-in (Step 8)
5. **Honest**: Report real issues, don't inflate findings to look thorough

## Severity Levels

| Severity | Meaning | Example |
|----------|---------|---------|
| **Critical** | Documentation is wrong or dangerously misleading | API doc shows deleted endpoint, security guide has incorrect auth flow |
| **Major** | Significant gap or inconsistency that causes confusion | Feature doc missing for a core module, conflicting architecture descriptions |
| **Minor** | Quality issue that degrades usefulness but isn't blocking | Typos in API params, outdated version numbers, missing examples |
| **Info** | Observation or improvement suggestion | Better organization possible, diagram would help clarity |

## Workflow

### Step 1: Determine Audit Scope

Parse the arguments to determine what to audit:

1. If a path argument is provided (e.g., `/spec-forge:audit ../../other-project`), use that as the project root
2. If no path, use the current working directory
3. Verify the target has documentation (check for `docs/`, `README.md`, or markdown files)

If no documentation found, inform the user and stop.

Use `AskUserQuestion` to ask:
- **Audit focus**: Full audit, or focus on a specific area? (Options: Full / API docs only / Feature docs only / Architecture docs only / Custom path)
- **Code alignment**: Should I cross-reference docs against the codebase? (Yes / No — skip if docs-only repo like aipartnerup-docs)

### Step 2: Document Inventory

Scan the documentation landscape and build a complete inventory.

1. **Glob for all markdown files** in the docs directory (and README at root)
2. **Categorize each document** by type:
   - `api` — API reference documentation
   - `architecture` — Architecture, design, system overview
   - `feature` — Feature specifications or descriptions
   - `guide` — How-to guides, tutorials, getting started
   - `spec` — Protocol specs, conformance, standards
   - `decision` — ADRs, decision records
   - `reference` — Data models, type mappings, glossaries
   - `meta` — READMEs, indexes, navigation docs
   - `other` — Doesn't fit above categories
3. **Read each document** (or at least the first 200 lines for very large files) to understand its content and structure
4. **Record metadata** for each document:
   - File path
   - Category
   - Approximate word count
   - Last modified date (from git if available)
   - Key topics covered
   - Cross-references to other docs (internal links)
   - Cross-references to code (file paths, class/function names mentioned)

Display the inventory:

```
Document Inventory: {project-name}
  Path: {project-root}
  Total documents: {N}

  Category          | Count | Files
  api               |   4   | api/README.md, api/executor-api.md, ...
  feature           |   8   | features/acl-system.md, ...
  guide             |   7   | guides/creating-modules.md, ...
  ...
```

### Step 3: Code Alignment Check

**Skip this step if the user opted out in Step 1 (e.g., docs-only repo).**

Cross-reference documentation against the actual codebase:

#### 3.1 API Surface Audit

1. **Scan the codebase** for public API surfaces: exported functions, classes, interfaces, types, endpoints
2. **Compare against API docs**: For each documented API, verify:
   - Does the function/class/endpoint still exist in code?
   - Do parameter names and types match?
   - Do return types match?
   - Are documented examples still valid?
3. **Find undocumented APIs**: Public APIs that exist in code but have no documentation

Report findings:
- **Stale API docs**: Documented APIs that no longer exist or have changed
- **Undocumented APIs**: Code APIs with no corresponding documentation
- **Parameter mismatches**: Documented params that don't match code signatures

#### 3.2 Feature Coverage Audit

1. **Identify features in code**: Major modules, systems, or functional areas in the codebase
2. **Compare against feature docs**: Is each significant feature documented?
3. **Check feature doc accuracy**: Do feature descriptions match the current implementation?

Report findings:
- **Undocumented features**: Significant code modules with no feature documentation
- **Stale feature docs**: Feature docs describing behavior that has changed
- **Missing feature aspects**: Feature docs that exist but skip important aspects (config, error handling, limitations)

#### 3.3 Architecture Alignment

1. **Infer architecture from code**: Module structure, dependency graph, communication patterns
2. **Compare against architecture docs**: Does the documented architecture match reality?
3. **Check for architectural drift**: Places where code has evolved away from the documented design

### Step 4: Internal Consistency Check

Check documents against each other for contradictions and coherence:

#### 4.1 Cross-Document Consistency

1. **Terminology consistency**: Same concept referred to by different names across docs?
2. **Factual consistency**: Do different docs make contradictory claims? (e.g., architecture doc says "microservices" but feature doc says "monolith")
3. **Version/dependency consistency**: Do different docs reference different versions of the same thing?
4. **Link integrity**: Do internal cross-references actually point to existing documents/sections?

#### 4.2 Structural Consistency

1. **Format consistency**: Do similar documents follow similar structures? (e.g., all feature docs should have similar sections)
2. **Depth consistency**: Are some areas documented exhaustively while others are skeletal?
3. **Naming consistency**: File naming conventions, heading styles, code formatting

### Step 5: Quality Assessment

Evaluate each document (or document category) on quality dimensions:

| Dimension | What to Check |
|-----------|---------------|
| **Completeness** | Missing sections, TBD/TODO markers, placeholder text, empty sections |
| **Accuracy** | Incorrect information (detected via code alignment or internal contradictions) |
| **Clarity** | Ambiguous language, undefined terms, unclear instructions |
| **Specificity** | Vague descriptions vs. concrete details (e.g., "fast" vs. "< 100ms p99") |
| **Actionability** | Can a developer act on this doc without guessing? Are examples provided? |
| **Currency** | Signs of staleness — old dates, deprecated references, outdated patterns |
| **Navigation** | Can readers find what they need? Cross-references, indexes, logical organization |

### Step 6: Generate Findings Report

Write the findings report to `{project-docs-path}/audit-report.md` (or a user-specified path).

**Report format:**

```markdown
# Documentation Audit Report

> Project: {project-name}
> Audited: {date}
> Scope: {full / api-only / feature-only / etc.}
> Documents reviewed: {N}
> Code alignment: {Yes / Skipped}

## Executive Summary

{2-3 paragraph overview: overall documentation health, biggest strengths, most critical gaps}

## Findings Summary

| Severity | Count | Categories |
|----------|-------|------------|
| Critical |   {n} | {which areas} |
| Major    |   {n} | {which areas} |
| Minor    |   {n} | {which areas} |
| Info     |   {n} | {which areas} |

## Document Health Matrix

| Document | Completeness | Accuracy | Clarity | Currency | Overall |
|----------|-------------|----------|---------|----------|---------|
| {path}   | {A/B/C/D}   | {A/B/C/D}| {A/B/C/D}| {A/B/C/D}| {A/B/C/D} |

(A = Excellent, B = Good, C = Needs Work, D = Poor)

## Critical Findings

### CRIT-001: {Finding title}
- **Location**: {file path, section/line}
- **Issue**: {What is wrong}
- **Evidence**: {How you know — code reference, conflicting doc, etc.}
- **Impact**: {Why this matters}
- **Fix**: {Concrete recommendation}

### CRIT-002: ...

## Major Findings

### MAJ-001: {Finding title}
...

## Minor Findings

### MIN-001: {Finding title}
...

## Observations & Suggestions

### INFO-001: {Suggestion title}
...

## Coverage Map

{Mermaid diagram showing documentation coverage — which areas are well-documented vs. gaps}

## Recommended Priority Actions

1. **{Action}** — fixes CRIT-001, CRIT-002 — {estimated effort: small/medium/large}
2. **{Action}** — fixes MAJ-001 through MAJ-003 — {effort}
3. ...
```

### Step 7: Present Results

Display a summary to the user:

```
Audit complete: {project-name}

  Documents reviewed: {N}
  Findings: {critical} critical, {major} major, {minor} minor, {info} info

  Report: {path-to-audit-report.md}

  Top 3 priority actions:
    1. {action} — {severity} — {effort}
    2. {action} — {severity} — {effort}
    3. {action} — {severity} — {effort}
```

Use `AskUserQuestion` to ask:
- **Fix mode**: Would you like me to fix any of these issues now?
  - Fix critical findings
  - Fix all findings (critical + major + minor)
  - Just the report, I'll fix manually
  - Fix specific findings (list IDs)

If the user wants fixes, proceed to Step 8.

### Step 8: Apply Fixes (Optional)

For each finding the user wants fixed:

1. Read the target document
2. Apply the fix described in the finding
3. Mark the finding as resolved in the report

**Rules for fixes:**
- Only modify the specific section cited in the finding
- Do NOT restructure or rewrite entire documents
- Do NOT add new documents — only fix existing ones
- If a fix requires information you don't have (e.g., the correct API signature), mark it as "needs manual review" instead of guessing
- After all fixes, re-run a quick validation to ensure fixes didn't introduce new issues

Update the audit report to mark resolved findings:
```markdown
### CRIT-001: {Finding title} [RESOLVED]
```

## Notes

1. **Scope flexibility**: The audit can target the current project, a sibling project, or any directory with docs
2. **Incremental audits**: If a previous `audit-report.md` exists, note which findings are new vs. recurring
3. **No false positives**: It's better to miss an issue than to report a non-issue. Every finding must have concrete evidence
4. **Respect existing structure**: The audit evaluates documentation as-is — it doesn't impose spec-forge's own document structure on projects that use different conventions

