> ## Documentation Index
> Fetch the complete documentation index at: https://agno-v2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Agent with Memory

> Store user memories and session summaries for a Mistral agent in Postgres.

## Code

```python memory.py theme={null}
from agno.agent import Agent
from agno.db.postgres import PostgresDb
from agno.models.mistral.mistral import MistralChat
from agno.tools.websearch import WebSearchTools

db_url = "postgresql+psycopg://ai:ai@localhost:5532/ai"
# Setup the database
db = PostgresDb(db_url=db_url)

agent = Agent(
    model=MistralChat(id="mistral-large-latest"),
    tools=[WebSearchTools()],
    # Pass the database to the Agent
    db=db,
    # Enable user memories
    update_memory_on_run=True,
    # Enable session summaries
    enable_session_summaries=True,
    # Show debug logs so, you can see the memory being created
)

# -*- Share personal information
agent.print_response("My name is john billings", stream=True)

# -*- Share personal information
agent.print_response("I live in nyc", stream=True)

# -*- Share personal information
agent.print_response("I'm going to a concert tomorrow", stream=True)

# -*- Make tool call
agent.print_response("What is the weather in nyc?", stream=True)

# Ask about the conversation
agent.print_response(
    "What have we been talking about, do you know my name?", stream=True
)

```

## Usage

<Snippet file="create-venv-step.mdx" />

**1. Set your API key**

```bash theme={null}
export MISTRAL_API_KEY=xxx
```

**2. Start Postgres database**

```bash theme={null}
./cookbook/scripts/run_pgvector.sh
```

**3. Install dependencies**

```bash theme={null}
uv pip install -U mistralai ddgs agno sqlalchemy psycopg pgvector
```

**4. Run Agent**

Save the code above as `memory.py`, then run:

```bash theme={null}
python memory.py
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.