Skip to main content

Portable Digital Soul Protocol — your AI knows you, everywhere.

Project description

omnity-mindos

Portable Digital Soul Protocol -- your AI knows you, everywhere.

Install once, and every AI -- Claude, ChatGPT, Cursor, Gemini, local models -- remembers who you are, what you know, and how you think. Across devices. Forever.

Install

pip install omnity-mindos                       # core (just pyyaml)
pip install "omnity-mindos[llm]"                # + LLM-powered commit (openai)
pip install "omnity-mindos[anthropic]"          # + native Anthropic support
pip install "omnity-mindos[all]"                # + semantic vector search + all LLMs

Requires Python 3.9+.

Quick Start

# Create your soul (interactive, 5 questions)
mindos quickstart

# Teach it something
mindos commit "user: I'm a Python developer working on distributed systems"

# See what it knows
mindos status
mindos recall "Python"

# Start the server
mindos serve

Python API

from mindos import Mindos

soul = Mindos.load()                              # loads from ~/.mindos/
context = soul.hydrate(context="travel planning")  # assemble identity + relevant memories
result = soul.commit("user: I love hiking\nassistant: Great!", source="myapp")
memories = soul.recall("hiking", top_k=5)

# Generate a portable persona for any platform
ome = soul.export_ome(context="hiking")

MCP (Claude Desktop / Cursor)

{
  "mcpServers": {
    "mindos": {
      "command": "mindos",
      "args": ["serve", "--mcp"]
    }
  }
}

MCP tools: mindos_hydrate, mindos_commit, mindos_recall, mindos_forget, mindos_reflect, mindos_ome, mindos_sync.

HTTP API

mindos serve

curl localhost:3456/api/hydrate -d '{"context": "coding"}'
curl localhost:3456/api/commit  -d '{"conversation": "user: I learned Rust today", "source": "api"}'
curl localhost:3456/api/recall  -d '{"query": "Rust"}'
curl localhost:3456/api/status

API Overview

Class / Module What it does
Mindos The main facade. Provides hydrate(), commit(), recall(), forget(), reflect(), export_ome(), and sync(). Load it once with Mindos.load() and use it from any code.
LayerRouter Dispatches requests to the cheapest brain layer (L0-L4) that can handle them. L0 (memory retrieval) is near-zero cost; L3 (deep reasoning) is on-demand.
MemoryStore SQLite-backed storage with FTS5 full-text search, content-hash dedup, forgetting curve, and a sync journal for cross-device replication.
ModelRouter Selects the best available LLM provider (DeepSeek, OpenAI, Anthropic, Ollama) per task. Automatic fallback chain: if provider A fails (timeout/error), tries provider B, then C. Falls back to rule-based extraction when no LLM is configured.

Zero-Config Setup (v0.5.0+)

from mindos.config import MindosConfig

# Auto-detect from environment variables (DEEPSEEK_API_KEY, OPENAI_API_KEY, etc.)
cfg = MindosConfig.from_env()

# Or configure programmatically — no YAML file needed
cfg = MindosConfig.from_dict({
    "models": [
        {"name": "deepseek", "type": "openai_compatible",
         "base_url": "https://api.deepseek.com",
         "api_key_env": "DEEPSEEK_API_KEY",
         "model": "deepseek-chat", "priority": 1, "for": ["chat", "reasoning"]},
        {"name": "ollama", "type": "ollama",
         "model": "qwen3.5:14b", "priority": 2, "for": []},  # catch-all fallback
    ],
})

Robustness: All LLM calls have a 30s timeout (configurable) and automatic provider failover. If DeepSeek is down, your app keeps working via the next provider in the chain.

Five-Layer Brain

Layer Analogy What it does Cost
L0 Hippocampus Memory retrieval -- FTS5 search, vector index, forgetting curve ~0
L1 Brainstem Instinct -- hydrate assembly, emotion state, request routing ~0
L2 Cortex Understanding -- LLM commit digestion, fact extraction Low
L3 Prefrontal Decision -- deep reasoning, planning, conflict resolution On demand
L4 Self (DMN) Identity -- reflection loop, drift detection, value alignment Async

Cross-Device Sync

# Start a Sync Hub on your VPS
mindos serve --sync --port 3457

# On each device
export MINDOS_SYNC_URL=http://your-vps:3457
mindos sync

Every mutation is recorded in a local journal. The Hub relays events between devices but never stores your data.

Privacy

  • All data lives locally in ~/.mindos/ (SQLite)
  • No cloud, no accounts, no telemetry
  • mindos forget "pattern" does GDPR hard delete
  • Optional Bearer token auth via MINDOS_AUTH_TOKEN

Part of Omnity

SOAP            spatial protocol for 3D environments
  Mindos        <-- you are here
    Ome           individual AI agent (persona, skills, growth)
      Maxim         multi-agent society + economy
        OmeTown       the integrated world

pip install omnity-soap omnity-mindos omnity-ome omnity-maxim

License

Apache-2.0

Project details


Download files

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

Source Distribution

omnity_mindos-0.5.2.tar.gz (103.0 kB view details)

Uploaded Source

Built Distribution

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

omnity_mindos-0.5.2-py3-none-any.whl (67.0 kB view details)

Uploaded Python 3

File details

Details for the file omnity_mindos-0.5.2.tar.gz.

File metadata

  • Download URL: omnity_mindos-0.5.2.tar.gz
  • Upload date:
  • Size: 103.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for omnity_mindos-0.5.2.tar.gz
Algorithm Hash digest
SHA256 319519793dad6a2352c1fd1129eb480bd6a8517d412549a08d9844b7067734b0
MD5 54a407ca32e4828605c88c045e2333ab
BLAKE2b-256 2e5229c0c06050b6380e4a6ef5fd1d38516f6b82be937ed3fcbb5677f7e5759c

See more details on using hashes here.

File details

Details for the file omnity_mindos-0.5.2-py3-none-any.whl.

File metadata

  • Download URL: omnity_mindos-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 67.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for omnity_mindos-0.5.2-py3-none-any.whl
Algorithm Hash digest
SHA256 322679aba767f543abc386138e71f6e072723b14e92c30ccd8bbaeed159e5495
MD5 8bb45b8cb27b37206abe98ef7e777b92
BLAKE2b-256 04089ecd4a986fc7be2ed578457c6b4cc6f4dea0e7026624377518da8be2eb50

See more details on using hashes here.

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