Self-Improving + Proactive Agent
Self-reflection + Self-criticism + Self-learning + Self-organizing memory. Agent evaluates its own work, catches mistakes, and improves permanently. Use when...
Install self-improving from the local KakaHub registry at http://localhost:13001. Review the README, manifest, and permissions before using it in the current workspace.DownloadREADME
--- name: Self-Improving + Proactive Agent slug: self-improving version: 1.2.16 homepage: https://clawic.com/skills/self-improving description: "Self-reflection + Self-criticism + Self-learning + Self-organizing memory. Agent evaluates its own work, catches mistakes, and improves permanently. Use when (1) a command, tool, API, or operation fails; (2) the user corrects you or rejects your work; (3) you realize your knowledge is outdated or incorrect; (4) you discover a better approach; (5) the user explicitly installs or references the skill for the current task." changelog: "Clarifies the setup flow for proactive follow-through and safer installation behavior." metadata: {"clawdbot":{"emoji":"π§ ","requires":{"bins":[]},"os":["linux","darwin","win32"],"configPaths":["~/self-improving/"],"configPaths.optional":["./AGENTS.md","./SOUL.md","./HEARTBEAT.md"]}} ---
When to Use
User corrects you or points out mistakes. You complete significant work and want to evaluate the outcome. You notice something in your own output that could be better. Knowledge should compound over time without manual maintenance.
Architecture
Memory lives in `~/self-improving/` with tiered structure. If `~/self-improving/` does not exist, run `setup.md`. Workspace setup should add the standard self-improving steering to the workspace AGENTS, SOUL, and `HEARTBEAT.md` files, with recurring maintenance routed through `heartbeat-rules.md`.
~/self-improving/ βββ memory.md # HOT: β€100 lines, always loaded βββ index.md # Topic index with line counts βββ heartbeat-state.md # Heartbeat state: last run, reviewed change, action notes βββ projects/ # Per-project learnings βββ domains/ # Domain-specific (code, writing, comms) βββ archive/ # COLD: decayed patterns βββ corrections.md # Last 50 corrections log
Quick Reference
| Topic | File | |-------|------| | Setup guide | `setup.md` | | Heartbeat state template | `heartbeat-state.md` | | Memory template | `memory-template.md` | | Workspace heartbeat snippet | `HEARTBEAT.md` | | Heartbeat rules | `heartbeat-rules.md` | | Learning mechanics | `learning.md` | | Security boundaries | `boundaries.md` | | Scaling rules | `scaling.md` | | Memory operations | `operations.md` | | Self-reflection log | `reflections.md` | | OpenClaw HEARTBEAT seed | `openclaw-heartbeat.md` |
Requirements
- No credentials required
- No extra binaries required
- Optional installation of the `Proactivity` skill may require network access
Learning Signals
Log automatically when you notice these patterns:
**Corrections** β add to `corrections.md`, evaluate for `memory.md`:
- "No, that's not right..."
- "Actually, it should be..."
- "You're wrong about..."
- "I prefer X, not Y"
- "Remember that I always..."
- "I told you before..."
- "Stop doing X"
- "Why do you keep..."
**Preference signals** β add to `memory.md` if explicit:
- "I like when you..."
- "Always do X for me"
- "Never do Y"
- "My style is..."
- "For [project], use..."
**Pattern candidates** β track, promote after 3x:
- Same instruction repeated 3+ times
- Workflow that works well repeatedly
- User praises specific approach
**Ignore** (don't log):
- One-time instructions ("do X now")
- Context-specific ("in this file...")
- Hypotheticals ("what if...")
Self-Reflection
After completing significant work, pause and evaluate:
1. **Did it meet expectations?** β Compare outcome vs intent 2. **What could be better?** β Identify improvements for next time 3. **Is this a pattern?** β If yes, log to `corrections.md`
**When to self-reflect:**
- After completing a multi-step task
- After receiving feedback (positive or negative)
- After fixing a bug or mistake
- When you notice your output could be better
**Log format:**
CONTEXT: [type of task] REFLECTION: [what I noticed] LESSON: [what to do differently]
**Example:**
CONTEXT: Building Flutter UI REFLECTION: Spacing looked off, had to redo LESSON: Check visual spacing before showing user
Self-reflection entries follow the same promotion rules: 3x applied successfully β promote to HOT.
Quick Queries
| User says | Action | |-----------|--------| | "What do you know about X?" | Search all tiers for X | | "What have you learned?" | Show last 10 from `corrections.md` | | "Show my patterns" | List `memory.md` (HOT) | | "Show [project] patterns" | Load `projects/{name}.md` | | "What's in warm storage?" | List files in `projects/` + `domains/` | | "Memory stats" | Show counts per tier | | "Forget X" | Remove from all tiers (confirm first) | | "Export memory" | ZIP all files |
Memory Stats
On "memory stats" request, report:
π Self-Improving Memory
HOT (always loaded): memory.md: X entries
WARM (load on demand): projects/: X files domains/: X files
COLD (archived): archive/: X files
Recent activity (7 days): Corrections logged: X Promotions to HOT: X Demotions to WARM: X
Common Traps
| Trap | Why It Fails | Better Move | |------|--------------|-------------| | Learning from silence | Creates false rules | Wait for explicit correction or repeated evidence | | Promoting too fast | Pollutes HOT memory | Keep new lessons tentative until repeated | | Reading every namespace | Wastes context | Load only HOT plus the smallest matching files | | Compaction by deletion | Loses trust and history | Merge, summarize, or demote instead |
Core Rules
1. Learn from Corrections and Self-Reflection
- Log when user explicitly corrects you
- Log when you identify improvements in your own work
- Never infer from silence alone
- After 3 identical lessons β ask to confirm as rule
2. Tiered Storage
| Tier | Location | Size Limit | Behavior | |------|----------|------------|----------| | HOT | memory.md | β€100 lines | Always loaded | | WARM | projects/, domains/ | β€200 lines each | Load on context match | | COLD | archive/ | Unlimited | Load on explicit query |
3. Automatic Promotion/Demotion
- Pattern used 3x in 7 days β promote to HOT
- Pattern unused 30 days β demote to WARM
- Pattern unused 90 days β archive to COLD
- Never delete without asking
4. Namespace Isolation
- Project patterns stay in `projects/{name}.md`
- Global preferences in HOT tier (memory.md)
- Domain patterns (code, writing) in `domains/`
- Cross-namespace inheritance: global β domain β project
5. Conflict Resolution
When patterns contradict: 1. Most specific wins (project > domain > global) 2. Most recent wins (same level) 3. If ambiguous β ask user
6. Compaction
When file exceeds limit: 1. Merge similar corrections into single rule 2. Archive unused patterns 3. Summarize verbose entries 4. Never lose confirmed preferences
7. Transparency
- Every action from memory β cite source: "Using X (from projects/foo.md:12)"
- Weekly digest available: patterns learned, demoted, archived
- Full export on demand: all files as ZIP
8. Security Boundaries
See `boundaries.md` β never store credentials, health data, third-party info.
9. Graceful Degradation
If context limit hit: 1. Load only memory.md (HOT) 2. Load relevant namespace on demand 3. Never fail silently β tell user what's not loaded
Scope
This skill ONLY:
- Learns from user corrections and self-reflection
- Stores preferences in local files (`~/self-improving/`)
- Maintains heartbeat state in `~/self-improving/heartbeat-state.md` when the workspace integrates heartbeat
- Reads its own memory files on activation
This skill NEVER:
- Accesses calendar, email, or contacts
- Makes network requests
- Reads files outside `~/self-improving/`
- Infers preferences from silence or observation
- Deletes or blindly rewrites self-improving memory during heartbeat cleanup
- Modifies its own SKILL.md
Data Storage
Local state lives in `~/self-improving/`:
- `memory.md` for HOT rules and confirmed preferences
- `corrections.md` for explicit corrections and reusable lessons
- `projects/` and `domains/` for scoped patterns
- `archive/` for decayed or inactive patterns
- `heartbeat-state.md` for recurring maintenance markers
Related Skills
Install with `clawhub install <slug>` if user confirms:
- `memory` β Long-term memory patterns for agents
- `learning` β Adaptive teaching and explanation
- `decide` β Auto-learn decision patterns
- `escalate` β Know when to ask vs act autonomously
Feedback
- If useful: `clawhub star self-improving`
- Stay updated: `clawhub sync`
Install resolver
{
"artifact": {
"downloadUrl": "/api/v1/download?slug=self-improving&version=1.2.16&ownerHandle=ivangdavila",
"format": "zip",
"generated": true,
"kind": "skillArchive",
"sha256": "970b4dfc05a383d886e2aa30357978a1e1e44d6eb51ee1e9a7c3174410e28af7",
"size": 10023
},
"owner": {
"displayName": "IvΓ‘n",
"handle": "ivangdavila",
"id": "7e964c28-026c-413c-9e4f-86a87b6ac0ca",
"verified": false
},
"skill": {
"displayName": "Self-Improving + Proactive Agent",
"latestVersion": "1.2.16",
"license": "MIT-0",
"name": "self-improving",
"ownerHandle": "ivangdavila",
"slug": "self-improving",
"stats": {
"downloads": 202281,
"installs": 7269,
"stars": 1246
},
"summary": "Self-reflection + Self-criticism + Self-learning + Self-organizing memory. Agent evaluates its own work, catches mistakes, and improves permanently. Use when...",
"tags": [
"agents",
"knowledge",
"Self Improving",
"Learning"
],
"type": "skill",
"updatedAt": "2026-07-06T10:48:13.640Z"
},
"sourceHandoff": null,
"version": {
"checksum": null,
"checksumAlgorithm": null,
"id": "95c4bafc-f6f5-422d-bad6-e4a7d8ca575c",
"publishedAt": "2026-03-12T15:28:47.755Z",
"size": null,
"version": "1.2.16",
"artifactStorageKey": null,
"changelog": "Clarifies the setup flow for proactive follow-through and safer installation behavior.",
"manifest": {
"clawhub": {
"tags": {
"latest": "1.2.16"
},
"owner": "ivangdavila",
"stats": {
"stars": 1246,
"comments": 0,
"installs": 7269,
"versions": 22,
"downloads": 202281
},
"topics": [
"Self Improving",
"Learning"
],
"categories": [
"agents",
"knowledge"
]
},
"install": "openclaw skills install @ivangdavila/self-improving"
},
"readme": "---\nname: Self-Improving + Proactive Agent\nslug: self-improving\nversion: 1.2.16\nhomepage: https://clawic.com/skills/self-improving\ndescription: \"Self-reflection + Self-criticism + Self-learning + Self-organizing memory. Agent evaluates its own work, catches mistakes, and improves permanently. Use when (1) a command, tool, API, or operation fails; (2) the user corrects you or rejects your work; (3) you realize your knowledge is outdated or incorrect; (4) you discover a better approach; (5) the user explicitly installs or references the skill for the current task.\"\nchangelog: \"Clarifies the setup flow for proactive follow-through and safer installation behavior.\"\nmetadata: {\"clawdbot\":{\"emoji\":\"π§ \",\"requires\":{\"bins\":[]},\"os\":[\"linux\",\"darwin\",\"win32\"],\"configPaths\":[\"~/self-improving/\"],\"configPaths.optional\":[\"./AGENTS.md\",\"./SOUL.md\",\"./HEARTBEAT.md\"]}}\n---\n\n## When to Use\n\nUser corrects you or points out mistakes. You complete significant work and want to evaluate the outcome. You notice something in your own output that could be better. Knowledge should compound over time without manual maintenance.\n\n## Architecture\n\nMemory lives in `~/self-improving/` with tiered structure. If `~/self-improving/` does not exist, run `setup.md`.\nWorkspace setup should add the standard self-improving steering to the workspace AGENTS, SOUL, and `HEARTBEAT.md` files, with recurring maintenance routed through `heartbeat-rules.md`.\n\n```\n~/self-improving/\nβββ memory.md # HOT: β€100 lines, always loaded\nβββ index.md # Topic index with line counts\nβββ heartbeat-state.md # Heartbeat state: last run, reviewed change, action notes\nβββ projects/ # Per-project learnings\nβββ domains/ # Domain-specific (code, writing, comms)\nβββ archive/ # COLD: decayed patterns\nβββ corrections.md # Last 50 corrections log\n```\n\n## Quick Reference\n\n| Topic | File |\n|-------|------|\n| Setup guide | `setup.md` |\n| Heartbeat state template | `heartbeat-state.md` |\n| Memory template | `memory-template.md` |\n| Workspace heartbeat snippet | `HEARTBEAT.md` |\n| Heartbeat rules | `heartbeat-rules.md` |\n| Learning mechanics | `learning.md` |\n| Security boundaries | `boundaries.md` |\n| Scaling rules | `scaling.md` |\n| Memory operations | `operations.md` |\n| Self-reflection log | `reflections.md` |\n| OpenClaw HEARTBEAT seed | `openclaw-heartbeat.md` |\n\n## Requirements\n\n- No credentials required\n- No extra binaries required\n- Optional installation of the `Proactivity` skill may require network access\n\n## Learning Signals\n\nLog automatically when you notice these patterns:\n\n**Corrections** β add to `corrections.md`, evaluate for `memory.md`:\n- \"No, that's not right...\"\n- \"Actually, it should be...\"\n- \"You're wrong about...\"\n- \"I prefer X, not Y\"\n- \"Remember that I always...\"\n- \"I told you before...\"\n- \"Stop doing X\"\n- \"Why do you keep...\"\n\n**Preference signals** β add to `memory.md` if explicit:\n- \"I like when you...\"\n- \"Always do X for me\"\n- \"Never do Y\"\n- \"My style is...\"\n- \"For [project], use...\"\n\n**Pattern candidates** β track, promote after 3x:\n- Same instruction repeated 3+ times\n- Workflow that works well repeatedly\n- User praises specific approach\n\n**Ignore** (don't log):\n- One-time instructions (\"do X now\")\n- Context-specific (\"in this file...\")\n- Hypotheticals (\"what if...\")\n\n## Self-Reflection\n\nAfter completing significant work, pause and evaluate:\n\n1. **Did it meet expectations?** β Compare outcome vs intent\n2. **What could be better?** β Identify improvements for next time\n3. **Is this a pattern?** β If yes, log to `corrections.md`\n\n**When to self-reflect:**\n- After completing a multi-step task\n- After receiving feedback (positive or negative)\n- After fixing a bug or mistake\n- When you notice your output could be better\n\n**Log format:**\n```\nCONTEXT: [type of task]\nREFLECTION: [what I noticed]\nLESSON: [what to do differently]\n```\n\n**Example:**\n```\nCONTEXT: Building Flutter UI\nREFLECTION: Spacing looked off, had to redo\nLESSON: Check visual spacing before showing user\n```\n\nSelf-reflection entries follow the same promotion rules: 3x applied successfully β promote to HOT.\n\n## Quick Queries\n\n| User says | Action |\n|-----------|--------|\n| \"What do you know about X?\" | Search all tiers for X |\n| \"What have you learned?\" | Show last 10 from `corrections.md` |\n| \"Show my patterns\" | List `memory.md` (HOT) |\n| \"Show [project] patterns\" | Load `projects/{name}.md` |\n| \"What's in warm storage?\" | List files in `projects/` + `domains/` |\n| \"Memory stats\" | Show counts per tier |\n| \"Forget X\" | Remove from all tiers (confirm first) |\n| \"Export memory\" | ZIP all files |\n\n## Memory Stats\n\nOn \"memory stats\" request, report:\n\n```\nπ Self-Improving Memory\n\nHOT (always loaded):\n memory.md: X entries\n\nWARM (load on demand):\n projects/: X files\n domains/: X files\n\nCOLD (archived):\n archive/: X files\n\nRecent activity (7 days):\n Corrections logged: X\n Promotions to HOT: X\n Demotions to WARM: X\n```\n\n## Common Traps\n\n| Trap | Why It Fails | Better Move |\n|------|--------------|-------------|\n| Learning from silence | Creates false rules | Wait for explicit correction or repeated evidence |\n| Promoting too fast | Pollutes HOT memory | Keep new lessons tentative until repeated |\n| Reading every namespace | Wastes context | Load only HOT plus the smallest matching files |\n| Compaction by deletion | Loses trust and history | Merge, summarize, or demote instead |\n\n## Core Rules\n\n### 1. Learn from Corrections and Self-Reflection\n- Log when user explicitly corrects you\n- Log when you identify improvements in your own work\n- Never infer from silence alone\n- After 3 identical lessons β ask to confirm as rule\n\n### 2. Tiered Storage\n| Tier | Location | Size Limit | Behavior |\n|------|----------|------------|----------|\n| HOT | memory.md | β€100 lines | Always loaded |\n| WARM | projects/, domains/ | β€200 lines each | Load on context match |\n| COLD | archive/ | Unlimited | Load on explicit query |\n\n### 3. Automatic Promotion/Demotion\n- Pattern used 3x in 7 days β promote to HOT\n- Pattern unused 30 days β demote to WARM\n- Pattern unused 90 days β archive to COLD\n- Never delete without asking\n\n### 4. Namespace Isolation\n- Project patterns stay in `projects/{name}.md`\n- Global preferences in HOT tier (memory.md)\n- Domain patterns (code, writing) in `domains/`\n- Cross-namespace inheritance: global β domain β project\n\n### 5. Conflict Resolution\nWhen patterns contradict:\n1. Most specific wins (project > domain > global)\n2. Most recent wins (same level)\n3. If ambiguous β ask user\n\n### 6. Compaction\nWhen file exceeds limit:\n1. Merge similar corrections into single rule\n2. Archive unused patterns\n3. Summarize verbose entries\n4. Never lose confirmed preferences\n\n### 7. Transparency\n- Every action from memory β cite source: \"Using X (from projects/foo.md:12)\"\n- Weekly digest available: patterns learned, demoted, archived\n- Full export on demand: all files as ZIP\n\n### 8. Security Boundaries\nSee `boundaries.md` β never store credentials, health data, third-party info.\n\n### 9. Graceful Degradation\nIf context limit hit:\n1. Load only memory.md (HOT)\n2. Load relevant namespace on demand\n3. Never fail silently β tell user what's not loaded\n\n## Scope\n\nThis skill ONLY:\n- Learns from user corrections and self-reflection\n- Stores preferences in local files (`~/self-improving/`)\n- Maintains heartbeat state in `~/self-improving/heartbeat-state.md` when the workspace integrates heartbeat\n- Reads its own memory files on activation\n\nThis skill NEVER:\n- Accesses calendar, email, or contacts\n- Makes network requests\n- Reads files outside `~/self-improving/`\n- Infers preferences from silence or observation\n- Deletes or blindly rewrites self-improving memory during heartbeat cleanup\n- Modifies its own SKILL.md\n\n## Data Storage\n\nLocal state lives in `~/self-improving/`:\n\n- `memory.md` for HOT rules and confirmed preferences\n- `corrections.md` for explicit corrections and reusable lessons\n- `projects/` and `domains/` for scoped patterns\n- `archive/` for decayed or inactive patterns\n- `heartbeat-state.md` for recurring maintenance markers\n\n## Related Skills\nInstall with `clawhub install <slug>` if user confirms:\n\n- `memory` β Long-term memory patterns for agents\n- `learning` β Adaptive teaching and explanation\n- `decide` β Auto-learn decision patterns\n- `escalate` β Know when to ask vs act autonomously\n\n## Feedback\n\n- If useful: `clawhub star self-improving`\n- Stay updated: `clawhub sync`\n"
}
}