Validate skill files for structural compliance and behavioral correctness.

MITAuto-check passedEducation

Install Skill Test

skills CLI
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-test -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-test --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/skill-test .claude/skills/skill-test && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
skill-test
GitHub stars
26k
Token cost
~5.9k tokens
SKILL.md length
2,868 words
Files
1
Skills in repo
73
Repo updated
First seen
Licence
MIT

At a glance

Validate skill files for structural compliance and behavioral correctness.

  • Works in 2 steps: Parse Arguments → Recommended Next Steps
  • Tasks that involve Linting and formatting
  • SKILL.md covers Phase 1: Parse Arguments, Phase 2A: Static Mode —…, Phase 2B: Spec Mode —… and Phase 2D: Category Mode —…, plus 1 more section
  • Calls bash

What it does

Skill Test is an agent skill from Donchitos/Claude-Code-Game-Studios. Validate skill files for structural compliance and behavioral correctness. Four modes: static linter, spec, category rubric, audit.

Its SKILL.md is about 5.9k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Education, covering Linting and formatting and Quizzes and assessments. The repository describes itself as: Turn Claude Code into a full game dev studio — 49 AI agents, 72 workflow skills, and a complete coordination system mirroring real studio hierarchy. The licence is MIT.

When your agent uses it

  • Tasks that involve Linting and formatting
  • Tasks that involve Quizzes and assessments

Example prompts

  • “/skill-test”

Requirements

  • Pre-approved tools (allowed-tools): Read, Glob, Grep, Write, Bash(bash "*/.claude/skills/skill-test/../../hooks/yaml-helper.sh" resolve_config *)

Workflow steps

2 steps, taken from the step headings in SKILL.md.

  1. Parse Arguments
  2. Recommended Next Steps

What it can do on your machine

Read from SKILL.md and the folder at commit b21fa0f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Glob
    • Grep
    • Write
    • Bash(bash "*/.claude/skills/skill-test/../../hooks/yaml-helper.sh" resolve_config *)

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Skill Test loads about 5.9k tokens when it runs. Until then it costs about 36 tokens; SKILL.md has 2,868 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~36
When it runs · the whole SKILL.md, loaded when a task matches
~5.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Donchitos/Claude-Code-Game-Studios at commit b21fa0f, republished under its MIT licence (© Donchitos). 2,868 words, ~5,921 tokens.

Download SKILL.mdSave it as .claude/skills/skill-test/SKILL.md (or your agent's skills folder).
name
skill-test
description
Validate skill files for structural compliance and behavioral correctness. Four modes: static linter, spec, category rubric, audit.
allowed-tools
Read, Glob, Grep, Write, Bash(bash "*/.claude/skills/skill-test/../../hooks/yaml-helper.sh" resolve_config *)
argument-hint
static [skill-name | all] | spec [skill-or-agent-name] | category [skill-or-agent-name | all] | audit
user-invocable
true
model
sonnet

!bash "${CLAUDE_SKILL_DIR}/../../hooks/yaml-helper.sh" resolve_config --keys automation

Automation mode: Resolve modes.automation (project.local.yaml → project.yaml → default collaborative). Every AskUserQuestion call and every file write follows .claude/docs/automation-modes.md (collaborative asks always · guided major-only · autonomous logs and proceeds; automation_always_ask categories always prompt).

Skill Test

Validates skills (.claude/skills/*/SKILL.md) and agents (.claude/agents/*.md) for structural compliance and behavioral correctness. No external dependencies — runs entirely within the existing skill/hook/template architecture.

Four modes:

ModeCommandPurposeToken Cost
static/skill-test static [name|all]Structural linter — 7 compliance checks per skill (skills only)Low (~1k/skill)
spec/skill-test spec [name]Behavioral verifier — evaluates assertions in a skill's or agent's test specMedium (~5k each)
category/skill-test category [name|all]Category rubric — checks a skill or agent against its category-specific metricsLow (~2k each)
audit/skill-test auditCoverage report — skills, agent specs, last test datesLow (~3k total)

Phase 1: Parse Arguments

Determine mode from the first argument:

  • static [name] → run 7 structural checks on one skill
  • static all → run 7 structural checks on all skills (Glob .claude/skills/*/SKILL.md)
  • spec [name] → read the skill or agent + its test spec, evaluate assertions
  • category [name] → run category-specific rubric from CCGS Skill Testing Framework/quality-rubric.md
  • category all → run category rubric for every skill and every agent that has a category: in catalog
  • audit (or no argument) → read catalog, list all skills and agents, show coverage

If the argument is unrecognized, output usage and stop.

Resolve the name before spec or category. Look it up in CCGS Skill Testing Framework/catalog.yaml: an entry under skills: is a skill (.claude/skills/[name]/SKILL.md); an entry under agents: is an agent (.claude/agents/[name].md). With no catalog entry, use whichever of those two files exists. Only when neither exists, report "'[name]' is neither a skill in .claude/skills/ nor an agent in .claude/agents/." and stop. A name that is also an ordinary word is still a name: /skill-test spec help tests the /help skill, never a request for this skill's usage.

static checks SKILL.md structure, so it is skills-only. Given an agent name, say so and point to /skill-test spec [name] — do not report the agent as missing.


Phase 2A: Static Mode — Structural Linter

For each skill being tested, read its SKILL.md fully and run all 7 checks:

Check 1 — Required Frontmatter Fields

The file must contain all of these in the YAML frontmatter block:

  • name:
  • description:
  • argument-hint:
  • user-invocable:
  • allowed-tools:

FAIL if any are absent. A file whose frontmatter does not parse fails Check 1 too — malformed YAML is a structural defect this check exists to catch, not an unassessable file; see the per-skill result rule below.

Check 2 — Multiple Phases

The skill must have ≥2 numbered phase headings. Look for patterns like:

  • ## Phase N or ## Phase N:
  • ## N. (numbered top-level sections)
  • At least 2 distinct ## headings if phases aren't explicitly numbered

FAIL if fewer than 2 phase-like headings are found.

Check 3 — Verdict Keywords

The skill must communicate a clear outcome. Accept any of:

  • Gate / review verdicts — PASS, FAIL, CONCERNS, APPROVED, BLOCKED, COMPLETE, READY, COMPLIANT, NON-COMPLIANT
  • Go / no-go verdicts — PROCEED, PIVOT, KILL, GO, NO-GO
  • Severity scales — CRITICAL, HIGH, MEDIUM, LOW. Audit skills rank findings by severity instead of issuing one verdict for the whole run.

FAIL if none are present and the skill produces an assessment — its description or body promises a review, audit, check, gate, or readiness judgement.

WARN (never FAIL) if none are present and the skill's output is an artifact or a value rather than a judgement. /settings is the reference case: it prints and writes configuration and has no verdict to give. Do not invent one to satisfy this check.

A narrower list — gate verdicts only, hard FAIL on anything else — would wrongly fail skills for reasons that are not their fault: /prototype and /vertical-slice advertise PROCEED/PIVOT/KILL in their own descriptions, /adopt and /security-audit rank by severity, and /settings has no verdict by design. A linter that produces false failures on legitimate patterns stops being trusted.

Check 4 — Collaborative Protocol Language

The skill must contain ask-before-write language. Look for:

  • "May I write" (canonical form)
  • "before writing" or "approval" near file-write instructions
  • "ask" + "write" in close proximity (within same section)

WARN if absent (some read-only skills legitimately skip this). FAIL if allowed-tools includes Write or Edit but no ask-before-write language is found.

Check 5 — Next-Step Handoff

The skill must end with a recommended next action or follow-up path. Look for:

  • A final section mentioning another skill (e.g., /story-done, /gate-check)
  • "Recommended next" or "next step" phrasing
  • A "Follow-Up" or "After this" section

WARN if absent.

Check 6 — Fork Context Complexity

If frontmatter contains context: fork, the skill should have ≥5 phase headings (## level or numbered Phase N headers). Fork context is for complex multi-phase skills; simple skills should not use it.

WARN if context: fork is set but fewer than 5 phases found.

Check 7 — Argument Hint Plausibility

argument-hint must be non-empty. If the skill body mentions multiple modes (e.g., "Mode A | Mode B"), the hint should reflect them. Cross-reference the hint against the first phase's "Parse Arguments" section.

WARN if hint is "" or if documented modes don't match hint.


Static Mode Output Format

For a single skill:

=== Skill Static Check: /[name] ===

Check 1 — Frontmatter Fields:    PASS
Check 2 — Multiple Phases:       PASS (7 phases found)
Check 3 — Verdict Keywords:      PASS (PASS, FAIL, CONCERNS)
Check 4 — Collaborative Protocol: PASS ("May I write" found)
Check 5 — Next-Step Handoff:     WARN (no follow-up section found)
Check 6 — Fork Context Complexity: PASS (8 phases, context: fork set)
Check 7 — Argument Hint:         PASS

Verdict: WARNINGS (1 warning, 0 failures)
Recommended: Add a "Follow-Up Actions" section at the end of the skill.

A WARN or FAIL line names its cause in parentheses, and any verdict other than COMPLIANT ends with a Recommended: line naming the fix.

The single-skill Verdict: is one of four values, the same as the static all Result column: COMPLIANT (no warnings, no failures), WARNINGS (warnings, no failures), NON-COMPLIANT (any FAIL), or NOT ASSESSED (the file could not be read or parsed, or its checks could not run — name the reason).

For static all, produce a summary table then list any non-compliant skills:

=== Skill Static Check: All 74 Skills ===

Skill                  | Result       | Issues
-----------------------|--------------|-------
gate-check             | COMPLIANT    |
design-review          | COMPLIANT    |
story-readiness        | WARNINGS     | Check 5: no handoff
...

Summary: 48 COMPLIANT, 3 WARNINGS, 1 NON-COMPLIANT, 1 NOT ASSESSED
Aggregate Verdict: N WARNINGS / N FAILURES / N NOT ASSESSED

NOT ASSESSED is a per-skill result here, not only an aggregate line. A skill whose file is missing or otherwise unreadable (permissions, not found), so no check could even start, is reported as NOT ASSESSED with the reason — never omitted from the table and never counted as COMPLIANT. Ranked above COMPLIANT, below WARNINGS and NON-COMPLIANT. A file that was read but whose frontmatter does not parse is a different case: Check 1 fails on it (see above), so it is reported NON-COMPLIANT, not NOT ASSESSED — the defect is in the skill, not in the linter's access to it.

And state the denominator. All 74 Skills in the header must be the number actually examined, not the number that exist: report [N] of [M] skills checked whenever they differ. A summary whose counts silently sum to less than its own title is the failure this skill is supposed to catch in others.

No file writes in static mode.


Phase 2B: Spec Mode — Behavioral Verifier

Step 1 — Locate Files

Use the skill or agent file resolved in Phase 1. Look up the spec path from CCGS Skill Testing Framework/catalog.yaml — use the spec: field on the matching skills: or agents: entry.

If either is missing:

  • Missing skill or agent: the Phase 1 message.
  • Missing spec path in catalog: "No spec path set for '[name]' in catalog.yaml."
  • Spec file not found at path: "Spec file missing at [path]. Run /skill-test audit to see coverage gaps."
Step 2 — Read Both Files

Read the skill or agent file and the test spec file completely.

Step 3 — Evaluate Assertions

Evaluate against what the model running it can see. A skill runs in a session, and a spawned agent in its own context, and both have the project's CLAUDE.md loaded along with every file it imports on an @path line (a spawned agent quotes coordination-rules.md word for word without reading it). Read those files too. A rule stated there counts for every skill and agent — cite the file it came from. Where the skill's or agent's own file contradicts it, the own file wins: it is the more specific instruction.

For an agent, the spec's sections are evaluated against the agent file — and against every skill its frontmatter lists under skills:, which Claude Code loads into the agent at launch:

  • Static Assertions — check each against the agent's frontmatter and body. An assertion that names a literal value (a model: alias, a frontmatter key, a tool name) is an exact comparison with the file: model: inherit does not satisfy "Model tier is sonnet", and a near match is FAIL, never PARTIAL.
  • Test Cases — evaluate each case's expected behavior against the agent's written instructions, the same way a skill's are evaluated below. A case that names a gate ID (LP-FEASIBILITY, CD-PILLARS, …) is that gate's invocation: the spawning skill has the agent read .claude/docs/director-gates/[gate-id].md first, so that file's Prompt and Verdicts are the agent's instructions for the case — read it too.
  • Redirect and escalation cases — the agent is asked for work another role owns, or meets a conflict it cannot settle. The case is met when the loaded coordination-rules.md covers the step — rule 2 (no binding decisions outside its domain), rule 3 (escalate a conflict to the shared parent) or rule 5 (no files outside its directories without delegation) — and the agent's own file names the owning role in its collaborator, delegation, escalation or "must not" lists. Cite both; do not require the agent to restate the redirect in its own words. It is a FAIL when the agent's file claims that work for itself, or when no loaded file names who owns it.
  • Protocol Compliance — use the spec's own ## Protocol Compliance list in place of the four skill checks below.

For a skill, check each of the spec's Static Assertions against the SKILL.md frontmatter and body the same way; a literal value is an exact comparison. /skill-test static runs only its 7 fixed checks, so a spec's own static lines — a verdict keyword, a phase, "May I write" before a named file — are evaluated here or nowhere.

The rest of this step applies to skills and agents alike.

For each Test Case in the spec:

  1. Read the Fixture description (assumed state of project files)
  2. Read the Expected behavior steps
  3. Read each Assertion checkbox

A case with no Fixture reads its Input as the fixture; a case with no Assertions list treats each Expected behavior bullet as an assertion — most agent specs are written this way, and a case verdict is not left undefined just because it has no separate checklist.

For each assertion, evaluate whether the skill's written instructions, if followed correctly given the fixture state, would satisfy it. This is a Claude-evaluated reasoning check, not code execution.

Mark each assertion:

  • PASS — skill instructions clearly satisfy this assertion
  • PARTIAL — skill instructions partially address it, but with ambiguity
  • FAIL — skill instructions would NOT satisfy this assertion given the fixture
  • NOT ASSESSED — the assertion could not be evaluated at all: it names a fixture state the spec never defines, depends on runtime behavior no static read can settle, or references a file or section that does not exist (a file that is merely silent on the behaviour is FAIL or PARTIAL, not this). Rank it above PASS (an assertion nobody could evaluate has not been satisfied) and below PARTIAL and FAIL (an ambiguity somebody identified is more actionable than one nobody could reach). Do not resolve an unevaluable assertion to PASS because the skill "probably" handles it — that judgement is what the spec exists to replace.

For a skill's Protocol Compliance section (always present), evaluate each line of the spec's own list against the SKILL.md exactly as you evaluate a case assertion — PASS, PARTIAL, FAIL or NOT ASSESSED. Specs put rules there that no case repeats ("covered by the protocol compliance assertions above"), so a list that is not evaluated is a set of rules nobody checks. These four checks are the floor, added when the list does not already cover them:

  • Check whether the skill requires "May I write" before file writes
  • Check whether the skill presents findings before requesting approval
  • Check whether the skill ends with a recommended next step
  • Check whether the skill avoids auto-creating files without approval
Show full SKILL.md (903 more words)Show less
Step 4 — Build Report
=== Skill Spec Test: /[name] ===
Date: [date]
Spec: CCGS Skill Testing Framework/skills/[category]/[name].md

Static Assertions:
  [PASS] [assertion text]
  [NOT ASSESSED] [assertion text]
     Reason: [why it could not be evaluated]

Case 1: [Happy Path — name]
  Fixture: [summary]
  Assertions:
    [PASS] [assertion text]
    [FAIL] [assertion text]
       Reason: The skill's Phase 3 says "..." but the fixture state means "..."
  Case Verdict: FAIL

Case 2: [Edge Case — name]
  ...
  Case Verdict: PASS

Protocol Compliance:
  [PASS] Uses "May I write" before file writes
  [PASS] Presents findings before asking approval
  [PARTIAL] No explicit next-step handoff at end

Overall Verdict: FAIL (1 case failed, 1 protocol line partial)

A Case Verdict is the worst result among its assertions, and the Overall Verdict the worst across the static assertions, the cases and Protocol Compliance, in this order: FAIL, PARTIAL, NOT ASSESSED, PASS. An assertion nobody could evaluate keeps the overall result from reading PASS.

For an agent, the header is === Agent Spec Test: [name] ===, Spec: is its path under CCGS Skill Testing Framework/agents/, and a Static Assertions: block comes before Case 1.

Step 5 — Offer to Write Results

"May I write these results to CCGS Skill Testing Framework/results/skill-test-spec-[name]-[date].md and update CCGS Skill Testing Framework/catalog.yaml?"

If yes:

  • Write results file to CCGS Skill Testing Framework/results/
  • Update the skill's or agent's entry in CCGS Skill Testing Framework/catalog.yaml:
    • last_spec: [date]
    • last_spec_result: PASS|PARTIAL|FAIL|NOT ASSESSED — the Overall Verdict

Phase 2D: Category Mode — Rubric Evaluation

Step 1 — Locate Skill and Category

Use the skill or agent file resolved in Phase 1. Look up the category: field on its skills: or agents: entry in CCGS Skill Testing Framework/catalog.yaml.

If neither file exists: the Phase 1 message. If no category: field: "No category assigned for '[name]' in catalog.yaml. Add category: [name] to its entry first."

For category all: collect every skill and every agent with a category: field and process each, reporting skills and agents in separate tables. category: utility skills are evaluated against U1 (static checks pass) and U2 (gate mode correct if applicable) only — skip to the static mode for U1. Cross-check against .claude/skills/*/SKILL.md and .claude/agents/*.md (Audit mode's Step 2 glob): list any skill or agent missing from the catalog, or catalogued with no category:, by name as NOT ASSESSED — never silently excluded from the run.

Step 2 — Read Rubric Section

Read CCGS Skill Testing Framework/quality-rubric.md. Extract the section matching the category (e.g., ### gate, ### team; an agent's category is under ## Agent Categories, e.g. ### director). If the rubric has no section for the category, the result is NOT ASSESSED: name the missing section, and never borrow another category's metrics.

Step 3 — Read Skill

Read the skill's SKILL.md or the agent's .claude/agents/[name].md fully, and the project context Phase 2B Step 3 describes — a metric met by a rule in CLAUDE.md or a file it imports is met, citing that file. Its rule for redirect and escalation cases decides the domain, deferral and escalation metrics too (D2, D3, L2, S1–S3, O2).

Step 4 — Evaluate Rubric Metrics

For each metric in the category's rubric table:

  1. Check whether the skill's or agent's written instructions clearly satisfy the criterion
  2. Mark PASS, FAIL, WARN, or NOT ASSESSED (the metric could not be evaluated — name why)
  3. For FAIL/WARN/NOT ASSESSED, identify the exact gap in the text (quote the relevant section, note its absence, or name what could not be evaluated)
Step 5 — Output Report

For an agent, the header is === Agent Category Check: [name] ([category]) ===.

=== Skill Category Check: /[name] ([category]) ===

Metric G1 — Review mode read:      PASS
Metric G2 — Director panel width:  FAIL
  Gap: Phase 3 spawns only CD-PHASE-GATE at `workflow: full`; TD-PHASE-GATE, PR-PHASE-GATE, AD-PHASE-GATE absent
Metric G3 — Lean mode: PHASE-GATE only: PASS
Metric G4 — Solo mode: no directors:    PASS
Metric G5 — No auto-advance:       PASS

Verdict: FAIL (1 failure, 0 warnings)
Fix: Size the Phase 3 panel from `modes.workflow` — PR at `minimal`, TD + PR at
     `standard`, all four at `full` — and name any perspective a narrower panel leaves out.

The category verdict, first match wins: FAIL when any metric fails; else WARNINGS when any metric warns; else NOT ASSESSED when any metric could not be evaluated (a rubric section missing, a file unreadable); else PASS when every metric passes — the same ranking as static and spec mode. It is last_category_result in the catalog.

Step 6 — Offer to Update Catalog

"May I update CCGS Skill Testing Framework/catalog.yaml to record this category check (last_category, last_category_result) for [name]?"


Phase 2C: Audit Mode — Coverage Report

Step 1 — Read Catalog

Read CCGS Skill Testing Framework/catalog.yaml. If missing, note that catalog doesn't exist yet (first-run state).

Step 2 — Enumerate All Skills and Agents

Glob .claude/skills/*/SKILL.md to get the complete list of skills. Extract skill name from each path (directory name).

Glob .claude/agents/*.md for the complete list of agents — the repo itself, not the catalog, is the covered set (.claude/rules/skill-authoring.md §5: gates derive their covered set, they do not enumerate it). Compare both globs against the catalog's skills:/agents: entries and report any skill or agent missing from the catalog by name, so an uncatalogued one cannot drop out silently.

Step 3 — Build Skill Coverage Table

For each skill:

  • Check if a spec file exists (use the spec: path from catalog, or glob CCGS Skill Testing Framework/skills/*/[name].md)
  • Look up last_static, last_static_result, last_spec, last_spec_result, last_category, last_category_result, category from catalog (or mark as "never" / "—" if not in catalog)
  • Priority comes from catalog priority: field (critical/high/medium/low)
Step 3b — Build Agent Coverage Table

For each agent in catalog's agents: section:

  • Check if a spec file exists (use the spec: path from catalog, or glob CCGS Skill Testing Framework/agents/*/[name].md)
  • Look up last_spec, last_spec_result, last_category, last_category_result, category from catalog
Step 4 — Output Report
=== Skill Test Coverage Audit ===
Date: [date]

SKILLS (74 total)
Specs written: 73 (99%) | Never static tested: 74 | Never category tested: 74

Skill                  | Cat      | Has Spec | Last Static | S.Result | Last Cat | C.Result | Priority
-----------------------|----------|----------|-------------|----------|----------|----------|----------
gate-check             | gate     | YES      | never       | —        | never    | —        | critical
design-review          | review   | YES      | never       | —        | never    | —        | critical
...

AGENTS (49 total)
Agent specs written: 49 (100%)

Agent                  | Category   | Has Spec | Last Spec   | Result | Last Cat | C.Result
-----------------------|------------|----------|-------------|--------|----------|----------
creative-director      | director   | YES      | never       | —      | never    | —
technical-director     | director   | YES      | never       | —      | never    | —
...

Top 5 Priority Gaps (skills with no spec, critical/high priority):
(none if all specs are written)

Skill coverage:  73/74 specs (99%)
Agent coverage:  49/49 specs (100%)

No file writes in audit mode.

Offer: "Would you like to run /skill-test static all to check structural compliance across all skills? /skill-test category all to run category rubric checks? Or /skill-test spec [name] to run a specific behavioral test?"


After any mode completes, offer contextual follow-up:

  • After static [name]: "Run /skill-test spec [name] to validate behavioral correctness if a test spec exists."
  • After static all with failures: "Address NON-COMPLIANT skills first. Run /skill-test static [name] individually for detailed remediation guidance."
  • After spec [name] PASS: "Update CCGS Skill Testing Framework/catalog.yaml to record this pass date. Consider running /skill-test audit to find the next spec gap."
  • After spec [name] FAIL: "Review the failing assertions and update the skill or agent, or the test spec, to resolve the mismatch."
  • After audit: "Start with the critical-priority gaps. Use the spec template at CCGS Skill Testing Framework/templates/skill-test-spec.md (agents: agent-test-spec.md) to create new specs."

© Donchitos, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/skill-test of Donchitos/Claude-Code-Game-Studios.

Open the folder on GitHubat commit b21fa0f

Compare with similar skills

Skill Test next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Skill Test compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Skill Test this skillDonchitos/Claude-Code-Game-Studios26k—~5.9kAutomated safety check: PassMIT
DeepTutor CLIHKUDS/DeepTutor41k—~2.3kAutomated safety check: PassApache-2.0
AI Engineering Placement Quizrohitg00/ai-engineering-from-scratch65k—~2kAutomated safety check: PassMIT
Codebase to Coursezarazhangrui/codebase-to-course5.7k—~4.4kAutomated safety check: PassNone
AI Engineering Phase Quizrohitg00/ai-engineering-from-scratch65k—~2.1kAutomated safety check: PassMIT
Scholar EvaluationK-Dense-AI/claude-scientific-writer2.4k2 repos~2.9kAutomated safety check: NotesMIT

Similar skills

  • DeepTutor CLI

    HKUDS/DeepTutor

    Teaches the agent to set up and run DeepTutor from the command line: chat and capabilities, knowledge bases, partners, memory, sessions, notebooks and the server or Web app.

    41k GitHub stars~2.3k tokensUpdated 3 days ago
    EducationAuto-check passed
  • AI Engineering Placement Quiz

    rohitg00/ai-engineering-from-scratch

    Runs a 10-question quiz across five areas to place a learner in the AI Engineering from Scratch curriculum, so they skip what they already know.

    65k GitHub stars~2k tokensUpdated yesterday
    EducationAuto-check passed
  • Codebase to Course

    zarazhangrui/codebase-to-course

    Turns a codebase into an interactive single-page HTML course for non-technical learners, with scroll modules, animated diagrams, quizzes and plain-English code translations.

    5.7k GitHub stars~4.4k tokensUpdated 6 mo ago
    EducationAuto-check passed
  • AI Engineering Phase Quiz

    rohitg00/ai-engineering-from-scratch

    Quizzes you on a completed phase of the AI Engineering from Scratch course, taking a phase number or name and mapping it to that phase's directory.

    65k GitHub stars~2.1k tokensUpdated yesterday
    EducationAuto-check passed
  • Scholar Evaluation

    K-Dense-AI/claude-scientific-writer

    Provide qualitative-first, evidence-traceable developmental review of scholarly works and audit low-stakes research-assessment rubrics with optional local quality controls.

    2.4k GitHub starsUsed in 2 repos~2.9k tokens
    EducationAuto-check: notes
  • Evaluation

    guanyang/open-agent-hub

    This skill should be used when building agent evaluation systems: deterministic checks, regression suites, multi-dimensional rubrics, quality gates, production monitoring, baseline comparison, and…

    973 GitHub starsUsed in 2 repos~4.2k tokens
    EducationAuto-check passed

More from Donchitos/Claude-Code-Game-Studios

All 73 skills in this repo
  • Game Asset Audit

    Donchitos/Claude-Code-Game-Studios

    Audits game assets against naming conventions, file size budgets and format standards, and finds orphaned assets and missing references.

    26k GitHub stars~2k tokensUpdated 8 days ago
    Auto-check passed
  • Game Asset Spec Writer

    Donchitos/Claude-Code-Game-Studios

    Writes per-asset visual specs and AI image-generation prompts for a game's characters, enemies and screens, driven by the GDD, art bible and an entity inventory.

    26k GitHub stars~5k tokensUpdated 8 days ago
    Auto-check passed
  • Game Balance Check

    Donchitos/Claude-Code-Game-Studios

    Checks game data and formulas for balance outliers, broken progression, degenerate strategies and economy problems, and answers 'could not run' when the data is missing.

    26k GitHub stars~2.2k tokensUpdated 8 days ago
    Auto-check passed
  • Structured Bug Reports

    Donchitos/Claude-Code-Game-Studios

    Turns a description into a structured bug report, or scans code for likely bugs, then verifies and closes reports through four modes.

    26k GitHub stars~2.5k tokensUpdated 8 days ago
    Auto-check: notes
  • Bug Triage

    Donchitos/Claude-Code-Game-Studios

    Reviews the open bug backlog, separates severity from priority, assigns fixes to sprints and reports systemic trends, writing a dated triage file.

    26k GitHub stars~2.3k tokensUpdated 8 days ago
    Auto-check passed
  • Changelog Generator for Games

    Donchitos/Claude-Code-Game-Studios

    Generates an internal or player-facing changelog from git commits and sprint data, filtering out framework maintenance commits so that only work on the game itself reaches release copy.

    26k GitHub stars~2.5k tokensUpdated 8 days ago
    Auto-check: notes

Categories

Questions about Skill Test

What does Skill Test do?

Validate skill files for structural compliance and behavioral correctness. Skill Test is an agent skill from Donchitos/Claude-Code-Game-Studios. Validate skill files for structural compliance and behavioral correctness.

When should I use Skill Test?

Skill Test fits situations like: tasks that involve Linting and formatting; tasks that involve Quizzes and assessments.

How do I install Skill Test in Claude Code?

Run `npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-test -a claude-code`. Or copy the skill folder (.claude/skills/skill-test in Donchitos/Claude-Code-Game-Studios) into .claude/skills/skill-test in your project. Claude Code loads it when a task matches its description.

How do I install Skill Test in Codex?

Run `npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-test -a codex`. Or copy the skill folder (.claude/skills/skill-test in Donchitos/Claude-Code-Game-Studios) into .agents/skills/skill-test in your project. Codex loads it when a task matches its description.

Can I use Skill Test in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/skill-test, .gemini/skills/skill-test, .github/skills/skill-test and .opencode/skills/skill-test in your project.

What does Skill Test need to run?

Going by SKILL.md and its folder, Skill Test needs the command-line tools its instructions call (bash). Its frontmatter pre-approves these tools: Read, Glob, Grep, Write, Bash(bash "*/.claude/skills/skill-test/../../hooks/yaml-helper.sh" resolve_config *).

Does Skill Test access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Skill Test safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Skill Test use?

Skill Test is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Skill Test use?

About 5.9k tokens (SKILL.md is roughly 24k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Skill Test?

Skills that share tags, products or a category with Skill Test: DeepTutor CLI (HKUDS/DeepTutor, 41k stars), AI Engineering Placement Quiz (rohitg00/ai-engineering-from-scratch, 65k stars), Codebase to Course (zarazhangrui/codebase-to-course, 5.7k stars) and AI Engineering Phase Quiz (rohitg00/ai-engineering-from-scratch, 65k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Skill Test?

Donchitos (a GitHub user) maintains it in Donchitos/Claude-Code-Game-Studios, which has 25,834 GitHub stars. The repository holds 73 skills in this directory. The repository was last updated on September 29, 2026.

Source: Donchitos/Claude-Code-Game-Studios on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.