Your personal AI knowledge system — self-hosted, agent-driven, and always private.
Note
EchOS is a personal project — built for one user, deployed on your own infrastructure. It is intentionally not multi-tenant.
You're walking and a thought hits. You open Telegram and say it out loud. Thirty seconds later it's in your knowledge base — transcribed, categorized, tagged, searchable. You didn't open an app. You didn't fill a form. You didn't think about where to put it.
That's the thing EchOS is trying to solve. Not the storage. The friction.
You: Save this for me → [pastes article URL]
EchOS: Saved. "How Rust handles memory safety" — tagged as rust, programming.
I pulled the key points if you want a summary.
You: What do I know about memory management?
EchOS: Found 7 notes. The Rust piece you just saved, two older ones on GC pauses,
a voice note from last Tuesday where you were ranting about malloc...
You: Write a short post about it — my style, technical but readable
EchOS: [drafts a post grounded in your actual notes, in your voice]
You: Save it.
EchOS: Done. You can open it in Obsidian whenever you want.
No commands to memorize. No schemas to design. No dashboards to maintain.
Your notes are yours. They live on your server, in plain Markdown files you can open in Obsidian right now. No subscription. No sync fees. No vendor deciding what to do with your thinking.
The only outbound calls are to the AI APIs you configure — and only when you ask it to do something.
Capture without friction. Text, URLs, voice messages, photos — through Telegram, the terminal, or the web. It figures out what to do with them.
Search that actually understands you. Not keyword matching. Hybrid full-text and semantic search: ask it a question the way you'd ask a person, and it finds what you meant.
Write in your voice. Tell it to write a blog post, a thread, an email. It reads your notes for source material and matches the way you actually write — not generic AI prose.
Obsidian-compatible, always. Every note is a plain .md file. Open $ECHOS_HOME/knowledge (default: ~/echos/knowledge) in Obsidian and your entire knowledge base is right there. Live sync, bidirectional.
Remembers how you want it to talk. Tell it to be concise, warmer, more technical. It adapts immediately and stays that way.
macOS (Homebrew)
brew tap albinotonnina/echos
brew update
brew install echos
echos-setup # browser-based setup wizard
brew services start echosOne-liner (macOS + Linux)
curl -sSL https://raw.githubusercontent.com/albinotonnina/echos/main/install.sh | bashManual
git clone https://github.com/albinotonnina/echos.git && cd echos
pnpm install && pnpm build
pnpm wizard # opens http://localhost:3456 with guided setup
pnpm startYou'll need an LLM API key — either Anthropic (ANTHROPIC_API_KEY, pay-as-you-go, not a Claude subscription) or any other provider supported by pi-ai (LLM_API_KEY). Custom OpenAI-compatible endpoints (DeepInfra, local Ollama, etc.) are supported via LLM_BASE_URL. Everything else is optional.
→ Full setup guide at docs.echos.sh/distribution
Everything you need to go deeper is at docs.echos.sh.
| Architecture | How the pieces fit together |
| Deployment | VPS, Docker, nginx, systemd |
| Security | What EchOS does and doesn't do with your data |
| Knowledge Import | Bring in your Obsidian vault or Notion export |
| Writing | Voice profiles and content generation |
| Plugins | YouTube, articles, and building your own |
| Troubleshooting | When things go sideways |
MIT

