Tested demoQuality 89/100

Donchitos/Claude-Code-Game-Studios/.claude/skills/asset-spec/SKILL.md

asset-spec

Generate per-asset visual specifications and AI generation prompts from GDDs, level docs, or character profiles. Produces structured spec files and updates the master asset manifest. Run after art bible and GDD/level design are approved, before production begins.

Source repository stars
24,540
Declared platforms
0
Static risk flags
1
Last source update
2026-05-21
Source checked
2026-08-26

Decision brief

What it does: where it fits

This flow produces design/assets/entity-inventory.md — the master list of everything the game needs visually. Run once before asset spec work begins.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.
    Controlled single-run demoChecked 2026-08-20

    What changed when the Skill was used

    In this controlled same-task single run, enabling asset-spec changed the output from 2332 non-whitespace characters and 16 headings to 2941 characters and 14 headings. Matches among 8 signals extracted from the pinned source changed from 0 to 0. Both actual outputs are shown; this is a structural observation, not a quality score or a universal performance claim.

    Same test task

    Create an implementation guide for adding a webhook retry queue to a TypeScript service. Include prerequisites, steps, verification, and common mistakes. The deliverable must specifically reflect this user intent: Generate per-asset visual specifications and AI generation prompts from GDDs, level docs, or character profiles. Produces structured spec files and updates the master asset manifest. Run after art bible and GDD/level design are approved, before production begins.

    Without the Skill
    Screenshot of the actual model output for asset-spec without the Skill

    Baseline: 2332 non-whitespace characters, 16 headings, and 60 list items.

    With the Skill
    Screenshot of the actual model output for asset-spec with the Skill

    With Skill: 2941 non-whitespace characters, 14 headings, and 78 list items.

    ObservationWithout SkillWith Skill
    Source-signal coverage0/8: none0/8: none
    Output structure2332 chars · 16 headings · 60 list items · 0 code blocks2941 chars · 14 headings · 78 list items · 0 code blocks
    Verification and caution signals19 verification signals · 5 risk/limitation signals11 verification signals · 2 risk/limitation signals

    A prompt you can use

    Use the asset-spec Skill pinned at 984023ddac0d for my task. Follow its source-specific constraints around `asset-spec`, `phase`, `entity`, `screen`, then return the finished deliverable with explicit assumptions, verification, failure conditions, and limits. Do not treat the Skill text as a factual source or claim that a single demonstration proves universal performance.

    Method and limitationsExpand

    Test method

    • Baseline and treatment used the same task, model (gpt-5.3-codex-low), and runner; the only planned difference was whether the complete target Skill text was injected.
    • The treatment used snapshot 984023ddac0d5e27624f2baacde6105e45de375f; the current source commit 984023ddac0d5e27624f2baacde6105e45de375f was verified against content hash 44d9aac03948. The baseline explicitly prohibited loading any Skill or external rule file.
    • The same deterministic script counted characters, headings, lists, code blocks, verification terms, caution terms, and source signals in both artifacts. Source signals: `asset-spec`, `phase`, `entity`, `screen`, `inventory`, `arguments`, `existing`, `gather`.
    • The visuals are local screenshots of the actual Markdown artifacts in a fixed 1200 × 800 evidence canvas, not recreated product mockups. Raw JSON artifacts and request records are retained in the research directory.

    Do not over-read this demo

    • This is one controlled demonstration per condition, not a multi-run statistical benchmark; the model is stochastic.
    • Character, structure, and keyword counts show observable differences but cannot by themselves prove correctness, originality, or business impact.
    • The task is a representative test designed for repeatability, not every real-world use of the Skill; rerun after a material source change.
    Editorial review
    SkillSignal editorial
    Runner
    Cursor Agent 2026.07.09-a3815c0
    Model
    gpt-5.3-codex-low
    Refresh due
    2026-11-18
    Reviewed commit
    984023ddac0d5e27624f2baacde6105e45de375f
    Test snapshot
    984023ddac0d5e27624f2baacde6105e45de375f

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/Donchitos/Claude-Code-Game-Studios --skill ".claude/skills/asset-spec"
    Safe inspection promptEditorial

    Inspect the Agent Skill "asset-spec" from https://github.com/Donchitos/Claude-Code-Game-Studios/blob/984023ddac0d5e27624f2baacde6105e45de375f/.claude/skills/asset-spec/SKILL.md at commit 984023ddac0d5e27624f2baacde6105e45de375f. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Phase 0b: Entity & Screen Inventory (runs when no arguments and no existing inventory)

      This flow produces design/assets/entity-inventory.md — the master list of everything the game needs visually. Run once before asset spec work begins.

      design/gdd/systems-index.md — extract every system listedAll GDDs in design/gdd/ — extract: Visual/Audio Requirements sections, UI elements mentioned, VFX events, any named entities (characters, enemies, buildings, items)design/art/art-bible.md — extract: any named visual categories, asset type expectations
    2. 02

      Step 1 — Gather from docs

      Read all available source material in parallel: - design/gdd/systems-index.md — extract every system listed - All GDDs in design/gdd/ — extract: Visual/Audio Requirements sections, UI elements mentioned, VFX events, any named entities (characters, enemies, buildings, items) - de…

      design/gdd/systems-index.md — extract every system listedAll GDDs in design/gdd/ — extract: Visual/Audio Requirements sections, UI elements mentioned, VFX events, any named entities (characters, enemies, buildings, items)design/art/art-bible.md — extract: any named visual categories, asset type expectations
    3. 03

      Step 2 — Build proposed inventory

      Organize everything found into categories:

      Organize everything found into categories:For each item, note the source doc it was found in.
    4. 04

      Step 3 — Present and collaborate

      Present the full proposed inventory to the user in conversation. Then use AskUserQuestion: - Prompt: "I found [N] visual entities and [N] UI screens across your GDDs and art bible. Review the list — what's missing, what's not needed?" - Options: - [A] Looks good — save this inve…

      Prompt: "I found [N] visual entities and [N] UI screens across your GDDs and art bible. Review the list — what's missing, what's not needed?"Options:[A] Looks good — save this inventory
    5. 05

      Step 4 — Write inventory

      After user approval, ask: "May I write the entity inventory to design/assets/entity-inventory.md?"

      After user approval, ask: "May I write the entity inventory to design/assets/entity-inventory.md?"

    Permission review

    Static risk signals and limitations

    Writes files

    medium · line 56

    The documentation asks the agent to create, modify, or delete local files.

    Write the file:

    Writes files

    medium · line 224

    The documentation asks the agent to create, modify, or delete local files.

    Options: `[A] Approve all — write to file` / `[B] Revise a specific asset` / `[C] Regenerate with different direction`

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score89/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars24,540SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guidetested outcome pageTestedGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    Donchitos/Claude-Code-Game-Studios
    Skill path
    .claude/skills/asset-spec/SKILL.md
    Commit
    984023ddac0d5e27624f2baacde6105e45de375f
    License
    MIT
    Collected
    2026-08-26
    Default branch
    main
    View the original SKILL.md

    If no argument is provided, check whether design/assets/entity-inventory.md exists:

    • If it exists: read it, find the first entity or screen with status "Needed" but no spec file yet, and use AskUserQuestion:
      • Prompt: "The next unspecced item is [name]. Generate specs for it?"
      • Options: [A] Yes — spec [name] / [B] Pick a different item / [C] Stop here
    • If no entity inventory: check design/assets/asset-manifest.md. If manifest exists, same flow above but reading from manifest.
    • If neither exists: start the Entity & Screen Inventory flow (Phase 0b below) rather than failing.

    Phase 0b: Entity & Screen Inventory (runs when no arguments and no existing inventory)

    This flow produces design/assets/entity-inventory.md — the master list of everything the game needs visually. Run once before asset spec work begins.

    Step 1 — Gather from docs

    Read all available source material in parallel:

    • design/gdd/systems-index.md — extract every system listed
    • All GDDs in design/gdd/ — extract: Visual/Audio Requirements sections, UI elements mentioned, VFX events, any named entities (characters, enemies, buildings, items)
    • design/art/art-bible.md — extract: any named visual categories, asset type expectations
    • design/narrative/ — scan for any character or world entity documents if they exist (optional — not required)

    Step 2 — Build proposed inventory

    Organize everything found into categories:

    Characters / Protagonists
    Enemies / Creatures
    Buildings / Structures
    Environment / Terrain
    Items / Props
    VFX / Particles
    UI Screens (list each screen by name)
    HUD Elements
    Audio (SFX, music — descriptions only, no generation prompts)
    Other
    

    For each item, note the source doc it was found in.

    Step 3 — Present and collaborate

    Present the full proposed inventory to the user in conversation. Then use AskUserQuestion:

    • Prompt: "I found [N] visual entities and [N] UI screens across your GDDs and art bible. Review the list — what's missing, what's not needed?"
    • Options:
      • [A] Looks good — save this inventory
      • [B] Add items I'll describe
      • [C] Remove items that don't apply
      • [D] Both add and remove — let me edit

    If [B] or [D]: ask the user to describe additional items. Accept brief descriptions ("a medieval keep, used as a level background") or detailed ones — either works. Work through them collaboratively until the user is satisfied.

    If [C] or [D]: ask which items to remove and why. Remove them from the list.

    Step 4 — Write inventory

    After user approval, ask: "May I write the entity inventory to design/assets/entity-inventory.md?"

    Write the file:

    # Visual Entity & Screen Inventory
    
    > Generated: [date]
    > Sources: [list of source docs read]
    
    ## Entities
    
    | # | Name | Type | Description | Source | Status |
    |---|------|------|-------------|--------|--------|
    | 1 | [name] | Character / Enemy / Building / Environment / Item / Other | [brief description] | [source doc] | Needed |
    
    ## UI Screens
    
    | # | Screen Name | Description | Source | Status |
    |---|-------------|-------------|--------|--------|
    | 1 | Main Menu | [description] | [source] | Needed |
    
    ## HUD Elements
    
    | # | Element | Description | Source | Status |
    |---|---------|-------------|--------|--------|
    
    ## Audio
    
    | # | Name | Type (SFX / Music / Ambient) | Description | Source | Status |
    |---|------|------------------------------|-------------|--------|--------|
    

    After writing, tell the user:

    "Entity inventory saved. Next steps:

    • Run /ux-design [screen name] for each UI screen in the inventory
    • Run /asset-spec entity:[name] to spec each visual entity
    • Or run /asset-spec again to work through the inventory one item at a time"

    Phase 0: Parse Arguments

    Extract:

    • Target type: system, level, or character
    • Target name: the name after the colon (normalize to kebab-case)
    • Review mode: --review [full|lean|solo] if present

    Mode behavior:

    • full (default): spawn both art-director and technical-artist in parallel
    • lean: spawn art-director only — faster, skips technical constraint pass
    • solo: no agent spawning — main session writes specs from art bible rules alone. Use for simple asset categories or when speed matters more than depth.

    Phase 1: Gather Context

    Read all source material before asking the user anything.

    Required reads:

    • Art bible: Read design/art/art-bible.md — fail if missing:

      "No art bible found. Run /art-bible first — asset specs are anchored to the art bible's visual rules and asset standards." Extract: Visual Identity Statement, Color System (semantic colors), Shape Language, Asset Standards (Section 8 — dimensions, formats, polycount budgets, texture resolution tiers).

    • Technical preferences: Read .claude/docs/technical-preferences.md — extract performance budgets and naming conventions.

    Source doc reads (by target type):

    • system: Read design/gdd/[target-name].md. Extract the Visual/Audio Requirements section. If it doesn't exist or reads [To be designed]:

      "The Visual/Audio section of design/gdd/[target-name].md is empty. Either run /design-system [target-name] to complete the GDD, or describe the visual needs manually." Use AskUserQuestion: [A] Describe needs manually / [B] Stop — complete the GDD first

    • level: Read design/levels/[target-name].md. Extract art requirements, asset list, VFX needs, and the art-director's production concept specs from Step 4.
    • character or entity: Read design/narrative/characters/[target-name].md or search design/narrative/ and design/assets/entity-inventory.md for a matching entry. Extract visual description, role, and any specified distinguishing features.
      • If no source doc exists: do not fail. Instead, use AskUserQuestion:
        • Prompt: "No profile found for [name]. Describe it briefly — a sentence or two is enough."
        • Options: [A] Describe it now / [B] Skip this entity / [C] Stop here
        • If [A]: the user's description becomes the source. Brief answers produce concise specs; detailed answers produce detailed specs. Accept whatever level of detail the user provides and work from it.

    Optional reads:

    • Existing manifest: Read design/assets/asset-manifest.md if it exists — extract already-specced assets for this target to avoid duplicates.
    • Related specs: Glob design/assets/specs/*.md — scan for assets that could be shared (e.g., a common UI element specced for one system might apply here too).

    Present context summary:

    Asset Spec: [Target Type] — [Target Name]

    • Source doc: [path] — [N] asset types identified
    • Art bible: found — Asset Standards at Section 8
    • Existing specs for this target: [N already specced / none]
    • Shared assets found in other specs: [list or "none"]

    Phase 2: Asset Identification

    From the source doc, extract every asset type mentioned — explicit and implied.

    For systems: look for VFX events, sprite references, UI elements, audio triggers, particle effects, icon needs, and any "visual feedback" language.

    For levels: look for unique environment props, atmospheric VFX, lighting setups, ambient audio, skybox/background, and any area-specific materials.

    For characters: look for sprite sheets (idle, walk, attack, death), portrait/avatar, VFX attached to abilities, UI representation (icon, health bar skin).

    Group assets into categories:

    • Sprite / 2D Art — character sprites, UI icons, tile sheets
    • VFX / Particles — hit effects, ambient particles, screen effects
    • Environment — props, tiles, backgrounds, skyboxes
    • UI — HUD elements, menu art, fonts (if custom)
    • Audio — SFX, music tracks, ambient loops (note: audio specs are descriptions only — no generation prompts)
    • 3D Assets — meshes, materials (if applicable per engine)

    Present the full identified list to the user. Use AskUserQuestion:

    • Prompt: "I identified [N] assets across [N] categories for [target]. Review before speccing:"
    • Show the grouped list in conversation text first
    • Options: [A] Proceed — spec all of these / [B] Remove some assets / [C] Add assets I didn't catch / [D] Adjust categories

    Do NOT proceed to Phase 3 without user confirmation of the asset list.


    Phase 3: Spec Generation

    Spawn specialist agents based on review mode. Issue all Task calls simultaneously — do not wait for one before starting the next.

    Full mode — spawn in parallel:

    art-director via Task:

    • Provide: full asset list from Phase 2, art bible Visual Identity Statement, Color System, Shape Language, the source doc's visual requirements, and any reference games/art mentioned in the art bible Section 9
    • Ask: "For each asset in this list, produce: (1) a 2–3 sentence visual description anchored to the art bible's shape language and color system — be specific enough that two different artists would produce consistent results; (2) a generation prompt ready for use with AI image tools (Midjourney/Stable Diffusion style — include style keywords, composition, color palette anchors, negative prompts); (3) which art bible rules directly govern this asset (cite by section). For audio assets, describe the sonic character instead of a generation prompt."

    technical-artist via Task:

    • Provide: full asset list, art bible Asset Standards (Section 8), technical-preferences.md performance budgets, engine name and version
    • Ask: "For each asset in this list, specify: (1) exact dimensions or polycount (match the art bible Asset Standards tiers — do not invent new sizes); (2) file format and export settings; (3) naming convention (from technical-preferences.md); (4) any engine-specific constraints this asset type must respect; (5) LOD requirements if applicable. Flag any asset type where the art bible's preferred standard conflicts with the engine's constraints."

    Lean mode — spawn art-director only (skip technical-artist).

    Solo mode — skip both. Derive specs from art bible rules alone, noting that technical constraints were not validated.

    Collect both responses before Phase 4. If any conflict exists between art-director and technical-artist (e.g., art-director specifies 4K textures but technical-artist flags the engine budget requires 512px), surface it explicitly — do NOT silently resolve.


    Phase 4: Compile and Review

    Combine the agent outputs into a draft spec per asset. Present all specs in conversation text using this format:

    ## ASSET-[NNN] — [Asset Name]
    
    | Field | Value |
    |-------|-------|
    | Category | [Sprite / VFX / Environment / UI / Audio / 3D] |
    | Dimensions | [e.g. 256×256px, 4-frame sprite sheet] |
    | Format | [PNG / SVG / WAV / etc.] |
    | Naming | [e.g. vfx_frost_hit_01.png] |
    | Polycount | [if 3D — e.g. <800 tris] |
    | Texture Res | [e.g. 512px — matches Art Bible §8 Tier 2] |
    
    **Visual Description:**
    [2–3 sentences. Specific enough for two artists to produce consistent results.]
    
    **Art Bible Anchors:**
    - §3 Shape Language: [relevant rule applied]
    - §4 Color System: [color role — e.g. "uses Threat Blue per semantic color rules"]
    
    **Generation Prompt:**
    [Ready-to-use prompt. Include: style keywords, composition notes, color palette anchors, lighting direction, negative prompts.]
    
    **Status:** Needed
    

    After presenting all specs, use AskUserQuestion:

    • Prompt: "Asset specs for [target] — [N] assets. Review complete?"
    • Options: [A] Approve all — write to file / [B] Revise a specific asset / [C] Regenerate with different direction

    If [B]: ask which asset and what to change. Revise inline and re-present. Do NOT re-spawn agents for minor text revisions — only re-spawn if the visual direction itself needs to change.

    If [C]: ask what direction to change. Re-spawn the relevant agent with the updated brief.


    Phase 5: Write Spec File

    After approval, ask: "May I write the spec to design/assets/specs/[target-name]-assets.md?"

    Write the file with:

    # Asset Specs — [Target Type]: [Target Name]
    
    > **Source**: [path to source GDD/level/character doc]
    > **Art Bible**: design/art/art-bible.md
    > **Generated**: [date]
    > **Status**: [N] assets specced / [N] approved / [N] in production / [N] done
    
    [all asset specs in ASSET-NNN format]
    

    Then update design/assets/asset-manifest.md. If it doesn't exist, create it:

    # Asset Manifest
    
    > Last updated: [date]
    
    ## Progress Summary
    
    | Total | Needed | In Progress | Done | Approved |
    |-------|--------|-------------|------|----------|
    | [N] | [N] | [N] | [N] | [N] |
    
    ## Assets by Context
    
    ### [Target Type]: [Target Name]
    | Asset ID | Name | Category | Status | Spec File |
    |----------|------|----------|--------|-----------|
    | ASSET-001 | [name] | [category] | Needed | design/assets/specs/[target]-assets.md |
    

    If the manifest already exists, append the new context block and update the Progress Summary counts.

    Ask: "May I update design/assets/asset-manifest.md?"


    Phase 6: Close

    Use AskUserQuestion:

    • Prompt: "Asset specs complete for [target]. What's next?"
    • Options:
      • [A] Spec another system — /asset-spec system:[next-system]
      • [B] Spec a level — /asset-spec level:[level-name]
      • [C] Spec a character — /asset-spec character:[character-name]
      • [D] Run /asset-audit — validate delivered assets against specs
      • [E] Stop here

    Asset ID Assignment

    Asset IDs are assigned sequentially across the entire project — not per-context. Read the manifest before assigning IDs to find the current highest number:

    Grep pattern="ASSET-" path="design/assets/asset-manifest.md"
    

    Start new assets from ASSET-[highest + 1]. This ensures IDs are stable and unique across the whole project.

    If no manifest exists yet, start from ASSET-001.


    Shared Asset Protocol

    Before speccing an asset, check if an equivalent already exists in another context's spec:

    • Common UI elements (health bars, score displays) are often shared across systems
    • Generic environment props may appear in multiple levels
    • Character VFX (hit sparks, death effects) may reuse a base spec with color variants

    If a match is found: reference the existing ASSET-ID rather than creating a duplicate. Note the shared usage in the manifest's referenced-by column.

    "ASSET-012 (Generic Hit Spark) already specced for Combat system. Reusing for Tower Defense — adding tower-defense to referenced-by."


    Error Recovery Protocol

    If any spawned agent returns BLOCKED or cannot complete:

    1. Surface immediately: "[AgentName]: BLOCKED — [reason]"
    2. In lean mode or if technical-artist blocks: proceed with art-director output only — note that technical constraints were not validated
    3. In solo mode or if art-director blocks: derive descriptions from art bible rules — flag as "Art director not consulted — verify against art bible before production"
    4. Always produce a partial spec — never discard work because one agent blocked

    Collaborative Protocol

    Every phase follows: Identify → Confirm → Generate → Review → Approve → Write

    • Never spec assets without first confirming the asset list with the user
    • Always anchor specs to the art bible — a spec that contradicts the art bible is wrong
    • Surface all agent disagreements — do not silently pick one
    • Write the spec file only after explicit approval
    • Update the manifest immediately after writing the spec

    Recommended Next Steps

    • Run /asset-spec [next-context] to continue speccing remaining systems, levels, or characters
    • Run /asset-audit to validate delivered assets against the written specs and identify gaps or mismatches

    Frequently asked questions

    What to verify before installation and use

    What does the asset-spec source document cover?

    This flow produces design/assets/entity-inventory.md — the master list of everything the game needs visually. Run once before asset spec work begins.

    How do I install asset-spec?

    The source record exposes this install command: npx skills add https://github.com/Donchitos/Claude-Code-Game-Studios --skill ".claude/skills/asset-spec". Inspect the command and pinned source before running it.

    Which permission-related actions were detected?

    Static rules flagged write-files in the source; the page lists the matching lines and excerpts.

    Alternatives

    Compare before choosing

    Computed 100146

    oaustegard/claude-skills

    featuring

    Generate hierarchical _FEATURES.md files that describe what a codebase DOES from a user/consumer perspective, anchored to source symbols via tree-sitting. Supports large complex codebases through feature-driven decomposition into sub-feature files. Uses a multi-pass synthesis: orientation → detail → overview rewrite. Use when someone says "what does this do", "document features", "feature inventory", "_FEATURES.md", or needs to understand a codebase's purpose before modifying it. Complements tre

    Computed 9916

    NintendaDev/unikit-ai

    unikit-docs

    Generate and maintain the project's TECHNICAL documentation from its codebase — scans the project structure, tech stack, and module boundaries, then writes a lean README landing page plus detailed topic pages (architecture, modules, setup, build, APIs), only the docs that are relevant. Use whenever the user wants to create, update, or validate documentation of the CODE or the project itself, e.g. "generate documentation", "create docs", "write the README", "update the project docs", "document th

    Computed 9824,975

    alirezarezvani/claude-skills

    quality-manager-qms-iso13485

    ISO 13485 Quality Management System implementation and maintenance for medical device organizations. Provides QMS design, documentation control, internal auditing, CAPA management, and certification support. Use when working with medical device quality systems, preparing for ISO 13485 audits, managing regulatory compliance documentation, setting up corrective actions, or building audit preparation programs. Useful for quality management, audit preparation, regulatory compliance, medical device d

    Computed 982,682

    compozy/compozy

    bubbletea

    Build terminal user interfaces with Go and Bubbletea framework. Use when creating TUI apps with the Elm architecture, dual-pane layouts, accordion modes, mouse/keyboard handling, Lipgloss styling, and reusable components. Includes production-ready templates, effects library, and battle-tested layout patterns from real projects. Don't use for plain-text CLI scripts without an interactive UI, web/desktop GUIs, or non-Go terminal frameworks (Ink, Textual, Ratatui).