Skip to main content
The --auto-memory flag enables automatic extraction and storage of important information from conversations.

Quick Start

praisonai "My name is John and I prefer Python" --auto-memory

Usage

Basic Auto Memory

praisonai "I work at Acme Corp as a software engineer" --auto-memory
Expected Output:
๐Ÿง  Auto Memory enabled

โ•ญโ”€ Agent Info โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚  ๐Ÿ‘ค Agent: DirectAgent                                                       โ”‚
โ”‚  Role: Assistant                                                             โ”‚
โ”‚  ๐Ÿง  Auto Memory: Enabled                                                    โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Response โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ Nice to meet you! It's great to know you're a software engineer at Acme     โ”‚
โ”‚ Corp. How can I help you today?                                              โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

๐Ÿ’พ Memories Extracted:
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Type                โ”‚ Content                    โ”‚
โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
โ”‚ Entity (Person)     โ”‚ User works at Acme Corp    โ”‚
โ”‚ Entity (Role)       โ”‚ Software Engineer          โ”‚
โ”‚ Long-term           โ”‚ User's workplace: Acme Corpโ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

With User Isolation

praisonai "Remember my preferences" --auto-memory --user-id user123
Expected Output:
๐Ÿง  Auto Memory enabled (user: user123)

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Response โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ I'll remember your preferences. What would you like me to remember?          โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

๐Ÿ’พ Memory stored for user: user123

Combine with Other Features

# Auto memory with session
praisonai "Learn about my project" --auto-memory --session my-project

# Auto memory with planning
praisonai "Plan my learning path" --auto-memory --planning

# Auto memory with metrics
praisonai "Remember this" --auto-memory --metrics

How It Works

  1. Conversation Analysis: The system analyzes the conversation
  2. Information Extraction: Important information is identified
  3. Categorization: Information is categorized (entities, facts, preferences)
  4. Storage: Memories are stored for future retrieval
  5. Retrieval: Memories are automatically injected into future conversations

Memory Types Extracted

TypeDescriptionExample
EntitiesPeople, places, organizationsโ€User works at Googleโ€
FactsFactual informationโ€Project deadline is Dec 31โ€
PreferencesUser preferencesโ€Prefers Python over JavaScriptโ€
ContextContextual informationโ€Working on ML projectโ€

Use Cases

Personal Assistant

# First conversation
praisonai "I'm learning Rust and prefer hands-on examples" --auto-memory

# Later conversation (memories recalled)
praisonai "Give me a coding exercise" --auto-memory
Expected Output (second conversation):
๐Ÿง  Auto Memory enabled

๐Ÿ“š Recalled Memories:
  โ€ข User is learning Rust
  โ€ข User prefers hands-on examples

โ•ญโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ Response โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฎ
โ”‚ Since you're learning Rust and prefer hands-on examples, here's a practical โ”‚
โ”‚ exercise:                                                                    โ”‚
โ”‚                                                                              โ”‚
โ”‚ **Exercise: Build a Simple CLI Calculator**                                 โ”‚
โ”‚                                                                              โ”‚
โ”‚ ```rust                                                                      โ”‚
โ”‚ use std::io;                                                                 โ”‚
โ”‚                                                                              โ”‚
โ”‚ fn main() {                                                                  โ”‚
โ”‚     // Your code here                                                        โ”‚
โ”‚ }                                                                            โ”‚
โ”‚ ```                                                                          โ”‚
โ•ฐโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ•ฏ

Project Context

# Share project details
praisonai "I'm building an e-commerce platform using Django and React" --auto-memory

# Ask for help (context remembered)
praisonai "How should I structure my API?" --auto-memory

Team Preferences

# Different team members
praisonai "I prefer detailed explanations" --auto-memory --user-id alice
praisonai "I prefer concise answers" --auto-memory --user-id bob

Viewing Stored Memories

Use the memory command to view whatโ€™s been stored:
# Show memory statistics
praisonai memory show

# Search memories
praisonai memory search "Python"
Expected Output:
              Memory Statistics               
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Property         โ”ƒ Value                   โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ user_id          โ”‚ default                 โ”‚
โ”‚ short_term_count โ”‚ 5                       โ”‚
โ”‚ long_term_count  โ”‚ 12                      โ”‚
โ”‚ entity_count     โ”‚ 8                       โ”‚
โ”‚ storage_path     โ”‚ .praison/memory/default โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Recent Memories:
  โ€ข User prefers Python for backend
  โ€ข User works at Acme Corp
  โ€ข Project: E-commerce platform
  โ€ข Tech stack: Django + React

Memory Persistence

Memories are stored locally and persist across sessions:
.praison/
โ””โ”€โ”€ memory/
    โ”œโ”€โ”€ default/
    โ”‚   โ”œโ”€โ”€ short_term.json
    โ”‚   โ”œโ”€โ”€ long_term.json
    โ”‚   โ””โ”€โ”€ entities.json
    โ””โ”€โ”€ user123/
        โ”œโ”€โ”€ short_term.json
        โ”œโ”€โ”€ long_term.json
        โ””โ”€โ”€ entities.json

Best Practices

Use --user-id to keep memories separate for different users or projects.
Auto memory increases token usage as memories are injected into prompts. Monitor with --metrics.

User Isolation

Use --user-id for multi-user scenarios

Regular Cleanup

Periodically clear old memories with praisonai memory clear

Combine with Sessions

Use with --session for project-specific memory

Monitor Usage

Use --metrics to track memory-related token costs

Privacy Considerations

Memories are stored locally on your machine. No data is sent to external servers for memory storage.
  • Memories are stored in .praison/memory/
  • Use praisonai memory clear all to delete all memories
  • Each user ID has isolated memory storage