I didn’t know what SSH meant yesterday
That’s not a humble brag. It’s a fact. Twenty-four hours ago, if you’d asked me to open a terminal and connect to a remote server, I’d have stared at you. I’d been using AI — ChatGPT, Claude, the usual — for a few weeks. Asking questions, getting answers, feeling productive. But I wasn’t building anything. I was just talking to a search engine with a personality.
Then I found OpenClaw. An AI agent framework that runs 24/7 on a server, connects to Telegram, remembers everything across sessions, and executes tasks autonomously. Not a chatbot. A system. And something clicked: I didn’t want to ask AI questions anymore. I wanted it to work for me while I slept.
So at 4 PM on a random Thursday, I bought a \u20ac4.51/month server on Hetzner, opened Terminal for the first time in my life, and started typing commands I didn’t understand.
The 12-hour marathon
The installation was supposed to take 20 minutes. The OpenClaw docs made it look simple. It was not simple. Not for someone who had never touched a command line.
First problem: SSH itself. I had to figure out what ssh [email protected] meant, why it asked about a fingerprint, and where to paste the password Hetzner emailed me. Took twenty minutes to just connect to my own server.
Then the real chaos started. I ran the OpenClaw installer. It needed Node.js 22. My server didn’t have it. The installer failed silently — no error message, just nothing happening. I stared at the screen for ten minutes before realizing I needed to install Node.js first.
Node.js installed. OpenClaw installed. Ran the setup wizard. It asked for an authentication method. I chose OAuth because I already had a Claude Pro subscription. Generated a token starting with sk-ant-oat01-... and it looked right.
It was not right.
The authentication disaster
Every single message returned “401 Invalid bearer token.” I tried everything. Regenerated the token. Restarted the gateway. Ran the setup wizard again. Same error. For two hours I was convinced the software was broken.
It wasn’t broken. The OAuth token has a restricted scope that Anthropic’s API rejects. It’s a known bug — GitHub issue #23703. The fix: delete everything, start over, and choose “API Key” instead of OAuth. A completely different authentication path that actually works.
Two hours lost to a setup option that shouldn’t exist. This is the reality of building with bleeding-edge tools. The documentation doesn’t warn you. The error messages don’t help. You figure it out by trying every possibility until one works.
The first response
11 PM. Seven hours in. I sent a message through Telegram: “Hey, are you there?”
And it responded. From a server in Nuremberg. On my phone. An AI that knew my name because I’d written a personality file telling it who I was.
I’m not going to pretend this wasn’t emotional. I’d spent seven hours fighting with tools I didn’t understand, and now I had a personal AI assistant running 24/7 on a machine I was paying \u20ac4.51 a month for. It felt like the future had arrived in my Telegram inbox.
The rate limit wall
The excitement lasted about three messages. Then: “rate_limit_error: would exceed your organization’s rate limit of 30,000 input tokens per minute.”
What I didn’t know: OpenClaw sends your entire personality file, system prompts, and conversation history with every single message. On Claude Opus, that’s roughly 15,000–20,000 input tokens per message. My Tier 1 account allowed 30,000 per minute. Two messages in 60 seconds and I was locked out.
The next three hours were spent learning about rate limits, API tiers, and why a $5 API credit doesn’t mean unlimited access. I switched to Claude Sonnet — less capable but stays within limits. Set up my first cron job: a morning market briefing that would run automatically at 8 AM. Connected a bookmark processor. Built a basic memory system.
By 4 AM — twelve hours after I started — I had a working AI agent. Not polished. Not optimized. But running. Autonomously.
The next morning
Woke up and checked my Anthropic dashboard. $43 in API costs from the past two weeks of casual Claude usage. Two massive pink bars on the days I’d been building aggressively. Almost every message had gone to Opus at $15 per million input tokens.
Then I discovered MiniMax M2.5 — a model that had dropped on February 12, three days before I started. 80.2% on SWE-Bench Verified, within 0.6% of Opus. Price: $0.30 per million input tokens. My $43 would have been roughly $0.86.
I did the math three times. Not a typo. Fifty times cheaper for nearly identical quality. I switched my default model immediately.
End-of-day reflection
In 24 hours I went from not knowing what SSH meant to having a 24/7 AI agent running on a server I manage. The build took 12 hours, most of it debugging problems that had nothing to do with intelligence and everything to do with configuration. Authentication, rate limits, environment variables — the unsexy stuff that nobody puts in the demo videos.
But it works. And the model discovery the next morning changed the economics of everything. Intelligence that matches 95% of the best in the world costs 2% as much. If intelligence is nearly free, the scarce resource becomes taste, judgment, and knowing what to build. That’s what I’m here for.
Day 1 complete. Twelve hours from zero to a running AI agent. The hardest part wasn’t the AI — it was the infrastructure. SSH, authentication, rate limits, API tiers. The unsexy stuff is what actually matters.
Day 1 complete. The hardest part wasn't the AI — it was the infrastructure.
Day 1 of ∞ — @astergod Building in public. Learning in public.