Cohort
Cohort runs a cohort of distinct AI user personas — a confused First-Timer, an impatient Power User, and an Accessibility user — in parallel against any website.
Core trick
Playwright drives three persona agents through the same site in parallel, and a principal agent merges their logged friction into ranked fixes.
Description
Cohort runs a cohort of distinct AI user personas — a confused First-Timer, an
impatient Power User, and an Accessibility user — in parallel against any website.
Each persona autonomously browses, narrates in character, and logs the friction they
hit. A principal agent then reconciles their conflicting feedback into one
prioritized, segment-aware report: ranked fixes, explicit tradeoffs where personas
disagreed, and segments at risk of abandoning.
The problem: a single automated test gives one perspective. A site can score
perfectly for power users while silently losing first-timers and being unusable on a
screen reader. Cohort makes those tradeoffs visible by running many simultaneous
perspectives and synthesizing the conflicts.
README excerpt
# Cohort > **AI-powered multi-persona user testing.** > Deploy a cohort of distinct AI personas that autonomously browse your site, > try to complete goals, and report where the experience breaks — then a > principal agent reconciles their conflicting feedback into a prioritized, > segment-aware report. Built at the Google I/O hackathon. Powered by **Gemini 3.5 Flash** via the **Managed Agents (Interactions) API**, **Playwright**, **Next.js 16**, and **shadcn**. ## The idea A single automated test gives you one perspective. Cohort gives you *many simultaneous perspectives* and reconciles the conflicts between them — surfacing tradeoffs (e.g. *"optimized for power users at the expense of first-timers"*) that no single test reveals. Three distinct personas run in parallel against your site: | Persona | What they're sensitive to | | ------------------ | ------------------------------------------------------------ | | 👋 First-Timer | Jargon, missing onboarding, unlabeled icons, no obvious next steps | | ⚡ Power User | Extra clicks, marketing noise, slow flows, missing shortcuts | | ♿︎ Accessibility | Unlabeled inputs, icon-only nav, ARIA gaps, low contrast | Each persona runs a `perceive → decide → act` loop in its own browser context, narrating an in-character monologue and logging friction points. The Gemini **Managed Agents** harness drives the function-calling step protocol; we execute the tools (`observe`,