Skip to main content
skill CX Codex

Effective Memory — memory skill

A set of habits for an agent that already has memory: when to store a correction, when to look something up before answering, what counts as verified. Useful when recall exists but rarely fires.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add plur-ai/plur --skill effective-memory -a claude-code
Open on GitHub

What Effective Memory does

The pack holds 12 engrams about handling memory. They split into capture (calling plur_learn the moment a correction lands), recall (plur_recall before factual answers), session lifecycle (plur_session_start and plur_session_end, plus plur_feedback on injected engrams), verification by artifact rather than narrative, safety for irreversible actions, and reading a file before editing it.

The author intended these to stay always-on. Installation strips the pinned flag from every pack, this one included, so the rules are keyword-gated instead (injection_policy: on_match). The match list is fixed: memory, learn, remember, session, feedback, engram, forget, correction, preference, recall, verification, safety, plur. A session that never touches those words will not pull the rules in.

The pack ships inside @plur-ai/mcp, and both @plur-ai/cli and @plur-ai/mcp have to be installed globally or the commands will not resolve. Installing by name fails, because plur packs install expects a folder or an archive. plur init skips this pack; plur-mcp init is what installs it.

What it helps with

  • store a correction while it is still fresh
  • look up a fact instead of inventing one
  • tell a finished task from a described one
  • get real confirmation before a destructive action
  • read the file before changing it

Example prompts for the agent

  • The user corrected the date format — call plur_learn and keep that rule.
  • Check plur_recall before you answer which version of the dependency is in use.
  • Open the session with plur_session_start and close it with plur_session_end.

How to install Effective Memory

1Skills CLI (Vercel)

npx skills add plur-ai/plur --skill effective-memory -a claude-code

2Manually: put the files in place

~/.claude/skills/effective-memory/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/effective-memory/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about Effective Memory

How do I install Effective Memory in Claude Code?

Run npx skills add plur-ai/plur --skill effective-memory -a claude-code. The skill lands at ~/.claude/skills/effective-memory/SKILL.md.

What does Effective Memory do?

It gives the agent 12 rules for memory work: capturing corrections, recalling before answering, leaving feedback, verifying by artifact, handling irreversible actions safely, and reading before editing.

Why do the rules not fire in every session?

Installation drops the pinned flag, so the rules load on keyword matches from the match_terms list. If a session never hits one of those words, the rule stays out.

Source text

SKILL.md · MIT
---
name: Effective Memory
description: The essential habits for an AI agent with memory — session bookends, learning triggers, verification, safety, and the operational discipline that turns raw recall into compounding intelligence. Keyword-matched after installation.
version: "1.1.1"
creator: plur-ai
license: MIT
tags: [memory, learning, best-practices, session-management, feedback, safety, verification, discipline, time]
x-datacore:
  id: effective-memory
  injection_policy: on_match
  match_terms: [memory, learn, remember, session, feedback, engram, forget, correction, preference, recall, verification, safety, plur]
  domain: plur.best-practices
  engram_count: 12
  # The engrams below still carry `pinned: true`, but INSTALL STRIPS IT.
  # `sanitizePackEngrams` removes `pinned` and downgrades `commitment: locked`
  # from every pack, this one included, because a pack is an archive from a
  # stranger and its author does not get to decide what is always in front of
  # the recipient's model. The flags are left in place so the intent is
  # legible and so the behaviour returns if the host ever grows a way to
  # grant it deliberately. `injection_policy: on_match` is what actually
  # governs this pack. See plur-ai/plur#1019.
---

# Effective Memory

Your agent has memory. These habits make it actually useful.

Without them, memory is a growing pile of assertions nobody retrieves. With them, memory compounds — each session builds on the last, corrections stick, and the agent gets measurably better over time.

These engrams cover the meta-rules every agent needs regardless of domain: how to capture corrections, when to recall before answering, what "verified" means, how to stay safe with destructive actions, and why never to type a weekday from memory.

They were written to be **pinned** — always eligible for injection, bypassing keyword gating. That is no longer what happens. Install strips `pinned` from every pack, this one included, so these engrams are matched on keywords like any other (`injection_policy: on_match`, with the `match_terms` above). The stripping is right — a pack author should not be able to occupy a recipient's context unconditionally — but it means this pack's meta-rules only surface when a session's wording happens to touch them.

## Install

This pack ships inside `@plur-ai/mcp`. With both packages installed globally, preview it and install it by path (Bash or zsh):

```bash
plur packs preview "$(npm root -g)/@plur-ai/mcp/packs/effective-memory"
plur packs install "$(npm root -g)/@plur-ai/mcp/packs/effective-memory"
```

In PowerShell:

```powershell
$packPath = Join-Path (npm root -g) '@plur-ai/mcp/packs/effective-memory'
plur packs preview $packPath
plur packs install $packPath
```

This needs `@plur-ai/cli` and `@plur-ai/mcp` installed globally (`npm i -g @plur-ai/cli@latest @plur-ai/mcp@latest`). `plur packs install effective-memory`, by name, does not work: `packs install` takes a folder or an archive, not a pack name.

`plur init` does **not** install this pack. `plur-mcp init` (the MCP package's own setup) does install it, and upgrades it when a newer version ships.

In the default lean MCP profile, preview/install use `plur_admin` actions `plur_packs_preview` and `plur_packs_install`, with `{ "source": "/path/to/pack" }` as `args`. Use action `help` for the current schemas.

## What's inside

12 engrams covering:

- **Capture** — call `plur_learn` immediately on corrections; detect correction-shaped phrases.
- **Recall** — `plur_recall` before factual answers; don't confabulate.
- **Session lifecycle** — bookend with `plur_session_start` / `plur_session_end`; `plur_feedback` on injected engrams; `plur_timeline` for long-horizon agents.
- **Verification** — artifact-first; never bulk-mark as done from narrative text.
- **Safety** — irreversible actions need actual user confirmation and one-item dry-runs.
- **Discipline** — read before edit; don't ask "want to continue?" mid-task.
- **Time** — never type a day-of-week from memory.

## Why these were written pinned, and what happens instead

Pinned engrams bypass the keyword-relevance gate in `scoreEngram` and the per-pack and per-domain caps in `fillTokenBudget`. Cross-cutting meta-rules are the case that justifies it: "call `plur_learn` when corrected" is relevant to every session and keyword-matches almost none of them.

**Install strips the flag**, so that is not the behaviour you get. `sanitizePackEngrams` removes `pinned` and downgrades `commitment: locked` from every installed pack, and it is right to — a pack is an archive from a stranger, and letting its author decide what is permanently in front of your model is a privilege no producer should take by shipping a YAML field.

The consequence is that this pack's rules are keyword-gated, which is a weaker guarantee than they were designed for. Whether a host should be able to grant always-inject to a pack it trusts deliberately — as opposed to a pack claiming it — is an open question, tracked in plur-ai/plur#1019.

## Versioning

| Version | Changes |
|---|---|
| 1.1.1 | Use the installed CLI with the bundled pack path; document preview, PowerShell and lean MCP dispatch. |
| 1.1.0 | Consolidated `plur-required` meta-rules into this pack. All engrams now `pinned: true`. Added verification, safety, discipline, and time-handling rules. Engram count 8 → 12. |
| 1.0.0 | Initial pack — 8 engrams covering session bookends, learning triggers, and feedback loops. |

© plur-ai · MIT · plur-ai/plur

Similar skills

All skills for Agent setup: memory, context, orchestration →

From the same set3

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor