regulars

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Regulars

常规用户模拟测试(Regulars)

Overview

概述

Dispatch a panel of subagents, each role-playing a real user with a specific task to complete on the site. They navigate using browser MCP tools, attempt to complete their goal, and report what broke, what was frustrating, and whether they succeeded. The organizing principle is task completion — can users do what they came to do?
This is NOT a QA test suite or expert audit. Regulars agents behave like real users — they don't inspect source code, they don't check every element, and they don't follow a test matrix. They try to accomplish a goal the way a real person would.
派遣一组子Agent,每个Agent扮演具有特定任务的真实用户,在网站上完成操作。他们使用browser MCP工具导航,尝试完成目标,并报告哪里出现问题、哪些操作令人沮丧,以及是否成功。核心原则是任务完成度——用户能否完成他们想要做的事情?
这不是QA测试套件或专家审计。 Regulars Agent的行为与真实用户一致——他们不会检查源代码,不会逐一验证每个元素,也不会遵循测试矩阵。他们会像真实用户一样尝试达成目标。

When to Use

使用场景

  • Before launch: "Does the site actually work end-to-end?"
  • After deploy: "Did we break any user flows?"
  • After refactor: "Can users still do the important things?"
  • Periodic check: "Are the critical paths still working?"
  • 上线前:"网站端到端是否真的能正常运行?"
  • 部署后:"我们是否破坏了任何用户流程?"
  • 重构后:"用户是否仍能完成重要操作?"
  • 定期检查:"关键路径是否仍正常工作?"

Workflow

工作流程

dot
digraph regulars {
  rankdir=TB;
  "User requests smoke test" -> "Identify key user tasks for this site";
  "Identify key user tasks for this site" -> "Present task panel with personas";
  "Present task panel with personas" -> "Ask: add, remove, or adjust?";
  "Ask: add, remove, or adjust?" -> "Finalize panel";
  "Finalize panel" -> "Ensure dev server is running";
  "Ensure dev server is running" -> "Dispatch agents sequentially";
  "Dispatch agents sequentially" -> "After each: report pass/fail + key issue";
  "After each: report pass/fail + key issue" -> "All done?";
  "All done?" -> "After each: report pass/fail + key issue" [label="no"];
  "All done?" -> "Compile results scorecard" [label="yes"];
}
Sequential dispatch required. Browser MCP tools share a single browser instance.
dot
digraph regulars {
  rankdir=TB;
  "User requests smoke test" -> "Identify key user tasks for this site";
  "Identify key user tasks for this site" -> "Present task panel with personas";
  "Present task panel with personas" -> "Ask: add, remove, or adjust?";
  "Ask: add, remove, or adjust?" -> "Finalize panel";
  "Finalize panel" -> "Ensure dev server is running";
  "Ensure dev server is running" -> "Dispatch agents sequentially";
  "Dispatch agents sequentially" -> "After each: report pass/fail + key issue";
  "After each: report pass/fail + key issue" -> "All done?";
  "All done?" -> "After each: report pass/fail + key issue" [label="no"];
  "All done?" -> "Compile results scorecard" [label="yes"];
}
必须按顺序派遣Agent。 browser MCP工具共享单个浏览器实例。

Designing the Task Panel

任务面板设计

Unlike review-squad:experts (fixed default panel) or review-squad:normies (fixed sophistication spectrum), regulars tasks are site-specific. You must design them based on what the site does.
Step 1: Ask the user what the key user flows are, OR read the site's navigation/content to identify them.
Step 2: For each flow, create a persona with a goal:
ComponentExample
Name + personality"Sarah, a busy parent browsing on her phone during lunch break"
Goal"Find a birthday gift under $50 and add it to cart"
How they'd approach it"Scrolls fast, uses search if available, sorts by price"
Step 3: Present the panel to the user for approval.
与review-squad:experts(固定默认面板)或review-squad:normies(固定成熟度范围)不同,Regulars的任务是针对特定网站定制的。你必须根据网站的功能来设计任务。
**步骤1:**询问用户网站的关键用户流程是什么,或者通过查看网站的导航/内容来识别这些流程。
**步骤2:**为每个流程创建一个带有目标的角色:
组件示例
姓名 + 性格"Sarah,一位忙碌的家长,午休时用手机浏览网站"
目标"找到50美元以下的生日礼物并加入购物车"
操作方式"快速滚动,有搜索功能就使用,按价格排序"
**步骤3:**将任务面板提交给用户审批。

Example Panels by Site Type

不同类型网站的任务面板示例

Personal blog/portfolio:
#PersonaTask
1Recruiter scanning quicklyFind what this person does and their experience
2Blog readerFind a post on a specific topic and read it
3Old friendFind contact info or a way to reach out
4RSS subscriberFind and subscribe to the RSS feed
5Social media visitorLand on a shared blog post, explore from there
6Fellow developerFind their GitHub/projects
E-commerce:
#PersonaTask
1Gift shopperFind something under $50, add to cart, start checkout
2Comparison shopperBrowse a category, filter/sort, compare two products
3Return visitorFind order status or return policy
4Newsletter subscriberFind and complete the signup form
5Mobile buyerComplete a purchase on a phone-sized viewport
6Coupon userApply a discount code at checkout
SaaS/product site:
#PersonaTask
1EvaluatorUnderstand the product and find pricing
2Free trial userSign up for a trial account
3Support seekerFind documentation or help
4Enterprise buyerFind enterprise/contact sales info
5Existing userLog in and check account settings
6DeveloperFind API docs or integration guide
个人博客/作品集:
#角色任务
1快速浏览的招聘人员找到此人的职业和工作经历
2博客读者找到特定主题的文章并阅读
3老朋友找到联系方式或沟通渠道
4RSS订阅者找到并订阅RSS源
5社交媒体访客从分享的博客文章进入,探索网站其他内容
6同行开发者找到其GitHub/项目信息
电商网站:
#角色任务
1礼品购买者找到50美元以下的商品,加入购物车,开始结账流程
2对比购物者浏览分类,筛选/排序,对比两款产品
3回访用户查找订单状态或退货政策
4通讯订阅者找到并完成注册表单
5移动端买家在手机尺寸的视口中完成购买
6优惠券使用者在结账时应用折扣码
SaaS/产品网站:
#角色任务
1评估者了解产品并找到定价信息
2免费试用用户注册试用账户
3寻求支持的用户查找文档或帮助信息
4企业买家找到企业版/联系销售的信息
5现有用户登录并查看账户设置
6开发者查找API文档或集成指南

Agent Prompt Template

Agent提示模板

You are [NAME], a [DESCRIPTION].
[1-2 sentences of personality and how you browse.]
You have come to this site to: [SPECIFIC GOAL].

Do NOT read any source code or project files. You are a real user.
Use the browser MCP tools to navigate the site at [URL].
[If mobile persona: First, set viewport to 375x812.]

YOUR TASK:
1. Navigate to [URL]. Take a screenshot.
2. Try to accomplish your goal: [GOAL].
3. Do what feels natural — click what looks right, search if you can,
   scroll where you'd scroll. Don't be methodical — be human.
4. Take a screenshot at each major step.
5. If something doesn't work (broken button, error page, dead end),
   try what a real person would try (back button, refresh, different path).
6. Test one unhappy path: [SPECIFIC EDGE CASE FOR THIS TASK].
7. When you've either completed your goal or given up, STOP.

Report as [NAME]:
- **Goal**: [restate the goal]
- **Result**: COMPLETED / PARTIALLY COMPLETED / FAILED
- **Steps Taken**: numbered list of what you did
- **Where It Broke**: exact moment something went wrong (if applicable)
- **Frustrations**: anything annoying even if it technically worked
- **Time to Complete**: rough estimate (fast / reasonable / painfully slow)
- **Would I Come Back?**: honest yes/no
Critical elements:
  • No-code guard — "Do NOT read any source code." Regulars are users, not developers.
  • Specific goal — Not "explore the site" but "find a gift under $50 and add it to cart."
  • One unhappy path per agent — Test what happens when things go wrong (invalid input, empty cart, back button mid-flow).
  • Human behavior — "Do what feels natural" not "follow this test script step by step."
  • Honest verdict — "Would I come back?" forces a real assessment.
You are [NAME], a [DESCRIPTION].
[1-2 sentences of personality and how you browse.]
You have come to this site to: [SPECIFIC GOAL].

Do NOT read any source code or project files. You are a real user.
Use the browser MCP tools to navigate the site at [URL].
[If mobile persona: First, set viewport to 375x812.]

YOUR TASK:
1. Navigate to [URL]. Take a screenshot.
2. Try to accomplish your goal: [GOAL].
3. Do what feels natural — click what looks right, search if you can,
   scroll where you'd scroll. Don't be methodical — be human.
4. Take a screenshot at each major step.
5. If something doesn't work (broken button, error page, dead end),
   try what a real person would try (back button, refresh, different path).
6. Test one unhappy path: [SPECIFIC EDGE CASE FOR THIS TASK].
7. When you've either completed your goal or given up, STOP.

Report as [NAME]:
- **Goal**: [restate the goal]
- **Result**: COMPLETED / PARTIALLY COMPLETED / FAILED
- **Steps Taken**: numbered list of what you did
- **Where It Broke**: exact moment something went wrong (if applicable)
- **Frustrations**: anything annoying even if it technically worked
- **Time to Complete**: rough estimate (fast / reasonable / painfully slow)
- **Would I Come Back?**: honest yes/no
关键要素:
  • 无代码限制 —— "请勿阅读任何源代码。" Regulars是用户,不是开发者。
  • 明确目标 —— 不是"浏览网站",而是"找到50美元以下的礼品并加入购物车"。
  • 每个Agent测试一个异常路径 —— 测试出现问题时的情况(无效输入、空购物车、流程中点击返回按钮)。
  • 人类行为 —— "做自然的操作"而非"逐步遵循测试脚本"。
  • 真实评估 —— "是否会再次访问?" 要求给出真实的评价。

Dispatch Pattern

派遣模式

Sequential, not parallel. Browser MCP shares a single browser instance.
After each agent, briefly report pass/fail + headline issue to the user.
按顺序派遣,而非并行。 browser MCP共享单个浏览器实例。
每个Agent完成任务后,向用户简要报告通过/失败状态以及主要问题。

Consolidating Results

结果整合

Compile into a scorecard:
markdown
undefined
将结果整理成计分卡:
markdown
undefined

Regulars Review: [Site Name]

Regulars Review: [Site Name]

Scorecard

Scorecard

#TaskPersonaResultIssues
1Find and read blog postBlog reader✅ PASSMinor: date format inconsistent
2Subscribe to newsletterCasual visitor❌ FAILForm returns 500 error
3Find contact infoOld friend✅ PASS
4Browse photo galleryGallery visitor⚠️ PARTIALLightbox doesn't close on mobile
5Find RSS feedRSS subscriber❌ FAILNo visible RSS link anywhere
6Navigate from shared linkSocial visitor✅ PASS
#TaskPersonaResultIssues
1Find and read blog postBlog reader✅ PASSMinor: date format inconsistent
2Subscribe to newsletterCasual visitor❌ FAILForm returns 500 error
3Find contact infoOld friend✅ PASS
4Browse photo galleryGallery visitor⚠️ PARTIALLightbox doesn't close on mobile
5Find RSS feedRSS subscriber❌ FAILNo visible RSS link anywhere
6Navigate from shared linkSocial visitor✅ PASS

Result: 4/6 PASS, 1 PARTIAL, 1 FAIL

Result: 4/6 PASS, 1 PARTIAL, 1 FAIL

Blockers (failed tasks)

Blockers (failed tasks)

TaskWhat brokeSeverity
Newsletter signup500 error on form submitCRITICAL
Find RSS feedNo RSS link discoverableIMPORTANT
TaskWhat brokeSeverity
Newsletter signup500 error on form submitCRITICAL
Find RSS feedNo RSS link discoverableIMPORTANT

Friction (passed but painful)

Friction (passed but painful)

TaskWhat was frustrating
Browse galleryLightbox close button too small on mobile
TaskWhat was frustrating
Browse galleryLightbox close button too small on mobile

What Worked Well

What Worked Well

  • Blog reading flow is smooth end-to-end
  • Contact info is easy to find
  • Shared link landing experience is clean
undefined
  • Blog reading flow is smooth end-to-end
  • Contact info is easy to find
  • Shared link landing experience is clean
undefined

After the Report

报告完成后

  1. Present the scorecard
  2. Blockers are the priority — tasks that completely failed
  3. Ask if the user wants to fix blockers now
  4. Friction items go on the backlog
  1. 展示计分卡
  2. 阻塞问题是优先处理项——完全失败的任务
  3. 询问用户是否现在修复阻塞问题
  4. 摩擦项列入待办事项

Common Mistakes

常见错误

  • Reading the code — Regulars don't know the codebase. Neither should the agents.
  • Generic tasks — "Browse the site" is not a valid task. Each agent needs a specific goal with a clear pass/fail.
  • Only happy paths — Real users hit edge cases. Each agent should test one unhappy path.
  • QA test scripts — "Click element #submit, verify response code 200" is a test script, not what regulars do. Agents should behave like humans.
  • Running in parallel — Browser MCP is a shared resource. Sequential only.
  • Using the same panel for every site — Tasks must match what THIS site offers. A blog doesn't need a "checkout flow" tester.
  • 查看代码 —— Regulars不了解代码库,Agent也不应查看。
  • 通用任务 —— "浏览网站"不是有效的任务。每个Agent需要有明确目标和清晰的通过/失败标准。
  • 仅测试正常路径 —— 真实用户会遇到边缘情况。每个Agent应测试一个异常路径。
  • 使用QA测试脚本 —— "点击#submit元素,验证响应码200"是测试脚本,不是Regulars的做法。Agent应表现得像人类。
  • 并行运行 —— browser MCP是共享资源,只能按顺序运行。
  • 对所有网站使用相同面板 —— 任务必须匹配当前网站的功能。博客不需要"结账流程"测试员。