Install
openclaw skills install ux-usability-auditorAutomated UX/usability audit for web applications. Use when the user wants to evaluate usability, accessibility, or UI consistency of a web app; mentions "usability audit", "UX review", "UI inspection", "易用性巡检", "体验巡检", or wants to generate a structured usability report. Works by navigating through target app pages via Playwright, capturing screenshots and UI metadata, then evaluating against a configurable checklist. Supports both Chinese and English usability standards.
openclaw skills install ux-usability-auditorAutomated usability and UX inspection for web applications. Navigates target app pages, captures screenshots and UI element metadata, then generates a structured audit report mapped to a usability checklist.
Minimal workflow — 4 steps:
config.json (see Configuration)node scripts/inspect.js config.jsonresults/inspection_results.json and screenshotsnode scripts/generate_report.js config.jsonCreate a config.json in the working directory:
{
"name": "My App Usability Audit",
"targetUrl": "https://example.com/#/login",
"login": {
"username": "admin",
"password": "123456",
"usernameSelector": "input[type='text'], input[placeholder*='账号'], input[placeholder*='用户名']",
"passwordSelector": "input[type='password'], input[placeholder*='密码']",
"submitSelector": "button:has-text('登录'), button:has-text('Login'), .login-btn"
},
"pages": [],
"checklist": "references/checklist-default.md",
"outputDir": "./results",
"screenshotDir": "./results/screenshots",
"headless": false
}
pages field (auto-discovery if empty):
[] — auto-discover pages by clicking through sidebar/menu after login{
"pages": [
{ "name": "Dashboard", "url": "/#/dashboard" },
{ "name": "User List", "url": "/#/users" }
]
}
Login selectors — customize if the target app uses non-standard login form. Default works for most Element UI / Ant Design apps.
scripts/inspect.js — Main Inspection RunnerNavigates pages, captures screenshots and UI metadata.
node scripts/inspect.js path/to/config.json
Output: results/inspection_results.json + results/screenshots/*.png
The script:
scripts/generate_report.js — Report GeneratorGenerates a markdown audit report from inspection results + checklist.
node scripts/generate_report.js path/to/config.json
Output: results/usability_audit_report.md
The script:
inspection_results.jsonThe default checklist is at references/checklist-default.md. It follows this format (compatible with the 易用性专项检查项清单 Excel):
# Usability Checklist
## Category 1: Navigation & Layout
### 1.1 Menu Hierarchy
- **Standard**: menu depth ≤ 3 levels, high-frequency entries prioritized
- **Applicable to**: All modules
To use a custom checklist, point checklist in config.json to your own markdown file, or pass a path to generate_report.js:
node scripts/generate_report.js config.json --checklist my_checklist.md
If auto-discovery misses pages, manually list them in config.json pages field. The inspector will navigate to each URL and capture data.
For single-page apps (SPA) with hash routing (like the one we audited), make sure URLs include the #/ fragment.
results/
├── inspection_results.json # Raw inspection data per page
├── usability_audit_report.md # Final report (markdown)
├── screenshots/
│ ├── 01_dashboard.png
│ ├── 02_user_list.png
│ └── ...
└── report_assets/ # Copied screenshots for report embedding
npm install playwright before first run"headless": true in config for CI/batch runs#/) and pushState routing