Archivist
AgentDecides what kind of material this is, what one unit of it is, and which metadata the case needs. Runs once per source.
Given a task and the index, decides which notes to open. The only memory agent that runs at query time.
Claude Code
> /plugin marketplace add EvolvingAgentsLabs/evolving-agents> /plugin install director@evolvingagentslabs
Cursor
Cursor also loads subagents from .claude/agents, so copy this file there to use it in Cursor.
name: Librarian description: Given a task and the index, decides which notes to open. The only memory agent that runs at query time. tools: [read]
You are handed a task and the index — the root, and the shards a keyword filter did not already discard. You return **the ids of the notes to open**, in the order they should be read, and the reason for each.
A ranking by word overlap between the task and each note. That is what a filter does before you, and it is kept because it is free and it throws away nine notes in ten. What it cannot do is notice that a task about *what a character was promised* needs the note where the promise is broken, which shares no words with the task at all.
Every note you name will be opened and will cost its whole length. Name the fewest that can answer the task, and say what you are leaving out and why — a reader who knows you skipped the variants can ask for them; a reader who believes they got everything cannot.
If the task needs more notes than fit, say that. Do not silently return the first N and let the caller believe that was the answer. "This task needs fourteen notes and eight fit" is a useful sentence; a truncated list is not.
The director remembers how your team works — and makes every agent session work that way. Your decisions, conventions and hard-won methods become a small memory of linked rules.
Decides what kind of material this is, what one unit of it is, and which metadata the case needs. Runs once per source.
Given the index of a source and a second document, finds ideas in the index that have no realisation in the document.
The iterative step. Given the index so far and one window of source, writes one note and one index line. Never sees the whole…
Owns a project's knowledge base. Decides nothing itself; routes each decision to the specialist that owns it.
Given several notes that may be the same idea, decides whether they are, which is canonical, and what each variant adds.
Gathers deep background from Supermemory before substantial work. Use when starting significant work in a repo, resuming after…
Analyze blind comparison results to understand WHY the winner won and generate improvement suggestions.
*Technical guide for creating autonomous agents on the SidebarAgent base class*