evolve

evolve is a command for Claude Code from jamditis/claude-skills-journalism. It costs 11 tokens per session (841 once invoked), scanned A, original, MIT.

A command that updates skill instruction files using lessons collected from real usage.

In plain words
What is it for?
Use it to review eligible skills, apply selected lessons, roll back a change, or export and import lessons as JSON.
Why use it?
It helps keep skills aligned with validated experience instead of leaving useful fixes and patterns in a separate lesson store.

Command for Claude Code

Written for Claude Code: ${CLAUDE_PLUGIN_ROOT} variable. Also seen: names the AskUserQuestion tool.

Runs only inside its plugin — its command needs a path that Claude Code sets for a plugin’s own hooks and for nothing else. Install the plugin, not this.

Part of the autocontext plugin — 5 commands, 1 agent shipped together

Good fit Use it to review eligible skills, apply selected lessons, roll back a change, or export and import lessons as JSON.

Compare 6 commands from other repositories ↓
Install

Getting it into your agent

This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.

Claude Code
/plugin marketplace add jamditis/claude-skills-journalism
Claude Code
/plugin install autocontext

Made for: Claude Code.

Or install autocontext, the plugin that ships this one along with the rest of its 5 commands, 1 agent.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for evolve

README.md
[![agentmods](https://agentmods.dev/badge/commands/jamditis/claude-skills-journalism/evolve.svg)](https://agentmods.dev/commands/jamditis/claude-skills-journalism/evolve)
Your own site
<a href="https://agentmods.dev/commands/jamditis/claude-skills-journalism/evolve"><img src="https://agentmods.dev/badge/commands/jamditis/claude-skills-journalism/evolve.svg" alt="Measured on agentmods" height="20"></a>
Per session 11 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 841 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00011 $0.00841
Opus 5 $0.00005 $0.00420
Sonnet 5 $0.00002 $0.00168
Haiku 4.5 $0.00001 $0.00084

Measured 8d ago against content hash d20f9b32f3a7, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

evolve scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

autocontext/commands/evolve.md · 112 lines

How it starts

The opening of the file, as written. The whole thing — 112 lines — stays where its author put it; the contents beside it link to each section on GitHub.

This command improves skill .md files based on lessons accumulated in the global skill lesson store.

Argument handling

The user may invoke this command with arguments:

  • /autocontext:evolve, default: scan and evolve interactively
  • /autocontext:evolve --rollback <skill-name>, restore from backup
  • /autocontext:evolve --export, export lessons to JSON
  • /autocontext:evolve --import <path>, import lessons from JSON

Parse the arguments from the user's input. If --rollback is present, run the rollback flow. If --export or --import, run the sync flow. Otherwise, run the default evolution flow.

Default evolution flow

  1. Run the scan script to find eligible skills:

    bash "${CLAUDE_PLUGIN_ROOT}/scripts/skill-evolution/scan_eligible.sh"
    
  2. If no skills are eligible, report that and exit.

  3. Present the summary to the user using AskUserQuestion: which skill(s) to evolve? Include lesson count and average confidence per skill. Add an "All" option and a "Skip" option.

  4. For each selected skill: a. Read the current skill .md file using the find_skill_path function:

    python3 -c "
    import sys
    sys.path.insert(0, '${CLAUDE_PLUGIN_ROOT}/scripts/skill-evolution')
    from apply_edit import find_skill_path
    path = find_skill_path('SKILL_NAME')
    print(path or 'NOT_FOUND')
    "
    

    b. If NOT_FOUND, warn and skip. c. Read the skill file content. d. Run generate_diff to create an improved version:

    python3 -c "
    import sys, json
    sys.path.insert(0, '${CLAUDE_PLUGIN_ROOT}/scripts/skill-evolution')
    from generate_diff import generate_evolved_skill
    from store import get_eligible_lessons
    
    lessons = get_eligible_lessons('SKILL_NAME')
    with open('SKILL_PATH') as f:
        content = f.read()
    result = generate_evolved_skill(content, lessons)
    if result:
        print(result)
    else:
        print('GENERATION_FAILED')
    "
    

    e. If generation failed, offer the append fallback. f. Show a diff between the original and evolved content. g. Ask the user via AskUserQuestion:

    • Accept, apply the edit
    • Edit, let user make manual changes first
    • Reject, skip, lessons stay
    • Append instead, use the fallback section h. Apply the chosen action using apply_edit functions. i. Mark evolved lessons as folded.

Read the full file on GitHub · 112 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 112 lines · 11 tokens per session scan A d20f9b32f3a7

Subscribe to this mod's changes

evolve is a command published in the GitHub repository jamditis/claude-skills-journalism (387 stars, last pushed 3d ago), licensed MIT. It adds 11 tokens to every session and 841 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other commands, from other repositories

export-latex

Export the current paper draft to production-ready LaTeX (.tex) and PDF using the arxiv-style template. Converts draft.md + references.bib + figures/ into a complete LaTeX project with resolved citations, tables, and figures. Compiles to PDF automatically.

TobiasBlask/open-paper-machine · 55 tokens

review-paper

Simulate a double-blind peer review of the current paper. Generates 2 independent reviewer reports in the style of top IS/CS conferences (ICIS, ECIS, MISQ level). Each report includes Summary, Strengths, Weaknesses, Minor Comments, and Overall Recommendation. Output is saved as simulatedreviews.md and can be fed…

TobiasBlask/open-paper-machine · 79 tokens

triage-project

Strategic project triage — should you continue, pivot, or kill your current research project? Evaluates 5 signals (results, competition, impact, effort, motivation) and delivers a clear Continue/Pivot/Kill recommendation. For Pivot: suggests concrete new framing. For Kill: suggests what to salvage.

TobiasBlask/open-paper-machine · 62 tokens

analyze-writing

Analyze academic writing quality of the current draft. Checks for passive voice overuse, weak openings, hedging balance, readability, sentence length variation, and word repetitions. Produces a writing quality report with specific improvement suggestions per section.

TobiasBlask/open-paper-machine · 46 tokens

scooping-check

Scooping risk assessment — is someone else working on your research idea? Identifies competing groups, assesses pace of publication, evaluates whether the core insight is "in the air", and provides a watch list with search terms, key researchers, and venues to monitor.

TobiasBlask/open-paper-machine · 52 tokens

audit-paper

Audit a paper's empirical claims against the linked code repository — catches MISMATCH, MISSING, and PARTIAL claims before submission.

TobiasBlask/open-paper-machine · 26 tokens