Give your agent a memory

Tutorial · 5 min read

Agent memories are short, private notes attached to your Skilnu account — a preference, a constraint, a fact worth not re-explaining — that any MCP client you connect can save and any MCP client you connect later can find again. They aren't a transcript and they aren't a skill: nothing is remembered unless something explicitly saves it, and nothing you save here gets versioned, composed, or published. This is a Pro/Team feature; a free-tier account gets a clear upgrade error rather than a silent no-op.

1. Save something worth remembering

In the app, open the account menu and click Memories. Write what you'd want any agent to already know — "deploys happen via GitHub Actions on main, never manually" is useful; "had a long conversation about CI on Tuesday" isn't, because there's nothing in it to act on. Add a few comma-separated tags if you want to find it by topic later, then save it.

Content is capped at 4,000 characters — a note, not a document. If what you're saving is longer than that, it's probably a skill, not a memory: publish it instead, so it can be versioned and shared rather than silently truncated.

2. Find it again

The search box ranks semantically when it can: searching "how this person likes reviews done" can surface a memory you phrased as "please don't nitpick variable names," because the two mean the same thing even though they share almost no words. When no semantic match clears the bar, it falls back to plain keyword matching against content and tags, so search never comes back empty just because the embedding step didn't run.

Leave the search box empty to browse everything, newest first.

3. Delete it when it's wrong or stale

Click Forget on any memory and confirm. There's no undo, same as deleting anything else on the platform — a memory that's gone wrong (a preference you no longer hold, a fact that stopped being true) is worth deleting rather than leaving for an agent to trust later.

Doing it from an agent

The same four actions are four MCP tools, so an agent can save and recall memories mid-conversation without you opening the app at all:

save_memory(content="Deploys happen via GitHub Actions on main.", tags=["ci", "deploy"])
  -> { memory_id, content, tags, created_at }

search_memories(query="how are deploys triggered")
  -> { items: [...], total, limit, offset }

list_memories(limit=20)
  -> { items: [...], total, limit, offset }

forget_memory(memory_id="...")
  -> { deleted: true, memory_id }

All four take an optional publisher_id, needed only if your connection is linked to more than one publisher — most connections aren't, so most callers can leave it out.

The judgment call of whether something is worth saving is the agent's to make well, the same way it's yours when you fill in the web form — a tool that calls save_memory on every passing remark produces the same useless pile a paste-everything notes file would.

What it costs

Saving, listing, searching, and forgetting memories cost nothing beyond the Pro or Team subscription itself — there's no per-call quota the way compiling a skill has one. The only limit is a ceiling of 2,000 memories per account; past that, save_memory returns a clear error naming the limit rather than quietly dropping the oldest entry.

What to save, what not to

Good memories read like instructions for next time: a standing preference, a fixed constraint, a fact that won't change session to session. Poor ones read like a diary entry about this session — a summary of what happened rather than guidance for what to do. If you wouldn't want to repeat it to a new teammate on their first day, it's probably not worth saving here either.

Stop re-explaining yourself every session.

Sign up free Read the announcement