Install
openclaw skills install skill-self-evolution-enhancerEnables 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...
openclaw skills install skill-self-evolution-enhancerThis 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.
| 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) |
Read(target_skill_path/SKILL.md)
Obtain path from user or infer (e.g., skills/xxx, ~/.cursor/skills/xxx).
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
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.
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.
Create target_skill_path/EVOLUTION.md using assets/EVOLUTION-RULES-TEMPLATE.md.
Must include:
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.
The enhanced skill must use learnings, not only log them. Include this in EVOLUTION.md or the enhanced skill's instructions:
.learnings/LEARNINGS.md (and ERRORS.md if applicable)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."
| 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.
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.
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.
Learning triggers (user feedback → log to LEARNINGS.md):
Error triggers (failures → log to ERRORS.md):
Define 3–6 areas that partition the skill's scope. Use domain-specific areas, not coding areas.
{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.
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.