skill-evolution
Skill337 starsChanged 10 months agoMITView on GitHub
Global evolution system for ship-faster skills. Uses hooks to capture context, failures, and session summaries, then generates patch suggestions (no auto edits) via skill-improver. Use when you want the skills to self-improve safely and continuously.
12 other projects use a version of this.
Adopted by
Most recently taken up by
- Sirius-Ji/dsh-disciplinary-skills-for-greenhandstheir own version, first seen Nov 8, 2026
- coco-research/cocotheir own version, first seen Nov 1, 2026
- sqrDAO/sqrSKILLStheir own version, first seen Oct 19, 2026
- AidALL/ghost-alicetheir own version, first seen Oct 11, 2026
- sakuruamayday-ops/enterprise-project-application-assistanttheir own version, first seen Oct 9, 2026
- JameMy0001/antigravity-skills-hubtheir own version, first seen Oct 2, 2026
Other versions12 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 12
- NVIDIA/NeMo-Agent-Toolkit★ 2.7ksame name
- coco-research/coco★ 797same name
- AidALL/ghost-alice★ 15same name
- juemin4-source/writing-pro-max★ 7same name
- Carlo1911/skill-evolution★ 6same name
- echoleesong/claude-skills-plugin★ 4same name
- sakuruamayday-ops/enterprise-project-application-assistant★ 2same name
- JameMy0001/antigravity-skills-hub★ 1same name
- Sirius-Ji/dsh-disciplinary-skills-for-greenhands★ 1same name
- sqrDAO/sqrSKILLS★ 1same name
2 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository40 other files it gives its agents.
- review-clean-codeSkill
- review-doc-consistencySkill
- review-merge-readinessSkill
- workflow-execute-plansSkill
- workflow-template-extractorSkill
- workflow-template-seederSkill
- cloudflareSkill
- deep-researchSkill
- mcp-cloudflareSkill
- mcp-stripeSkill
- mcp-supabaseSkill
- publish-x-articleSkill
- review-clean-codeSkill
- review-doc-consistencySkill
- review-merge-readinessSkill
- review-qualitySkill
- review-react-best-practicesSkill
- review-seo-auditSkill
- skill-creatorSkill
- skill-improverSkill
- stripeSkill
- supabaseSkill
- tool-ast-grep-rulesSkill
- tool-better-authSkill
- tool-design-style-selectorSkill
- tool-hooks-doctorSkill
- tool-openclawSkill
- tool-programmatic-seoSkill
- tool-schema-markupSkill
- tool-systematic-debuggingSkill
- tool-ui-ux-pro-maxSkill
- tool-x-article-publisherSkill
- workflow-brainstormSkill
- workflow-creatorSkill
- workflow-execute-plansSkill
- workflow-feature-shipperSkill
- workflow-project-intakeSkill
- workflow-ship-fasterSkill
- workflow-template-extractorSkill
- workflow-template-seederSkill
The file
We split this skill into the rules it gives an agent
11 rules. 0 are common, 5 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 8 edited versions we read keep these.
5
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Default hooks can only "log events" without automatically consolidating experience into skills.
- Very specific: line 16
When user chooses "yes to optimize", use skill-improver to generate minimal patch suggestions based on real run artifacts (still no …
- Very specific: line 22
Use skill-improver to propose a minimal patch
- Distinctive: line 29
Add to your global settings (or project settings) so hooks run automatically.
- Very specific: line 137
When you have just completed a "deliverable big task" (e.g., you have already written final.md or filled the run’s tasks.md Delivery …
- Distinctive: line 141
Do you want to optimize skills based on this run?
- Very specific: line 161
If user chooses 1A: Immediately run skill-improver, only give run_dir path as input (don't paste logs into conversation)
- Very specific: line 162
If user chooses 1B: Write "blocker + desired optimization direction" to evolution-review.md (or corresponding workflow run's final.md / …
- Distinctive: line 163
If user chooses 1C: Don't interrupt, just end (but still keep run artifacts for future retrospectives)
- Very specific: line 178
If user chooses to evolve: run skill-improver with the best run_dir (the workflow run_dir is usually better than evolution run_dir).
- Distinctive: line 193
No skills are edited automatically.
“Common” is measured: kept by at least 6 in 10 of the 8 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Evolution
This skill makes the skills library evolve based on real development signals without auto-editing skills. The default output is a patch suggestion only.
Why it exists (solving "too passive")
Default hooks can only "log events" without automatically consolidating experience into skills.
The goal of this skill is to turn retrospectives into a fixed closing action:
- At the end of each "big task", spend 60 seconds on Q&A confirmation: whether to optimize skills and which areas to prioritize
- When user chooses "yes to optimize", use
skill-improverto generate minimal patch suggestions based on real run artifacts (still no auto-editing of skill library)
Default strategy
- Capture context and failures into run artifacts
- Generate evolution candidates
- Use
skill-improverto propose a minimal patch - Human reviews and applies the patch
Global hooks (recommended)
Hooks live in: ~/.claude/skills/skill-evolution/hooks/
Add to your global settings (or project settings) so hooks run automatically.
Example (merge into ~/.claude/settings.json or <project>/.claude/settings.json):
Evolution settings
Configure behavior via ~/.claude/skills/skill-evolution/hooks/settings.json:
{
"min_fail_count": 2,
"ignore_tool_errors": true,
"noise_filters": {
"ignore_patterns": [
"typescript: type.*already exists",
"eslint:.*no-unused-vars.*react",
"prettier:.*prettier-ignore"
],
"max_failures_per_run": 20,
"recent_only": true,
"recent_window_minutes": 60
},
"output_format": {
"summary_only": false,
"include_context": true,
"include_recent_failures": 20,
"sort_by": "frequency"
}
}Settings explanation:
min_fail_count: Minimum occurrences of a single error type before generating a candidateignore_tool_errors: Whether to ignore tool-level errors (vs user code errors)noise_filters.ignore_patterns: List of regex patterns to ignoremax_failures_per_run: Maximum failures to record per session (prevent explosion)recent_only: Only look at failures within recent time windowrecent_window_minutes: Only count failures within the last N minutesoutput_format: Controls evolution-candidates.md output format
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash|Write|Edit",
"hooks": [
{
"type": "command",
"command": "bash ~/.claude/skills/skill-evolution/hooks/pre-tool.sh"
}
]
}
],
"PostToolUse": [
{
"matcher": "Bash",
"hooks": [
{
"type": "command",
"command": "bash ~/.claude/skills/skill-evolution/hooks/post-bash.sh \"$TOOL_OUTPUT\" \"$EXIT_CODE\""
}
]
},
{
"matcher": "Write|Edit",
"hooks": [
{
"type": "command",
"command": "bash ~/.claude/skills/skill-evolution/hooks/post-tool.sh \"$TOOL_OUTPUT\" \"$EXIT_CODE\""
}
]
}
],
"Stop": [
{
"matcher": "",
"hooks": [
{
"type": "command",
"command": "bash ~/.claude/skills/skill-evolution/hooks/session-end.sh"
}
]
}
]
}
}Run artifacts
Hooks write to project-local run folders:
<project-root>/runs/evolution/<run_id>/
logs/
events.jsonl
failures.jsonl
state.json
context.json
evolution-candidates.md
evolution-review.mdrun_id is stored in <project-root>/runs/evolution/.current so all hooks in a session write to the same run.
Evolution checkpoint (default action at end of big tasks)
When you have just completed a "deliverable big task" (e.g., you have already written final.md or filled the run’s tasks.md Delivery summary), you must do a brief retrospective when closing, and give the choice to the user.
In the conversation, ask only 3 questions (prefer multiple choice to reduce cost):
- Do you want to optimize skills based on this run?
- A. Yes, propose a patch now (recommend using
skill-improverfirst to generate minimal patch) - B. Record the issue first, optimize later
- C. Not needed
- A. Yes, propose a patch now (recommend using
- What was the biggest blocker this time?
- A. Missing input/context fields (need clearer I/O contracts)
- B. Unclear plan/granularity too large (need to split or clarify validation steps)
- C. Environment/dependency/command issues (need scripting or fixed commands)
- D. UI/design iterations (need clearer design-system or UI subtask splitting)
- E. External service/permissions/configuration (need clearer confirmation points and verification)
- F. Other (explain in one sentence)
- Which direction do you want to prioritize for optimization?
- A. I/O contracts: Fix artifact names, fields, paths
- B. Index/summary: Less context, better resume navigation (proposal/tasks)
- C. Scripts/templates: Turn repetitive steps into deterministic scripts
- D. Confirmation points: Reduce risky actions, confirm earlier/more clearly
Execution rules:
- If user chooses 1A: Immediately run
skill-improver, only giverun_dirpath as input (don't paste logs into conversation) - If user chooses 1B: Write "blocker + desired optimization direction" to
evolution-review.md(or corresponding workflow run'sfinal.md/tasks.md), process collectively next time - If user chooses 1C: Don't interrupt, just end (but still keep run artifacts for future retrospectives)
When to evolve (Ship Faster focus)
- Next.js upgrade or migration issue solved
- Guardrails problem fixed (lint/typecheck/build)
- Supabase error or migration pattern learned
- Stripe setup or billing flow resolved
- Vercel deploy or GitHub CI issue resolved
- AI SEO setup or indexing issue solved
How to evolve
- Hooks create
evolution-candidates.md+evolution-review.mdwith the latest signals. - At the end of a big task, ask the 3 checkpoint questions (above) and let the user decide.
- If user chooses to evolve: run
skill-improverwith the bestrun_dir(the workflow run_dir is usually better than evolution run_dir). - Apply the patch manually and re-validate skills.
Example event
{"ts":"2026-01-11T12:00:00Z","event":"post-bash","category":"build","exit_code":1,"summary":"next build failed: Module not found","artifacts":["logs/failures.jsonl"]}Outputs
evolution-candidates.md(auto-generated)evolution-review.md(auto-generated, includes the 3 questions)- Suggested patch from
skill-improver(manual apply)
No skills are edited automatically.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

