Skip to content

atompilot/claude-skill-evo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

37 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Claude Skill Evo

Claude Code skills go stale. Claude Skill Evo makes them evolve.

Install ยท Quick Start ยท How It Works ยท Self-Evolution ยท ไธญๆ–‡ๆ–‡ๆกฃ

GitHub stars License Claude Code Plugin


For Claude Code users who want their skill system to grow with their project โ€” not decay into obsolete instructions.

One command. Your entire project gets a tailored skill system โ€” and every skill learns, detects staleness, and proposes its own updates.

/skill-evo

No config files. No templates to fill. No YAML to write. Claude Skill Evo scans your codebase, asks smart questions, and forges skills that actually match how you work.


Why Claude Skill Evo?

Without Claude Skill Evo With Claude Skill Evo
Manually write CLAUDE.md and skills from scratch Auto-generated from project scanning + guided Q&A
Skills go stale as your project evolves Skills detect their own staleness and propose fixes
Copy-paste generic templates Every path, command, and convention is your project's real data
One-time setup, then forgotten Run /skill-evo again anytime โ€” it only gets better
"I forgot to update the skill" Skills learn from your corrections in real-time

Quick Start

# Install (one time)
claude plugin marketplace add atompilot/claude-skill-evo
claude plugin install claude-skill-evo@claude-skill-evo

# Use (as many times as you want)
/skill-evo                              # Full scan โ†’ initialize or optimize
/skill-evo add API conventions          # Focus on a specific area
/skill-evo review                       # Audit all skills quality
/skill-evo review {prefix}-debug        # Audit a specific skill

How It Works

Every /skill-evo run starts by detecting your project state:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  /skill-evo                                                โ”‚
โ”‚                                                             โ”‚
โ”‚  Phase 0: State Detection                                   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”‚
โ”‚  โ”‚ No .claudeโ”‚  โ”‚ Has CLAUDE.mdโ”‚  โ”‚ Has CLAUDE.md + skillsโ”‚  โ”‚
โ”‚  โ”‚ directory โ”‚  โ”‚ but no skillsโ”‚  โ”‚                       โ”‚  โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ”‚
โ”‚       โ–ผ               โ–ผ                      โ–ผ              โ”‚
โ”‚  Initialize      Supplement              Optimize           โ”‚
โ”‚  (full setup)   (add skills)       (scan & improve)         โ”‚
โ”‚                                                             โ”‚
โ”‚  Phase 1: Project Scan (auto-detect everything)             โ”‚
โ”‚  Phase 2: Skill Planning (propose what to create/update)    โ”‚
โ”‚  Phase 3: Guided Q&A (smart questions with defaults)        โ”‚
โ”‚  Phase 4: Generate / Update (surgical edits, never nuke)    โ”‚
โ”‚  Phase 5: Verify & Report                                   โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

First Run โ€” Initialize

Claude Skill Evo scans your project and pre-fills answers before asking:

I scanned your project and found:

๐Ÿ“ Type: TypeScript monorepo
๐Ÿ› ๏ธ Framework: Next.js + tRPC
๐Ÿ“ฆ Package manager: pnpm
๐Ÿณ Docker: Yes (docker-compose.yml)
๐Ÿ“› Suggested prefix: myapp (from package.json)

Confirm and fill in what I couldn't detect...

Subsequent Runs โ€” Optimize

Compares your project's current state against existing skills:

๐Ÿ“Š Skill System Health Report

Existing skills:
  โœ… myapp-skill    v1.0.3  โ€” healthy
  โš ๏ธ myapp-debug    v1.0.1  โ€” 1 stale reference found
  โœ… myapp-digest   v1.0.0  โ€” healthy

Content health check:
  โš ๏ธ myapp-debug references src/utils/ but directory is now src/lib/
  โœ… All skill terminology consistent with CLAUDE.md

Improvement opportunities:
  1. ๐Ÿ†• Detected Vitest but no test skill โ†’ create one?
  2. ๐Ÿ”„ myapp-debug has stale path reference โ†’ update?

Which ones? (1,2 / all / skip)

What Gets Generated

.claude/
โ”œโ”€โ”€ CLAUDE.md                          # Project-level Claude instructions
โ”œโ”€โ”€ commands/
โ”‚   โ”œโ”€โ”€ {prefix}-commit.md             # Git commit conventions
โ”‚   โ”œโ”€โ”€ {prefix}-review.md             # Multi-agent code review
โ”‚   โ””โ”€โ”€ {prefix}-research.md           # Tech research workflow
โ”œโ”€โ”€ knowledge/                         # Project knowledge base
โ”‚   โ”œโ”€โ”€ decisions/                     # Architecture decisions
โ”‚   โ”œโ”€โ”€ research/                      # Tech research notes
โ”‚   โ”œโ”€โ”€ pitfalls/                      # Known pitfalls & lessons learned
โ”‚   โ”œโ”€โ”€ conventions/                   # Project conventions
โ”‚   โ””โ”€โ”€ references/                    # External references
โ”œโ”€โ”€ skills/
โ”‚   โ”œโ”€โ”€ {prefix}-skill/SKILL.md        # Meta-skill + evolution engine
โ”‚   โ”œโ”€โ”€ {prefix}-debug/SKILL.md        # Bug fix workflow + experience DB
โ”‚   โ”œโ”€โ”€ {prefix}-digest/SKILL.md       # Knowledge capture
โ”‚   โ””โ”€โ”€ {prefix}-todo/SKILL.md         # Project task management
โ””โ”€โ”€ evolution/                         # Cross-session evolution system
    โ”œโ”€โ”€ hooks/capture.sh               # Layer 1: event capture
    โ”œโ”€โ”€ hooks/digest.py                # Layer 2: signal extraction
    โ”œโ”€โ”€ evolution-digest.md            # Layer 3: analysis checkpoint
    โ””โ”€โ”€ session-meta.json              # Session counter + trigger state

{prefix} is auto-detected from your project (package.json, go.mod, Cargo.toml, etc.) โ€” you just confirm.

Skills and commands are tailored to your project โ€” not every template applies to every project. The meta-skill ({prefix}-skill) includes a built-in evolution engine โ€” run /{prefix}-skill evolve to trigger a full skill health scan.

Review mode audits existing skills with 4 parallel agents (structure, content quality, consistency, security):

/skill-evo review              # Audit all skills
/skill-evo review {prefix}-debug  # Audit a specific skill

Self-Evolution Protocol

This is what makes Claude Skill Evo different from every other scaffolding tool.

Every generated skill is a living document with three built-in evolution mechanisms:

1. Auto-Learn

Skills listen for learning signals during normal use:

Signal Example What happens
User correction "Don't use var, use const" Proposes adding the rule to the skill
Repeated pattern Same file structure used 3 times Proposes as a convention
Explicit instruction "Remember: always use UTC" Proposes writing to skill
Toolchain change New dependency added Proposes updating related skill

2. Stale Detection

Skills detect when their own content goes out of date:

Signal Example
Dead paths src/utils/ referenced but directory renamed to src/lib/
Failed commands pnpm test changed to pnpm vitest
API changes Framework method deprecated in new version
Norm conflicts Skill says "use tabs" but codebase uses spaces

3. Session Review

At the end of long sessions, skills proactively ask:

๐Ÿ“ Session Review โ€” I noticed things worth capturing:

1. [New pattern] AppError class adopted across all handlers โ†’ write to myapp-skill?
2. [Bug fix] OAuth token refresh race condition โ†’ write to myapp-debug/records/?

Write all? Or confirm one by one?

All updates require your confirmation. Skills propose, you decide.

4. Cross-Session Evolution (Hooks)

The three mechanisms above work within a single session. But what about corrections you made last week? Patterns that emerge over months?

Claude Skill Evo includes a three-layer incremental digest chain that captures interaction data across sessions and gets smarter over time โ€” without ever re-reading all historical data.

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  Three-Layer Evolution Architecture              โ”‚
โ”‚                                                                 โ”‚
โ”‚  Layer 1: CAPTURE (async, every session)                        โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ SessionStart  โ”‚  โ”‚UserPrompt    โ”‚  โ”‚ PostToolUse            โ”‚ โ”‚
โ”‚  โ”‚ (count+triggerโ”‚  โ”‚Submit        โ”‚  โ”‚ (Edit/Write/Bash/Read) โ”‚ โ”‚
โ”‚  โ”‚  conditions)  โ”‚  โ”‚(full prompt) โ”‚  โ”‚ selective capture      โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ”‚         โ”‚                 โ”‚                      โ”‚               โ”‚
โ”‚         โ–ผ                 โ–ผ                      โ–ผ               โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚  โ”‚           raw/prompts-{sid}.jsonl + tools-{sid}.jsonl    โ”‚     โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                           โ”‚                                      โ”‚
โ”‚  Layer 2: DIGEST (SessionEnd, Python)                            โ”‚
โ”‚                           โ–ผ                                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚  โ”‚  Extract signals from raw data:                          โ”‚     โ”‚
โ”‚  โ”‚  โ€ข corrections  ("ไธๅฏน", "should be", "wrong")           โ”‚     โ”‚
โ”‚  โ”‚  โ€ข instructions ("่ฎฐไฝ", "always", "never")              โ”‚     โ”‚
โ”‚  โ”‚  โ€ข patterns     (hot files โ‰ฅ3 edits, frequent cmds)      โ”‚     โ”‚
โ”‚  โ”‚  โ€ข failures     (exit code โ‰  0, command not found)       โ”‚     โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                           โ”‚                                      โ”‚
โ”‚                           โ–ผ                                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚  โ”‚              pending-signals.jsonl (append-only)          โ”‚     โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ”‚                           โ”‚                                      โ”‚
โ”‚  Layer 3: EVOLVE (next SessionStart, Claude)                     โ”‚
โ”‚                           โ–ผ                                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”     โ”‚
โ”‚  โ”‚  Trigger conditions:                                      โ”‚     โ”‚
โ”‚  โ”‚    pending signals โ‰ฅ 5  OR  sessions since last โ‰ฅ 3       โ”‚     โ”‚
โ”‚  โ”‚                                                           โ”‚     โ”‚
โ”‚  โ”‚  Claude reads:                                            โ”‚     โ”‚
โ”‚  โ”‚    evolution-digest.md  (checkpoint of all past analysis) โ”‚     โ”‚
โ”‚  โ”‚  + pending-signals.jsonl (only new signals)               โ”‚     โ”‚
โ”‚  โ”‚  + .claude/skills/      (current skill content)           โ”‚     โ”‚
โ”‚  โ”‚                                                           โ”‚     โ”‚
โ”‚  โ”‚  โ†’ Proposes updates โ†’ User confirms โ†’ Skills evolve       โ”‚     โ”‚
โ”‚  โ”‚  โ†’ Updates digest checkpoint (never grows unbounded)      โ”‚     โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜     โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

How each layer works

Layer 1 โ€” Capture runs as async Claude Code hooks with zero latency impact. It selectively records:

Hook Event What's Captured Why
UserPromptSubmit Full prompt text Detect corrections and explicit instructions
PostToolUse (Edit/Write) File path + input preview Track hot files (edited โ‰ฅ3 times)
PostToolUse (Bash) Command + result preview Track frequent commands, detect failures
PostToolUse (Read) File path only Understand what you reference
Stop Response preview (500 chars) Correlate responses with prompts

Glob, Grep, and Agent calls are intentionally skipped โ€” they're exploratory noise. This selective approach reduces captured data by ~80%.

Layer 2 โ€” Digest runs automatically at SessionEnd. A Python script scans the raw captured data and extracts structured evolution signals using regex pattern matching (supports both Chinese and English). Signals are appended to pending-signals.jsonl. Raw files older than 30 days are auto-cleaned.

Layer 3 โ€” Evolve triggers conditionally at the next SessionStart:

  • Only when pending_signal_count โ‰ฅ 5 or sessions_since_last_analysis โ‰ฅ 3 (with at least 1 pending signal)
  • Claude reads the digest checkpoint (evolution-digest.md) โ€” a summary of everything already analyzed โ€” plus only the new pending signals
  • Compares against current skill content and proposes targeted updates
  • After analysis, updates the checkpoint and clears pending signals

Key innovation: the digest checkpoint means Claude never re-reads history. Analysis stays fast regardless of how many months you've been using it.

Data directory structure

.claude/evolution/
โ”œโ”€โ”€ hooks/
โ”‚   โ”œโ”€โ”€ capture.sh              # Unified hook entry point
โ”‚   โ””โ”€โ”€ digest.py               # Signal extraction engine
โ”œโ”€โ”€ raw/                        # Per-session capture (auto-cleaned after 30 days)
โ”‚   โ”œโ”€โ”€ prompts-{session}.jsonl
โ”‚   โ”œโ”€โ”€ tools-{session}.jsonl
โ”‚   โ””โ”€โ”€ responses-{session}.jsonl
โ”œโ”€โ”€ pending-signals.jsonl       # Accumulated signals awaiting analysis
โ”œโ”€โ”€ evolution-digest.md         # Checkpoint โ€” summary of all past analysis
โ””โ”€โ”€ session-meta.json           # Session counter + trigger state

All data stays local (never uploaded). Add raw/ and pending-signals.jsonl to .gitignore โ€” only evolution-digest.md is worth committing as team knowledge.

# Manual triggers
/{prefix}-skill ่ฟ›ๅŒ–    # Run evolution analysis now
/{prefix}-digest        # Capture knowledge

Standalone installation (for projects with existing skills):

curl -fsSL https://raw.githubusercontent.com/atompilot/claude-skill-evo/main/evolution/install.sh | bash

Guided Q&A

Claude Skill Evo doesn't interrogate you โ€” it guides you:

  • Every question comes with options, examples, and recommendations
  • Answers are pre-filled from project scanning when possible
  • "Not sure" is always valid (sensible defaults are used)
  • Skipped questions can be filled in on the next /skill-evo run
  • Questions help you discover what you actually need, not just collect data

Supported Tech Stacks

Auto-detection works for all major stacks:

Language Frameworks Databases
TypeScript/JavaScript Next.js, React, Vue, Svelte, Hono, Express, tRPC PostgreSQL, MySQL, MongoDB, SQLite
Python Django, Flask, FastAPI PostgreSQL, MySQL, SQLite
Go Gin, Echo, Fiber, GoFrame PostgreSQL, MySQL
Rust Axum, Actix PostgreSQL
Swift SwiftUI, UIKit CoreData, SwiftData, GRDB
Java/Kotlin Spring Boot PostgreSQL, MySQL
Ruby Rails PostgreSQL, MySQL, SQLite

Other stacks work too โ€” Claude Skill Evo asks more targeted questions to compensate.

Installation

# Plugin marketplace (recommended)
claude plugin marketplace add atompilot/claude-skill-evo
claude plugin install claude-skill-evo@claude-skill-evo

# Or copy manually
cp -r skills/claude-skill-evo ~/.claude/skills/

Design Principles

Principle What it means
Run repeatedly, improve incrementally Every /skill-evo makes your skills better
Detect more, ask less Scan the project before asking questions
Guide, don't interrogate Options with explanations, not blank fields
Concrete over generic Real paths, real commands, real framework names
Start minimal, evolve naturally v1.0.0 skills are lean โ€” they grow through use
Never overwrite Optimize mode edits surgically, never replaces wholesale
Skills that learn Every skill detects, proposes, and evolves with confirmation

License

MIT

About

Claude Code skills go stale. Claude Skill Evo auto-generates and self-evolves them.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors