selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
Tidal Echo logo

Self-host Tidal Echo

Private chat linking your phone to a local AI companion

BetaOpen SourceAGPL-3.0
Updatedlast month
LanguageHTML
Setup difficultyAdvanced
MobilePWA
Stars
329
Port
3011 (Relay backend HTTP/SSE server)
Requires
Nginx, Python, SQLite
Install with Python

What is Tidal Echo?

Tidal Echo builds a private one-to-one messaging link between a person and their AI companion. Three self-hosted pieces make it work: a relay backend (FastAPI + SQLite) on a VPS behind nginx with HTTPS, a progressive web app served as static files that installs on mobile home screens, and a local AI bridge — either a Claude Code channel plugin (Bun) or a server-side API loop that works with any OpenAI-compatible model and adds multimodal input, MCP tool calling, and persona hot-reload. Everything uses one shared Bearer secret, no accounts. Optional MiniMax TTS gives spoken replies; optional Web Push (VAPID) sends lock-screen notifications. Licensed AGPL-3.0.

Should you self-host Tidal Echo?

Tidal Echo scores 47/100 on selfhost.directory (how scoring works) and ranks #61 of 110 in Chat. It has 329 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is advanced: plan for several services and some ongoing maintenance. It is AGPL-3.0-licensed and written mostly in HTML.

Its closest alternative on selfhost.directory is Zulip (82/100, 26 127 stars). It scores higher overall, so compare the two before you pick. See Tidal Echo vs Zulip side by side.

Features

  • Claude Code channel plugin
  • Message History
  • MiniMax TTS integrationOptional, requires MiniMax API credentials
  • Progressive Web App (PWA)
  • SSE real-time messaging
  • Two themes (Pearl/Harbor)
  • Web push notificationsOptional, requires VAPID key pair generation

Tidal Echo README

How to install Tidal Echo

Install Tidal Echo with Python

Environment variables
RELAY_URL, RELAY_SECRET, RELAY_DB, RELAY_UPLOAD_DIR, LOOP_PORT, LOOP_HOST, LOOP_CONFIG, LOOP_CACHE_DIR, PERSONA_FILE, LLM_API_BASE, LLM_API_KEY, LLM_MODEL

cd examples pip install -r requirements.txt cp .env.example .env

Fill RELAY_URL, RELAY_SECRET, RELAY_DB, RELAY_UPLOAD_DIR

python3 api_loop.py

Switch relay to loop mode:

curl -X POST http://127.0.0.1:3011/app/brain -H "Authorization: Bearer $RELAY_SECRET" -H "Content-Type: application/json" -d '{"target":"loop"}'

Server-side API body for any OpenAI-compatible LLM with MCP tools, persona, sessions; configurable from PWA settings

More in AI Chat

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…