Self-hosted automation board
Todos that run themselves.
Some rows you check off yourself. Others get run by a worker — a shell command, a Claude agent, anything you can wire into a YAML plugin. Workers dial in from wherever the tools live: a laptop, a VM, an old machine in the closet.
One Go binary + Postgres. Docker compose up and you're done.
Why Hazy
-
Self-hostable, period
AGPL-3.0. Your hardware, your data, your network. The hub never connects out — workers dial in. Put TLS in front with Caddy and you're production-ready.
-
Workers anywhere with tools
Workers run wherever the binaries you want live. Claude on a beefy box, shell scripts on a Raspberry Pi, a python plugin on the host with the right venv. The hub dispatches by worker type.
-
Boring tech, sharp edges
Single Go binary. Postgres + row-level security for per-user isolation. SSE for live updates. No build step on the frontend. No abstractions you didn't ask for.
How it works
-
1
Spin up hazyd
docker compose up -d. The Welcome screen creates the first admin user. You're at an empty project drawer within a minute. -
2
Mint a worker key
Drawer → Workers → +. The dialog prints a ready-to-paste
docker runcommand. Run it on whichever host has the tools your tasks need. -
3
Drop tasks into the board
Click ▶ on a project and tasks dispatch within ~2 s. Some rows are operator todos; others run shell / Claude / your own YAML plugin. Live log SSE streams output as it lands.