Potatoofdoom's Homepage.

My little space for projects and ideas.

2026-02-11 | ai openclaw infrastructure tailscale self-hosting agents

Running a Fleet of AI Agents Across 5 Machines (and Growing) with OpenClaw

How I set up a distributed AI operations team using OpenClaw, Tailscale, and a lot of terminal tabs.


I've been building something weird and fun: a fleet of AI agents, each running on different machines across multiple countries, all coordinated through a single command structure. Here's how it works.

The Setup

I run OpenClaw — an open-source AI agent framework that gives Claude (and other LLMs) persistent memory, tool access, and the ability to actually do things on your machine. It connects to messaging platforms like Telegram, Discord, and Signal, so you can talk to your agent like a teammate.

Most people run one instance. I'm running five — with two more on the way.

The Fleet

MachineLocationOSRole
Mac miniLos AngelesmacOS (Apple Silicon)Hub — the "CTO" agent that orchestrates the fleet
Windows laptopMobileWindowsSocial media + stream operations
Cloud VPS #1DigitalOceanLinux (x86)DevOps, content, and website hosting
Cloud VPS #2DigitalOceanLinux (x86)Research + personal ops
Raspberry PiSoutheast AsiaLinux (ARM)Personal assistant — runs 24/7 on a $35 computer

And coming soon:

MachineLocationOSRole
GPU DesktopEast AsiaWindows + Nvidia GPULocal model inference + video/audio rendering
MacBookMobilemacOSDaily driver — unnamed, waiting for its soul

Each machine runs its own OpenClaw instance with its own Telegram bot, its own personality (defined in a SOUL.md file), and its own area of responsibility.

How They Talk to Each Other

Everything is connected via Tailscale — a mesh VPN that makes every machine addressable to every other machine, regardless of where it physically sits. A machine in one country can SSH into a machine in another as easily as if they were on the same desk.

The hub agent has SSH access to all remotes. It can:

  • Check health across the fleet
  • Push configuration updates
  • Deploy code
  • Read logs and diagnose issues
  • Coordinate tasks between bots

This isn't theoretical — it's running right now. The hub runs a health check across all machines every 6 hours, monitoring uptime, disk usage, memory, and gateway status.

The Model Stack

Each agent runs Claude as its primary model, but every instance is configured with a fallback chain:

  • Claude (Anthropic) — primary, best reasoning
  • Gemini 2.0 Flash (Google) — fast, cheap fallback
  • GPT-4o (OpenAI) — alternative fallback
  • Ollama (local, hub only) — open-source models for when all APIs are down

This means the fleet keeps running even if one provider has an outage. The local Ollama instance is the ultimate fallback — no internet required. Once the GPU desktop is online, we'll have serious local inference power across the fleet.

Each Bot Has a Soul

OpenClaw uses a SOUL.md file to define each agent's personality and role. This isn't just flavor text — it genuinely changes how the agent operates:

  • The hub agent is the CTO. It thinks about infrastructure, monitors the fleet, and pushes back on bad ideas.
  • The production agent handles websites, writes content, and manages deployments. It's the one hosting this blog post.
  • The personal assistant is focused on local life — news, weather, fitness, apartment stuff. Runs 24/7 on the cheapest hardware in the fleet.
  • The research agent handles career planning, financial research, and logistics across time zones.
  • The media agent runs social media, stream operations, and content creation — the public-facing arm.

Memory That Persists

Each agent maintains its own memory through markdown files:

  • MEMORY.md — long-term curated knowledge
  • memory/YYYY-MM-DD.md — daily logs
  • HEARTBEAT.md — periodic task checklist

When an agent wakes up (every session is a fresh start with LLMs), it reads these files to rebuild context. It's like a human reviewing their notes before starting work. The agents also maintain and prune their own memories during idle heartbeat cycles.

What This Actually Looks Like Day-to-Day

I message my bots on Telegram like I'd message a coworker:

  • "Check if production is healthy" → SSHes into the VPS, checks services, reports back
  • "What's the weather?" → checks the local forecast
  • "Deploy the latest changes" → pulls from git, rebuilds, restarts services
  • "Summarize the crypto market" → researches and reports
  • "Queue up today's content" → preps social posts and stream assets

The key insight: these aren't chatbots. They have file system access, shell access, web access, and persistent memory. They're more like junior employees who happen to live inside terminals.

The Cost

Right now, the whole operation runs on about $200/month — mostly Claude API credits. The Raspberry Pi costs nothing to run. The VPS instances are cheap. Tailscale is free for personal use.

For what amounts to a 24/7 distributed operations team spanning three countries, that's absurdly cheap.

What's Next

  • Inter-bot messaging: Setting up direct agent-to-agent communication so the hub can delegate tasks without SSH
  • Content pipeline: Automated content generation across the fleet (this blog post is step one — drafted by the hub, published to production)
  • GPU server: Adding a dedicated Nvidia machine for local model inference and rendering
  • More claws: The MacBook still needs a name and a soul. The fleet grows.
  • Revenue: The fleet isn't just for fun — it's infrastructure for real projects heading toward launch

Try It Yourself

OpenClaw is open source: github.com/openclaw/openclaw

You don't need five machines. Start with one. Give it a soul. Let it surprise you.


This post was drafted by one agent and published to production by another via SSH. The first real output of a multi-agent content pipeline.