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

# Cloud provider (pick one)
export ANTHROPIC_API_KEY=sk-ant-...    # or OPENAI_API_KEY, GOOGLE_API_KEY
export SOVYX_TELEGRAM_TOKEN=123456:ABC...  # from @BotFather (optional)

# Or use Ollama (free, auto-detected):
# curl -fsSL https://ollama.ai/install.sh | sh && ollama pull llama3.1

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 (auto-detected)

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.33.tar.gz (2.0 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.33-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: sovyx-0.5.33.tar.gz
  • Upload date:
  • Size: 2.0 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.33.tar.gz
Algorithm Hash digest
SHA256 0df9f034d6806fd94080cf0b45b57f39f7ec58c0f1aaa71b24a43571e44f2a74
MD5 aac4f5f258da97529f47e9764f6cc980
BLAKE2b-256 59d5a801707cdea2e6ec6fbc5b76b7f0a16dab1921ed7ff0cb847b1349ea7daf

See more details on using hashes here.

Provenance

The following attestation bundles were made for sovyx-0.5.33.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.33-py3-none-any.whl.

File metadata

  • Download URL: sovyx-0.5.33-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • 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.33-py3-none-any.whl
Algorithm Hash digest
SHA256 1f3282c82a9265f40a3925dde1a7fba7ade24f336abbf996545a513b9d25f074
MD5 28ef6c68be18bd7ce61cf076dc51eb86
BLAKE2b-256 c3f1f4648b2e3648d9453cb6883ffe32a237fc13f0c5103a3a432fa3a8dcd1db

See more details on using hashes here.

Provenance

The following attestation bundles were made for sovyx-0.5.33-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