State of the Software Factory (aka. Slop Theater)

TL;DR: A software factory is essentially a modern SDLC or CI/CD where some or most of the workers are agents.
The interesting part is not the AI; it is the production line around it: every change, no matter who (or what) wrote it, passes the same automated gates.

fair warning: this post contains a bunch of twitter links. i know some people are not fans, but that’s where the party is going on right now.


The factory market in 60 seconds

  "software factory" on X, 27 Oct – 10 Nov 2026

  posts/day
   600 |                         ██  ← 6 Nov: Lauren Tan (@poteto)
       |                         ██     "it's marketing"
   400 |                      ▄▄ ██ ▄▄
       |                ▄▄ ▄▄ ██ ██ ██ ▄▄
   200 |       ▄▄ ▄▄ ▄▄ ██ ██ ██ ██ ██ ██ ▄▄
       |    ▄▄ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██
     0 +------------------------------------
         (shape illustrative; peak ≈ 578 originals on 6 Nov,
          ≈ 2,600 originals in the last 7 days)

The debate has two camps, and both are partly right:

Definitions worth quoting

Warp:

A factory is a fleet of agents wired to your SDLC — triggered by an issue, a Slack message, or a schedule, and coordinated from triage through review to a mergeable PR.

Eno Reyes (Factory CTO):

A real software factory standardizes the path, not the output: every signal becomes a change that passes the same blind checks until AI-written code breaks less often than human code and can automerge, while people step off the line to set goals, rules, and autonomy.

modern SDLC by Eno Reyes

(image by Eno Reyes, CTO of Factory, from his twitter thread)

What remains

maturity ladder

The maturity ladder

Based on @mardehaym’s 7 steps (which i quite liked) from scattered tools to orchestrated workflows:

  1. Tool adoption. AI tools are scattered across the org, and a human runs each one. The workflow dies when that person is on leave (bus factor = 1).
  2. Context layer. Knowledge is organized per domain, kept separate so agents don’t mix up contexts.
  3. Harness engineering. Evals, routing and quality gates come before choosing a model. The harness is the lasting investment; the LLM is a swappable part.
  4. Go headless. Automations run on a server, on a schedule or on conditions, not on someone’s laptop. This is where most companies stall.
  5. Governance. Access control (RBAC) on every knowledge source, and a lifetime for every agent: retire it after 90 days idle or when its evals fail.
  6. Agent-to-agent. Headless agents are chained along a value chain, with an LLM quality gate on every handoff.
  7. Step functions. Orchestrated, semi- or fully automated workflows: agents handle the volume, humans handle the exceptions.

Where we are: my setup is roughly at step 4, with experiments in 5 and 6.

software factory line

My setup as a production line

This is a snapshot of today, not a recommendation for next month.

Tools in this space change every few days: harnesses, multiplexers and review bots get replaced constantly. What lasts is the foundation underneath (git, documentation, tests, infrastructure as code). Have that ready, and swapping any tool on top becomes a small change.

  ┌───────────────────────────────────────┐
  │ 1. ORDER INTAKE (triggers)            │
  │    user feedback · red CI ·           │
  │    updates · cron jobs                │
  └───────────────────┬───────────────────┘
                      ▼
  ┌───────────────────────────────────────┐
  │ 2. WORKSTATIONS (harnesses)           │
  │    pi · claude · cursor · droid       │
  │    reads: AGENTS.md · docs · RFCs     │
  └───────────────────┬───────────────────┘
                      ▼
  ┌───────────────────────────────────────┐
  │ 3. CONTROL ROOM (multiplexer)         │
  │    herdr · tmux · rex                 │
  │    1 human supervises many lines      │
  └───────────────────┬───────────────────┘
                      ▼
  ┌───────────────────────────────────────┐
  │ 4. VERSION CONTROL (git)              │
  │    branch/worktree per agent ·        │
  │    small commits · pull request       │
  └───────────────────┬───────────────────┘
                      ▼
  ┌───────────────────────────────────────┐
  │ 5. QUALITY CONTROL (review)           │
  │    frog · custom checks · CI tests ·  │
  │    cursor / claude / copilot review   │
  └─────────┬──────────────────┬──────────┘
            │ ✓ pass           │ ✗ fail
            ▼                  └─► back to 2
                                   (stop the line)
  ┌───────────────────────────────────────┐
  │ 6. SHIPPING (deploy)                  │
  │    trunk-based · main = prod ·        │
  │    auto-deploy                        │
  └───────────────────────────────────────┘

The foundation needed for this

Station details

Every station is familiar from classic CI/CD. The only new parts are the workstations (agents) and the control room. Nothing reaches main without passing the same gates as a human pull request.

software factory layers

The foundation: context layers

Agents are only as good as the knowledge they can read. That knowledge is written down, versioned in git, and layered from general to specific:

  specific
     ▲   ┌──────────────────────────────────┐
     │   │ WHY: RFCs / decision records     │
     │   │ "we chose X over Y because…"     │
     │   └────────────────┬─────────────────┘
     │   ┌────────────────▼─────────────────┐
     │   │ WHAT: written documentation      │
     │   │ docs/ folder in every repo       │
     │   └────────────────┬─────────────────┘
     │   ┌────────────────▼─────────────────┐
     │   │ WHERE: monorepo-style layout     │
     │   │ one place, one history, one CI   │
     │   └────────────────┬─────────────────┘
     │   ┌────────────────▼─────────────────┐
     │   │ HOW (this repo): repo AGENTS.md  │
     │   │ build/test commands, rules       │
     │   └────────────────┬─────────────────┘
     │   ┌────────────────▼─────────────────┐
     │   │ HOW (everywhere): global         │
     │   │ AGENTS.md · skills · dotfiles    │
     ▼   └──────────────────────────────────┘
  general

Good documentation was always good engineering.
With agents it becomes the input to production.
A gap in the docs is now a gap in the output.

abstract herdr app

The control room: herdr + multiplexer

 ┌────────────────────────── herdr / tmux ─────────────────────────────┐
 │ ┌─ pane 1 ───────────┐ ┌─ pane 2 ───────────┐ ┌─ pane 3 ───────────┐│
 │ │ repo-a             │ │ repo-b             │ │ infra              ││
 │ │ agent: claude      │ │ agent: pi          │ │ agent: cursor      ││
 │ │ task: fix red CI   │ │ task: dep update   │ │ task: IaC drift    ││
 │ │ status: ▶ running  │ │ status: ⏸ needs me │ │ status: ✓ PR open  ││
 │ └────────────────────┘ └────────────────────┘ └────────────────────┘│
 │                                                                     │
 │  Mac mini (remote agent machine)  ◄── Tailscale ──►  laptop / iPad  │
 └─────────────────────────────────────────────────────────────────────┘

Herdr moved from a terminal UI to a native Rust + GPUI desktop app (macOS, Linux, Windows, plus iPhone, iPad and Android).

The original terminal version still exists as Herdr TUI, but it’s a separate program and doesn’t share agents with the new app.

Two details matter here:

My personal herdr config is in my dotfiles repo, so every machine automatically has the latest app config.

There’s currently a whole sprawl of similar tools. Of course, the classic tmux is still a great multiplexer. rex from superlogical is now in beta. Then there are also other less terminal-style apps like Orca, Paseo or Paradev.

slop theater spotlight

Honest limits: “slop theater” check

   WHAT WORKS                          WHAT DOESN'T (YET)
   ──────────                          ──────────────────
   ✓ dependency/update chores          ✗ fuzzy product decisions
   ✓ fixing red CI                     ✗ big cross-cutting refactors
   ✓ small, well-specified changes     ✗ anything without tests
   ✓ IaC drift, boilerplate            ✗ review is the bottleneck
                                       ⚠ auto-approve: where's the line?
what's next timeline

What’s next

  MARKET          PRODUCTS         SYSTEMS
  ──────          ────────         ───────
  definition      factories as     harnesses,
  war, review     products,        multiplexers,
  bottleneck      consolidation    models: weekly
      │                │                │
      └────────────────┼────────────────┘
                       ▼
        keep tools swappable, invest
        in foundations, measure output

Nothing is forever


Also kudos to @saerdnaer@chaos.social for asking me to show my setup in our internal meeting, which triggered this whole write-up and visualizations.

Appendix: terms in plain words