Open tools, 04.1, THE PARADE CHAMBER
Mardi Gras
Keep the moving parts in sight
Mission control, with a little soul.
A terminal-native control surface for issues and coding-agent workflows. A place to see the work moving, follow the agents, and stay involved.
Status: Open source
In the world
Ready. Working. Needs a human. The work stays visible, including the moment it needs you.
- Start the sample parade
- A moving parade, with room to pause. The amber float waits for a human decision.
Overview
Mission control, with a little soul
Coding agents are good at working. They are not good at being seen. Mardi Gras began as a friendlier view of an issue tracker built for agents, and grew into the place where we watch several agents at once: who is rolling, who is lined up, who has stalled, and who is waiting for a person to decide.
The parade is the idea that holds it together. A board asks you to sort cards into columns. A parade shows motion: what is moving, what is about to, what is stuck behind something else, and what has passed the reviewing stand.
Staying involved
The point is to stay in the loop without living in it. Problem detection surfaces the agent that has quietly stopped, a session you started asks before it runs a command, and a person can step in at the right moment instead of checking every pane.
Built the way it is used
We embrace agentic development, and Mardi Gras was made that way. Most of its commits on main (194 of 233, leaving out merges) name Claude as a co-author. Two came from Gas Town agents working on an issue by themselves, under the worker names obsidian and quartz, in February 2026. Obsidian’s change, which shows an issue’s metadata schema in the detail panel, is on main; quartz’s keyboard hints for the parade’s section headers stayed on its branch.
Try it
brew install matt-wright86/homebrew-tap/mardi-gras
Then run mg in a Beads project.
PRINCIPLES AT WORK
The problem
Once several coding agents are working through the same issues, a person loses sight of them: who is doing what, what is stuck, and what is waiting on a human. The answers are scattered across commands and terminal panes.
OUR APPROACH
Give the person one place to watch and steer the work, in the terminal where it already happens, and make every state visible at a glance, including the moment something needs you.
What it does
- Shows issues as a parade instead of a board: Rolling, Lined Up, Stalled and Past the Stand. “Stalled” comes from the dependency graph, not from a status someone set.
- Launches Claude Code, Cursor or Codex on an issue, with a prompt built from the issue and its dependencies, in a new tmux pane.
- Streams a Codex session into a live transcript, lets you reply in the same thread, and stops to ask before it runs a command or applies a patch.
- With the Gas Town orchestrator, or its newer Gas City backend, shows every agent’s state, their convoys, mail and activity, and lets you nudge, assign or retire an agent.
- Flags agents that look stalled, stuck, backing off or gone, and quiets the warnings when a whole rig is down, so one outage doesn’t become twenty alerts.
- Creates, edits, comments on and closes issues, with a filter and a fuzzy command palette.
- Fits in a tmux status line. Close an issue, and there is confetti.

ScreenshotFictional dataAgent control panel: roster, states, convoys and mail beside the parade. 
ScreenshotFictional dataProblems overlay: dead rig, stuck, backoff, stalled and zombie agents. 
ScreenshotFictional dataMolecule DAG: workflow steps, parallel branches and critical path. 
ScreenshotFictional dataThe parade: every issue in its lane, with rich detail.
How it’s built
- Go, as a single binary for macOS, Linux and Windows
- Charm’s Bubble Tea, Lip Gloss and Glamour
- The Beads issue tracker, through its command line
- Gas Town and Gas City for agent orchestration
DECISIONS, AND WHY
Terminal-native, with no web server
The agents already live in the terminal, and so do the people running them. A TUI sits beside them in tmux, starts instantly, works over SSH and has nothing to host or secure.
A lens, not a database
Mardi Gras stores nothing of its own. Every change goes through the Beads command line, so the issue graph stays the single source of truth for people and agents alike.
Polling instead of a daemon
It re-reads the issue list every few seconds instead of running a watcher: simpler, portable, and steady across refreshes.
Works at every level of the stack
Each feature works, or quietly hides itself, with Beads alone, with Gas Town, or with Gas City. A driver interface let a second orchestrator backend arrive without touching the interface.
Timeline
First release in two days: the parade, launching an agent on an issue, tmux, and a Homebrew tap.
The Gas Town control surface: roster, convoys, mail and problem detection.
Open-source groundwork: a security policy, a code of conduct, macOS CI and vulnerability checks.
Codex as a second agent runtime, with a live transcript and approvals.
Gas City support, a themed detail view and reproducible screenshots.
Status
Status: Open sourceOpen tools. The workbench beneath the products, in the open.
Open source under the MIT license, and publicly released through Homebrew and prebuilt binaries. The README still calls it early, and it has been quiet since June 2026 while the tools it builds on keep moving.
Writing
Credits
- Design and engineering: one of the studio’s founders, working with coding agents.
- Open-source contributors who sent fixes and improvements through pull requests.
- Built on the Beads issue tracker and the Gas Town and Gas City orchestrators, projects by others.