gastownhall

    gastownhall/gascity

    #104 this week

    Orchestration-builder SDK for multi-agent coding workflows

    575 stars
    170 forks
    575 watching
    Updated 5/4/2026
    View on GitHub

    Genblaze — open-source SDK for generative multimedia pipelines

    Orchestrate AI video, audio & image providers in Python with provenance built into every output.

    BackblazeLearn more

    Loading star history...

    Health Score

    64

    Activity
    100
    Community
    75
    Maintenance
    39
    Last release12d ago

    Weekly Growth

    +127

    +22.1% this week

    Contributors

    52

    Total contributors

    Open Issues

    389

    Use Cases & Benefits

    About gascity

    Gas City

    Gas City is an orchestration-builder SDK for multi-agent systems. It extracts the reusable infrastructure from Gas Town into a configurable toolkit with runtime providers, work routing, formulas, orders, health patrol, and a declarative city configuration.

    Coming from Gas Town?

    Start with Coming from Gas Town?. It maps Town roles, commands, plugins, convoys, and directory habits onto Gas City's primitive-first model so experienced Gas Town users can ramp without trying to port the entire Town architecture literally.

    What You Get

    • Declarative city configuration in city.toml
    • Multiple runtime providers: tmux, subprocess, exec, ACP, and Kubernetes
    • Beads-backed work tracking, formulas, molecules, waits, and mail
    • A controller/supervisor loop that reconciles desired state to running state
    • Packs, overrides, and rig-scoped orchestration for multi-project setups

    Quickstart

    See the full install guide at docs/getting-started/installation.md.

    Prerequisites

    Gas City requires the following tools on your system. gc init and gc start check for these automatically and report any that are missing.

    DependencyRequiredMin VersionInstall (macOS)Install (Linux)
    tmuxAlwaysbrew install tmuxapt install tmux
    gitAlwaysbrew install gitapt install git
    jqAlwaysbrew install jqapt install jq
    pgrepAlways(included in macOS)apt install procps
    lsofAlways(included in macOS)apt install lsof
    doltBeads provider bd1.86.1brew install doltreleases
    bdBeads provider bd1.0.0releasesreleases
    flockBeads provider bdbrew install flockapt install util-linux
    claude / codex / geminiPer providerSee provider docsSee provider docs

    The bd (beads) provider is the default. To use a file-based store instead (no dolt/bd/flock needed), set GC_BEADS=file or add [beads] provider = "file" to your city.toml.

    Install from Homebrew:

    brew install gastownhall/gascity/gascity
    gc version
    

    Or build from source (requires make and Go 1.25+):

    make install
    
    gc init ~/bright-lights
    cd ~/bright-lights
    gc start
    
    mkdir hello-world
    cd hello-world
    git init
    gc rig add .
    
    bd create "Create a script that prints hello world"
    gc session attach mayor
    

    For the longer walkthrough, start with Tutorial 01.

    Documentation

    The docs now use a Mintlify structure rooted in docs/.

    Preview the docs locally:

    make docs-dev
    
    # or directly from the repo root
    ./mint.sh dev
    

    Repository Map

    • cmd/gc/: CLI commands, controller wiring, and supervisor integration
    • internal/runtime/: runtime provider abstraction and implementations
    • internal/config/: city.toml schema, pack composition, and validation
    • internal/beads/: store abstraction and provider implementations
    • internal/session/: session bead metadata and wait helpers
    • internal/orders/: periodic formula and exec dispatch
    • internal/convergence/: bounded iterative refinement loops
    • examples/: sample cities, packs, formulas, and configs
    • contrib/: helper scripts and deployment assets
    • test/: integration and support test packages

    Contributing

    Read CONTRIBUTING.md and engdocs/contributors/index.md before opening a PR.

    Useful commands:

    • make setup
    • make check
    • make check-docs
    • make test-integration

    License

    MIT

    Discover Repositories

    Search across tracked repositories by name or description