DEV Community

Subhendu Das
Subhendu Das

Posted on • Originally published at bsky.app

Show HN: Telechat – Self-hosted Claude on Telegram/WhatsApp/Slack, no cloud relay

Hey HN,

I built Telechat — a self-hosted Claude AI bot that runs on your machine and connects to Telegram, WhatsApp, Slack, and web chat simultaneously from a single process.

Why I built this

When Anthropic launched Claude Code Channels in March, I was excited — finally, Claude on my phone. But Channels only supports Telegram and Discord, routes everything through Anthropic's servers, and requires a Pro/Max subscription. I wanted something that:

  • Keeps every message on my machine (zero cloud relay)
  • Works across more surfaces (WhatsApp is essential in India/SE Asia/LatAm)
  • Lets me use a plain API key and control costs

So I built Telechat.

What it does

npm install -g telechatai && telechat init
# or: pip install telechatai
Enter fullscreen mode Exit fullscreen mode

One command sets up config, walks you through bot tokens, and starts the process. From there:

  • Smart model routing — Routes each query to the cheapest Claude model that can handle it. Quick factual question? Haiku ($0.001). Architecture review? Opus. You pick the thresholds. In my usage this cuts costs ~60% vs always hitting Sonnet.
  • Budget caps — Per-user daily and monthly limits in dollars. 80% warning, hard cutoff at 100%. No surprise bills.
  • Desktop Bridge — This is the one I'm most proud of. When Claude is running a coding agent on your desktop and hits a tool call that needs approval, you get a push notification on your phone. Approve or deny from Telegram/WhatsApp while you're away from your desk. No other tool does this.
  • Persistent memory — SQLite-backed conversation history. Context carries across sessions.
  • Media generation — Send images, get analysis. Generate images via DALL-E if configured.

Architecture

Telechat runs as a single Node.js/Python process on your machine. Messages from Telegram/WhatsApp/Slack/Web arrive at local webhook endpoints (or long-polling for Telegram). They're processed locally, sent to the Anthropic API, and the response goes back. Your messages never touch any server I control. There is no cloud relay, no telemetry, no analytics.

Honest comparison with Claude Code Channels

Channels wins on: zero setup (it just works if you have Claude Pro), Anthropic-supported (it's a first-party product), no self-hosting overhead.

Telechat wins on: privacy (self-hosted), cost (API keys are cheaper than Pro for moderate usage), surfaces (4 vs 2), budget controls (Channels has none), Desktop Bridge (unique feature), and you own the deployment.

If you're already paying for Claude Pro and just want Telegram, Channels is the easier choice. If you care about privacy, cost control, or need WhatsApp/Slack, Telechat is worth the 5-minute setup.

Links

Happy to answer any questions about the architecture, self-hosting tradeoffs, or the Desktop Bridge implementation.

Top comments (0)