Profiles
July 22, 2026 · View on GitHub
SuperLocalMemory V3 Documentation https://superlocalmemory.com | Part of Qualixar
Profiles organize memory contexts inside one installation. Personal facts are profile-scoped by default; shared and global recall are opt-in and subject to the configured scope policy. Profiles are not an operating-system or tenant security boundary.
What Profiles Are
A profile is an isolated memory namespace. Each profile has its own:
- Memories and knowledge graph
- Learned patterns and behavioral data
- Trust scores and provenance records
- Retention policies
- Audit trail
The supported contract excludes another profile's personal facts. Release verification must also prove authorized shared/global inclusion and unauthorized, deleted, and archived exclusion across every retrieval surface.
Default Profile
After installation, you have one profile called default. All memories go here unless you create and switch to another profile.
Managing Profiles
List profiles
slm profile list
Output:
Profiles:
* default (142 memories, active)
work (89 memories)
personal (34 memories)
client-acme (67 memories)
The * marks the active profile.
Create a profile
slm profile create work
slm profile create client-acme
slm profile create personal
Switch profiles
slm profile switch work
All subsequent remember, recall, and auto-memory operations use this profile until you switch again.
From an MCP-connected agent (v3.8.0, code/full/power profiles):
{ "tool": "switch_profile", "arguments": { "profile": "work" } }
The switch_profile MCP tool is available in the code (24), full (42), and power (54) profiles. It is not included in core (14) or mesh (8). See MCP Profiles →.
Use Cases
Work vs Personal
# Morning: switch to work
slm profile switch work
# Work memories are captured and recalled all day
# Evening: switch to personal
slm profile switch personal
# Personal project memories are now active
Per-Client Isolation
For consultants and agencies working across multiple clients:
slm profile create client-alpha
slm profile create client-beta
# Working on Alpha's project
slm profile switch client-alpha
# Only Alpha's architecture, decisions, and context are available
# Switch to Beta
slm profile switch client-beta
# Alpha's data is completely invisible
Per-Project Isolation
slm profile create mobile-app
slm profile create backend-api
slm profile create infrastructure
Temporary Profiles
For experiments or short-term work:
slm profile create experiment-graphql
slm profile switch experiment-graphql
# ... do your experiment ...
# Done — switch back (the profile and its memories remain; profiles have no delete command)
slm profile switch default
Profile-Specific Settings
Retention policies are set globally via slm config set or the set_retention_policy
MCP tool. To apply a policy after switching to a profile:
slm profile switch client-acme
slm config set retention.default_policy gdpr-30d # GDPR compliance
slm profile switch internal
slm config set retention.default_policy indefinite # Keep internal memories forever
All remember and recall operations run against the active profile. To work in a
different profile, switch first with slm profile switch <name>, then run your commands.
How Profiles Work Internally
Each profile stores memories in the same SQLite database but with a profile identifier on every row. Queries are filtered by profile at the database level, ensuring complete isolation.
The entity graph, BM25 index, and all math layer state are also per-profile. Building the graph for one profile does not affect another.
Limits
- No hard limit on the number of profiles
- Each profile adds minimal overhead (a few KB for metadata)
- Performance is determined by per-profile memory count, not total profiles
- Switching profiles is instant (no data loading required)
SuperLocalMemory V3 — Copyright 2026 Varun Pratap Bhardwaj. AGPL-3.0-or-later. Part of Qualixar.