index

Tech stack recommendation for personal assistant AI agent

A week ago, I finally got rid of OpenClaw. It was draining my tokens like crazy. And now I’m really enjoying building my own Personal AI Agent on a VPS.

I want to share my tech stack recommendation if you want to start your own journey building an AI agent.

Here’s the step by step:

1. VPS (The Environment)

For VPS, I recommend two options.

First, Hetzner because I think it’s the cheapest reliable option (I was spending around $7/month for a VM with 4GB RAM). Good for starters.

Second is exe.dev (the one I’m using now), because it has lots of cool stuff. They give you a domain directly (so no need to set one up yourself), Shelley (their own AI agent that can do things inside your VM), and the ability to spin up a new VM (or delete one) with a fresh disk in an instant. It’s a bit pricier at $20/month, but the developer experience feels like magic, especially for people like me who want things simple and easy and hate setting things up.

2. AI Agent Harness (The Brain)

Once the VM is set up, you need to install an AI agent harness (like Claude Code or Codex). If you use exe.dev, that’s already pre-installed.

Personally, I prefer Claude Code since it gets the job done.

Codex offers a better deal (more usage per unit price), but they’re dumb. Too many questions, not enough execution (from my experience a few weeks ago, I hope they’ve changed).

3. The Agent Dashboard (The GUI)

Next, you want a GUI for your “Agent Dashboard”.

My tech stack for this is Bun + SQLite, then I run the Bun app with PM2.

What’s the GUI app? For me, I basically told Claude Code to build a dashboard where I can connect Telegram to Claude Code on the “Settings” page. I asked for an easy setup flow. I just input the bot token, then it tells me to chat with the bot, and it grabs the chat_id itself.

Then I also built a Cron page, basically to make it easy for me to see which things I’m tracking (like the price of bitcoin and other stuff), see logs of every run, and flag that a cron should be connected to the Telegram notification I set up.

You can just build your own dashboard for your own use cases with Claude Code or Codex. You don’t need OpenClaw. OpenClaw, imho, has too many features, which makes it so bloated that it drains both your token and your VPS memory.

4. The Chat Interface

Like I mentioned, I use Telegram for this.

I built this with Claude Code too. Added all the features I wanted, like showing the “typing…” status in the chat when Claude Code is still running, and making sure it knows how to handle messages with image attachments.

5. Residential IP (The Address)

Many services block the default IP of a VPS, like YouTube, Reddit, etc.

If, let’s say, you want to access YouTube with the yt-dlp CLI, you need to purchase a residential IP to proxy your requests so you don’t get blocked.

I use Floxy residential IP for this. The purchased credit never expires as of the time of writing, even if you only buy $5 worth. Other solutions usually push you into a subscription, or their pay-as-you-go credit expires within a month.

6. Others

Lastly, just ask your agent to install anything else you might need. For example, install the GitHub CLI if you want to give your AI agent access to GitHub. Just know what you want to do, figure out the CLI or tool that can help, and install it.

Happy tinkering with your AI agent!