# How to Implement Content Audits to Verify Game Features in Claude Code Game Studios

> Learn to implement content audits for game features at Claude Code Game Studios. Automate verification using Read, Glob, Grep, and Write tools for efficient GDD comparisons.

- Repository: [Donchitos/Claude-Code-Game-Studios](https://github.com/Donchitos/Claude-Code-Game-Studios)
- Tags: how-to-guide
- Published: 2026-04-16

---

**Content audits are implemented as a producer-scoped skill (`/content-audit`) that automates a four-phase verification process comparing Game Design Document specifications against actual codebase assets using Read, Glob, Grep, and Write tools.**

The **Claude Code Game Studios** repository provides a first-class content audit system designed to implement content audits to verify game features continuously throughout development. This skill acts as an automated bridge between design documentation and implementation, ensuring that every enemy, item, level, and system specified in your GDD actually exists in the codebase. By scanning [`design/gdd/systems-index.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/design/gdd/systems-index.md) and comparing it against engine-specific asset directories, the audit generates decision-ready gap reports that producers can transform into sprint backlog stories.

## The Four-Phase Audit Architecture

The content audit skill defined in [`.claude/skills/content-audit/SKILL.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/.claude/skills/content-audit/SKILL.md) follows a strict phased architecture to ensure comprehensive verification without overwhelming the conversation context.

### Phase 1: Context Gathering

The audit begins by loading design intent from documentation. It reads [`design/gdd/systems-index.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/design/gdd/systems-index.md) to obtain the master system list, then uses **Grep** to scan all GDD files for `## Summary` sections or content-count keywords (e.g., “5 enemies”, “12 items”). Only GDDs containing countable content are fully read, keeping the operation efficient.

### Phase 2: Implementation Scan

The skill scans the repository for concrete assets using **Glob** patterns. It locates level files via patterns like `*.tscn`, `*.umap`, and `*.unity`, while enemy and character definitions are found under `assets/data/**/enemies/**` and `src/**/enemies/**`. Items, abilities, dialogues, and quests are located via engine-specific glob patterns targeting directories like `assets/` and `src/`.

### Phase 3: Gap Report Generation

Collected data transforms into a markdown comparison table with columns for **System**, **Content Type**, **Specified**, **Found**, **Gap**, and **Status**. Status rules apply automatically: `COMPLETE` when counts match, `IN PROGRESS` for partial implementation, `EARLY` for over-delivery, and `NOT STARTED` for missing content. The system flags **HIGH PRIORITY** gaps when the system is MVP-tagged or blocks downstream systems.

### Phase 4: Output and Persistence

The audit prints a summary and gap table in-conversation, then asks: *“May I write the full report to `docs/content-audit-[YYYY-MM-DD].md`?”* On confirmation, the **Write** tool persists the markdown file for future reference.

## Running Content Audit Commands

Execute audits using the `/content-audit` slash command with various flags to control scope and output.

### Full Audit with Report

Run a complete verification across all systems:

```text
/content-audit

```

The skill generates a comprehensive gap table and requests permission to write the report to [`docs/content-audit-2024-12-01.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/docs/content-audit-2024-12-01.md).

### Summary-Only Verification

For quick sprint planning checks without file persistence:

```text
/content-audit --summary

```

This outputs the gap table and totals to the console without creating files.

### Single System Audit

Audit a specific system (e.g., combat) to skip the global pre-scan:

```text
/content-audit combat

```

The skill reads only [`design/gdd/combat.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/design/gdd/combat.md) and scans implementation directories for combat-related assets, returning a focused report.

## Engine-Agnostic Configuration

The content audit works across **Godot**, **Unity**, and **Unreal** engines without code changes. The only engine-specific knowledge resides in the glob patterns defined in [`SKILL.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/SKILL.md).

Default patterns cover common extensions:

- **Levels**: `*.tscn`, `*.umap`, `*.unity`
- **Data**: `*.json`, `*.tres`, `*.asset`, `*.yaml`, `*.csv`
- **Dialogue**: `*.ink`

Extend support for new asset types by editing [`.claude/skills/content-audit/SKILL.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/.claude/skills/content-audit/SKILL.md):

```yaml

# Add to the "Levels / Areas / Maps" section

- Glob `assets/**/*.prefab`, `src/**/*.prefab`

```

## Workflow Integration

According to [`docs/WORKFLOW-GUIDE.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/docs/WORKFLOW-GUIDE.md) (Phase 5 – Content Tracking), the content audit runs after the design phase and before production sprint planning. The skill is scoped to the **producer** agent via the `agent: producer` header, ensuring it executes only when production-ready assets should exist.

After identifying high-priority gaps, the workflow suggests creating backlog stories. When the audit asks *“Would you like to create backlog stories for any of the content gaps?”* respond **yes** to initiate:

```text
/create-stories combat-content-gap-enemies

```

## Summary

- **Content audits** verify game features by comparing GDD specifications in [`design/gdd/systems-index.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/design/gdd/systems-index.md) against actual assets found via glob patterns.
- The four-phase process uses **Read**, **Glob**, **Grep**, and **Write** tools to remain engine-agnostic while scanning directories like `assets/` and `src/`.
- Run `/content-audit` for full reports, `/content-audit --summary` for quick checks, or `/content-audit [system]` for targeted verification.
- Reports are saved to `docs/content-audit-[YYYY-MM-DD].md` with user confirmation, respecting collaborative protocols.
- The skill integrates with **Phase 5** of the production workflow and feeds directly into story creation via `/create-stories`.

## Frequently Asked Questions

### How does the content audit skill identify missing game features?

The skill identifies missing features by parsing countable content markers in GDD files (like “5 enemies” or “12 items”) and comparing these specifications against actual files discovered in asset directories. When the glob scan returns fewer files than specified, the system marks the status as `NOT STARTED` or `IN PROGRESS` and calculates the exact gap number.

### Can I run a content audit on a specific game system only?

Yes. Append the system name to the command: `/content-audit combat` skips the global pre-scan and reads only [`design/gdd/combat.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/design/gdd/combat.md). This focused mode scans only combat-related asset paths and returns a targeted report, making it ideal for verifying individual feature completion during sprint reviews.

### Which game engines does the content audit support?

The audit supports **Godot**, **Unity**, and **Unreal** engines natively through engine-agnostic glob patterns. It recognizes `.tscn` files (Godot), `.umap` and `.uasset` files (Unreal), and `.unity` and `.prefab` files (Unity) without requiring code changes. The pattern list in [`.claude/skills/content-audit/SKILL.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/.claude/skills/content-audit/SKILL.md) can be extended to support custom engines or proprietary file formats.

### Where are content audit reports stored?

By default, full audit reports are written to `docs/content-audit-[YYYY-MM-DD].md` in the repository root. The skill explicitly asks for confirmation before writing: *“May I write the full report to [`docs/content-audit-2024-12-01.md`](https://github.com/Donchitos/Claude-Code-Game-Studios/blob/main/docs/content-audit-2024-12-01.md)?”* Summary-only runs (`--summary`) do not create files and display results only in the conversation.