Most browser automation asks "did the button work?" CBrowser asks "will a real person find the button?"
It's an MCP server (83 tools) that connects to Claude and gives it a real browser. But the core idea is cognitive journey simulation — you pick a persona (first-timer, elderly user, power user, someone with ADHD, low vision, motor tremors) and CBrowser walks your site the way they would. Each persona has 25 cognitive traits (patience, risk tolerance, comprehension, working memory) that determine how they react to friction. When frustration or confusion crosses a threshold, they abandon — just like a real user.
Each persona also has a motivational values profile based on Schwartz's 10 Universal Values (security, achievement, self-direction, benevolence, etc.) plus Self-Determination Theory needs and Maslow levels. These aren't decorative — they drive which influence patterns each persona is susceptible to. A security-motivated user responds differently to urgency cues than an achievement-motivated one. You can test whether your site's persuasion patterns actually work on your target audience, or only on people who already think like your designers.
What it actually does:
cognitive_journey_init + browser tools = watch a simulated persona attempt a task on your live site compare_personas = same task, multiple personas, side-by-side friction analysis
competitive_benchmark = run the same journey on your site and a competitor's
empathy_audit = test with disability personas (WCAG violations + lived-experience barriers)
Plus the usual browser automation: navigate, click, fill, screenshot, cross-browser testing, visual regression, performance baselines
The self-healing selectors cache alternatives (aria-label, role, ID, text) at match time and fall back through them ranked by confidence, with a 60% gate so you don't get silent false passes.
TypeScript, MIT, connects to Claude.ai via the demo MCP server or install locally with npm. Built on Playwright.
I'd love feedback on the persona model — are 25 cognitive traits + 10 motivational values too many? Too few? Are the abandonment thresholds realistic?