Darwin Skill Optimizer
alchaincyf/darwin-skill
Scores SKILL.md files on a nine-dimension rubric, then improves them in a keep-or-revert loop with independent judge agents, test prompts, git history and human checkpoints.
Improves a single skill through a test, fix and retest loop, keeping or reverting each change based on how the static and category scores move.
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improve --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ 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-improve .claude/skills/skill-improve && rm -rf skills-srcUse ~/.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/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .claude/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improveType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improve --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/skill-improve .agents/skills/skill-improve && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .agents/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improve --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/skill-improve .cursor/skills/skill-improve && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .cursor/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Donchitos/Claude-Code-Game-Studios.git --path .claude/skills/skill-improve--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improve --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/skill-improve .gemini/skills/skill-improve && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .gemini/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improveInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/skill-improve .github/skills/skill-improve && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .github/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Donchitos/Claude-Code-Game-Studios skill-improve --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Donchitos/Claude-Code-Game-Studios.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/skill-improve .opencode/skills/skill-improve && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "skill-improve" agent skill from https://github.com/Donchitos/Claude-Code-Game-Studios/tree/main/.claude/skills/skill-improve into .opencode/skills/skill-improve/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "skill-improve", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
skill-improveImproves a single skill through a test, fix and retest loop, keeping or reverting each change based on how the static and category scores move.
You name one skill, for example `/skill-improve tech-debt`, and the agent runs a test-fix-retest loop on it. It stops if the argument is missing or the skill file does not exist. The baseline comes from `/skill-test static`, which counts failures and warnings and records which of seven checks failed, and a category baseline is added when the skill has a category in the testing framework's catalog.
A NOT ASSESSED result, such as an unreadable file, ends the run, because zero failures from a file nobody could read is not a clean result. If both baselines are clean, the skill reports that nothing needs improving. Otherwise the agent reads the full skill file, diagnoses each failing check, applies targeted fixes, retests, and keeps or reverts each change depending on the score.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit b21fa0f. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGlobGrepWriteBashBash(bash "*/.claude/skills/skill-improve/../../hooks/yaml-helper.sh" resolve_config *)From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
bashgitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Skill Improvement Loop loads about 1.6k tokens when it runs. Until then it costs about 30 tokens; SKILL.md has 820 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Glob, Grep, Write, Bash, Bash(bash "*/.claude/skills/skill-improve/../../hooks/yaml-helper.sh"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.
The full file from Donchitos/Claude-Code-Game-Studios at commit b21fa0f, republished under its MIT licence (© Donchitos). 820 words, ~1,585 tokens.
.claude/skills/skill-improve/SKILL.md (or your agent's skills folder).!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).
Runs an improvement loop on a single skill: test → fix → retest → keep or revert.
Read the skill name from the first argument. If missing, output usage and stop:
Usage: /skill-improve [skill-name]
Example: /skill-improve tech-debtVerify .claude/skills/[name]/SKILL.md exists. If not, stop with:
"Skill '[name]' not found."
Run /skill-test static [name] and record the baseline score:
Display to the user:
Static baseline: [N] failures, [M] warnings
Failing: Check 4 (no ask-before-write), Check 5 (no handoff)If the static result is NOT ASSESSED (the skill file could not be read or parsed), stop and report it with its reason: there is no score to improve, and 0 FAILs from a file nobody could read is not a clean result.
If baseline is 0 FAILs and 0 WARNs, note it and proceed to Phase 2b.
Look up the skill's category: field in CCGS Skill Testing Framework/catalog.yaml.
If no category: field is found, display:
"Category: not yet assigned — skipping category checks."
and skip to Phase 3.
If category is found, run /skill-test category [name] and record the category baseline:
Display to the user:
Category baseline: [N] failures, [M] warnings ([category] rubric)A category result of NOT ASSESSED (a rubric section the skill-test could not find or apply) is reported with its reason and is not a zero: the category dimension is then excluded from "already passes" below.
If BOTH static and category baselines are 0 FAILs and 0 WARNs — and neither is NOT ASSESSED — stop: "This skill already passes all static and category checks. No improvements needed."
Read the full skill file at .claude/skills/[name]/SKILL.md.
For each failing or warning static check, identify the exact gap:
context: fork set but fewer than 5 phases foundFor each failing or warning category check (if category was assigned in Phase 2b), identify the exact gap in the skill's text. For example:
modes.workflow (PR at minimal, TD + PR at standard,
all 4 at full)Show the full combined diagnosis to the user before proposing any changes.
Write a targeted fix for each failure and warning. Show the proposed changes as clearly marked before/after blocks. Only change what is failing — do not rewrite sections that are passing.
Ask: "May I write this improved version to .claude/skills/[name]/SKILL.md?"
If the user says no, stop here.
Record the current content of the skill file — the exact text, kept in this conversation — so Phase 6 can restore it.
Write the improved skill to .claude/skills/[name]/SKILL.md.
Re-run /skill-test static [name] and record the new static score — measured by that run, never stated from the edit.
If a category was assigned, also re-run /skill-test category [name] and record the new category score.
Display the comparison:
Static: Before [N] failures, [M] warnings → After [N'] failures, [M'] warnings
Category: Before [N] failures, [M] warnings → After [N'] failures, [M'] warnings (if applicable)
Combined: [before] → [after] (improved / no change / worse)[before] and [after] are the Phase 6 combined counts — failures plus
warnings, both dimensions — e.g. Combined: 3 → 0 (improved).
Count the combined failure total: static FAILs + category FAILs + static WARNs + category WARNs. A re-test that comes back NOT ASSESSED (for example, the edit broke the frontmatter so the file no longer parses) is never an improvement, whatever its counts: take the "did not improve" branch below.
If combined score improved (combined failure count is lower than baseline): Report: "Score improved. Changes kept." Show a summary of what was fixed in each dimension.
If combined score is the same or worse:
Report: "Combined score did not improve."
Show what changed and why it may not have helped.
Ask: "May I restore .claude/skills/[name]/SKILL.md to the content it had before this run?"
If yes: write the content recorded in Phase 5 back to the file with Write; if no, leave the file as written. Never
git checkout it — that returns the last committed version and discards any edits
made before this run that were not yet committed.
/skill-test static all to find the next skill with failures./skill-improve [next-name] to continue the loop on another skill./skill-test audit to see overall coverage progress.© Donchitos, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/skill-improve of Donchitos/Claude-Code-Game-Studios.
Open the folder on GitHubat commit b21fa0f
Skill Improvement Loop 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 | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Skill Improvement Loop this skillDonchitos/Claude-Code-Game-Studios | 26k | — | ~1.6k | Automated safety check: Notes | MIT | |
| Darwin Skill Optimizeralchaincyf/darwin-skill | 6.2k | 1 repos | ~4.7k | Automated safety check: Pass | MIT | |
| Skill Release Gaterohitg00/ai-engineering-from-scratch | 65k | — | ~1k | Automated safety check: Pass | MIT | |
| Open-Science Skill Creatoraipoch/open-science | 5.4k | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Skill JudgeshareAI-lab/Kode-CLI | 5.2k | 4 repos | ~7.5k | Automated safety check: Pass | Apache-2.0 | |
| Skill Quality ReviewerGalaxy-Dawn/claude-scholar | 5.7k | 1 repos | ~3k | Automated safety check: Pass | MIT |
alchaincyf/darwin-skill
Scores SKILL.md files on a nine-dimension rubric, then improves them in a keep-or-revert loop with independent judge agents, test prompts, git history and human checkpoints.
rohitg00/ai-engineering-from-scratch
Evaluates an Agent Skill bundle before release for structure, trigger quality, artifact improvement, script correctness, safety, installed-tree integrity and host portability.
aipoch/open-science
Creates, revises, evaluates and publishes skills in the Open-Science app through its native host.skills composer, with optional test prompts and benchmarks.
shareAI-lab/Kode-CLI
Evaluates the design quality of an agent skill against official specifications and patterns from existing examples, scoring it and suggesting improvements.
Galaxy-Dawn/claude-scholar
Scores a skill across description, content organization, writing style and structure, then produces letter grades and a prioritized improvement plan.
antongulin/opencode-skill-creator
Walks you through drafting, testing, evaluating and tuning a skill for OpenCode, from an intake interview to description optimization.
Donchitos/Claude-Code-Game-Studios
Audits game assets against naming conventions, file size budgets and format standards, and finds orphaned assets and missing references.
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.
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.
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.
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.
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.
Categories
Improves a single skill through a test, fix and retest loop, keeping or reverting each change based on how the static and category scores move. You name one skill, for example `/skill-improve tech-debt`, and the agent runs a test-fix-retest loop on it. It stops if the argument is missing or the skill file does not exist.
Skill Improvement Loop fits situations like: fixing a skill that fails the framework's static checks; raising a skill's category rubric score without rewriting it from scratch; checking whether a skill already passes before spending time on edits.
Run `npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a claude-code`. Or copy the skill folder (.claude/skills/skill-improve in Donchitos/Claude-Code-Game-Studios) into .claude/skills/skill-improve in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Donchitos/Claude-Code-Game-Studios --skill skill-improve -a codex`. Or copy the skill folder (.claude/skills/skill-improve in Donchitos/Claude-Code-Game-Studios) into .agents/skills/skill-improve in your project. Codex loads it when a task matches its description.
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-improve -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-improve, .gemini/skills/skill-improve, .github/skills/skill-improve and .opencode/skills/skill-improve in your project.
Going by SKILL.md and its folder, Skill Improvement Loop needs the command-line tools its instructions call (bash and git). Our summary lists: The CCGS skill testing framework with `/skill-test` and its catalog file. Its frontmatter pre-approves these tools: Read, Glob, Grep, Write, Bash, Bash(bash "*/.claude/skills/skill-improve/../../hooks/yaml-helper.sh" resolve_config *).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Skill Improvement Loop is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.6k tokens (SKILL.md is roughly 6.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Skill Improvement Loop: Darwin Skill Optimizer (alchaincyf/darwin-skill, 6.2k stars), Skill Release Gate (rohitg00/ai-engineering-from-scratch, 65k stars), Open-Science Skill Creator (aipoch/open-science, 5.4k stars) and Skill Judge (shareAI-lab/Kode-CLI, 5.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
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.