Skip to main content

Memory System

The memory system allows the AI agent to remember context, learn from interactions, and provide personalized assistance over time.

Personal Memory

Your memories are private to you. The agent builds a personal knowledge graph from your interactions, activity, and notes. Other team members cannot see your memories, ensuring your work patterns and preferences remain confidential.

Overview​

Memory in Raven Docs works like a knowledge graph:

Memory Types​

Conversation Memory​

Captured from agent chat interactions:

  • Questions asked
  • Decisions made
  • Preferences expressed
  • Feedback given

Activity Memory​

Automatically tracked from your usage:

  • Pages viewed and edited
  • Tasks completed
  • Search queries
  • Time spent on content

Ingested Memory​

Explicitly stored context:

  • Meeting notes
  • Project context
  • External information
  • Manual notes

How Memory Works​

Ingestion​

Memory is captured through multiple channels:

// Automatic - from activity
User views page → Memory stored:
"User viewed 'API Documentation' for 15 minutes"

// Automatic - from chat
User asks question → Memory stored:
"User asked about OAuth implementation"

// Manual - explicit storage
await agent.memory.ingest({
content: "Prefers TypeScript over JavaScript",
source: "user_preference",
tags: ["coding", "preferences"],
});

Retrieval​

The agent queries memory for relevant context:

// When you ask about OAuth
Agent retrieves:
- Previous OAuth discussions
- Related documentation views
- Connected tasks
- Team decisions on auth

Memory Graph​

Memories form a connected graph:

Configuration​

Memory Settings​

Configure memory behavior in workspace settings:

SettingDescriptionDefault
Retention PeriodHow long memories are kept90 days
Auto-captureTrack activity automaticallyEnabled
Memory LimitMax memories per workspace10,000
Entity LinkingAuto-link to tasks/pagesEnabled

Per-Space Settings​

Override settings for specific spaces:

Space Memory Config {
enabled: true
retention: "365d"
autoCapture: true
sensitiveMode: false // extra privacy
}

Memory Features​

Daily Summaries​

Get a digest of memories from any day:

You: What did I work on yesterday?

Agent: Yesterday's summary:
- Edited 3 pages in API documentation
- Completed task "Update auth endpoints"
- Had discussion about rate limiting
- Viewed deployment guide twice

Search through stored memories:

You: What did we decide about caching?

Agent: On January 10th, you noted:
"Use Redis for session caching, 15-minute TTL"
This was linked to the Architecture space.

User Profile & Behavioral Insights​

The agent builds a comprehensive behavioral profile from your activity:

  • Seven Core Traits - Focus, Execution, Creativity, Communication, Leadership, Learning, Resilience
  • Trait Scores - Each trait scored 0-10 based on activity patterns
  • Behavioral Patterns - Completion rate, consistency, diversity, collaboration
  • Trend Analysis - Track improvement or decline over time
  • AI-generated Insights - Personalized strengths, challenges, and recommendations

The profile system goes beyond simple activity tracking to provide meaningful behavioral insights that help you understand your work patterns and areas for growth.

Learn more about User Profiles

Entity Relationships​

See how memories connect:

Memory Graph Visualization​

Viewing the Graph​

Access the memory graph:

  1. Open Agent Settings
  2. Click Memory Graph
  3. Explore connections

Graph Elements​

  • Nodes - Individual memories
  • Edges - Relationships between memories
  • Clusters - Related memory groups
  • Highlights - Recently accessed memories

Filtering​

Filter the graph by:

  • Date range
  • Tags
  • Source type
  • Entity connections

Privacy & Control​

Viewing Memories​

See what's stored:

  1. Open Agent Settings
  2. Click Memory
  3. Browse or search memories

Deleting Memories​

Remove specific memories:

// Delete a single memory
await agent.memory.delete(memoryId);

// Delete by criteria
await agent.memory.deleteMany({
olderThan: "30d",
tags: ["temporary"],
});

// Clear all memories
await agent.memory.clear();

Sensitive Content​

Mark spaces as sensitive to limit memory:

  • Reduced auto-capture
  • Shorter retention
  • No cross-space linking

API Access​

Ingesting Memory​

await client.agent.memory.ingest({
workspaceId: 'ws_123',
content: 'Important project decision',
source: 'meeting_notes',
tags: ['project-x', 'decisions'],
entityLinks: [
{ type: 'task', id: 'task_456' },
{ type: 'page', id: 'page_789' },
],
});

Querying Memory​

const memories = await client.agent.memory.query({
workspaceId: 'ws_123',
query: 'caching decisions',
tags: ['architecture'],
dateRange: {
start: '2024-01-01',
end: '2024-01-31',
},
limit: 10,
});

Daily Summary​

const summary = await client.agent.memory.dailySummary({
workspaceId: 'ws_123',
date: '2024-01-15',
});

Best Practices​

  1. Tag consistently - Use standard tags for easy retrieval
  2. Review periodically - Check stored memories for accuracy
  3. Clean up - Delete outdated or incorrect memories
  4. Use sources - Label memory sources for context
  5. Link entities - Connect memories to tasks and pages

Troubleshooting​

Memory Not Found​

If the agent can't recall something:

  • Check if auto-capture was enabled
  • Verify the memory wasn't deleted
  • Try different search terms
  • Check retention period

Too Much Memory​

If responses are slow:

  • Reduce retention period
  • Delete old memories
  • Disable auto-capture for some spaces
  • Archive completed projects