One of the main complaints about AI productivity is that it boosts the individual engineer, but not the team. That’s because we don’t use the tools to their potential.

The first time I saw CodeRabbit, I immediately understood the power it could bring to a team. Of course, machines would be better at code reviewing than humans! People are just not as good at this kind of diligence.

But what I severely underestimated is the scope of what such an agent could handle. Reviewing code is just the start. These days, we’re using agents to handle issue triage, refactoring, quality assurance, etc.

It’s still early days, and we’re all still figuring out how it will work, but I’m convinced every team needs a bunch of these silicon coworkers to boost their productivity.

But the big, practical question remains: what do we use them for? And how?

Claude Managed Agents allow you to run agentic workflows in the cloud. On paper, that is a boost for team productivity. In reality, its impact is limited to a bunch of Daily Brief scenarios. Good luck getting it to handle a reliable workflow.

Fixed off-the-shelf tools like CodeRabbit or purely agentic systems like Claude Managed Agents have their place, but don’t boost team productivity. They are either unreliable or too rigid. In order to elevate the team, we need a system that reliably runs workflows that are part agentic and part deterministic. It should be trivial for team members to add new, bespoke workflows.

One of the famous old-school Scrum meetings was the retrospective. Every two weeks, the team got together to decide how they could improve their way of working. Every two weeks, a new action item would be added to the list. More often than not, these action items relied on discipline. We added yet another thing the engineers shouldn’t forget to do to the Definition of Done. But adding things to a checklist doesn’t guarantee they’ll happen. People are terrible at this kind of checkbox discipline! You know who is great at that? Our silicon coworkers.

What we need is a system that reacts to events in the codebase and then triggers a workflow. I’m currently using a combination of GitHub Apps and Windmill. The apps send webhook requests to Windmill on certain changes in GitHub (“a new issue was opened”), and a job is scheduled to kick off the workflow.

These workflows are scripts vibecoded using Codex or the built-in Windmill AI. They follow the Intelligence Pyramid and are as deterministic as possible.

I’ll give a very basic example.

Each PR generated by Claude should pass the test suite. But I want to avoid Claude changing or deleting existing tests to make them pass. So, whenever a PR is opened, a script verifies that new tests are added and only relevant tests are touched. That’s part agentic (”is this test relevant to the feature?”) and part deterministic (”listing all changed files in the test suite through git”). Each PR gets a comment with this assessment and a list of the touched tests for my review. This script has been added through a single prompt. It’s as vibe coded as it gets.

A team with such a setup could use their retrospectives to add these automated checks and balances to their workflow at the speed of a prompt. They can come up with experiments and rules that work for their specific case rather than applying off-the-shelf tools only.

That junior that has a habit of pushing huge PRs could get a dedicated agent to help him break those up. That team that has a UAT environment could have a workflow that releases a new version every Monday, populates it with the right test data, and then mails the customer with test instructions. Set once, fire and forget.

Whenever people complain about AI not boosting productivity at the team level, it is because they don’t apply it at the team level. A team-driven workflow engine is the logical step to unlock team productivity.

Make it easy to manage bespoke, reliable workflows. Make it trivial to add new ones.