| name | evolution-core |
| description | Evolution capability meta-skill. Identifies evolutionary scenarios (repeated errors, user feedback, complex workflows) and crystallizes experience into reusable skills or instruction updates. |
_evolution-core
๐ Skill Description
- Purpose: Transform "experience summary and improvement" into an executable process.
- Applicable Scenarios: Repeated errors, user feedback indicating deviations, repetitive time-consuming or high-risk tasks.
- Learning Source: Evolution constitution practice.
โก Important Notice (v2.0.0+)
All skills are located in .agent/skills/ directory. The evolution process must respect this constraint:
- When modifying or creating skills, always target
.agent/skills/<skill_name>/SKILL.md
- The evoskills CLI fetches skills from
.agent/skills/ via GitHub raw content URLs
- This applies to the source repository (copilot-evolution-skills) and all user projects
๐ Trigger Conditions (Any one triggers)
- Repeated Errors: Same type of error appears in the same session or across multiple sessions.
- User Feedback: User explicitly indicates behavior doesn't meet expectations.
- Complex Workflows: Same type of task is repeatedly time-consuming/high-risk/error-prone.
- Skill Failure: A skill was used, but the process still failed or deviated (e.g., script/tool error, missed key steps).
โ
Execution Flow (6 Steps)
- Identify: Describe the problem and trigger type in one sentence.
- Attribute: Find the root cause (missing process/type misunderstanding/improper tool usage).
- Abstract: Extract into reusable rules or processes.
- Implement:
- If it's a universal rule โ Update
.github/copilot-instructions.md (constitution/guide level).
- If it's a reusable process โ Create or improve skill file under
.agent/skills/<skill>/SKILL.md.
- Register:
- Record in skill registry
- Add skill definition to the
<project_skills> section in AGENTS.md (see below)
- Verify: Apply the improvement in subsequent work and confirm the problem no longer recurs.
โ ๏ธ Path Constraint (v2.0.0+): All skill modifications target .agent/skills/<skill>/SKILL.md. Skills are fetched from .agent/skills/ by the evoskills CLI via GitHub raw content URLs.
๐ค Auto-Evolution Requirements
When Skill Failure is triggered, the following remedial actions must be executed (cannot be skipped):
- Locate Failure Point: Identify whether it's "missing skill steps" or "execution path inconsistent with skill".
- Immediately Correct Skill: Supplement missing steps or correct rules in the corresponding
SKILL.md.
- Add Paradigm: Include "failure example โ correct example" comparison in the skill.
- Annotate Precautions: Write key prerequisites that led to failure into the skill's "Common Issues/Checklist".
- Self-Check Record: Explicitly state in this response "Auto-evolution triggered and correction completed".
๐งญ Output Decision
- Create New Skill: When the rule needs independent crystallization and long-term reusability.
- Improve Existing Skill: When the problem is a gap or variant of an existing skill.
- Update Instructions: When the rule should become a "constitution-level/guide-level" behavioral norm.
๐งฐ Quick Checklist
๐ก Naming Conventions (Recommended)
- Skill directories should uniformly use the
_ prefix, e.g., .agent/skills/_evolution-core/.
- The
_ directory prefix distinguishes evoskills from other skill sources and prevents directory name collisions.
- The
name: field in SKILL.md should not include _, e.g., name: evolution-core.
- This avoids VS Code validation errors (only lowercase letters, numbers, and hyphens are allowed in
name:).
- Directory name and
name: field intentionally differ โ directory controls filesystem isolation, name: controls VS Code registration.
- If categorization by domain is needed, subdirectory grouping or unified prefix strategies like
evo-, proj- can be used in the name: field.
๐ Examples
Scenario: TypeScript mock repeatedly reports errors.
- Trigger: Repeated errors
- Handling: Create
_typescript-type-safety skill
- Registration: Add to custom skill table + AGENTS.md
- Verification: Subsequent mock errors significantly reduced
Scenario 2: Frequent long commit messages in command line causing issues.
- Trigger: Repeated errors + user feedback
- Handling: Create
_git-commit skill
- Registration: Add to skill table and AGENTS.md (custom skills section)
- Verification: Subsequent commits follow specifications, no command line issues
๐ Evolution Opportunity Identification Guide
Identification Pattern A: Repeated Errors
When encountering the same or similar error in the same session or consecutive sessions:
Session 1: Error A appears โ Fix
Session 2: Error A appears again (or variant) โ ๐ฉ Skill creation opportunity
Action:
1. Analyze why it recurs
2. Extract universal preventive measures
3. Create skill file
4. Update quick checklist in instructions
Identification Pattern B: User Feedback
When user indicates a behavior doesn't meet expectations:
User Feedback: "You should check type definitions first, not write mock directly"
โ
Understanding: Discovered flaw in my workflow
โ
Improvement: Encode user's suggestion as skill and instructions
โ
Verification: Apply improvement in subsequent work
Action Checklist:
Identification Pattern C: Complex Workflows
When discovering a certain type of task is always time-consuming or error-prone:
Observation: Every time handling certain tasks, stepping on pitfalls
โ
Analysis: Do these pitfalls have common root causes?
โ
If yes: Create related skill
If no: Record as common pitfalls
๐ Skill Creation Decision Tree
Encounter Problem
โ
โโ Will this problem recur?
โ โโ No โ Record as common pitfall
โ โโ Yes โ Continue
โ
โโ Does the solution have a universal pattern?
โ โโ No โ Record as project-specific detail
โ โโ Yes โ Continue
โ
โโ Is this pattern complex enough to require detailed explanation?
โ โโ No โ Add to instructions quick checklist
โ โโ Yes โ Continue
โ
โโ Create new skill!
โโ Choose a clear name
โโ Write complete SKILL.md
โโ Add to instruction file's skill table
โโ Verify in related work
๐ง Skill Maintenance Guide
How to Register New Skills in AGENTS.md
After creating a new custom skill, it needs to be manually added to AGENTS.md:
Location: <project_skills> section in AGENTS.md (between markers if they exist)
Format:
<skill>
<name>_your-skill-name</name>
<description>Brief description of the skill, explaining purpose, applicable scenarios, core capabilities</description>
<location>project</location>
<path>.agent/skills/_your-skill-name/SKILL.md</path>
</skill>
Key Points:
<name> uses _ prefix (distinguishes custom skills)
<description> concise and clear, highlighting core value
<location> fixed as project
<path> provides complete relative path
๐ Improvement Suggestions
- Currently skill path is fixed to
.agent/skills/, future could consider categorization by domain
- When skill count increases, can group by category in AGENTS.md
- Consider adding skill dependency declarations (e.g., one skill depends on another)
- Can create "Skill Evolution History" document to record version evolution of each skill