Work /TECH · case study 04

ServerClaw.
AI-native infrastructure, documented at the rate it’s built.

Open-source IaC platform composed of ~65 services across 6 layers, deployed by 160 Ansible roles, governed by 443+ Architecture Decision Records and a CLAUDE.md / AGENTS.md coordination protocol.

RoleAuthor · maintainer
LicenseOpen source
StatusActive · ADR #443+
Sourcegithub.com/baditaflorin

The problem.

Most infrastructure platforms are either (a) cathedral-monoliths that handle one cloud vendor opinionatedly, or (b) bazaars of glue code that you have to keep alive yourself. Both are hostile to the AI agent that wants to operate them — the first because the agent has no decision context, the second because the agent has no consistent surface.

What I built.

ServerClaw is the third option: a layered, self-hostable platform where every meaningful choice is captured as an Architecture Decision Record and every operational surface is exposed through a documented protocol an AI agent can read. The CLAUDE.md and AGENTS.md files at the repo root tell an agent what it is allowed to do, where to look, and which ADRs constrain the next change.

  SERVERCLAW · 6 layers · ~65 services
  ────────────────────────────────────────────────
  L6  surface       caddy · oauth2-proxy · dashboards
  L5  orchestration kubernetes · helm · argo-cd
  L4  runtime       docker · containerd · firecracker
  L3  data          postgres · redis · clickhouse · minio
  L2  host          proxmox · hetzner · ansible (160 roles)
  L1  network       wireguard · tailscale · headscale
  ────────────────────────────────────────────────
  443+ ADRs · CLAUDE.md / AGENTS.md at repo root
  293 repos · 1.1k stars · MIT-style licensing

The ADR practice.

Every change that’s not a bugfix opens with an ADR. Status moves proposed → accepted → superseded; the supersession is itself an ADR that points back. The result is an evidence chain that scales linearly with the codebase — any contributor (human or agent) can ask “why is it this way?” and get a date-stamped, named answer, not a forum thread.

Recent ADRs

ADR-443
Adopt MCP-style tool manifests for ad-hoc agent operations
2026-05-09 · supersedes ADR-318 · author: florin
Accepted
ADR-441
Replace per-node firewall with WireGuard mesh + Headscale control plane
2026-04-22 · referenced by ADR-442 · author: florin
Accepted
ADR-438
Standardize on argo-cd for declarative app rollouts
2026-04-03 · author: florin
Accepted
ADR-435
Use clickhouse for hot analytics; retire timescale layer
2026-03-18 · supersedes ADR-211 · author: florin
Accepted

Why this matters past the dogfood.

If you’re an engineering org with more than ~15 people and an LLM agent already in your pipeline, you have already discovered that the agent makes bad decisions. The bad decisions trace back to missing context. ADR-driven development is the cheapest source of context an agent can read: it’s structured, it’s versioned, and it doesn’t require you to retrain anything. ServerClaw is what an evidence-rich repo looks like when the practice has been kept up for two years.

~65
Services across 6 layersLive composition
160
Ansible rolesHost layer (L2)
443+
Architecture decision recordsDate-stamped, supersession-aware
293
Public GitHub repositoriesgithub.com/baditaflorin
1,100+
Stars across the networkCumulative
CLAUDE.md
Agent contract at repo root+ AGENTS.md, parallel
2024–
Continuous active maintenanceNo abandoned branches

Learn the practice.

The ADR-Driven Development masterclass teaches the workflow ServerClaw is built on. It’s a paid live cohort; the fourth runs in June 2026. For solo readers, the published ADRs themselves are the textbook.

Links.