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.7.tar.gz (248.5 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.7-py3-none-any.whl (228.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: egovault-0.1.7.tar.gz
  • Upload date:
  • Size: 248.5 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.7.tar.gz
Algorithm Hash digest
SHA256 3e2a8e301743b5b7ab47d0659181f384e126f12d9fc92af00d27f368ad428f3e
MD5 6dda45ed36cd512aea08a546c4fe113d
BLAKE2b-256 cbe71223534328380b706f705394aff49ca1792725644b684255cdf32bce39a1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: egovault-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 228.8 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.7-py3-none-any.whl
Algorithm Hash digest
SHA256 8a365cad94b7744abeb31efecbcca3c0d2560365ba74751891d33997c1b52452
MD5 06eeb714b92d16f15a93df98a9f67cc4
BLAKE2b-256 ef72eef9f486b890bd462fed2ff867a22a11342910132956602047bb9a8239c2

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