Inspiration

While using coding agents on other projects, I realized that my workflow differed from what I saw around me. I did not want to simply delegate a task and wait for the result. I wanted to collaborate continuously: discuss decisions, address specific agents, review their work, and hand context from one agent to another.

I could not find tooling that supported this way of working, so I started building coderoom: a shared terminal where developers and named AI agents can mob-program together.

Once that collaboration model worked, I noticed that I was frequently repeating the same coordination patterns. That led to the next idea: what if those patterns could be automated using a programming language designed around prompts?

What it does

coderoom lets developers choose how closely they want to collaborate with their agents.

They can work interactively:

@ada investigate the failing tests
/handoff ada tim

Or automate a repeatable workflow:

/def tests /shell go test ./...
/loop @ada make the tests pass without weakening them /until /tests /max 3

The loop gives Ada the prompt, evaluates the deterministic shell condition after every turn, and feeds the resulting failure evidence back to Ada when another iteration is needed. The maximum number of turns keeps the workflow bounded.

These are general language primitives rather than a built-in “fix tests” workflow. Developers decide what the agents should do and how success should be evaluated.

How I built it

coderoom is a Go terminal application. Named agents operate through Codex app-server and share the same git workspace with the developer.

During OpenAI Build Week, I added the first version of the prompt-based programming layer:

  • cancellable shell execution
  • shell-backed user-defined commands
  • command invocation and resolution
  • bounded do...until agent loops
  • deterministic feedback passed back to agents

I built these features by dogfooding coderoom with GPT-5.6 and Codex. Ada acted as the builder and implemented small, focused slices. Tim acted as the reviewer and inspected each change. I set the product direction, designed the language and UX, resolved semantic questions, and decided which feedback to incorporate.

Challenges I ran into

The hardest part was keeping the syntax natural without making its behavior ambiguous. For example, /loop prompts do not require quotes. coderoom scans control clauses such as /until and /max from the end, leaving the remaining text as the participant prompt.

Another important decision was making loops behave like do...until: the agent receives at least one opportunity to act before the condition is evaluated.

Shell execution also introduced lifecycle challenges. Commands needed to be cancellable, descendant processes had to be cleaned up, and coderoom had to wait for active executions during shutdown. Loop conditions also needed to retain complete failure evidence for the next agent turn while keeping ordinary shell output readable for the developer.

Accomplishments that I'm proud of

I discovered Build Week very late, so I am proud of how far coderoom progressed in the limited time available. I did not expect to complete such a substantial iteration, but working with Codex pulled me into an intense creative flow. When I finally looked up, it was nighttime and I was committing the last change.

I am especially excited about the direction of the prompt-based programming language. It takes coderoom's existing conversational CLI commands and turns them into composable primitives. Instead of prescribing a fixed workflow, coderoom gives developers the building blocks and lets them decide what to automate, when to automate it, and how much control to retain.

That progression from direct conversation, to coordination, to automation, feels natural to me. The language does not replace collaboration; it grows directly out of it.

What I learned

I learned that agent automation does not need to remove the developer from the process. Interactive collaboration and automation can be two levels of the same system.

Prompt-based actions provide flexibility, while deterministic commands provide reliable evaluation. Combining them makes it possible to automate useful workflows without hiding their objectives, evidence, or limits from the developer.

What's next for coderoom

I will continue developing coderoom and using it in my own work. I am already sharing it within my network and looking for a pilot customer whose real development workflow can guide the next iterations.

My broader goal is to bring the idea of building the system that builds the software to developers and teams who are new to agentic workflows. They should not need to begin with extreme automation. coderoom can let them collaborate step by step, understand how their agents work, and automate patterns gradually as they gain confidence.

The prompt language will continue growing from real workflows, adding primitives only when their purpose becomes clear through use.

Built With

Share this project:

Updates