Audit GDD-specified content counts against implemented content. Identifies what's planned vs built.
53
61%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./.claude/skills/content-audit/SKILL.mdWhen this skill is invoked:
Parse the argument:
[system-name] → audit that single system only--summary → summary table only, no file writeRead design/gdd/systems-index.md for the full list of systems, their
categories, and MVP/priority tier.
L0 pre-scan: Before full-reading any GDDs, Grep all GDD files for
## Summary sections plus common content-count keywords:
Grep pattern="(## Summary|N enemies|N levels|N items|N abilities|enemy types|item types)" glob="design/gdd/*.md" output_mode="files_with_matches"For a single-system audit: skip this step and go straight to full-read. For a full audit: full-read only the GDDs that matched content-count keywords. GDDs with no content-count language (pure mechanics GDDs) are noted as "No auditable content counts" without a full read.
Full-read in-scope GDD files (or the single system GDD if a system name was given).
For each GDD, extract explicit content counts or lists. Look for patterns like:
Build a content inventory table from the extracted data:
| System | Content Type | Specified Count/List | Source GDD |
|---|
Note: If a GDD describes content qualitatively but gives no count, record "Unspecified" and flag it — unspecified counts are a design gap worth noting.
For each content type found in Phase 1, scan the relevant directories to count what has been implemented. Use Glob and Grep to locate files.
Levels / Areas / Maps:
assets/**/*.tscn, assets/**/*.unity, assets/**/*.umapsrc/**/*.tscn, src/**/*.unitylevels/, areas/, maps/,
worlds/, stages/Enemies / Characters / NPCs:
assets/data/**/enemies/**, assets/data/**/characters/**src/**/enemies/**, src/**/characters/**.json, .tres, .asset, .yaml data files defining entity statsItems / Equipment / Loot:
assets/data/**/items/**, assets/data/**/equipment/**,
assets/data/**/loot/**.json, .tres, .asset data filesAbilities / Skills / Spells:
assets/data/**/abilities/**, assets/data/**/skills/**,
assets/data/**/spells/**.json, .tres, .asset data filesDialogue / Conversations / Cutscenes:
assets/**/*.dialogue, assets/**/*.csv, assets/**/*.inkassets/data/Quests / Missions:
assets/data/**/quests/**, assets/data/**/missions/**.json, .yaml definition filesEngine-specific notes (acknowledge in the report):
Produce the gap table:
| System | Content Type | Specified | Found | Gap | Status |
|--------|-------------|-----------|-------|-----|--------|Status categories:
COMPLETE — Found ≥ Specified (100%+)IN PROGRESS — Found is 50–99% of SpecifiedEARLY — Found is 1–49% of SpecifiedNOT STARTED — Found is 0Priority flags:
Flag a system as HIGH PRIORITY in the report if:
NOT STARTED or EARLY, ANDSummary line:
(Specified - Found) / Specified * 100Present the gap table and summary to the user. Ask: "May I write the full report to docs/content-audit-[YYYY-MM-DD].md?"
If yes, write the file:
# Content Audit — [Date]
## Summary
- **Total specified**: [N] content items across [M] systems
- **Total found**: [N]
- **Gap**: [N] items ([X%] unimplemented)
- **Scope**: [Full audit | System: name]
> Note: Counts are approximations based on file scanning.
> The audit cannot distinguish shipped content from editor/test assets.
> Manual verification is recommended for any HIGH PRIORITY gaps.
## Gap Table
| System | Content Type | Specified | Found | Gap | Status |
|--------|-------------|-----------|-------|-----|--------|
## HIGH PRIORITY Gaps
[List systems flagged HIGH PRIORITY with rationale]
## Per-System Breakdown
### [System Name]
- **GDD**: `design/gdd/[file].md`
- **Content types audited**: [list]
- **Notes**: [any caveats about scan accuracy for this system]
## Recommendation
Focus implementation effort on:
1. [Highest-gap HIGH PRIORITY system]
2. [Second system]
3. [Third system]
## Unspecified Content Counts
The following GDDs describe content without giving explicit counts.
Consider adding counts to improve auditability:
[List of GDDs and content types with "Unspecified"]After writing the report, ask:
"Would you like to create backlog stories for any of the content gaps?"
If yes: for each system the user selects, suggest a story title and point them
to /create-stories [epic-slug] or /quick-design depending on the size of the gap.
Print the Gap Table and Summary directly to conversation. Do not write a file.
End with: "Run /content-audit without --summary to write the full report."
After the audit, recommend the highest-value follow-up actions:
NOT STARTED and MVP-tagged → "Run /design-system [name] to
add missing content counts to the GDD before implementation begins."/sprint-plan to allocate content work across upcoming sprints."/create-stories [epic-slug] for each HIGH PRIORITY gap."--summary was used → "Run /content-audit (no flag) to write the full report to docs/."Verdict: COMPLETE — content audit finished.
984023d
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.