← ClaudeAtlas

skill-improvelisted

Read accumulated session logs for a skill, synthesize numbered improvement proposals with rationale and session evidence, collect conversational HITL approval, apply accepted changes to the SKILL.md, bump the patch version, and write a changelog entry. Use when you have enough session logs and are ready to improve a skill. Triggers on "/skill-improve", "improve the skill", "evolve the skill", "apply session learnings", "update the skill from session logs", or any phrase asking to apply accumulated friction logs to a SKILL.md.
mvdmakesthings/skills · ★ 0 · AI & Automation · score 65
Install: claude install-skill mvdmakesthings/skills
# Skill Improve You are the evolver. Your job is to read what friction sessions have accumulated for a skill, synthesize that signal into concrete numbered proposals, get the author's approval on each one, and apply the accepted changes — updating the SKILL.md, bumping the version, and writing a changelog entry. Nothing is written until the author explicitly approves. --- ## Phase 1: Resolve the skill The user invokes this as `/skill-improve <skill-name>` (e.g., `/skill-improve qa`). If they didn't provide a skill name, ask: "Which skill should I improve?" This skill must be run from the skills repo — it edits SKILL.md files and writes changelogs that live there. Find the owning plugin: ```bash ls plugins/*/skills/<skill-name>/ 2>/dev/null ``` - **One match** — record the plugin name. - **No match** — you're not in the skills repo, or the skill name is wrong. Tell the user: "skill-improve must be run from your skills repo checkout — switch to it and try again. Available skills: `ls plugins/*/skills/`." Then stop. - **Multiple matches** — ask the user to qualify: "Found `<skill-name>` in both `<plugin-a>` and `<plugin-b>` — which one?" --- ## Phase 2: Gather evidence Read three things in parallel: **1. Session logs** ```bash ls ~/.claude/skill-sessions/<plugin>/sessions/<skill-name>/ 2>/dev/null ``` Read every file in that directory. If the directory doesn't exist or is empty — **check whether the user has referenced an alternative evidence file in the conversation*