Self-hosted. Persistent memory. Sandboxed tools.
Built on Mistral, encrypted end-to-end.
No accounts. No phone numbers. No metadata.
How it works
You (SimpleX App) ──E2E──> simplex-chat CLI ──ws──> Mistress Runtime
(in Docker) │
Vibe AgentLoop
(Mistral LLM)
│
┌─────────────┼─────────────┐
Memory Sandbox Scheduler
E2E encrypted messaging. No accounts, no phone numbers, no bot tokens. The relay sees nothing.
3-tier system: core facts always in context, session logs auto-loaded, vector search for everything else. The agent extracts its own memories.
Every tool call goes through an approval callback. File writes are policy-checked. Bash commands are filtered. Config and memory are protected.
Built on Mistral Vibe. EU-based, operating under the EU AI Act. Stricter privacy compliance than other providers.
Drop a SKILL.md into skills/ and it's live. Define MCP servers in JSON. The agent can install its own tools.
The agent creates scheduled tasks that run Python scripts from the workspace. Output is logged. Scripts inherit the sandbox.
One command. The installer handles Mistral auth, SimpleX setup, and Docker deployment.
$ curl -LsSf https://raw.githubusercontent.com/mistress-agent/mistress/main/install.sh | bash
Requires: Docker with Compose · Mistral Le Chat Pro or Team subscription · Linux or macOS
Tier 1
MEMORY.md per user. Always in the system prompt. The agent knows who you are on every message.
Tier 2
Daily markdown files. Today + yesterday auto-loaded. Browsable and editable by you.
Tier 3
sqlite-vec + FTS5. 70% semantic, 30% keyword. Local embeddings via fastembed — no API calls.
Your memories are Markdown files. Read them. Edit them. They're yours.
Mistral Vibe · SimpleX Chat · FastAPI · SQLAlchemy · sqlite-vec · fastembed · Python 3.12+