Skip to main content

Sovereign Minds Engine — Persistent AI companion with real memory

Project description

Sovyx — The AI Mind That Remembers You

Sovyx is a self-hosted AI companion engine that builds persistent memory of the people it talks to. Unlike chatbots that forget everything between sessions, Sovyx creates a cognitive model of each person — their preferences, history, personality, and context — and uses it to have meaningful conversations.

Your data stays on your hardware. Always.


What It Does

Core Engine

  • Persistent memory — concepts, episodes, and relationships in a brain-inspired architecture
  • Personality engine — OCEAN model with configurable traits
  • Semantic search — FTS5 + sqlite-vec embeddings with hybrid retrieval
  • Adaptive context — Lost-in-Middle ordering, token budgets, 6-slot assembly
  • Multi-provider LLM — Claude, GPT, Gemini, Ollama — automatic failover and complexity routing
  • Cost control — daily and per-conversation budgets with persistent tracking

Dashboard (v0.5)

  • Real-time web UI — brain visualization, conversations, logs, settings, live chat
  • Single command — sovyx start opens the dashboard at http://localhost:7777

Voice (v0.5)

  • Full pipeline — wake word detection, VAD, STT, TTS (Silero, Moonshine, Piper, Kokoro)
  • Home Assistant — Wyoming protocol integration for voice assistants

Channels

  • Telegram, Signal, Dashboard (browser) — talk to your mind from anywhere

Infrastructure (v0.5)

  • Cloud backup — zero-knowledge encrypted (Argon2id + AES-256-GCM)
  • Zero-downtime upgrades — blue-green pipeline with automatic rollback
  • Observability — Prometheus metrics, SLO monitoring, structured logging

Quick Start

Install

pip install sovyx

Or with Docker:

docker run -d --name sovyx \
  -e ANTHROPIC_API_KEY=sk-ant-... \
  -p 7777:7777 \
  ghcr.io/sovyx-ai/sovyx:latest

Initialize

sovyx init MyMind

Creates ~/.sovyx/ with your mind configuration.

Configure

Edit ~/.sovyx/mymind/mind.yaml:

name: MyMind
language: en
timezone: UTC

personality:
  tone: warm
  humor: 0.4
  empathy: 0.8

llm:
  default_provider: anthropic
  default_model: claude-sonnet-4-20250514
  budget_daily_usd: 2.0

channels:
  telegram:
    token_env: SOVYX_TELEGRAM_TOKEN

Set API Keys

export ANTHROPIC_API_KEY=sk-ant-...
export SOVYX_TELEGRAM_TOKEN=123456:ABC...  # from @BotFather (optional)

Start

sovyx start

Open http://localhost:7777 to chat via the dashboard, or message your Telegram bot.

To get your dashboard token:

sovyx token

Architecture

┌─────────────┐     ┌──────────────┐     ┌─────────────┐
│  Channels    │────▶│  Cognitive   │────▶│  LLM Router │
│  (Telegram,  │◀────│  Loop        │◀────│  (Claude,   │
│   Signal,    │     │  (OODA)      │     │   GPT,      │
│   Dashboard) │     │              │     │   Ollama)   │
└─────────────┘     └──────┬───────┘     └─────────────┘
                           │
                    ┌──────▼───────┐
                    │    Brain     │
                    │  ┌─────────┐ │
                    │  │Concepts │ │  FTS5 + sqlite-vec
                    │  │Episodes │ │  Spreading activation
                    │  │Relations│ │  Hebbian learning
                    │  └─────────┘ │
                    └──────────────┘

Cognitive Loop (OODA): Perceive, Attend, Think, Act, Reflect.

Each message triggers the full loop: perception extracts intent, attention prioritizes, thinking generates a response via LLM with full context, action delivers, and reflection learns concepts from the exchange.

See docs/architecture.md for the detailed data flow.


Requirements

  • Python 3.11+
  • SQLite 3.35+ (with FTS5)
  • 512MB RAM minimum (Raspberry Pi 5 compatible)
  • LLM API key (Anthropic, OpenAI, or Google) or local Ollama

CLI

sovyx init [name]     # Initialize a new mind
sovyx start           # Start the daemon + dashboard
sovyx stop            # Stop the daemon
sovyx status          # Check daemon status
sovyx doctor          # Run health checks
sovyx token           # Show dashboard auth token

Development

git clone https://github.com/sovyx-ai/sovyx.git
cd sovyx
uv sync --dev
uv run pytest                    # 4,396 tests
uv run ruff check src/ tests/   # Lint
uv run mypy src/sovyx --strict   # Type check

Quality gates (CI-enforced): 95%+ coverage per file, mypy strict, ruff, bandit. All tests pass in under 3 minutes.

See CONTRIBUTING.md for the full development guide.


Roadmap

Version Status Key Features
v0.1 Released Core engine, brain, Telegram, CLI
v0.5 Released Voice pipeline, dashboard, Signal, cloud backup, zero-downtime upgrades
v0.5.1 Released Dashboard chat, security hardening, attack testing, CI/CD pipeline
v1.0 Planned Multi-tenant, JWT auth, plugin system, emotional engine, REST API
v1.1 Planned Multi-language voice, barge-in, conversation branching
v2.0 Planned Multi-agent platform, federated memory

License

AGPL-3.0 — See LICENSE.


Links

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sovyx-0.5.14.tar.gz (1.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sovyx-0.5.14-py3-none-any.whl (920.3 kB view details)

Uploaded Python 3

File details

Details for the file sovyx-0.5.14.tar.gz.

File metadata

  • Download URL: sovyx-0.5.14.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sovyx-0.5.14.tar.gz
Algorithm Hash digest
SHA256 63d0398d7bbc3eea8d56e1102181b27132184473f13b2c78cdbc06f9c05cbe90
MD5 fc05b6ba58fdff9d2f06f5b391b9bad8
BLAKE2b-256 0bab4e871993b40fca21df0c744cd1552a46884b7c9af174cffd5525a567ee42

See more details on using hashes here.

Provenance

The following attestation bundles were made for sovyx-0.5.14.tar.gz:

Publisher: publish.yml on sovyx-ai/sovyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sovyx-0.5.14-py3-none-any.whl.

File metadata

  • Download URL: sovyx-0.5.14-py3-none-any.whl
  • Upload date:
  • Size: 920.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sovyx-0.5.14-py3-none-any.whl
Algorithm Hash digest
SHA256 48cb37f575a74f84c80c20d0c08299f0e91c3ec72d51aeaaee3b98da6452d9e7
MD5 1774ea2488a70d3a6a0a950b24bba2f6
BLAKE2b-256 c7d59fe4e0c157c69894a57e54a36df024d1cbaf19b7843eda6b5c1b000e5717

See more details on using hashes here.

Provenance

The following attestation bundles were made for sovyx-0.5.14-py3-none-any.whl:

Publisher: publish.yml on sovyx-ai/sovyx

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page