Colomo Software Factory
Open a ticket, get a draft PR
Agents classify the work, run code in a sandbox, and open a draft PR ready for revue. You review.
The situation
We wanted to create small features and fix bugs right as we need them. now we just create the ticket and the factory runs multiple agents to do the work and create a PR ready for review.
What we shipped
-
Intake from a ticket
GitHub webhook or a local CLI run. Label the issue and the factory picks it up.
-
Classify the type
Bug, feature, or docs — from a single type label, or inferred if you left it off. Two type labels block the run.
-
Reproduce or plan
Bugs get a failing test first. Features and docs get a short plan before anyone writes the change.
-
Implement in a sandbox
Code and verify commands run in Docker, not on the host. Then a reviewer stage. Approve opens a draft PR.
A few decisions
Draft only — you merge
The factory never lands on main. A person still reads the diff.
Sandbox, not the host
Agents get a checkout and tools inside Docker. They do not get the machine that received the webhook.
One type label, or it stops
Ambiguous tickets waste a run. Conflicted labels block instead of guessing.
Bring your own model
The factory is agnostic about the model used on each of the stages.
Stack
TypeScript CLI and Hono webhook: TanStack AI for the stages, Octokit for GitHub, Drizzle and libSQL for run history, Docker for the sandbox.
- TypeScript
- Hono
- TanStack AI
- Octokit
- Drizzle
- libSQL
- Docker
Designed and built by Colomo — Tona and Mau.