- Published on
One Agent Is Nice, Nine Are a Team: A Talk from TYPO3camp Berlin 2026
- Authors

- Name
- Susanne Moog
At TYPO3camp Berlin 2026 I gave a talk called "Ein Agent ist nett. Neun sind ein Team." ("One agent is nice. Nine are a team."). It was in German, and so are the slides with the three demo videos. This is a short English version of it. It describes how I work at the moment. That's not a recommendation for how everyone should work, and it will probably look different in six months.
The starting point
I currently work in nine repositories: a demo landscape with TYPO3, Strapi, Payload, Pimcore, Storyblok, Contentful and Magnolia, partly the one from my T3DD26 talk. Next to that there's the usual stuff that never fits into a sprint ticket: reviews, Composer updates, scaffolds, seeders. And a weekly update round across all nine repos, which used to take me about an hour on Friday evenings. Now it's around eleven minutes, of which I'm busy for four and a half.
herdr
What I use for this is herdr, a terminal workspace manager along the lines of tmux or zellij. The difference is that it recognizes coding agents like Claude Code, Codex or pi, knows whether they are working, idle, blocked or done, and lets you start, prompt and read them through a small CLI. That also means one agent can control the others, so I write a task once and a controller session hands it out.
Why not subagents? They run inside my own session and report back into my context, which gets crowded quickly with nine repos. A herdr agent is a separate session with its own directory and the AGENTS.md of its own project. Both have their place. For this kind of work, separate sessions suited me better.
The feature I use most is worktrees: herdr worktree create gives each agent its own branch on the same codebase, so two of them can work on one repo without getting in each other's way. I had barely used Git worktrees before, which is slightly embarrassing. The notifications are nice too, and because everything keeps running in the background, I can check in from my phone via SSH with Moshi.
TYPO3 needs a bit more help
Most of the systems in my landscape have well-documented REST or GraphQL APIs, so an agent gets along fine with them. With TYPO3 a lot of knowledge lives in TCA, the DataHandler and core conventions, and an agent can't easily guess that. For this I use the TYPO3 dev-companion, an MCP server that gives the agent the schema, real records, translation labels, changelog entries and open Forge and Gerrit items. That made a noticeable difference for me.
What I do, and what went wrong
My setup is fairly simple: one agent per task, at most five in parallel, and every agent writes its result to a file. The limit of five isn't herdr's but my model provider's. I found that out when I started six and the sixth one just didn't exist.
The file rule also came from experience. In one of the demo videos I asked four agents to answer with nothing but "DONE" and got "ERLEDIGT" and "FERTIG" back. Fair enough. I read the files.
For reviews I use a second model profile in a fresh session that doesn't know how the code came about. Its findings go back to the first one, which either fixes them or explains why not. That catches things I would have missed, and occasionally it suggests something odd, like rewriting Git history while three worktrees are active on the same repo. That suggestion got politely declined.
Other things that went wrong: lost reports that only existed in a terminal pane, an agent committing into the wrong history, and the same wrong context handed to several agents at once. Parallel work also means parallel mistakes. That's why I keep the important rules in each project's AGENTS.md rather than in my prompts. Push and merge stay with me.
If you want to try it
I don't think you need nine agents, and I certainly didn't start with nine. Three is a good start: three separate tickets, three worktrees, three agents, and you still decide what gets merged. If it doesn't fit how you work, that's completely fine too.
Thanks to larmic.de for showing me herdr in the first place, and to my employer, team neusta, for the time to put this together and for sending me to TYPO3camp Berlin.