A city planner for AI coding agents
It gives multi-agent coding workflows a Kubernetes-like control plane: declare desired state in city.toml and let a supervisor loop reconcile it across tmux, K8s, or subprocesses.

What it does
Gas City is a Go SDK that manages multi-agent coding workflows through a declarative control plane. You define your setup in city.toml, and a built-in supervisor loop reconciles that desired state against whatever is actually running—whether that’s local tmux sessions, subprocesses, Kubernetes pods, or the experimental herdr backend. Work tracking and routing persist through a “beads” abstraction backed by Dolt by default, with a file-based store available if you prefer to avoid the database dependency.
The interesting bit
Rather than firing off agents and hoping they don’t collide, Gas City treats orchestration like infrastructure management: bounded convergence loops, health patrol, and runtime-agnostic dispatch. The project wears its city metaphor proudly—rigs, formulas, convoys, and even a mayor session—though the README assumes you’re comfortable learning its domain vocabulary or coming from the upstream Gas Town project.
Key highlights
- Declarative
city.tomlconfiguration with support for packs, overrides, and multi-project rig scoping - Multiple runtime providers: tmux, subprocess, exec, ACP, Kubernetes, and herdr
- Supervisor loop that reconciles declared state against running state
- Beads-backed work tracking and mail routing, using Dolt by default or a simple file store
- Clean internal structure with separate packages for runtime, config, convergence, and orders
Caveats
- The domain language (beads, rigs, formulas, convoys) is dense; the README frequently points to external docs rather than explaining concepts inline
- Building from source requires Go 1.26.4+ and ICU headers via CGO, with manual environment tweaks needed on Nix/Flox systems
- tmux stays a hard dependency even when using other backends because it serves as the fallback session manager
Verdict
A solid choice if you’re building complex multi-agent pipelines that need state tracking and reconciliation rather than ad-hoc task execution. If you just want a lightweight wrapper around a single LLM coder, this is overkill.
Frequently asked
- What is gastownhall/gascity?
- It gives multi-agent coding workflows a Kubernetes-like control plane: declare desired state in city.toml and let a supervisor loop reconcile it across tmux, K8s, or subprocesses.
- Is gascity open source?
- Yes — gastownhall/gascity is open source, released under the MIT license.
- What language is gascity written in?
- gastownhall/gascity is primarily written in Go.
- How popular is gascity?
- gastownhall/gascity has 1.2k stars on GitHub.
- Where can I find gascity?
- gastownhall/gascity is on GitHub at https://github.com/gastownhall/gascity.