Skip to main content

Personal Memories

Personal Memories store facts about individual email senders, enabling agents to provide personalized, context-aware responses over time.

Overview

When an agent processes emails from the same contact repeatedly, Personal Memories allow it to remember:

  • Communication preferences (e.g., "prefers concise responses")
  • Ongoing projects and their status
  • Personal details relevant to interactions
  • Past conversation history and context

This enables more natural, personalized interactions without asking the same questions repeatedly.

How Personal Memories Work

During Email Processing

When an agent receives an email:

  1. Memory Lookup - The agent queries for existing memories about the sender
  2. Context Enhancement - Retrieved memories are added to the agent's context
  3. Informed Response - The agent uses this context to craft a personalized response
  4. Memory Creation - The agent may store new facts discovered during the interaction

Memory Structure

Each personal memory contains:

FieldDescriptionExample
Email AddressThe contact this memory is aboutjohn.smith@acme.com
Memory KeyShort identifier for the factpreferred_format
Memory ValueThe actual information storedPrefers responses in bullet points with action items clearly marked
CategoryType of memorypreference
ImportancePriority levelnormal
ExpirationWhen the memory expiresnull (never) or specific date

Categories

Personal memories are organized into categories:

CategoryDescriptionExample
preferenceCommunication or service preferences"Prefers responses in Spanish"
projectActive projects or initiatives"Working on Q2 marketing campaign"
personalPersonal details relevant to interactions"Based in London, GMT timezone"
historyPast interaction context"Had billing issue resolved in January"
otherMiscellaneous facts"Referred by Sarah Johnson"

Importance Levels

LevelDescriptionWhen to Use
criticalMust always be consideredLegal requirements, accessibility needs
highImportant contextKey project deadlines, VIP status
normalStandard contextGeneral preferences
lowNice-to-have informationMinor details

Managing Personal Memories

Viewing Memories

Navigate to Admin > Data & Logs > Memories and select the Personal tab.

The list shows:

  • Contact email address
  • Memory key and value
  • Category and importance
  • Creation date and source (agent or admin)
  • Access statistics

Filtering Options

FilterDescription
Email AddressFilter by specific contact
CategoryFilter by memory type
ImportanceFilter by importance level
SearchSearch in keys and values

Creating Memories Manually

To pre-populate contact information:

  1. Click Add Memory
  2. Enter the contact's email address
  3. Provide a descriptive memory key
  4. Enter the memory value with relevant details
  5. Select appropriate category and importance
  6. Optionally set an expiration date
  7. Click Save

Example:

Email: vip-client@partner.com
Key: account_status
Value: Premium enterprise client with dedicated support. Direct escalation to Account Manager (Amy Chen) for any issues.
Category: preference
Importance: high

Editing Memories

  1. Click on a memory in the list
  2. Modify the key, value, category, importance, or expiration
  3. Click Save

Note: You cannot change the email address of an existing memory. Delete and recreate if needed.

Deleting Memories

  1. Click the delete icon on a memory
  2. Confirm the deletion

Deleted memories are soft-deleted and no longer appear in agent queries.

Agent-Created Memories

Enabling Memory Tools

To allow agents to create memories:

  1. Edit the agent in Configuration > AI Agents > Agents
  2. In the Tools section, add:
    • manage_personal_memory - Store, update, delete memories
    • query_global_memory - Query existing memories (read-only)
  3. Add instructions guiding memory usage (see below)

Memory Tool: manage_personal_memory

Agents use this tool to store facts about contacts:

Parameters:

ParameterRequiredDescription
actionYesstore, update, or delete
contact_emailYesEmail address of the contact
keyYesMemory identifier
valueFor store/updateThe information to store

Example agent instruction:

## Memory Guidelines

When processing emails:
1. If you learn something useful about the sender (preferences, projects, important details), store it using manage_personal_memory
2. Use descriptive keys that will be easy to find later
3. Store facts, not opinions
4. Don't store sensitive information (SSN, passwords, etc.)

Memory storage examples:
- Preference: "prefers_format" -> "bullet points with headers"
- Project: "current_project" -> "Website redesign, due March 2024"
- Personal: "timezone" -> "PST, prefers calls before 2pm"

Automatic Context Injection

When personal memories exist for an email sender, they are automatically retrieved and included in the agent's context. The agent sees something like:

## Context: Known Information About john.smith@acme.com

- preferred_format: Prefers responses in bullet points
- current_project: Working on Q2 product launch
- timezone: Based in EST, available 9am-5pm

Use Cases

Customer Support

Store customer preferences and history:

  • Preferred communication style
  • Previous support tickets and resolutions
  • Product usage patterns
  • Escalation preferences

Sales

Track prospect information:

  • Current stage in sales funnel
  • Budget discussions
  • Decision-maker relationships
  • Competitor mentions

Executive Assistant

Remember stakeholder preferences:

  • Meeting format preferences
  • Travel preferences
  • Scheduling constraints
  • Communication styles

Access Statistics

Each memory tracks usage:

MetricDescription
Access CountTimes the memory was retrieved
Last AccessedWhen an agent last used this memory
Created DateWhen the memory was first created
Created ByAgent name or "Admin" for manual entries

Use these statistics to identify:

  • High-value memories (frequently accessed)
  • Stale memories (never accessed)
  • Active contacts (many memories)

Best Practices

For Administrators

  1. Pre-populate VIP contacts - Create memories for important contacts before first interaction
  2. Set expirations for time-sensitive data - Project deadlines, temporary preferences
  3. Review agent-created memories - Periodically audit for accuracy
  4. Use consistent keys - Establish naming conventions for memory keys

For Agent Instructions

  1. Be specific about what to remember - Guide agents on valuable vs. trivial information
  2. Set boundaries - Explicitly state what NOT to store (sensitive data)
  3. Encourage updates - Tell agents to update memories when information changes
  4. Value threshold - Only store information that would help future interactions

Key Naming Conventions

Recommended patterns for memory keys:

preference_communication_style
preference_response_format
project_current_name
project_current_deadline
personal_timezone
personal_role
history_last_issue
history_last_purchase

Troubleshooting

Memories Not Appearing in Agent Context

  1. Verify the sender's email address matches exactly
  2. Check that the memory is not expired
  3. Confirm the memory is active (not deleted)
  4. Review agent logs for memory lookup errors

Agent Not Creating Memories

  1. Verify manage_personal_memory tool is assigned
  2. Check agent instructions include memory guidance
  3. Review execution logs for tool call failures
  4. Ensure the agent is configured with appropriate permissions

Duplicate Memories

The system prevents duplicate keys for the same email address. If you see duplicates:

  1. They may have different keys (slight variations)
  2. Check for spaces or capitalization differences in email addresses
  3. Consolidate by deleting duplicates and keeping the most accurate

Privacy Considerations

Personal memories may contain PII. Best practices:

  • Retention policy - Set expirations for non-essential data
  • Minimization - Only store what's needed for the use case
  • Access control - Limit who can view memories in admin console
  • Audit regularly - Review stored data periodically
  • Agent instructions - Explicitly prohibit storing sensitive data (SSN, passwords, etc.)