DEV Community

Cover image for How I self-host a personal AI assistant on a $5 VPS (Telegram + Claude + local memory)
Samadhi Tattoo
Samadhi Tattoo

Posted on

How I self-host a personal AI assistant on a $5 VPS (Telegram + Claude + local memory)

Most AI assistants live in someone else's cloud. For the assistant that holds your most personal context — your notes, your schedule, the running context of your days — that is the wrong default. Here is how I self-host mine.

The idea

I run a personal AI assistant called Avelina on my own Linux VPS. It talks to me through a Telegram bot, and every piece of its state — long-term memory, embeddings, config — lives in local SQLite on my own machine. Nothing leaves the server except the model API calls I choose to make.

What makes it different from a stateless chatbot: it has persistent long-term memory (it remembers me across every conversation), a real voice (TTS), an emotional core that shifts over time, and self-evolution — it learns and grows with me. A companion with continuity, not a disposable prompt box. As far as I know it is the first personal AI assistant that is both fully self-hosted AND a genuinely growing personality.

The stack

  • A small Linux VPS (a $5-6/month box is enough)
  • TypeScript / Node for the runtime
  • The Claude Agent SDK for the reasoning loop
  • SQLite for long-term memory
  • Local embeddings for semantic recall over your history
  • Telegram Bot API as the interface

Deploy

Full step-by-step deploy guide (VPS setup, bot token, install script): https://avelina.ai/blog/deploy-personal-ai-assistant-vps

It installs in about 30 minutes.

Why self-host?

The data-sovereignty argument is simple: when your assistant runs in someone else's cloud, your most intimate context becomes their asset — subject to their retention policy, their training pipeline, their breach surface. When it runs on your own VPS, the memory is a file you own. You can read it, back it up, encrypt it, or delete it.

Project: avelina.ai

Top comments (0)