Access Control
Control memory isolation and access using Mnemosyne's session and scope model.
Session-Based Isolation
Each Mnemosyne instance is identified by a session_id. Different sessions maintain separate memory contexts:
from mnemosyne import Mnemosyne
# Separate sessions with isolated memories
user_a_mem = Mnemosyne(session_id="user-alice")
user_b_mem = Mnemosyne(session_id="user-bob")
# Alice's memories are isolated from Bob's
user_a_mem.remember(content="Alice prefers dark mode", importance=0.5)
user_b_mem.remember(content="Bob prefers light mode", importance=0.5)
# Each user only recalls their own context
user_a_mem.recall("UI preferences") # Returns Alice's preferences
user_b_mem.recall("UI preferences") # Returns Bob's preferences
Scope-Based Access
Use the scope parameter on remember() to control visibility within a session:
from mnemosyne import Mnemosyne
mem = Mnemosyne(session_id="my-agent")
# Session-scoped (default) — only visible in this session
mem.remember(
content="Current task: fixing bug #42",
scope="session",
)
# Global — visible across all sessions sharing the same DB
mem.remember(
content="Company style guide link: ...",
scope="global",
)
Multi-Tenant Pattern
Isolate tenants by using separate databases:
from mnemosyne import Mnemosyne
# Each tenant gets their own database file
tenant_a = Mnemosyne(session_id="default", db_path="/data/tenant-a/memories.db")
tenant_b = Mnemosyne(session_id="default", db_path="/data/tenant-b/memories.db")
Filesystem Permissions
Since Mnemosyne stores data in local SQLite files, standard OS-level access controls apply:
- Set restrictive file permissions on the database directory
- Use dedicated OS users for different agent services
- Place database files on encrypted filesystems if required
Local-Only by Default
Mnemosyne does not expose a network API by default. All access is via the Python SDK, which means access control is governed by your application code and OS-level permissions.
Related Pages
Security Overview
Overview of Mnemosyne security: encryption at rest, access control, data privacy, and the local-firs...
REST API
REST API reference for Mnemosyne: HTTP endpoints for memory CRUD, search, health checks, and batch o...
Encryption
Configure encryption at rest in Mnemosyne: SQLCipher integration, key management, encryption perform...
Mnemosyne