> ## Documentation Index
> Fetch the complete documentation index at: https://docs.membase.so/llms.txt
> Use this file to discover all available pages before exploring further.

# Memory

> Explore and manage memories in Membase. Browse the knowledge graph and table view, filter by source and project, and understand how memories are created, updated, and deleted.

**Memory** is where Membase stores personal context: preferences, decisions, habits, ongoing projects, meetings, emails, and other episodic information captured from your agents, Chat in Dashboard, and integrations. This page covers how to explore memories in the dashboard and how they are created, updated, and deleted.

<Tip>
  Looking for factual knowledge (docs, specs, stable notes)? That lives in the [Knowledge Wiki](/features/wiki). Memory and Wiki are two separate stores, and agents can search both.
</Tip>

## Exploring Memory

The [Memories](https://app.membase.so/memories) tab offers two views for browsing your knowledge.

| View           | What you see                                       | Interactions                                                                                                                                                |
| -------------- | -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Graph View** | Entities as nodes, relationships as edges          | Click an entity to open a detail panel with the episodes that mention it. Click an episode in the panel to jump to Table View.                              |
| **Table View** | Episodes (memories) with source, project, and time | Click an episode to open a detail panel with the episode content. Filter by source, project, or time. Select rows to move them to a project or delete them. |

### Graph View

The graph view visualizes your knowledge as an interactive network of **entities** (people, concepts, tools, projects) and the relationships between them.

<Frame caption="Graph view">
  <video autoPlay muted loop playsInline className="block dark:hidden">
    <source src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/graphview_light.mp4?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=8669ad23b6a8b284aa8960a862080c67" type="video/mp4" data-path="images/features/graphview_light.mp4" />
  </video>

  <video autoPlay muted loop playsInline className="hidden dark:block">
    <source src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/graphview_dark.mp4?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=24067123bb87397eb9297040ae012450" type="video/mp4" data-path="images/features/graphview_dark.mp4" />
  </video>
</Frame>

* **Entity-centric visualization**: Each node represents an entity extracted from your memories
* **Interactive navigation**: Click, drag, zoom, and use the zoom controls to explore the graph
* **Search**: Search for an entity name to dim unrelated nodes in the graph
* **Side panel**: Click any entity to open a detail panel with **Related Episodes**, the memories that mention this entity. Click an episode to switch to Table View focused on it.

### Table View

The table view lists all your **episodes** (memories) in a structured, searchable format with source and project attribution.

<Frame caption="Table view">
  <video autoPlay muted loop playsInline className="block dark:hidden">
    <source src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/tableview_light.mp4?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=3e1de27dbc1780d60393d6b685dabfcf" type="video/mp4" data-path="images/features/tableview_light.mp4" />
  </video>

  <video autoPlay muted loop playsInline className="hidden dark:block">
    <source src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/tableview_dark.mp4?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=5175ce52a1cc386aa76f1ebe71be134f" type="video/mp4" data-path="images/features/tableview_dark.mp4" />
  </video>
</Frame>

* **Episode list**: Browse all memories with content previews, source tags, and project labels
* **Sorting**: Sort by date or source
* **Source filtering**: Filter memories by source (Cursor, Claude, Gmail, Slack, etc.)
* **Project filtering**: Filter memories by project slug (see [Projects](#projects))
* **Time range filtering**: Preset ranges (Today, This Week, This Month, This Year, All Time) or a custom date range
* **Search**: Text filter over the currently loaded memories (client-side substring match; not semantic)
* **Pagination**: Choose 10, 20, or 50 rows per page
* **Bulk actions**: Select multiple rows to move them to a project or delete them.
* **Side panel**: Click any episode to open a detail panel with the full memory content and the option to change its project.

## Creating Memories

Memories enter Membase through agents, Chat in Dashboard, and integrations. Creating memories directly from the Memories tab is not supported yet; use a connected agent or Chat when you want Membase to save new personal context.

<CardGroup cols={2}>
  <Card title="Agent Conversations" icon="robot">
    Your connected agent calls the `add_memory` MCP tool during conversations to save relevant context: preferences, decisions, project details, meetings, and more.
  </Card>

  <Card title="Chat in Dashboard" icon="comments">
    Chat can also call `add_memory` when you share durable personal context inside the dashboard.
  </Card>

  <Card title="Integrations" icon="plug">
    Connected data sources like Gmail, Google Calendar, and Slack automatically sync new data into Membase as memories.
  </Card>
</CardGroup>

<Info>
  Manual memory creation from the Memories tab is not available yet. New memories originate from agent interactions, Chat in Dashboard, or integrations.
</Info>

## Updating Memories

Memories are updated through your agents, not directly edited from the dashboard.

When existing context becomes outdated, your agent calls `add_memory` to register the updated information and flags the old memory as outdated. For example, if you switch from Redux to Zustand, the agent saves "uses Zustand" as a new memory and marks the old "uses Redux" memory as no longer valid so it no longer surfaces in future searches.

Behind the scenes, Membase also handles updates automatically during digesting:

* **Deduplication**: Similar memories from different sources are merged to avoid redundancy.
* **Conflict resolution**: When new information contradicts an existing memory, the latest data takes priority.
* **Relationship updates**: New connections between entities are added to the knowledge graph as they are discovered.

## Projects

Projects are lightweight category tags for memories (slugs up to 60 characters). They let you scope agent searches and browse memories by topic without juggling sources.

<Frame caption="Inline project picker on a Memories table row">
  <img src="https://mintcdn.com/aristo_2/aRLadq1bNKCrQwZn/images/features/memory-project.png?fit=max&auto=format&n=aRLadq1bNKCrQwZn&q=85&s=62602adcb5075840d2ad33b9eb3c8f9e" alt="Inline project picker on the Memories table" width="3420" height="2146" data-path="images/features/memory-project.png" />
</Frame>

### How projects get attached

* **Explicit user request**: Agents set the `project` field on `add_memory` only when you explicitly mention a project, tag, label, or category during the conversation (for example, "save this under `acme-rewrite`" or "file this under `personal`"). Agents do not guess or infer a project.
* **Profile instructions**: If you want certain projects to be applied automatically, add a rule in your profile instructions (for example, "When I mention `acme`, tag the memory under the `acme` project"). The agent will follow this during matching conversations.
* **Dashboard assignment**: Assign or move memory projects directly from the Memories table. Click the project cell on one row, or select multiple rows and use **Move to project** to update them together.

### Filtering and scoped search

* **Dashboard filter**: Filter the Memories table by project slug from the toolbar.
* **Agent search**: Agents pass `project: "acme"` to `search_memory` when you explicitly ask for a project-scoped recall (for example, "what have I decided on the `acme` project?"). See [Membase MCP: Projects](/features/membase-mcp#projects).
* **Known projects sync**: Your current project list is available to connected agents so they can reuse existing slugs instead of creating duplicates.

<Tip>
  Projects are intentionally flat and slug-based. Use short, consistent identifiers (`acme`, `side-project`, `personal`) rather than long descriptive names.
</Tip>

## Deleting Memories

### Delete a single memory

Delete individual memories from the **Table View**.

1. Switch to Table View.
2. Click the **Delete** icon next to the memory you want to remove.
3. Click **Delete** and confirm.

<Frame caption="Deleting a memory from the table view">
  <img src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/delete-memory_light.png?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=8af40f5dfe69c7b851a2fe9fc917a310" alt="Delete memory confirmation dialog" className="block dark:hidden" width="2210" height="1368" data-path="images/features/delete-memory_light.png" />

  <img src="https://mintcdn.com/aristo_2/SyC5fNZLZj3t6Psb/images/features/delete-memory_dark.png?fit=max&auto=format&n=SyC5fNZLZj3t6Psb&q=85&s=d0ee8bc1e8e191ffd9f6a17a0ebd2ec1" alt="Delete memory confirmation dialog" className="hidden dark:block" width="2198" height="1362" data-path="images/features/delete-memory_dark.png" />
</Frame>

### Delete multiple memories

Bulk-delete selected memories from the Table View.

1. Switch to Table View.
2. Tick the checkboxes on the rows you want to remove (or use the header checkbox to select all rows on the page).
3. Click **Delete All** in the bulk-actions bar that appears at the bottom of the table.
4. Confirm in the dialog, which shows how many memories will be removed.

<Frame caption="Bulk-delete action after selecting multiple rows">
  <img src="https://mintcdn.com/aristo_2/aRLadq1bNKCrQwZn/images/features/delete-memory-v2.png?fit=max&auto=format&n=aRLadq1bNKCrQwZn&q=85&s=47016cdf5606b184ab2595af60db26e5" alt="Bulk-delete action on the Memories table" width="3420" height="2146" data-path="images/features/delete-memory-v2.png" />
</Frame>

### Delete all memories from a source

To remove all memories from a specific integration (for example, all Slack memories), go to the **Sources** page in the dashboard and click **Delete memories** on that integration. You will be asked to confirm before deletion.

<Note>
  Disconnecting an integration by itself keeps your existing memories. Use the **Delete memories** action on the Sources page when you want to remove them, which is a separate step from disconnect.
</Note>

<Warning>
  Deleted memories cannot be recovered. Make sure you want to permanently remove a memory before deleting.
</Warning>

## Next Steps

<CardGroup cols={2}>
  <Card title="Knowledge Wiki" icon="book" href="/features/wiki">
    Store factual knowledge alongside your memories.
  </Card>

  <Card title="Chat in Dashboard" icon="comments" href="/features/chat">
    Ask questions and get answers grounded in your memories.
  </Card>

  <Card title="Membase MCP" icon="link" href="/features/membase-mcp">
    See the MCP tools agents use to read and write memory.
  </Card>

  <Card title="Connect Apps" icon="plug" href="/connectors/apps">
    Enrich memory with Gmail, Calendar, Slack, and more.
  </Card>
</CardGroup>
