Our review
Automatically detects and corrects errors in skill definition files based on conversation context and execution failures.
Strengths
- Enables self-healing of skill definitions without manual editing.
- Provides a structured workflow with user approval.
- Ensures consistency across related files (SKILL.md, references, scripts).
- Uses conversation context to pinpoint issues accurately.
Limitations
- Requires explicit user approval before applying changes.
- Only works for skills that have been invoked and produced errors.
- May not detect subtle errors not surfaced during execution.
Use when a skill produces incorrect results due to outdated or wrong instructions in its SKILL.md.
Do not use for fixing non-skill files, general codebases, or without clear evidence of error.
Security analysis
CautionThe skill legitimately modifies other skills' definitions and uses git for version control, but requires explicit user approval before making any edits, mitigating risk.
- •Uses Bash(git:*) which can modify repository history and commit changes
- •Edits SKILL.md files of other skills, potentially altering their behavior
Examples
The skill 'fetch-api' returned incorrect data due to an outdated endpoint. Please heal it.I just ran the 'deploy' skill and it failed because of a wrong command. Can you detect and fix the SKILL.md?Check the last skill execution for any errors and heal the skill definition.name: heal-skill description: Fix incorrect SKILL.md files when a skill has wrong instructions or outdated API references argument-hint: [optional: specific issue to fix] allowed-tools: [Read, Edit, Bash(ls:), Bash(git:)] disable-model-invocation: true
<objective> Update a skill's SKILL.md and related files based on corrections discovered during execution.Analyze the conversation to detect which skill is running, reflect on what went wrong, propose specific fixes, get user approval, then apply changes with optional commit. </objective>
<context> Skill detection: !`ls -1 ./skills/*/SKILL.md | head -5` </context><quick_start> <workflow>
- Detect skill from conversation context (invocation messages, recent SKILL.md references)
- Reflect on what went wrong and how you discovered the fix
- Present proposed changes with before/after diffs
- Get approval before making any edits
- Apply changes and optionally commit </workflow>
</quick_start>
<process> <step_1 name="detect_skill"> Identify the skill from conversation context:- Look for skill invocation messages
- Check which SKILL.md was recently referenced
- Examine current task context
Set: SKILL_NAME=[skill-name] and SKILL_DIR=./skills/$SKILL_NAME
If unclear, ask the user. </step_1>
<step_2 name="reflection_and_analysis"> Focus on $ARGUMENTS if provided, otherwise analyze broader context.
Determine:
- What was wrong: Quote specific sections from SKILL.md that are incorrect
- Discovery method: Context7, error messages, trial and error, documentation lookup
- Root cause: Outdated API, incorrect parameters, wrong endpoint, missing context
- Scope of impact: Single section or multiple? Related files affected?
- Proposed fix: Which files, which sections, before/after for each </step_2>
<step_3 name="scan_affected_files">
ls -la $SKILL_DIR/
ls -la $SKILL_DIR/references/ 2>/dev/null
ls -la $SKILL_DIR/scripts/ 2>/dev/null
</step_3>
<step_4 name="present_proposed_changes"> Present changes in this format:
**Skill being healed:** [skill-name]
**Issue discovered:** [1-2 sentence summary]
**Root cause:** [brief explanation]
**Files to be modified:**
- [ ] SKILL.md
- [ ] references/[file].md
- [ ] scripts/[file].py
**Proposed changes:**
### Change 1: SKILL.md - [Section name]
**Location:** Line [X] in SKILL.md
**Current (incorrect):**
[exact text from current file]
**Corrected:**
[new text]
**Reason:** [why this fixes the issue]
[repeat for each change across all files]
**Impact assessment:**
- Affects: [authentication/API endpoints/parameters/examples/etc.]
**Verification:**
These changes will prevent: [specific error that prompted this]
</step_4>
<step_5 name="request_approval">
Should I apply these changes?
1. Yes, apply and commit all changes
2. Apply but don't commit (let me review first)
3. Revise the changes (I'll provide feedback)
4. Cancel (don't make changes)
Choose (1-4):
Wait for user response. Do not proceed without approval. </step_5>
<step_6 name="apply_changes"> Only after approval (option 1 or 2):
- Use Edit tool for each correction across all files
- Read back modified sections to verify
- If option 1, commit with structured message showing what was healed
- Confirm completion with file list </step_6> </process>
<success_criteria>
- Skill correctly detected from conversation context
- All incorrect sections identified with before/after
- User approved changes before application
- All edits applied across SKILL.md and related files
- Changes verified by reading back
- Commit created if user chose option 1
- Completion confirmed with file list </success_criteria>
- Read back each modified section to confirm changes applied
- Ensure cross-file consistency (SKILL.md examples match references/)
- Verify git commit created if option 1 was selected
- Check no unintended files were modified </verification>
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.