skill-improve is a skill from the Summer skill library: a guide your AI agent reads when the task matches, so it builds the good version on the first try. Upgrade an underperforming Summer skill — run it against a behavioral spec with and without changes via a parallel-eval harness; ship the winner.
When your agent uses it
- A contributor wants to upgrade a Summer skill that is underperforming or to fix a regression
- Comparing a skill with and without a change against a behavioral spec before shipping the winner
Install
summer setup installs every skill for your agent. To add only this one:
claude-code for your agent, such as codex or cursor. See Skills for every option.
The skill
Adapted from theskill-creator skill in anthropics/skills. Use when a skill’s behavioral spec fails assertions or the skill produces low-quality output.
When to use this vs. /skill-test
/skill-test specreasons over text. Cheap and fast, but lossy./skill-improveruns the skill in parallel subagents, with and without the proposed changes. Slower and more expensive, but accurate.
/skill-test spec flags issues you can’t fix by reading the skill alone.
Steps
1. Pick the skill + the spec
Ask the user:- Skill slug. Resolves to
library/skills/<slug>/SKILL.md. - Test cases to focus on. Default: all
## Caseblocks inevals/skills/specs/<slug>.md.
2. Establish a baseline
For each Case:- Spawn a subagent (
Tasktool,general-purpose) with the current skill body in context. - Give it the Case’s Input + Fixture.
- Capture the tool calls it makes and the diff it produces.
- Score against the Case’s Assertions.
tests/runs/<skill-name>/baseline/case-<N>/.
3. Propose changes
Read the failing Cases. Identify the gap between what the skill says and what the agent did. Common gaps:- Skill names a tool but the agent picked a different one (clarify the trigger).
- Skill assumes a fixture detail the agent missed (add explicit step to confirm).
- Skill’s “May I” wording is too generic for the agent to infer the right ask.
tests/runs/<skill-name>/proposed/SKILL.md?
4. Run the proposed version
Repeat step 2 with the proposed SKILL.md. Save totests/runs/<skill-name>/proposed/case-<N>/.
5. Compare and decide
For each Case, score:- Assertions passed (proposed vs. baseline).
- Tool-call efficiency (fewer tools = better, all else equal).
- Hallucination / unwanted ops (penalize).
Proposed version wins 2 cases, ties 1, loses 0. May I overwrite library/skills/<slug>/SKILL.md with the proposed version?
6. Ship
On user yes:- Overwrite
SKILL.mdand bumpversioninresource.yaml. - Commit with message
feat(skill): improve <name> — <one-line summary of change>.
Collaborative protocol
This skill writes files at multiple steps. Always ask before each write.See also
skill-testtests/runner.mdevals/skills/specs/
Related skills
skill-test: Lint a Summer skill before commit, audit the whole library, or check a behavioral spec assertion — static structural rules plus behavioral specs.
Source:
library/skills/skill-improve/SKILL.md, rendered from summer-engine@4.3.0 on npm.
