Skill Self Evolution Enhancer
by @zhaobudaoyuema
Enables any skill to gain self-evolution capabilities. Use when: (1) User asks to add self-evolution to a skill, (2) User wants a skill to learn from feedbac...
clawhub install skill-self-evolution-enhancer📖 About This Skill
name: skill-self-evolution-enhancer description: "Enables any skill to gain self-evolution capabilities. Use when: (1) User asks to add self-evolution to a skill, (2) User wants a skill to learn from feedback and errors, (3) Scaling self-improvement to multiple skills with per-skill evolution logic. Outputs domain-specific .learnings/, EVOLUTION.md, and Review-Apply-Report workflow." metadata:
Skill Self-Evolution Enhancer
This skill enables other skills to gain self-evolution capabilities similar to self-improving-agent. A skill that originally has no self-evolution will, after enhancement, have: logging, learning from user feedback, promotion to rules, and a Review→Apply→Report loop—all tailored to its domain.
Quick Reference
| Step | Action | |------|--------| | User requests evolution for skill X | Read target skill's SKILL.md | | Deep analysis | Identify capabilities, scenarios, evolution directions | | Extract domain | Name, use cases, triggers, areas, promotion targets | | Generate .learnings/ | Domain-specific LEARNINGS.md, ERRORS.md, FEATURE_REQUESTS.md | | Generate EVOLUTION.md | Triggers, Review-Apply-Report, OpenClaw feedback rules | | Language | Match target skill's user language (infer from SKILL.md) |
When to Use
Workflow
Step 1: Read Target Skill
Read(target_skill_path/SKILL.md)
Obtain path from user or infer (e.g., skills/xxx, ~/.cursor/skills/xxx).
Step 2: Deep Capability & Scenario Analysis
Before generating any config, analyze the target skill deeply:
Capabilities (what the skill does):
Scenarios (when and how it is used):
Evolution directions (what can improve):
Use cases → infer from description, Quick Reference, examples
Step 3: Extract Domain Config
When reading the target skill, extract:
| Field | Where to Find | Example |
|-------|---------------|---------|
| Domain name | name in frontmatter, title | 洗稿能手, 电脑加速 |
| Use cases / scenarios | Description, Quick Reference, examples | 科普、汇报、直播 |
| Learning triggers | User feedback phrases in examples | "改得不通顺", "不像口播", "风格不对" |
| Error triggers | Failure modes | "优化无效", "某些电脑不适用", "报错" |
| Areas | Output types, workflow stages | 文案/口播/短视频脚本, 或 系统优化/卡顿/报错 |
| Promotion targets | Skill-specific rules | {skill}-专属进化规则.md, {skill}-最佳实践.md |
Language: Infer from SKILL.md content (Chinese vs English). Generate all output files in that language.
Use assets/DOMAIN-CONFIG-TEMPLATE.md to structure the extracted data.
Step 4: Generate .learnings/
Create inside target skill directory: target_skill_path/.learnings/
Structure (same as self-improving-agent):
.learnings/LEARNINGS.md.learnings/ERRORS.md.learnings/FEATURE_REQUESTS.mdUse templates from assets/; parameterize with domain areas, categories, promotion targets. Write in the target skill's language.
Step 5: Generate EVOLUTION.md
Create target_skill_path/EVOLUTION.md using assets/EVOLUTION-RULES-TEMPLATE.md.
Must include:
Step 6: Optional – Activator Script
If target skill has scripts/, add scripts/activator.sh with domain-specific reminder text. Adapt from self-improving-agent; replace generic prompts with domain triggers.
Review → Apply → Report Loop
The enhanced skill must use learnings, not only log them. Include this in EVOLUTION.md or the enhanced skill's instructions:
Before Task
.learnings/LEARNINGS.md (and ERRORS.md if applicable)During Task
After Task
Example (Chinese): "本次改写了口播稿,参考了经验 [LRN-20250115-001](科普场景应避免过于书面),相比之前更口语化。"
Example (English): "Used learning [LRN-20250115-001] (avoid formal tone for科普) in this rewrite; output is more conversational than before."
User Preference vs Domain Best Practice
| Type | Storage | Example |
|------|---------|---------|
| User preference | MEMORY.md (user-level) | "This user prefers shorter sentences" |
| Domain best practice | .learnings/LEARNINGS.md | "科普场景应避免过于书面" |
Evolution is driven by user feedback; log and promote based on user corrections and recurring patterns.
OpenClaw Active Feedback
Add to the enhanced skill or SOUL.md/AGENTS.md:
.learnings/, briefly tell the userSee references/openclaw-feedback.md for SOUL.md and AGENTS.md snippets.
Experience Invalidation & Update
When user corrects again after a learning was applied:
Contradicted-By: LRN-YYYYMMDD-XXX to the original entryLast-Valid or Status: superseded if the learning is no longer validRecurrence-Count if the pattern recurs but the fix is differentInclude in LEARNINGS template: Recurrence-Count, Last-Valid, Contradicted-By.
Domain Extraction Framework
Trigger Extraction
Learning triggers (user feedback → log to LEARNINGS.md):
Error triggers (failures → log to ERRORS.md):
Area Mapping
Define 3–6 areas that partition the skill's scope. Use domain-specific areas, not coding areas.
Promotion Target Naming
{skill-name}-专属进化规则.md — evolution rules, style preferences{skill-name}-最佳实践.md — best practices{skill-name}-安全规范.md — safety constraints (e.g., 电脑加速)Use kebab-case for skill name in filenames.
Logging Format (Reuse from Self-Improving-Agent)
ID format: LRN-YYYYMMDD-XXX, ERR-YYYYMMDD-XXX, FEAT-YYYYMMDD-XXX
Statuses: pending | in_progress | resolved | wont_fix | promoted | promoted_to_skill
For full entry formats, see the self-improving-agent skill's Logging Format section.