CtrlK
BlogDocsLog inGet started
Tessl Logo

persistent-memory

Persists context across conversations as plain markdown so every future session can enrich a topic-scoped memory (e.g. `project-acme`). Four operations: `write` (extract candidates, resolve as ADD / UPDATE / DELETE / NOOP per Mem0), `read` (load a ≤ 200-line INDEX, fetch detail on demand), `consolidate` (sleep-style merge + prune), `forget` (delete or redact with audit). Three storage tiers: home (`~/.agent-memory/<scope>/`, default), project-local (gitignored), project-shared (committed). Enforces a never-store list (secrets, keys, financial and identity numbers) and a consent preview before every write. `rules/scaling-tiers.md` covers scaling to SQLite FTS, vector DB, and managed memory, plus the LoreKit backend the self-improvement loops run on: scope mapping, the `loop::<skill>-lessons` tag and key convention, and the shared lesson schema. Triggers on "remember this", "save to memory", "recall memory", "what do you remember about", "consolidate memory", "forget that", "/persistent-memory".

67

Quality

84%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

77%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

The body is a well-architected thin index with explicit gates, consent checkpoints, and Definition of Done checklists that make the workflows genuinely hard to execute wrongly. Its critical weakness is that the files it delegates all operational detail to (rules/*, templates/*) are missing from the bundle, so the skill as shipped cannot fully perform its own operations.

Suggestions

Ship the referenced `rules/*.md` and `templates/*.md` files in the bundle — the write pipeline, never-store list, entry templates, and pointer snippet contract are currently unreachable, breaking both progressive disclosure and full executability.

Remove the duplicate "Rule" link column from the phase tables (or the Required Reading table) — the same links are enumerated twice, wasting tokens.

Inline the minimal essentials (entry-file naming format and the never-store list) into SKILL.md so a `write` can proceed safely even before the rule files load.

DimensionReasoningScore

Conciseness

The thin-index body has no concept-explaining filler — tables carry mode detection, phases, tiers, and gates, and "Read only what the current operation asks for" signals restraint. However, the phase tables' "Rule" column repeats links already enumerated in the Required Reading table, and the Storage Layout section duplicates detail delegated to `rules/storage-layout.md`, so minor trimming is possible — the 4 anchor rather than the every-token-earns-its-place 5 anchor.

4 / 5

Actionability

Concrete, executable guidance throughout: a mode-detection table with `$0` checks and trigger phrases, a literal one-line operation/scope/tier output example, exact storage paths, a literal pointer snippet, and copy-paste artifacts like "Saved N memories to <scope> (<tier>)." It falls short of the 5 anchor because key executable detail (entry-file formats, the never-store list contents, diff/preview format) lives entirely in delegated files.

4 / 5

Workflow Clarity

Each operation has a numbered phase table with an explicit named Gate, the rule "Do not proceed to the next phase until the prior phase's gate passes", consent previews, explicit user confirmation for destructive `forget` runs, AUDIT.log appends, and per-operation Definition of Done checklists — explicit validation and checklists matching the 5 anchor. The destructive/batch cap of 3 does not apply since validation steps are emphatically present.

5 / 5

Progressive Disclosure

On paper this is an exemplary index: a Required Reading by Operation table, one-level-deep pointers, and per-section "full rules in ..." signals. But scored against the actual bundle, every referenced `rules/*.md` and `templates/*.md` file is absent — only `references/research-sources.md` exists — so the disclosure scheme cannot actually execute and navigation dead-ends. Good structure undermined by missing referenced files lands at the 3 anchor; it would score 5 if the referenced bundle files shipped.

3 / 5

Total

16

/

20

Passed

Description

88%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: it answers what and when explicitly with concrete operations, tiers, privacy enforcement, and natural trigger phrases. The main flaws are the confusing LoreKit/self-improvement-loops sentence, which pads the description with internal detail irrelevant to trigger decisions, and a few missing natural trigger synonyms.

Suggestions

Drop the LoreKit backend / `loop::<skill>-lessons` sentence from the description — it describes internal rules-file content irrelevant to when the skill should trigger, and its unexplained jargon works against clarity.

Add common natural trigger synonyms such as "don't forget this", "keep in mind", and "what do you know about" to reduce missed invocations.

Trim the enumeration of what `rules/scaling-tiers.md` contains; a one-clause pointer is enough in a description.

DimensionReasoningScore

Specificity

The description lists all four operations with concrete sub-steps ("extract candidates, resolve as ADD / UPDATE / DELETE / NOOP per Mem0", "load a ≤ 200-line INDEX, fetch detail on demand", "delete or redact with audit"), plus three storage tiers with literal paths and enforcement rules ("never-store list (secrets, keys, financial and identity numbers)"). Coverage of what the skill does is comprehensive, matching the top anchor; the only weakness is the tangential LoreKit sentence, which adds jargon but not missing capability.

5 / 5

Completeness

Both what and when are explicit: operations, tiers, and enforcement describe the capability, and "Triggers on ..." enumerates concrete trigger phrases. This matches the 5 anchor ("Clearly and explicitly answers both what AND when with concrete trigger phrases"); the 4 anchor's weaker "when" does not apply.

5 / 5

Trigger Term Quality

Concrete trigger phrases are listed ("remember this", "save to memory", "recall memory", "what do you remember about", "consolidate memory", "forget that") and map naturally to each operation, but common synonyms like "don't forget this", "keep in mind", or "what do you know about" are absent. Good coverage with a few natural terms missing, matching the 4 anchor rather than the comprehensive 5 anchor.

4 / 5

Distinctiveness Conflict Risk

The topic-scoped markdown memory niche with distinct operation triggers is mostly distinct, but phrases like "remember this" and "save to memory" are generic enough to overlap with built-in or other memory skills — minor overlap risk with closely related skills, matching the 4 anchor rather than the minimal-conflict 5 anchor.

4 / 5

Total

18

/

20

Passed

Validation

81%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 38 missing

Warning

Total

13

/

16

Passed

Repository
mthines/agent-skills
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.