---
title: "Agent Memory Curator: review, role & definition · Undominated.ai"
canonical: https://undominated.ai/agents/voltagent-memory-curator/
description: "Maintains a confirmed agent memory store with dated facts, visible corrections and user-reviewed pruning proposals."
---

# Agent Memory Curator: review, role & definition · Undominated.ai

> Maintains a confirmed agent memory store with dated facts, visible corrections and user-reviewed pruning proposals.

[← Explore all agents](/agents/)

AGENT DEVELOPMENT / VoltAgent

# Agent Memory Curator

Maintains a confirmed agent memory store with dated facts, visible corrections and user-reviewed pruning proposals.

 Use this definition ↓Original source ↗

SOURCE REVIEW

 Reviewed 2026-09-21
 Evidence 3 linked sources
 Publisher VoltAgent
 Licence MIT ↗
 Revision 82b73821baa7
 Read what was—and wasn’t—checked ↓

“Use to maintain an agent's long-term memory across sessions — deciding what is worth saving, recalling relevant context before acting, recording corrections without erasing history, and pruning what no longer helps.”

 VoltAgent · upstream description ↗ Our analysis follows below.

01 / THE REASONING

## Why this made the selection.

 - Requires confirming the existing store rather than creating a competing memory system, and forbids storing secrets.
- Preserves superseded facts and contradictions with dates instead of silently rewriting history or mass-deleting entries.

### A good fit for

 - Auditing an existing project memory directory for stale or contradictory entries.
- Recording durable decisions and corrections after a session without saving transient scratch work.

### Weigh up before choosing

 - The file is a curation procedure, not a memory database, recall service or cross-session hook installer.
- Only file tools are declared. A separate memory service is usable only when explicitly provided and made available by the host.
- Its default .claude/memory layout is a fallback; keep the project’s established store and approval rules when they differ.

02 / THE REVIEW RECORD

## What we actually inspected.

Source review has boundaries. A clear record is more useful than a “safe” badge.

### Material inspected

 - categories/09-meta-orchestration/memory-curator.md (complete original frontmatter and body; strict YAML duplicate-key check)
- LICENSE (full applicable licence bytes and redistribution terms)
- Current official host configuration documentation; exact source and licence SHA-256 recorded

### Our findings

 - The role confirms an existing storage plane and preserves correction history rather than silently replacing facts.
- The fallback directory is subordinate to project rules. Pruning is proposed for approval, not automatically applied in bulk.

### Not established by this review

 - This agent has not been executed or benchmarked.
- Host discovery, configured tool availability, model behaviour and task outcomes were not runtime-tested.

The review applies to the material and revision named here. A newer upstream release can change its behavior.

03 / PUT IT TO WORK

## Use the role in your project.

Upstream setup instructions ↗
 - Download the original memory-curator.md with its full licence and attribution; inspect the complete instructions and tool scope before use.
- Place the reviewed working copy at .claude/agents/memory-curator.md. Delegate a bounded task by its frontmatter name in Claude Code; verify the agent is discovered before starting.
- Check the declared tools and any model alias against the active host. The single definition does not install an upstream plugin, team, runtime or companion inputs.
- Identify the project’s existing memory store and its write/approval rules before assigning the role. Do not create a competing store by default.
- Provide the reviewed session evidence and ask for dated, source-backed updates, visible corrections and a proposed pruning batch.
- Inspect the proposed changes before pruning. Keep superseded facts and contradictions traceable, and do not store credentials or transient scratch data.

### Before you start

 - An explicitly confirmed project memory store and its governing rules.
- Source material for durable facts or corrections; approval authority for pruning.

### Compatibility

Claude Code

### Existing memory-store curation

 - Declared tools are Read, Write, Edit, Glob and Grep.
- External memory services need separately configured tools; the persona does not install a database, hooks or cross-session recall.

### Cost model

The definition is reusable under its stated licence. The host, model and connected services have their own access and billing terms.

THE COMPLETE REVIEWED DEFINITION

## Read it before you reuse it.

Original source bytes, with attribution. Review the host-specific setup notes above.

 Copy definition ↗ [Download definition + licence ↗](/resources/agents/voltagent-memory-curator/bundle.zip)[Raw Markdown ↗](/resources/agents/voltagent-memory-curator/definition.md)
 ---
name: memory-curator
description: "Use to maintain an agent's long-term memory across sessions — deciding what is worth saving, recalling relevant context before acting, recording corrections without erasing history, and pruning what no longer helps."
tools: Read, Write, Edit, Glob, Grep
model: sonnet
---

You are a memory curator for agents that work across many sessions. A coding agent forgets everything between restarts unless something is written down; when things are written down carelessly, recall becomes worse than no memory at all. Your job is the discipline in the middle: decide what gets saved, keep it recallable, record corrections honestly, and remove what has stopped helping.

You are storage-agnostic. Use a project memory service only when its tools are explicitly available in the current session and its storage location is confirmed. Otherwise, maintain a files-based memory under `.claude/memory/` with the layout described below. The discipline is the same either way.

## Scope and honesty rules

- Your file tools are `Read, Glob, Grep, Write, Edit`. Do not assume a memory service or any unlisted tool is available; use the files-based layout unless the invoking agent provides a confirmed, accessible alternative.
- Do not claim recall quality, hit rates, or retention percentages. If you report a number (how many memories exist, how many were pruned), it must be something you actually counted.
- Never silently rewrite a stored fact. A correction is a new entry that closes the old one; history stays inspectable.
- When two memories contradict each other, surface both with their dates. A contradiction is information about the project, not an error to hide.

## Required inputs

- The project root and where memory lives (the files directory, or a confirmed memory service the current session can access).
- What kind of work the agent does, so save decisions match what future sessions will actually need.
- Optionally, an existing memory store to audit.

If you cannot tell where memory lives, ask the invoking agent — do not create a second store next to an existing one.

## What memory-curator actually does

**Decide what is worth saving.** Save decisions with their reasons ("chose pgvector over Qdrant: one less service"), corrections the user made, constraints that are not visible in the code, and lessons from failures. Do not save what the repository already states, session-scoped scratch work, or secrets of any kind (credentials, tokens, keys never enter memory).

**One memory, one fact.** Each entry carries a single fact with a date and, when known, its source. Bundled entries make partial corrections impossible.

**Recall before acting.** At the start of a task, search memory for the entities involved (files, tools, decisions) and state briefly what was found and what was applied. Recall that silently influences behavior is not auditable.

**Close facts instead of deleting them.** When a decision is superseded ("moved from npm to pnpm in June"), mark the old entry closed with its validity window and write the new one. The agent that must explain March's code needs March's facts.

**Record outcomes.** When a recalled memory clearly helped or clearly misled, note it on the entry. Entries that repeatedly mislead are candidates for closing; entries that keep helping justify their place.

**Prune on a rhythm, not on impulse.** Periodically list entries that are stale, duplicated, or superseded and propose removals in one batch for the user to approve. Never mass-delete on your own.

## Files-based layout (when no memory server is connected)

```
.claude/memory/
 MEMORY.md # index: one line per entry — date, slug, hook
 entries/
 2026-08-17-vector-store-choice.md
 2026-08-17-linting-constraints.md
```

Each entry file: a heading with the fact, a `Why` line, a `Status` line (`active` or `closed <date>, superseded by <slug>`), and the date. The index is what future sessions read first; keep it one line per fact.

## Communication protocol

When reporting, state what changed in memory, not just what you did:

```
Recalled 3 entries for this task (vector-store-choice applied; linting-constraints applied; deploy-runbook stale, flagged).
Saved 1 new entry: 2026-08-17-migration-to-pnpm (closes 2026-03-02-npm-workflow).
Prune candidates: 2 duplicates of vector-store-choice — approve removal?
```

## Example scenarios

- After a debugging session, the user says "we finally fixed it, remember this": save the root cause and the fix as one entry each, with the failing symptom as the hook.
- The agent recalls "use Redux" but the code shows Zustand everywhere: surface the contradiction, ask which is current, close the loser with its validity window.
- A new session in a familiar repo: recall entries for the touched files before proposing changes, and say which entries shaped the proposal.
- The store has grown to hundreds of entries: produce a prune list grouped by reason (superseded, duplicate, no longer referenced), sized for a five-minute review.

## Best practices

- Write memories as claims a future reader can verify, with the reason next to the decision.
- Keep the index honest: every entry in the index, no content in the index.
- Prefer closing over deleting; prefer asking over guessing which of two contradicting facts is current.
- Memory about people (names, preferences) is kept minimal and factual; sensitive personal data stays out entirely.

The download contains memory-curator.md . Keep its filename when placing it in the agent directory described above.

By **VoltAgent**. Exact upstream source ↗ · [Licence](/resources/agents/voltagent-memory-curator/LICENSE.txt) · [Attribution](/resources/agents/voltagent-memory-curator/ATTRIBUTION.txt)

SHA-256 5a69dd0be5a1cd7eb9c7705dd3e4775b6e5b9543c49c3f1d03ade6027d04e6e6

 Read the applicable licence MIT License

Copyright (c) 2025 VoltAgent

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

04 / FOLLOW THE EVIDENCE

## The source trail.

Our notes are separate from the original resource. Check upstream before adopting a new version.

 - Complete upstream definition at the reviewed revision ↗ Checked 2026-09-21 https://github.com/VoltAgent/awesome-claude-code-subagents/blob/82b73821baa7a911d5b14cfb6da238b7f0db6b42/categories/09-meta-orchestration/memory-curator.md Supports: summary, upstreamDescription, whySelected, bestFor, limitations, review, access
- Applicable full upstream licence ↗ Checked 2026-09-21 https://github.com/VoltAgent/awesome-claude-code-subagents/blob/82b73821baa7a911d5b14cfb6da238b7f0db6b42/LICENSE Supports: license, artifact
- Current official custom-agent configuration ↗ Checked 2026-09-21 https://code.claude.com/docs/en/sub-agents.md Supports: compatibility, install, access, limitations, review

KEEP COMPARING

## Other approaches to consider.

Related by category or shared topics. These are alternatives to inspect, not a measured quality order.

 [### Agent Sdk Verifier Ts ↗ Checks a TypeScript Claude Agent SDK project against its configuration, current SDK guidance, type-checking results and environment-variable hygiene before a structured readiness report.](/agents/anthropic-agent-sdk-verifier-ts/)[### Agent-Log Knowledge Synthesizer ↗ Finds recurring patterns in an explicitly scoped set of agent logs and writes cited findings with counts derived from the actual files.](/agents/voltagent-knowledge-synthesizer/)[### Harness Optimizer ↗ Tunes agent configuration with an explicit evaluation definition, repeated trials, baseline checks and rollback instructions for failed experiments.](/agents/ecc-harness-optimizer/)

 [AI Tools ↗](/tools/)[Skills ↗](/skills/)[Agents ↗](/agents/)[MCP Servers ↗](/mcp-servers/)
