Three-Tier Memory System
Three-Tier Memory System
As of v1.0.4, Sidekick maintains context across interactions using a three-tier memory architecture. Rather than treating each session as isolated, the agent builds a persistent understanding of your activity, habits, and preferences over time.
Overview
Memory is split into three tiers, each optimised for a different time horizon and retrieval pattern:
| Tier | Store | Scope | Purpose |
|---|---|---|---|
| Working | Redis | Session / recent events | Short-term context retention |
| Episodic | Postgres | Daily summaries | Mid-term activity history |
| Semantic | pgvector | Long-term patterns | Similarity-based recall |
Working Memory
Working memory is the agent's short-term scratch pad. It stores recent events and active context in Redis, making it fast to read and write during an ongoing interaction.
What it retains:
- Messages, actions, and observations from the current and most recent sessions
- Intermediate state during multi-step tasks
- Short-lived flags and preferences set during a conversation
Why it matters: Without working memory, the agent would treat every message as a cold start. With it, a follow-up like "do the same for the other one" resolves correctly because the agent remembers what "the other one" refers to.
Episodic Memory
Episodic memory captures a structured record of what happened each day, stored as daily summaries in Postgres.
What it retains:
- A digest of significant events, completed tasks, and decisions made each day
- Outcomes of autonomous actions (e.g. emails sent, calendar events created, PRs reviewed)
- A queryable history your agent can reference when you ask about past activity
Example queries the agent can now answer:
- "Did I respond to the investor email on Tuesday?"
- "What pull requests did you review for me last week?"
- "Summarise what I worked on this month."
Semantic Memory
Semantic memory stores long-term patterns and preferences as vector embeddings using pgvector, enabling similarity-based recall rather than exact-match lookup.
What it retains:
- Recurring workflows and habits inferred from observed behaviour
- Preferences extracted from past decisions (e.g. preferred meeting times, communication tone)
- Domain knowledge built up over time that informs proactive suggestions
How retrieval works: When the agent needs context, it queries pgvector for embeddings that are semantically similar to the current situation — not just keyword matches. This means relevant memories surface even when the phrasing or context differs from how they were originally stored.
Example capabilities unlocked:
- Proactive suggestions based on patterns ("You usually review PRs before standup — there are 3 open ones")
- Habit-aware scheduling ("You tend to block Friday afternoons — should I decline this meeting?")
- Personalised tone and style in drafted communications
Privacy and Data Retention
All three memory tiers store data within your Sidekick account's isolated data environment. Working memory in Redis is ephemeral by design; episodic and semantic stores are subject to the retention policies defined in your account settings.
No Configuration Required
The memory system is active automatically for all accounts on v1.0.4 and later. There are no settings to enable and no integrations to configure — memory accumulates as you use Sidekick.