Build, fix and review code with a chat-based crew of six role-bound agents

Two hackathon builders ran six OpenCode agents in a Mattermost chat that found, fixed and independently re-tested two planted bugs, taking a suite from 21/2 to 25/0.

Done withCustom agentinGitHub· Nov 8, 2026

What they did

Justin and Ifeoluwa (Team Dynamo) built DevCrew for a hackathon: six agents on OpenCode that sit in a Mattermost team chat run locally by a tool called Switch, all defined in one Switch template. Each has one job. Scout reads the repo and runs tests but cannot edit. Conductor routes requests. Forge writes fixes on a branch. Sentinel re-runs the tests on its own and tries to break the change. Pulse writes standups from git and chat history, and Kudos credits contributions. An @mention in a message starts that agent, so Forge ending its report with a mention of Sentinel kicks off the review with no human typing. A person decides what ships. They pointed the crew at a small task-list app with two bugs they had planted.

How it went

Scout found both bugs, Forge fixed them and Sentinel confirmed the fix: the suite went from 21 passing and 2 failing to 25 passing and 0 failing. Plenty went wrong on the way. Forge answered questions outside its role until every agent got explicit boundaries, and it left its work uncommitted because nobody told it to commit. Stray @mentions inside task text woke agents for nothing. Agents bounced users between each other until every redirect pointed to Conductor. Forge could not open a pull request because the GitHub CLI was not signed in, so it handed over a link instead.

Worth knowing

In this setup any mention starts an agent, so only real handoffs should contain one. Sentinel reported concerns more honestly with three verdict levels instead of two. The human approval step lived only in a prompt, not in the tool. This was a hackathon demo on planted bugs, not production use. Code and agent instructions are public in the linked repo.

Try it

With Custom agent· 3 parts to fill in

Set up a crew of agents for [my repo] that work in [my team chat tool]. Give each one a single role and say what it must not do: a scout that reads the code and runs tests but never edits, a router that hands requests to the right agent, a builder that fixes on a new branch and commits, and a reviewer that re-runs the tests itself and gives one of three verdicts: pass, concern or fail. Only mention another agent when you are actually handing off work. Point any question outside your role to the router. Start with [the bug or task]. Stop after the reviewer posts its verdict and wait for me to approve before anything is merged.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related