Skip to main content

Local-first personal data vault with LLM enrichment and RAG chat

Project description

EgoVault

Your personal data, on your machine, under your control.

CI License: MIT Python 3.11+

Every message you sent, every article you saved, every decision you made - scattered across platforms that own your data, monetise your attention, and can delete your history without warning.

EgoVault puts it all back in your hands.


Why this exists

Big Tech has had a good run storing your life for you. In return, they read your emails, sell your patterns, and hand your data to whoever asks politely enough. You get a "free" service and a privacy policy nobody reads.

We think that deal is broken.

Your memories do not belong to a corporation. Your conversations are not a product. The decisions, ideas, and relationships you've built over years are yours - and you should be able to search them, learn from them, and take them with you, without asking anyone's permission.

EgoVault is a local-first personal data vault. It runs on your hardware, uses a local LLM that never phones home, stores everything in a single SQLite file you can copy to a USB drive, and answers your questions without sending a single byte to a third party.

No subscriptions. No telemetry. No cloud lock-in.
Cloud sync is a future opt-in - never the default.


Hardware requirements

The default model (Gemma 4 E2B, ~3.2 GB) runs on CPU but is significantly faster on a CUDA-capable GPU.


Get started in one line

Windows - PowerShell (Windows 10/11, PowerShell 5+)

irm https://raw.githubusercontent.com/milika/EgoVault/main/scripts/install-win.ps1 | iex

Windows - Command Prompt (runs the same PowerShell script)

powershell -NoProfile -ExecutionPolicy Bypass -Command "irm https://raw.githubusercontent.com/milika/EgoVault/main/scripts/install-win.ps1 | iex"

Linux / WSL - bash or sh

curl -fsSL https://raw.githubusercontent.com/milika/EgoVault/main/scripts/install.sh | sh

macOS - zsh (default) or bash

curl -fsSL https://raw.githubusercontent.com/milika/EgoVault/main/scripts/install.sh | sh

Any platform - pipx (Python 3.11+ required)

pipx install egovault

Then:

egovault chat          # terminal REPL
egovault web           # browser UI - prints a public URL automatically
egovault mcp           # MCP server for AnythingLLM / Claude Desktop

Full installation, configuration, and llama-server setup: docs/installation.md
Can't see the file? View it on GitHub.


What you can do

  • Reclaim your history - import emails, documents, chats, and notes from any platform
  • Ask questions across everything - "What did I decide about X last year?" - one answer, all sources
  • Own the inference - a local LLM reads and enriches your data; nothing leaves your machine
  • Access from anywhere - egovault web punches a secure tunnel so you can reach your vault from any device
  • Take it with you - the entire vault is one file; copy it, back it up, move it freely

Data sources

Source Status
Local files (PDF, DOCX, HTML, Markdown, EPUB, spreadsheets, plain text) :white_check_mark:
Gmail - Takeout / live API (OAuth2) / IMAP :white_check_mark:
Telegram export :white_check_mark:
WhatsApp, Facebook Messenger :hourglass_flowing_sand: planned
Instagram, LinkedIn, Twitter/X, TikTok :hourglass_flowing_sand: planned
Obsidian vault, Calendar (ICS) :hourglass_flowing_sand: planned

Interfaces

Interface How to start
Terminal REPL egovault chat
Browser UI egovault web
Telegram bot egovault telegram

How it works under the hood -> docs/how-it-works.md


Roadmap

Adapters coming next

  • WhatsApp, Facebook Messenger, Instagram, LinkedIn, Twitter/X
  • Obsidian vault reader, Calendar ICS

Features coming next

  • Reminders - /remind <text> at <datetime> with due alerts in chat
  • Notes - /note <text> stored and searchable like any vault record
  • Multi-level access control (owner -> guest, passphrase auth)
  • egovault doctor - health-check command

Distribution

  • GitHub Actions CI - tests on Ubuntu, Windows, macOS (Python 3.11 & 3.12)
  • Docker - Dockerfile + docker-compose.yml included
  • Shell install scripts - install-win.ps1 (PowerShell) - install.sh (Linux/macOS/WSL)
  • PyPI release - pipx install egovault

Your data, your rules. Contributions and ideas are welcome - see CONTRIBUTING.md.


Changelog

See CHANGELOG.md for a full history of releases.


License

MIT (c) 2026 Milika Delic

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

egovault-0.1.4.tar.gz (248.2 kB view details)

Uploaded Source

Built Distribution

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

egovault-0.1.4-py3-none-any.whl (228.6 kB view details)

Uploaded Python 3

File details

Details for the file egovault-0.1.4.tar.gz.

File metadata

  • Download URL: egovault-0.1.4.tar.gz
  • Upload date:
  • Size: 248.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for egovault-0.1.4.tar.gz
Algorithm Hash digest
SHA256 203d3298198f01d16ab5873e80f5d0f5f34f873d54fe3a603dc22760f4d26cd7
MD5 27e504d8a1b33b3169e3bbccc3f16414
BLAKE2b-256 c99fbff0f8bceb3f8c558b0a6ca22824976e05e32fdd406119569ebaa3839e06

See more details on using hashes here.

File details

Details for the file egovault-0.1.4-py3-none-any.whl.

File metadata

  • Download URL: egovault-0.1.4-py3-none-any.whl
  • Upload date:
  • Size: 228.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for egovault-0.1.4-py3-none-any.whl
Algorithm Hash digest
SHA256 3e463d05df9cb43285e8ae552009b2b7009392ee74d6f09ba0014c0791e71dae
MD5 a5b9940886f54348e5de5814df98a13f
BLAKE2b-256 92d8bd53e16987c7371cdec0124f484c1e80ef478ba11e10d0f8e50fab45c7b5

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