skill-evolution · git:20260912.9d47cf0 · 2026-09-12 · sha256 c061e7ee30de163a

skill-evolution git:20260912.9d47cf0A

Immutable. This exact content is served forever at /api/v1/blob/c061e7ee30de163a.

---
name: skill-evolution
description: Evolve skills from real usage. Use when a skill has been used enough to accumulate evidence and the user wants to decide whether a piece of it should graduate into the standard set, be deprecated, or be revised — collects passive usage cases, flags candidates that cross a frequency-plus-verification threshold, drafts concrete upgrade patches, and routes them through a human gate. Also use when the user asks "should this lens/rule/trigger become permanent?", "this skill keeps getting it wrong, should we remove that rule?", or wants to set up case-driven evolution for a skill. Does not legislate skill standards itself — only accumulates cases and drafts patches; the human approves every change.
---

# Skill Evolution (L2 + L3)

The companion to **skill-creator**. Where skill-creator owns short-cycle, human-driven iteration within a session (L0 generation, L1 evaluation), this skill owns the **long-cycle, case-driven evolution across sessions**:

- **L2 Evolution** — collect real usage cases → flag candidates → draft upgrade/deprecate patches → human gate → merge (with rollback).
- **L3 Accumulation** — accumulate what "a good skill" means across skills, as cases. **Accumulate only, never legislate** — folding a pattern into a standard is a human action (the reflexivity defense).

## Reflexivity defense (structural, not preference)

This skill is a meta-skill operating on skills. A meta-skill that grades its own output with its own standard drifts into **self-validating mediocrity** — everything passes its own bar, quality monotonically decays, no external signal interrupts it. Therefore:

- **L3 legislation is human-only.** This skill accumulates cases and flags candidate patterns; it never folds a pattern into a standard itself.
- **Cases are passive + post-hoc verified, not self-rated.** The agent doesn't declare its own use "effective"; effectiveness is judged by an external outcome.
- **Patches are AI-drafted, human-gated.** The AI proposes a concrete diff; the human approves, rejects, or amends before it's applied.
- **L3 seed standards are borrowed, not self-generated.** The cold-start anchor is the accumulated `emerging-lenses-log` experience (thresholds, graduation gates already exercised on meta-thinking-framework) plus cross-case self-convergence. L3 does not invent its own "good skill" criterion — that would re-open the reflexivity failure. Standards are refined by cross-case accumulation, not declared up front.

## The evolution state machine

```
IDLE (passively collect cases)
  → effective cases ≥ N AND ≥1 post-hoc verified   → FLAG (upgrade candidate)
  → adverse cases  ≥ M                              → FLAG (deprecate candidate)
FLAG
  → AI drafts a concrete patch (scope + diff + evidence + risk tag + before-snapshot instruction)
  → DRAFTED
DRAFTED
  → human reviews: approve / reject / amend          → APPROVED | REJECTED
APPROVED
  → apply patch + keep before-snapshot + write changelog
  → MERGED
MERGED
  → next real usage verifies the change sharpened output; if it regressed, roll back the snapshot
REJECTED
  → back to IDLE; if adverse cases persist, proceeds toward DEPRECATE
```

Upgrade and deprecate are **symmetric** — a skill that only ever upgrades accumulates dead rules. Adverse-case deprecation runs the same machine with a different FLAG trigger.

## Thresholds

- **Upgrade candidate**: a single rule/lens/trigger has **≥3 effective cases**, **and** ≥1 of those is **post-hoc verified** (not self-rated).
- **Deprecate candidate**: **≥3 adverse cases** for an existing rule.
- N=3 / M=3 are initial values. They are themselves accumulated — if validation shows they're too loose (false upgrades) or too tight (deserved upgrades stalling), that becomes an L3 agenda item, not a silent tweak.

## Risk grading (gate tightness)

| Change type | Risk | Gate | before-snapshot |
|---|---|---|---|
| Add example, add trigger condition, add a clarifying section | Low | batch fast review | recommended |
| Graduate a candidate lens/rule into the standard set | Medium | per-item review | required |
| Change a core rule, deprecate an existing rule | High | per-item strict + two-person | required |

## AI patch authority boundary

- **AI may**: passively collect cases, flag threshold-crossing candidates, draft concrete upgrade/deprecate patches (diff + scope + evidence summary + risk tag + reversibility + before-snapshot instruction).
- **AI may not**: apply a patch itself, edit the L3 constitution/INDEX recurring-patterns or legislation-log, auto-fill recurring-patterns, or self-rate a case as effective (must be post-hoc verified).

## Files

- `references/evolution-protocol.md` — full upgrade/deprecate flow, thresholds, risk grading
- `references/patch-draft-format.md` — the format an AI-drafted patch must follow
- `references/l3-accumulate.md` — the lightweight L3 accumulate-only mechanism (compound/)
- `templates/evolution-log.md` — per-skill case log (copy into a skill that mounts evolution)
- `templates/evolution-attach.md` — the SKILL.md fragment a mounted skill adds, pointing here

## Mounting evolution on a skill

To give a skill evolution capability:
1. Copy `templates/evolution-log.md` into the skill's `references/` (renamed e.g. `evolution-log.md`).
2. Append the `templates/evolution-attach.md` fragment to that skill's `SKILL.md`.
3. The skill now passively records cases and can flag candidates; upgrades route through this skill's protocol + the human gate.

A skill need not mount evolution. Simple one-off skills shouldn't — the case-collection overhead isn't worth it. Mount it on skills that recur and accumulate real usage. (Mechanism, not policy: provide the capability, let the skill decide.)

## Reflexivity self-check

This skill is itself N=1 — its protocol is derived from one worked example (the meta-thinking-framework emerging-lenses-log). It is calibrated by its own output: every evolution event it processes is evidence about whether the protocol is right. After N≥3 events, the human reviews whether the six-step machine and the thresholds are correct; some may merge, split, or drop. The skill is designed to be re-calibrated by its own output, not frozen.