A label on an issue is the whole protocol between agents
The development-workflow skill in the software-factory.dev factory is the factory's own map of itself. It shows that the automations never call each other: they coordinate through labels on issues.
Written by
-
Benedikt Stemmildt Founder & Co-CEO
Published: 15 September 2026 Updated: 2 min read
The factory built in public at software-factory.dev (opens in a new tab) has a skill called development-workflow, and it is not a how-to. It is the factory’s own map of itself.
It loads the moment someone asks how the place runs: a human asking how to submit a feature, or an agent asking what automations exist. The skill answers both.
The issue lifecycle is a state machine
The part I keep rereading is the issue lifecycle. It is a state machine, and the state is a label on the issue. An issue is created unlabeled. It picks up status:backlog when it is ready, status:in-progress when an automation starts, status:in-review when a pull request opens, and status:done when that pull request merges.
The automations never call each other
Here is the detail worth copying. The automations never call each other. Not once.
The Feature Builder picks up the highest-priority status:backlog issue and opens a pull request. The PR Reviewer wakes on its own cron, finds the open pull request, reviews it and merges it. The Feature Builder never told the Reviewer anything. It changed a label and walked away.
The label is the entire protocol. No message bus, no queue, no standup where the agents sync. Each automation reads the labels it cares about, does its work and writes the next label. The next automation finds that label on its own schedule.
A written layer beats orchestration
This is the pattern I bring into every client conversation about agentic teams. With many autonomous workers, the instinct is to reach for orchestration: a controller, a queue, a planner handing out tasks. A shared, written, inspectable layer beats all of it. Labels on issues are durable, visible in the GitHub UI, and survive any single agent crashing mid-run.
And the map of that layer is itself a skill, so any agent can load it on demand: the development-workflow skill in the factory’s repository (opens in a new tab).
When an agent in your setup needs to hand work to the next one, what does it write the handoff into, and could a human read that handoff a week later?
Further reading
Written by
-
Benedikt Stemmildt · Founder & Co-CEO
Factory skills, part 18 of 18
- Report the daily delta, not the total that only goes up The Tweet Drafter in the software-factory.dev factory posts updates three times a day and reports the daily delta, not the cumulative total, because a total always looks like progress.
- The Feature Planner writes its own backlog, behind a human gate The triage automation in the software-factory.dev factory also writes its own backlog when the line runs dry, and routes anything risky through a person first.
Scaling needs named owners
Coding agents scale across teams when named people own the platform, the team practice, the guardrails, and the measurement. Rollout & scale is where that ownership is built and handed to internal owners, in your stack.
Training on this topic: Agentic Software Factory: Advanced Team TrainingWant to check one team first? The self-check: twelve yes or no questions, three minutes, instant result, no account. Take the self-check