retention

A data-retention tool for the local evolve store, which keeps agent memories and session records. It applies rules based on age or lack of use, either marking records or deleting them.

In plain words
What is it for?
Use it to flag or remove old memories and expired sessions, with an option to remove memories derived from deleted sessions.
Why use it?
It helps identify stale data while defaulting to a dry run, so you can review proposed changes before applying them.

Skill for Claude CodeCodex

Part of the evolve-lite plugin — 11 skills shipped together

Install

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.

agentmods
npx agentmods add skills/agenttoolkit/altk-evolve/retention
Any agent
npx skills add AgentToolkit/altk-evolve --skill retention
Clone the repo
git clone --depth 1 https://github.com/AgentToolkit/altk-evolve

Made for: Claude Code, Codex.

Or install evolve-lite, the plugin that ships this one along with the rest of its 11 skills.

Per session 30 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,041 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 100% copy Near-identical to another mod 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 $0.00030 $0.01041
Opus 5 $0.00015 $0.00521
Sonnet 5 $0.00006 $0.00208
Haiku 4.5 $0.00003 $0.00104

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

Security

Grade A, and why

retention 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 3d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/run_retention.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

Origin

This is a copy

100% identical to evolve-lite:retention — 6 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

platform-integrations/claude/plugins/evolve-lite/skills/evolve-lite/retention/SKILL.md · 101 lines

How it starts

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

Retention

Overview

Runs the data-retention rules configured in evolve.config.yaml against the local .evolve/ store: private entities under .evolve/entities/ and session transcripts under .evolve/trajectories/. Rules match by entity type plus age (max_age_days, from file mtime) or disuse (max_unused_days, from recall rows in .evolve/audit.log), and either flag (a non-destructive frontmatter marker) or delete. A delete rule on trajectories with cascade_derived: true also deletes the entities derived from those sessions (linked by their trajectory: frontmatter).

The script is dry-run by default — it never mutates anything unless --apply is passed.

Workflow

Step 1: Require rules

Read evolve.config.yaml. If there is no retention: block with a rules: list, show the user this example and stop:

retention:
  rules:
    - name: stale-guidelines
      entity_type: guideline
      max_age_days: 90
      action: flag
    - name: old-sessions
      entity_type: trajectory
      max_age_days: 365
      action: delete
      cascade_derived: true

Each rule needs a name and at least one of max_age_days / max_unused_days; action is flag (default) or delete. Rules are checked top-to-bottom and the first match wins, so put narrow rules first — and put a longer-threshold delete before a shorter-threshold flag on the same type, or the flag shadows the delete and it never fires.

A delete rule may also set on_missing_access_signal to say what happens when an unused match has no recorded recall (disuse measured from file mtime): skip (default, fail-safe — spare it and report it as skipped), flag (downgrade the delete to a non-destructive flag), or delete (delete on the mtime fallback anyway). The safe default means an unused delete never destroys a memory the agent simply never recorded a recall for.

Step 2: Dry run

From the project root:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/evolve-lite/retention/scripts/run_retention.py

Read the full file on GitHub · 101 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 3d ago First seen · 101 lines · 30 tokens per session scan A e618dbacec71

Subscribe to this mod's changes

retention is a skill published in the GitHub repository AgentToolkit/altk-evolve (105 stars, last pushed 8d ago), licensed Apache-2.0. It adds 30 tokens to every session and 1,041 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to evolve-lite:retention, differing in 6 lines, and is treated as a copy.