Contents

A 24/7 AI Assistant on a Raspberry Pi, Reachable from Telegram

A 24/7 AI Assistant on a Raspberry Pi, Reachable from Telegram

I wanted a personal AI assistant that was always on, accessible from my phone, and lived on hardware I owned. Cloud chatbots are great, but they don’t have a persistent home, persistent memory, or the ability to quietly run things in the background while I’m doing something else. So I built one.

The result: a Raspberry Pi 5 sitting on my desk, running OpenClaw with Claude as the model, reachable from anywhere via Telegram. I message it like a friend, and it answers — whether I’m at my laptop, walking around, or away from home.

Here’s how it came together.

The hardware

I started with a Raspberry Pi 5 kit and a SanDisk High Endurance microSD card. High endurance matters here: this thing is going to be powered on 24/7, writing logs, swapping memory, and serving a small but constant workload. A standard consumer SD card would wear out faster than I’d like.

Assembly was straightforward — slot the Pi into the case, attach the cooler, plug in power. Nothing exotic.

The OS

I used the official Raspberry Pi Imager to flash Raspberry Pi OS onto the SD card. The imager has a handy advanced-settings panel where you can preconfigure the hostname, username, Wi-Fi, and enable SSH before the Pi ever boots. That meant the very first boot already had network and SSH ready — no monitor or keyboard needed.

Remote access with Tailscale

For remote access I went with Tailscale instead of opening ports on my router. Tailscale puts the Pi on a private mesh network (a “tailnet”) that I can reach from my laptop or phone as if it were on my LAN, regardless of where I am.

The advantages over port forwarding:

  • No exposed services on the public internet.
  • Works the same at home, on coffee-shop Wi-Fi, or on cellular.
  • Authentication is tied to my identity, not an IP address.

Install was a one-liner on the Pi, then tailscale up and a login from the browser. After that, ssh andrew@andypi from anywhere just works.

The brain: OpenClaw + Claude

The Pi is the body. The brain is OpenClaw, an open-source agent runtime that handles the boring-but-important parts: messaging channels, sessions, memory, scheduled tasks, tool use. I plugged Claude in as the underlying model, so the assistant inherits Claude’s reasoning and writing while OpenClaw handles persistence and connectivity.

A few things I like about this split:

  • The assistant has a workspace. A real directory on the Pi with notes, memory files, and project folders. It can read, write, and organize its own context across sessions.
  • It can use tools. Run shell commands, read files, browse the web, search the docs — whatever I let it touch.
  • It persists. Each session can pick up where the last one left off via memory files. It’s not amnesiac the way a fresh chat is.

The interface: Telegram

The last piece was making it actually usable. Sitting at my laptop is fine, but the point of an always-on assistant is that I can reach it from anywhere. OpenClaw ships with a Telegram channel, so I created a bot via BotFather, dropped the token into the OpenClaw config, and pointed the channel at my session.

Now I message the bot from Telegram and it routes straight to the assistant on the Pi. Replies come back in the same chat. I can ask it questions, kick off tasks, have it remind me of things, or just talk.

What it actually does

Day to day, it’s a mix of:

  • Quick questions I’d otherwise google.
  • Coding help — it can read my repos on the Pi and suggest changes directly.
  • Notes and journaling — it keeps daily memory files and a curated long-term memory.
  • Background tasks — scheduled checks, reminders, occasional proactive nudges.

It’s not magic. It’s a Pi, an SD card, a VPN, an agent runtime, and a model. But the combination feels surprisingly close to “an assistant of my own” — and that, to me, was worth building.

What’s next

A few directions I’m exploring:

  • Wiring it into more of my stuff (calendar, email, smart home).
  • More skills — small modules that teach it how to do specific tasks well.
  • Possibly a second channel (WhatsApp or Signal) so I’m not locked into Telegram.

If you’ve been curious about self-hosting an AI assistant, I’d say the bar is lower than it looks. A Pi, a good SD card, Tailscale, OpenClaw, and a model API key will get you most of the way there.