Install
openclaw skills install learningsContinuous learning from failures, corrections, and patterns. Logs mistakes to prevent repetition. Own MeiliSearch index. Learns version rules, approach preferences, and behavioral corrections.
openclaw skills install learningsContinuous learning system. Every failure, correction, and pattern gets logged so the same mistakes aren't repeated. Uses its own MeiliSearch index for fast recall.
~/.openclaw/workspace/.env — never hardcoded in scripts--dry-run; use --apply to writemktemp with chmod 600 and are cleaned up on exitmemory/*.md (daily notes, for auto-extraction)learnings index, LEARNINGS.md (distillation only with --apply)curl to localhost MeiliSearch, python3 for document processing| Category | Description | Example |
|---|---|---|
failure | Script/command errors | "npm install fails with permission error" |
correction | Fix applied after a mistake | "Use --prefix flag for global installs" |
approach | Right way to do something | "Use full-text search over vector DB for local memory" |
version_rule | How versions should increment | "1.1.0 → 1.2.0 for new features" |
preference | User preferences discovered | "Prefers local/no-cloud solutions" |
recurring_failure | Same thing failing repeatedly | "Auth token expires on every deploy" |
rule | Explicit "don't do X" rules | "Don't commit secrets to repositories" |
learning | General lessons learned | "Always check file exists before copying" |
Requires ~/.openclaw/workspace/.env:
MEILI_HOST=http://127.0.0.1:7700
MEILI_KEY=your-master-key-here
LEARNINGS.md — Human-readable summary (auto-generated, use --apply to write)scripts/setup_index.sh — Create/configure MeiliSearch indexscripts/log_learning.sh — Log a new learning entryscripts/search_learnings.sh — Search past learnings before actingscripts/auto_extract.sh — Auto-extract learnings from daily notesscripts/distill_learnings.sh — Summarize raw logs into LEARNINGS.md# Log a learning
bash scripts/log_learning.sh \
--category failure \
--what "deployment fails with auth token expiry" \
--fix "Refresh token before each deploy" \
--importance 0.9 \
--tags "deploy,auth,token"
# Search before acting
bash scripts/search_learnings.sh "github push" 5
# Auto-extract from daily notes (dry-run by default)
bash scripts/auto_extract.sh --days 7 --apply
# Distill into readable summary (dry-run by default)
bash scripts/distill_learnings.sh --apply
Before taking any action, I search the learnings index: