Install
openclaw skills install self-improving-agent-bakCaptures learnings, errors, and corrections for continuous improvement. Use when: (1) a command fails, (2) user corrects you, (3) user requests a missing capability, (4) an API/tool fails, (5) knowledge is outdated, (6) a better approach is found. Also review learnings before major tasks.
openclaw skills install self-improving-agent-bakLog learnings to .learnings/ for continuous improvement. Promote broadly applicable entries to workspace files.
mkdir -p ~/.openclaw/workspace/.learnings
Create three log files: LEARNINGS.md · ERRORS.md · FEATURE_REQUESTS.md
| Situation | File | Category |
|---|---|---|
| Command/operation fails | ERRORS.md | — |
| User corrects you | LEARNINGS.md | correction |
| Missing capability requested | FEATURE_REQUESTS.md | — |
| Knowledge was outdated | LEARNINGS.md | knowledge_gap |
| Found better approach | LEARNINGS.md | best_practice |
| Recurring pattern (simplify-and-harden) | LEARNINGS.md | Source: simplify-and-harden + Pattern-Key |
| Learning Type | Promote To |
|---|---|
| Behavioral patterns | SOUL.md |
| Workflow improvements | AGENTS.md |
| Tool gotchas | TOOLS.md |
| Project facts / conventions | CLAUDE.md |
Promote when: applies across multiple files, prevents recurring mistakes, or any contributor should know it.
## [LRN-YYYYMMDD-XXX] category
**Logged**: ISO-8601 **Priority**: low|medium|high|critical **Status**: pending **Area**: frontend|backend|infra|tests|docs|config
### Summary
One-line description
### Details
What happened, what was wrong, what's correct
### Suggested Action
Specific fix or improvement
### Metadata
- Source: conversation|error|user_feedback
- Related Files:
- Tags:
- See Also: (if related entry exists)
- Pattern-Key: (optional, for recurring patterns)
- Recurrence-Count: 1
---
## [ERR-YYYYMMDD-XXX] command_name
**Logged**: ISO-8601 **Priority**: high **Status**: pending **Area**: …
### Summary / Error / Context / Suggested Fix
### Metadata
- Reproducible: yes|no|unknown
- See Also:
---
## [FEAT-YYYYMMDD-XXX] capability_name
**Logged**: ISO-8601 **Priority**: medium **Status**: pending **Area**: …
### Requested Capability / User Context / Complexity Estimate / Suggested Implementation
### Metadata
- Frequency: first_time|recurring
---
Change **Status**: pending → resolved | in_progress | wont_fix | promoted, then add:
### Resolution
- **Resolved**: ISO-8601
- **Notes**: what was done
grep -r "keyword" .learnings/Recurrence-Count, update Last-Seen, add See AlsoRecurrence-Count >= 3 + seen in 2+ tasks + within 30 daysgrep -h "Status\*\*: pending" .learnings/*.md | wc -l # count pending
grep -B5 "Priority\*\*: high" .learnings/*.md | grep "^## \[" # list high-priority
Review before major tasks, after completing features, or weekly during active development.
LEARNINGS.md correctionFEATURE_REQUESTS.mdLEARNINGS.md knowledge_gapERRORS.mdExtract a learning into a reusable skill when: recurring (2+ See Also links) + resolved + non-obvious + broadly applicable.
./skills/self-improvement/scripts/extract-skill.sh skill-name
Or manually: create skills/<name>/SKILL.md with YAML frontmatter (name, description).
Priority: critical (blocks core / data loss) · high (common workflow) · medium (workaround exists) · low (edge case)
Area: frontend · backend · infra · tests · docs · config