One developer and a fleet of Claude Code agents, building and running a
multi-tenant SaaS (Rental Pilot) on web, mobile and desktop in production. These are the
real numbers, regenerated every hour from git and the agents' own logs.
Counts only: no code, no commit messages, no customer data.
Right now
connecting…
–agents working in the last 15 minutes
Pushed over an API Gateway WebSocket the moment an agent acts. Each event comes from a
Claude Code hook on my machine and carries four things: what happened, the tool's name, which product the work is
in, and a six-character hash of the session. No code, no file names, no prompts.
Agents working right now—as of the last hourly run
Commits, 12 months—
Paired with an agent—commits carrying a Claude co-author line
Agent sessions—including subagents
Tool calls—shell, file edits, browser, database
Tokens processed—input, output and cache
Peak parallel agents—most sessions open at once
Every day of the year
less more
Where the commits go
What the agents do
Which models
Share of all model responses.
How this page is made
infra/fleet-stats.py
A short script on my own machine reads two things: git log across the
repos, and the Claude Code transcripts the agents write as they work. It counts, and it
throws the rest away. What gets published is one JSON file of numbers, copied to S3 behind
the same CloudFront distribution as this page. No code, no commit messages, no file names,
nothing a customer typed.
Commits are mine only: other people's commits in the same repos are left out, so "one
developer" stays literally true. A commit counts as paired when it carries a Claude
co-author line. Agent sessions include subagents, which is how one session fans out into
several working at once. Claude Code keeps transcripts for a limited time, so the agent
numbers start later than the commit history does.