Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add commands/keysersoose/claude-code-setup/evolvegit clone --depth 1 https://github.com/keysersoose/claude-code-setupWhat 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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00018 | $0.00680 |
| Opus 5 | $0.00009 | $0.00340 |
| Sonnet 5 | $0.00004 | $0.00136 |
| Haiku 4.5 | $0.00002 | $0.00068 |
Grade B, and why
evolve scanned grade B with 1 finding 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 yesterday.
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.
Reads agent configuration directoriesmediumAgent snooping
.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.
!`cat .claude/memory/learned-rules.md 2>/dev/null || echo "No learned rules yet"` How it starts
The opening of the file, as written. The whole thing — 73 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Current State
Learned Rules
!cat .claude/memory/learned-rules.md 2>/dev/null || echo "No learned rules yet"
Recent Corrections (last 20)
!tail -20 .claude/memory/corrections.jsonl 2>/dev/null || echo "No corrections logged yet"
Recent Observations (last 20)
!tail -20 .claude/memory/observations.jsonl 2>/dev/null || echo "No observations logged yet"
Previous Evolution Decisions
!tail -40 .claude/memory/evolution-log.md 2>/dev/null || echo "No evolution history yet"
Your Task
You are the meta-engineer. Improve the system that runs you.
Step 1: Analyze Corrections
Group corrections by pattern. Look for:
- Same correction appearing 2+ times (should already be in learned-rules, if not, promote now)
- Correction clusters pointing to a missing rule in CLAUDE.md or rules/
- Corrections that contradict existing rules (the rule is wrong, not the user)
Step 2: Analyze Observations
Group observations by type. Look for:
- High-confidence observations confirmed multiple times
- Observations that match corrections (convergent signals are strongest)
- Architecture or gotcha observations that could prevent future bugs
Step 3: Audit Learned Rules
For each rule in learned-rules.md:
- Still relevant? Does the codebase still follow this pattern?
- Promotion candidate? If it's been there 10+ sessions and always followed, propose graduating to CLAUDE.md or rules/
- Redundant? Is it now covered by a linter rule, a rules/ file, or CLAUDE.md?
- Too vague? Can Claude actually follow it without interpretation?
Step 4: Check Evolution Log
Read evolution-log.md. Never re-propose a rejected rule unless the user explicitly asks.
Step 5: Propose Changes
For each proposal, show:
PROPOSE: [action] Rule: [the rule text] Source: [corrections/observations/learned-rules] Evidence: [why this should change] Destination: [learned-rules.md | CLAUDE.md | rules/X.md | DELETE]
Categories of action:
- PROMOTE: Move from observations to learned-rules
- GRADUATE: Move from learned-rules to CLAUDE.md or rules/
- PRUNE: Remove redundant or outdated learned rule
- UPDATE: Modify existing rule based on new evidence
- ADD: New rule from correction patterns
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.
- yesterday First seen · 73 lines · 18 tokens per session scan B f6225d91d62b
evolve is a command published in the GitHub repository keysersoose/claude-code-setup (2 stars, last pushed 1mo ago), licensed MIT. It adds 18 tokens to every session and 680 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other commands, from other repositories
learn
Force claude-smart to extract learnings from this session now.
component
Scaffold a new React component grounded in the paper-mono primitives. Requires explicit kind or a nearest-existing-component match. No empty divs, no speculative scaffolding.
memory-store
Store an insight, decision, or pattern to memory.
review
Cold re-quiz on code that already shipped — your own session commits, not the change in front of you.
no-vibe
Enter no-vibe mode in OpenCode (tutor mode, no direct project file writes).
teach-me-testing
Teach testing progressively through structured sessions. Use when user says ""lets learn testing"" or ""I want to study test practices"".