agentleFS
mayankjain1815-commitsmayankjain1815-commits/CITADEL/skills/evolve/SKILL.md

evolve

Skill4 starsChanged 4 months agoMITView on GitHub

Research-driven multi-cycle improvement director. Forms causal hypotheses about why scores are low, validates them with scout agents before attacking, dispatches axis-parallel fleet attacks, extracts transferable patterns, and runs indefinitely within a budget envelope. Accumulates a persistent belief model and pattern library across sessions.

41 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use instinct-export, instinct-import and 8 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • TheKREATORSSkill

    instinct-export

    Export instincts from project/global scope to a file

    Also in 4 projects that use this

  • TheKREATORSSkill

    instinct-import

    Import instincts from file or URL into project/global scope

    Also in 4 projects that use this

  • diego-tobalinaSkill

    build-fix

    Fix build and compilation errors systematically. Run when build fails.

    Also in 3 projects that use this

  • launch52-aiSkill

    skill-create

    Create and validate Claude Code skills with proper structure, checklists, and validation scripts. Use when creating a new skill, auditing existing skills, or ensuring skills meet quality standards. Generates complete skill scaffolds with SKILL.md, check scripts, guides, and templates.

    Also in 3 projects that use this

  • qtzx06Skill

    eval

    Evaluate trained YOLO model accuracy with mAP metrics and per-class error analysis. Identifies failure cases for targeted improvement. Use after training.

    Also in 5 projects that use this

  • MontimageSkill

    test-coverage

    Improve test coverage by finding untested branches, error paths, and edge cases. Use when measuring or strengthening a project's tests. Don't use for production debugging, code review, or feature implementation.

    Also in 3 projects that use this

  • +1 more from TheKREATORS

The file

Show its rules and text

We split this skill into the rules it gives an agent

19 rules. 0 are common, 7 are distinctive, and 12 are very specific to this project.

  • 0

    Common

    Most of the 35 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 12

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    If no rubric exists, run /improve {target} Phase 0 first — /evolve requires an approved rubric and will not auto-generate one.

    line 56
  2. Distinctive:

    All findings are externalized incrementally — written after every phase, not only at cycle end.

    line 61
  3. Very specific:

    Create .planning/evolve/{target}/ on first invocation.

    line 74
  4. Very specific:

    Run /improve {target} --score-only.

    line 85
  5. Very specific:

    Write each hypothesis to the experiment log as { id, status: "pending", ...

    line 104
  6. Distinctive:

    < 0.4: no direct evidence found; hypothesis is speculative from this file set

    line 121
  7. Distinctive:

    Run scouts in parallel. Update experiment log:

    line 123
  8. Distinctive:

    Commit each merged worktree with a message citing the hypothesis ID.

    line 163
  9. Very specific:

    After committing changes to any SKILL.md (here or in Phase 7), run /reload-skills if the running Claude Code version supports it so the …

    line 165
  10. Distinctive:

    Update belief model — append evidence record for (axis, skill)

    line 170
  11. Very specific:

    Update experiment log — mark verified / refuted / incidental

    line 171
  12. Very specific:

    Write patterns to .planning/evolve/{target}/pattern-library.md.

    line 178
  13. Very specific:

    Compile into wiki: After writing to the pattern library, call /learn --from-evolve {target} --cycle {n}.

    line 180
  14. Very specific:

    Run verification oracle per cross-pollinated skill.

    line 192
  15. Very specific:

    Write patterns that apply beyond this target to .planning/research/patterns.md.

    line 196
  16. Distinctive:

    All axes ≥ 9.0 across all scored skills

    line 209
  17. Very specific:

    When context approaches compression territory (session duration > 30 min or /compact recommended): write continuation checkpoint to …

    line 236
  18. Very specific:

    Budget overrun risk: if projected spend for current cycle would exceed --budget by > 20%, warn and confirm before dispatching fleet.

    line 255
  19. Distinctive:

    Every hypothesis must have an explicit falsification criterion before Phase 3

    line 262

“Common” is measured: kept by at least 6 in 10 of the 35 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

/evolve — Improvement Director

Orientation

Use when: You want sustained autonomous quality advancement — the director forms hypotheses, scouts before attacking, and builds a belief model that compounds across cycles. Runs until a natural ceiling, budget exhaustion, or you say stop.

Don't use when: You want a single scored loop (/improve), a known axis attacked directly (/improve --axis), or a one-time audit (/improve --score-only).

Key difference from /improve: /improve follows the rubric mechanically. /evolve asks why scores are where they are, validates those theories before spending fleet budget, and extracts cross-skill patterns that propagate to skills never directly attacked.

Invocation

/evolve {target}                  # run until ceiling, velocity drop, or budget
/evolve {target} --n={N}          # exactly N director cycles then stop
/evolve {target} --budget=${X}    # run until cumulative spend reaches $X
/evolve {target} --continue       # resume from saved director state
/evolve {target} --status         # show belief model, velocity, spend — no attack
/evolve {target} --axis={name}    # focus director on one axis (scout + attack only)

target maps to .planning/rubrics/{target}.md. If no rubric exists, run /improve {target} Phase 0 first — /evolve requires an approved rubric and will not auto-generate one.

Campaign Artifacts

All findings are externalized incrementally — written after every phase, not only at cycle end. A crashed or compacted session resumes with full context.

ArtifactPathContents
Director state.planning/evolve/{target}/director-state.jsoncycle count, spend, velocity history, current phase, halt status
Belief model.planning/evolve/{target}/belief-model.jsonlone record per (axis, skill) per cycle: score, hypothesis, evidence, confidence
Experiment log.planning/evolve/{target}/experiment-log.jsonlevery experiment: hypothesis → prediction → actual delta → mechanism confirmed
Pattern library.planning/evolve/{target}/pattern-library.mdtransferable patterns: what change to what axis class caused what delta in which skills
Cycle digest.planning/evolve/{target}/cycle-{n}-digest.mdhuman-readable per-cycle summary for review
Global patterns.planning/research/patterns.mdcross-target patterns written outside campaign scope; available to future sessions and other targets
Knowledge wiki.planning/wiki/compiled wiki pages from /learn; integrates evolve discoveries across sessions

Create .planning/evolve/{target}/ on first invocation. Create .planning/research/ if absent.

Cycle digest contents: scores table (axis, prior, this cycle, delta), hypotheses table (id, axis, hypothesis, scout result, confidence), what was attacked (axis, skill, delta, mechanism confirmed), patterns discovered this cycle, belief model updates, and the spend/velocity line. Full template: docs/QUALITY_LOOPS.md#cycle-digest-format.

Director Cycle Protocol

Phase 1: Survey

Run /improve {target} --score-only. Record scores to belief model with delta from prior cycle (empty on cycle 1). Flag any axis that dropped since last cycle as regression-watch — these are checked first in Phase 2.

Phase 2: Hypothesize

For every axis below 8.0, generate one primary hypothesis in this form:

HYPOTHESIS: {axis} scores {n}/10 because {specific mechanism},
            not because {common misread}.
PREDICTION: Fixing {mechanism} will raise score ≥ {delta} across {N} skills.
FALSIFICATION: If we apply {change} and score does not rise > 0.5, hypothesis rejected.

Draw hypotheses from: evaluator justifications in Phase 1, prior evidence in the belief model, and programmatic check failures. Do not hypothesize from score alone — the number is the symptom.

Write each hypothesis to the experiment log as { id, status: "pending", ... }.

Skip hypothesis generation for an axis if the belief model already has a confidence >= 0.8 confirmed hypothesis for it that has not yet been attacked.

Phase 3: Scout

For axes below 7.0, or axes with unconfirmed hypotheses: dispatch one scout agent per hypothesis. Scouts read — they do not modify files.

Each scout returns { "hypothesis_id", "confirmed", "evidence", "confidence" } (schema example: docs/QUALITY_LOOPS.md#scout-result-schema).

Scout confidence protocol: Scouts read relevant files only — no edits, no test runs. Assign confidence:

  • 0.9+: mechanism is directly observable (explicit absence, missing section, wrong value in file)
  • 0.7–0.89: strong indirect evidence from 2+ corroborating observations
  • 0.4–0.69: single observation that supports the hypothesis; alternative explanations plausible
  • < 0.4: no direct evidence found; hypothesis is speculative from this file set

Run scouts in parallel. Update experiment log:

  • confidence >= 0.7 → confirmed
  • confidence 0.4–0.69 → needs-evidence (do not attack; add to next cycle)
  • confidence < 0.4 → rejected

Skip Phase 3 for any hypothesis already confirmed at confidence >= 0.8 in the belief model from a prior cycle.

Phase 4: Prioritize

For each confirmed hypothesis compute:

EV = (delta_estimate × axis_weight × confidence) / (effort_tier × collision_multiplier)
  • effort_tier: low=1.0, medium=1.5, high=2.5
  • collision_multiplier: 2.0 if axis shares primary files with another attack in this cycle

Select top K axes where K = min(confirmed count, 4). Document selection rationale in cycle digest. If --axis was set, skip ranking — attack only that axis.

Phase 5: Fleet Attack

Dispatch one agent per selected axis in an isolated worktree (Agent tool, isolation: "worktree"). Each agent receives:

  • The confirmed hypothesis and its falsification criterion
  • The specific files to modify
  • Verification oracle: node scripts/run-with-timeout.js 300 node scripts/test-all.js

Each agent returns a structured result: { "axis", "skill", "delta", "mechanism_confirmed", "files_changed", "approach" } (schema example: docs/QUALITY_LOOPS.md#fleet-agent-result-schema).

Merge rules:

  • Non-conflicting worktrees: merge all
  • Conflicting worktrees (same file): keep higher delta, discard lower
  • Regression on any previously passing programmatic check: abort that worktree, do not merge
  • mechanism_confirmed: false (score improved but not via predicted mechanism): record as incidental_improvement, mark hypothesis as needs-revision

Commit each merged worktree with a message citing the hypothesis ID.

After committing changes to any SKILL.md (here or in Phase 7), run /reload-skills if the running Claude Code version supports it so the change is live this session; otherwise note that a fresh session is required before the updated skill takes effect.

Phase 6: Synthesize

For each result:

  1. Update belief model — append evidence record for (axis, skill)
  2. Update experiment log — mark verified / refuted / incidental
  3. Identify transferable patterns:
PATTERN: {axis_class} | Mechanism: {what caused improvement} | Delta: {avg} across {N} instances | Applies to: {skill list} | Confidence: high/medium/low

Write patterns to .planning/evolve/{target}/pattern-library.md.

Compile into wiki: After writing to the pattern library, call /learn --from-evolve {target} --cycle {n}. This compiles cycle discoveries into .planning/wiki/ — integrating with findings from prior cycles and campaigns rather than siloing them in the evolve directory. Skip if /learn is not available in this session (log the skip, do not block the cycle).

Phase 7: Cross-Pollinate

For each confidence: high pattern, or any pattern confirmed in 2+ skills: apply to all other applicable skills as targeted single-file edits — without running a full attack cycle.

Run verification oracle per cross-pollinated skill. Commit only if all programmatic checks pass and no axis drops > 0.3. Revert on regression; mark pattern as context-dependent.

Write patterns that apply beyond this target to .planning/research/patterns.md.

Phase 8: Loop or Halt

Compute learning velocity:

velocity = Σ(delta across all attacked axes this cycle) / axes_attacked

Append to director-state.json velocity history.

Halt conditions (check in order):

  1. --n cycles completed
  2. --budget reached (cumulative cost ≥ limit)
  3. All axes ≥ 9.0 across all scored skills
  4. velocity < 0.2 for 3 consecutive cycles AND no needs-evidence hypotheses remain
  5. Level-up triggered (see below)
  6. User says stop

On velocity drop, before halting: attempt one axis-class switch — attack the highest-EV axis from a category not touched in the last 2 cycles. If velocity is still < 0.2 after that cycle, halt.

On level-up trigger (no axis improved > 0.5 for 2 loops, ≥ 3 loops run, no programmatic failures): write level-up proposals to .planning/rubrics/{target}-proposals.md, set status: level-up-pending in director state, halt. The campaign resumes only after the human approves and edits the live rubric.

On normal loop: increment cycle, compress prior cycle findings to continuation context, return to Phase 1.

Unlimited Mode

No --n and no --budget = unlimited. Declare before starting: target, exit conditions (all axes ≥ 9.0 OR velocity < 0.2 for 3 cycles), estimated cost ($12–18/cycle), spend so far ($0), and how to halt (type /stop or press Escape to stop after the current cycle). At the end of every cycle report cycle spend, cumulative spend, and velocity. Literal declaration and report templates: docs/QUALITY_LOOPS.md#unlimited-mode-templates.

When context approaches compression territory (session duration > 30 min or /compact recommended): write continuation checkpoint to director state, surface the --continue command. The next session picks up exactly where this one stopped.

For overnight / unattended runs: combine with /daemon. The director is daemon-compatible — daemon calls /evolve {target} --continue each session. Set --budget to cap total spend.

Fringe Cases

  • .planning/ does not exist: error — run /do setup first to initialize the harness state directory, then retry.
  • No rubric: error — run /improve {target} Phase 0 first. List available targets in .planning/rubrics/ as hint.
  • No prior scores in belief model: proceed from cycle 1; all deltas empty on first survey. Expected.
  • All scouts return needs-evidence: attack the top-EV axis anyway under low-confidence flag; record as exploratory. Mark result regardless.
  • Scout agent hangs or times out (dispatched scout never returns): After 10 minutes without a response, log the scout as status: timed-out in the experiment log with confidence: 0. Proceed with the remaining returned scouts. Never let a hung scout block the cycle — if all scouts time out, treat as "all scouts return needs-evidence" and attack the top-EV axis under low-confidence flag.
  • All axes collide (every axis shares files): serialize top 2 axes; parallelize remainder. Log collision.
  • Cross-pollination causes regression: revert that skill, mark pattern context-dependent, do not propagate further.
  • Level-up mid-campaign: pause, write proposals, set level-up-pending. /evolve --continue after human approval resumes cycle numbering from where it stopped.
  • Budget overrun risk: if projected spend for current cycle would exceed --budget by > 20%, warn and confirm before dispatching fleet.
  • --continue with no director state: error — no campaign to resume. Suggest /evolve {target} to start fresh.
  • Pattern library > 50 entries: consolidate — group by axis class, merge similar patterns, keep highest-confidence instance of each class. Log consolidation.
  • Zero skills match target rubric: error with message listing all .planning/rubrics/*.md targets.

Quality Gates

  • Every hypothesis must have an explicit falsification criterion before Phase 3
  • Scouts must run before fleet dispatch on any unconfirmed hypothesis
  • Belief model written after every phase, not only end of cycle
  • Cross-pollination requires passing verification oracle before commit
  • Regression on any previously-passing axis aborts that worktree commit
  • Pattern library and global patterns updated at every cycle end, even zero-improvement cycles
  • Cycle digest written even on abort or no-change cycles

Contextual Gates

Disclosure:

  • State mode (unlimited / fixed / budget) and exit conditions before first cycle
  • Estimate $12–18 per full cycle before starting
  • Report spend and velocity at end of every cycle
  • Confirm before continuing if cumulative spend exceeds $50

Reversibility: Red. Cross-pollination modifies many files across the repo; level-up rewrites rubric anchors permanently. Each commit is individually revertable; high volume. Range: git revert {first}^..{last}.

Trust gates:

  • Novice (0-4 sessions): --status and --n=1 only; unlimited blocked
  • Familiar (5-19): up to --n=5; unlimited requires explicit --budget cap
  • Trusted (20+): no cap; confirm if projected total > $100

Exit Protocol

---HANDOFF---
- Target: {target} | Cycles: {n} | Spend: ${total} | Mode: {unlimited/n/budget}
- Axes improved: {list with deltas}
- Belief model: .planning/evolve/{target}/belief-model.jsonl ({N} confirmed, {M} rejected)
- Pattern library: .planning/evolve/{target}/pattern-library.md ({N} patterns)
- Global patterns: .planning/research/patterns.md
- Knowledge wiki: .planning/wiki/index.md (compiled via /learn --from-evolve after each cycle)
- Cycle digests: .planning/evolve/{target}/cycle-*-digest.md
- Halt reason: {ceiling/velocity/budget/n-complete/user-stop/level-up-pending}
- Level-up proposals: {path or N/A}
- Reversibility: red — {N} commits across {M} files; revert range: git revert {range}
- Recommended next: {level-up and re-run / new target / done}
---

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.