Self-Improvement Skill
Captures learnings, errors, and corrections to enable continuous improvement.
How to use it
Claude Code
- Run the line below. It pulls the whole folder into
~/.claude/skills/self-improving-agent-2. - Describe your job in plain words. Claude Code follows the skill from there.
npx degit jdrhyne/agent-skills/clawdbot/self-improving-agent#main ~/.claude/skills/self-improving-agent-2For one project only, change the path to .claude/skills/self-improving-agent-2.
Claude (web or desktop app)
- On this page open ⋯ → Download .md.
- Save it as SKILL.md in a folder, zip the folder, then Customize → Skills → + → Create skill → Upload a skill.
- Pick the file and Save. Claude shows the name and description and runs a security scan.
- Check the skill is switched on.
- Start a new chat and describe your job in plain words. The AI follows the skill from there.
ChatGPT or another app
- ChatGPT: make a Project and paste it into Instructions.
- Neither? Paste it at the top of a new chat — it works for that chat.
Not working?
- Check which app you pasted it into — the steps above name the right one.
- Some skills need the paid tier of Claude or ChatGPT.
Paste into Claude, ChatGPT or Cursor.
Source of Self-Improvement Skill
Show the full text131 lines
| name | description | permissions |
|---|---|---|
| self-improving-agent | Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks. | - file_write: "Appends learning, error, and feature-request notes inside the local .learnings directory. |
Self-Improvement Skill
Capture non-obvious lessons, failures, and feature requests in a small local knowledge base so the same mistakes are less likely to repeat.
When to Use
- A command, tool, or integration fails in a way worth remembering
- The user corrects an assumption or teaches a project-specific convention
- You discover a better repeatable workflow
- The user asks for a missing capability that should be tracked
- You are starting work in an area with known prior learnings
Storage
Keep entries in a local .learnings/ directory:
.learnings/LEARNINGS.md.learnings/ERRORS.md.learnings/FEATURE_REQUESTS.md
Create the directory on first use if it does not exist.
Record Types
Learning
Use for corrections, conventions, and better practices.
## [LRN-YYYYMMDD-XXX] category
**Logged**: ISO-8601 timestamp
**Priority**: low | medium | high | critical
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
### Summary
One-line learning
### Details
What happened and what is now known to be correct
### Suggested Action
Specific follow-up or rule
### Metadata
- Source: conversation | error | user_feedback
- Related Files: path/to/file.ext
- Tags: tag1, tag2
- See Also: LRN-20250110-001
Error
Use for reproducible failures or flaky workflows.
## [ERR-YYYYMMDD-XXX] tool_or_workflow
**Logged**: ISO-8601 timestamp
**Priority**: high
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
### Summary
Short failure description
### Error
Exact error text or symptoms
### Context
- Operation attempted
- Inputs or environment details
### Suggested Fix
Likely next step
Feature Request
Use for missing capabilities the user wants tracked.
## [FEAT-YYYYMMDD-XXX] capability_name
**Logged**: ISO-8601 timestamp
**Priority**: medium
**Status**: pending
**Area**: frontend | backend | infra | tests | docs | config
### Requested Capability
What the user wanted
### User Context
Why it matters
### Suggested Implementation
Likely extension point or implementation direction
Workflow
- Log the learning as soon as the context is clear.
- Link related entries with
See Alsowhen patterns repeat. - Update status when the issue is resolved, rejected, or turned into a reusable rule.
- Review
.learnings/before major work in a familiar problem area.
Promotion Rules
If a learning becomes broadly reusable:
- distill it into a concise rule
- move it into the repo's shared guidance only if the user explicitly wants that promotion
- update the learning entry to note where the rule now lives
Recurring patterns are good candidates for extraction into a dedicated skill when the solution is verified, portable, and no longer project-specific.
Safety Boundaries
- Do not modify user-owned policy or guidance files unless the user explicitly asked for that promotion.
- Do not log secrets, access tokens, private keys, or sensitive personal data in
.learnings/. - Do not treat every failure as worth logging; prefer durable lessons over noise.
- Do not mark an entry resolved unless the fix was actually verified.
| 1 | |
| 2 | name self-improving-agent |
| 3 | description "Captures learnings, errors, and corrections to enable continuous improvement. Use when: (1) A command or operation fails unexpectedly, (2) User corrects Claude ('No, that's wrong...', 'Actually...'), (3) User requests a capability that doesn't exist, (4) An external API or tool fails, (5) Claude realizes its knowledge is outdated or incorrect, (6) A better approach is discovered for a recurring task. Also review learnings before major tasks." |
| 4 | permissions |
| 5 | - file_write: "Appends learning, error, and feature-request notes inside the local .learnings directory." |
| 6 | |
| 7 | |
| 8 | # Self-Improvement Skill |
| 9 | |
| 10 | Capture non-obvious lessons, failures, and feature requests in a small local knowledge base so the same mistakes are less likely to repeat. |
| 11 | |
| 12 | ## When to Use |
| 13 | |
| 14 | A command, tool, or integration fails in a way worth remembering |
| 15 | The user corrects an assumption or teaches a project-specific convention |
| 16 | You discover a better repeatable workflow |
| 17 | The user asks for a missing capability that should be tracked |
| 18 | You are starting work in an area with known prior learnings |
| 19 | |
| 20 | ## Storage |
| 21 | |
| 22 | Keep entries in a local `.learnings/` directory: |
| 23 | |
| 24 | `.learnings/LEARNINGS.md` |
| 25 | `.learnings/ERRORS.md` |
| 26 | `.learnings/FEATURE_REQUESTS.md` |
| 27 | |
| 28 | Create the directory on first use if it does not exist. |
| 29 | |
| 30 | ## Record Types |
| 31 | |
| 32 | ### Learning |
| 33 | |
| 34 | Use for corrections, conventions, and better practices. |
| 35 | |
| 36 | |
| 37 | ## [LRN-YYYYMMDD-XXX] category |
| 38 | |
| 39 | **Logged**: ISO-8601 timestamp |
| 40 | **Priority**: low | medium | high | critical |
| 41 | **Status**: pending |
| 42 | **Area**: frontend | backend | infra | tests | docs | config |
| 43 | |
| 44 | ### Summary |
| 45 | One-line learning |
| 46 | |
| 47 | ### Details |
| 48 | What happened and what is now known to be correct |
| 49 | |
| 50 | ### Suggested Action |
| 51 | Specific follow-up or rule |
| 52 | |
| 53 | ### Metadata |
| 54 | - Source: conversation | error | user_feedback |
| 55 | - Related Files: path/to/file.ext |
| 56 | - Tags: tag1, tag2 |
| 57 | - See Also: LRN-20250110-001 |
| 58 | |
| 59 | |
| 60 | ### Error |
| 61 | |
| 62 | Use for reproducible failures or flaky workflows. |
| 63 | |
| 64 | |
| 65 | ## [ERR-YYYYMMDD-XXX] tool_or_workflow |
| 66 | |
| 67 | **Logged**: ISO-8601 timestamp |
| 68 | **Priority**: high |
| 69 | **Status**: pending |
| 70 | **Area**: frontend | backend | infra | tests | docs | config |
| 71 | |
| 72 | ### Summary |
| 73 | Short failure description |
| 74 | |
| 75 | ### Error |
| 76 | Exact error text or symptoms |
| 77 | |
| 78 | ### Context |
| 79 | - Operation attempted |
| 80 | - Inputs or environment details |
| 81 | |
| 82 | ### Suggested Fix |
| 83 | Likely next step |
| 84 | |
| 85 | |
| 86 | ### Feature Request |
| 87 | |
| 88 | Use for missing capabilities the user wants tracked. |
| 89 | |
| 90 | |
| 91 | ## [FEAT-YYYYMMDD-XXX] capability_name |
| 92 | |
| 93 | **Logged**: ISO-8601 timestamp |
| 94 | **Priority**: medium |
| 95 | **Status**: pending |
| 96 | **Area**: frontend | backend | infra | tests | docs | config |
| 97 | |
| 98 | ### Requested Capability |
| 99 | What the user wanted |
| 100 | |
| 101 | ### User Context |
| 102 | Why it matters |
| 103 | |
| 104 | ### Suggested Implementation |
| 105 | Likely extension point or implementation direction |
| 106 | |
| 107 | |
| 108 | ## Workflow |
| 109 | |
| 110 | Log the learning as soon as the context is clear. |
| 111 | Link related entries with `See Also` when patterns repeat. |
| 112 | Update status when the issue is resolved, rejected, or turned into a reusable rule. |
| 113 | Review `.learnings/` before major work in a familiar problem area. |
| 114 | |
| 115 | ## Promotion Rules |
| 116 | |
| 117 | If a learning becomes broadly reusable: |
| 118 | |
| 119 | distill it into a concise rule |
| 120 | move it into the repo's shared guidance only if the user explicitly wants that promotion |
| 121 | update the learning entry to note where the rule now lives |
| 122 | |
| 123 | Recurring patterns are good candidates for extraction into a dedicated skill when the solution is verified, portable, and no longer project-specific. |
| 124 | |
| 125 | ## Safety Boundaries |
| 126 | |
| 127 | Do not modify user-owned policy or guidance files unless the user explicitly asked for that promotion. |
| 128 | Do not log secrets, access tokens, private keys, or sensitive personal data in `.learnings/`. |
| 129 | Do not treat every failure as worth logging; prefer durable lessons over noise. |
| 130 | Do not mark an entry resolved unless the fix was actually verified. |
| 131 |
Discussion
Browse more free Claude skills.