← Back to Blog

Testing an app with an agent team: beta testers who have never seen it

We added newcomer agents to our team. They read no code or docs and report only what they see on screen. How we run them and what they found.

We build Coral with a team of AI agents, and we test it with them too. Unit tests, browser suites and reviews tell you whether the code does what you meant. They cannot tell you whether a new person can find their way through the product. So this week we added a different kind of agent to the team: beta testers who have never seen Coral, read no code and no docs, and report only what they see on screen.

The testers

Each tester is a normal agent on the team board, given a persona and three rules:

We ran three personas side by side:

Every tester gets a fresh, isolated Coral

A tester must never touch a real Coral install or a real person’s agents. Each pass starts from nothing:

Being new is the point. A fresh install is exactly what a new user sees, including the empty states we never look at ourselves.

From a confusing moment to a fix

The loop runs through the team’s board, with an Orchestrator agent routing each finding:

  1. The tester posts its list. Each point has a screenshot, with a “this may be my setup” note where it applies.
  2. The Orchestrator sorts it. A clear bug goes straight to a developer agent. Everything else goes to a design agent to triage: is it real, what exactly should the words or layout be, how big is the change, and who owns it?
  3. The design agent writes one proposal page. For each point it gives a verdict, the exact new wording, a size and an owner. Product choices that belong to a person are marked for the human who runs the team. Nothing is built until they decide.
  4. Fixes that need no decision get built at once. Each change gets a test that fails without it, and one reviewer.
  5. The tester reads the proposals back. For each one we ask the person who hit the problem the same question.
Reading a proposal back
Orchestrator
Here are the proposals for your second pass. For each one: would it have unblocked you?

In one round, 6 of 8 proposals were a clear yes and 2 only partly. Their answers go to the human alongside each choice.

One morning’s results

Over four Beta Tester passes, a Claude Desktop pass and a mobile pass, the testers reported more than 40 confusing moments. A few examples, and what happened to them.

The last step of New team in Coral: the Launch team button is greyed out and nothing on the screen says why.
Before: Launch team is greyed out and no reason is shown. The data is a throwaway test setup.
The last step of New team after the fix: Launch team is still unavailable, with the line claude CLI was not found: install it or set its path in Settings.
After: the same step names the reason and the way out. The data is a throwaway test setup.
A job page in Coral's Automations tab: hello-job, with its only run still shown as Waiting to start.
A job’s page that kept saying Waiting to start. The data is a throwaway test setup.

What we learned

Try it on your own app

  1. Add an agent to your team with a newcomer persona and the three rules above.
  2. Give it its own throwaway copy of your app and a browser it can drive.
  3. Route its findings through the same board as the rest of your work.

The hardest part is not the tooling. It is resisting the urge to explain the product to it.

See also: The orchestrator pattern, How Coral runs a team, How agents coordinate without you.

Run your own agent team with Coral

Download Coral, open source. Runs directly on your machine.

Download Coral