anhe2021212-spec/Tidal_Echo
Self-hosted private chat channel between you and your AI companion — PWA, Claude Code, or any LLM.
What it solves
Tidal Echo creates a private, 1:1 communication channel between a mobile device (via a PWA) and an AI companion running on a local computer or server. It removes the need for third-party hosting or complex account systems, ensuring that messages only pass through the server owned by the user.
How it works
The system consists of three main components:
- Backend Relay: A FastAPI and SQLite server that handles message storage and distributes messages using Server-Sent Events (SSE).
- Frontend PWA: A single-page web application that users install on their mobile home screens to send and receive messages.
- AI Interface: This can be either a Claude Code channel plugin (which integrates the chat directly into a Claude Code session) or a standalone API loop (a Python script that connects any OpenAI-compatible LLM to the relay).
Messages flow from the PWA to the relay, which then pushes them to the AI side. The AI responds via a tool call or API request, which the relay then pushes back to the PWA as a chat bubble or lock-screen notification.
Who it’s for
Users who want a self-hosted, private interface for their AI companions, specifically those using Claude Code or other LLM APIs, and who prefer to avoid centralized platforms.
Highlights
- Privacy-First: No account system; access is controlled by a single shared secret key (
RELAY_SECRET). - Flexible AI Brain: Supports Claude Code natively via an MCP plugin, but can be swapped for any OpenAI-compatible API (GPT, DeepSeek, Gemini, etc.).
- PWA Integration: Mobile interface that behaves like a native app with support for lock-screen push notifications.
- Extensible: Includes optional support for MiniMax TTS for voice replies and a modular backend protocol that allows users to replace the relay with their own implementation.
Related
- Project
- Project
- Project
- Project