9c2bc46ef6c175832d10485b49d0c00f14736689
The Refinery now has a formal patrol molecule with structural enforcement of the Beads Promise via the handle-failures verification gate. Changes: - Add RefineryPatrolMolecule() to builtin_molecules.go with 10 steps - Add prompts/roles/refinery.md template following deacon/witness pattern - Update test to expect 9 built-in molecules Key insight: The handle-failures step is a GATE - you cannot proceed to merge-push without either fixing the issue or filing a bead. This makes disavowal structurally impossible, not just philosophically discouraged. The Scotty Test: "Would Scotty walk past a warp core leak because it existed before his shift?" 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Gas Town
Multi-agent workspace manager for AI coding agents.
Gas Town coordinates swarms of AI agents working on software projects. Workers (polecats) implement features and fix bugs. Refineries review and merge code. Witnesses manage worker lifecycles. Mayors coordinate across projects.
Install
go install github.com/steveyegge/gastown/cmd/gt@latest
Quick Start
# Create a town (workspace)
gt install ~/gt
# Add a project rig
gt rig add myproject --remote=https://github.com/you/myproject.git
# Spawn a worker on an issue
gt spawn --issue myproject-123
Architecture
Town (~/gt/)
├── Mayor (global coordinator)
└── Rig: myproject
├── Witness (lifecycle manager)
├── Refinery (merge queue)
└── Polecats (workers)
Key Concepts
- Molecules: Structured workflow templates with quality gates and dependencies
- Beads: Unified data plane for issues, messages, and state (github.com/steveyegge/beads)
- Nondeterministic Idempotence: Workflows survive crashes and agent restarts
Commands
gt status # Town status
gt rig list # List rigs
gt spawn --issue <id> # Start worker
gt mail inbox # Check messages
Documentation
Development
go build -o gt ./cmd/gt
go test ./...
License
MIT
Languages
Go
98.2%
HTML
1.1%
Shell
0.4%
JavaScript
0.2%