Agent Skills
› RightNow-AI/openfang
› browser-automation
browser-automation
GitHub基于Playwright的浏览器自动化技能,提供CSS选择器参考及搜索、登录、表单提交等常见工作流,支持电商场景和错误恢复策略。
Trigger Scenarios
需要自动化操作网页元素
执行跨网站价格对比
自动填写并提交表单
模拟用户登录流程
Install
npx skills add RightNow-AI/openfang --skill browser-automation -g -y
SKILL.md
Frontmatter
{
"name": "browser-automation",
"tags": [
"browser",
"automation",
"playwright",
"web",
"scraping"
],
"tools": [
"browser_navigate",
"browser_click",
"browser_type",
"browser_screenshot",
"browser_read_page",
"browser_close"
],
"author": "OpenFang",
"runtime": "prompt_only",
"version": "1.0.0",
"description": "Playwright-based browser automation patterns for autonomous web interaction"
}
Browser Automation Skill
Playwright CSS Selector Reference
Basic Selectors
| Selector | Description | Example |
|---|---|---|
#id |
By ID | #checkout-btn |
.class |
By class | .add-to-cart |
tag |
By element | button, input |
[attr=val] |
By attribute | [data-testid="submit"] |
tag.class |
Combined | button.primary |
Form Selectors
| Selector | Use Case |
|---|---|
input[type="email"] |
Email fields |
input[type="password"] |
Password fields |
input[type="search"] |
Search boxes |
input[name="q"] |
Google/search query |
textarea |
Multi-line text areas |
select[name="country"] |
Dropdown menus |
input[type="checkbox"] |
Checkboxes |
input[type="radio"] |
Radio buttons |
button[type="submit"] |
Submit buttons |
Navigation Selectors
| Selector | Use Case |
|---|---|
a[href*="cart"] |
Cart links |
a[href*="checkout"] |
Checkout links |
a[href*="login"] |
Login links |
nav a |
Navigation menu links |
.breadcrumb a |
Breadcrumb links |
[role="navigation"] a |
ARIA nav links |
E-commerce Selectors
| Selector | Use Case |
|---|---|
.product-price, [data-price] |
Product prices |
.add-to-cart, #add-to-cart |
Add to cart buttons |
.cart-total, .order-total |
Cart total |
.quantity, input[name="quantity"] |
Quantity selectors |
.checkout-btn, #checkout |
Checkout buttons |
Common Workflows
Product Search & Purchase
1. browser_navigate → store homepage
2. browser_type → search box with product name
3. browser_click → search button or press Enter
4. browser_read_page → scan results
5. browser_click → desired product
6. browser_read_page → verify product details & price
7. browser_click → "Add to Cart"
8. browser_navigate → cart page
9. browser_read_page → verify cart contents & total
10. STOP → Report to user, wait for approval
11. browser_click → "Proceed to Checkout" (only after approval)
Account Login
1. browser_navigate → login page
2. browser_type → email/username field
3. browser_type → password field
4. browser_click → login/submit button
5. browser_read_page → verify successful login
Form Submission
1. browser_navigate → form page
2. browser_read_page → understand form structure
3. browser_type → fill each field sequentially
4. browser_click → checkboxes/radio buttons as needed
5. browser_screenshot → visual verification before submit
6. browser_click → submit button
7. browser_read_page → verify confirmation
Price Comparison
1. For each store:
a. browser_navigate → store URL
b. browser_type → search query
c. browser_read_page → extract prices
d. memory_store → save price data
2. memory_recall → compare all prices
3. Report findings to user
Error Recovery Strategies
| Error | Recovery |
|---|---|
| Element not found | Try alternative selector, use visible text, scroll page |
| Page timeout | Retry navigation, check URL |
| Login required | Inform user, ask for credentials |
| CAPTCHA | Cannot solve — inform user |
| Pop-up/modal | Click dismiss/close button first |
| Cookie consent | Click "Accept" or dismiss banner |
| Rate limited | Wait 30s, retry |
| Wrong page | Use browser_read_page to verify, navigate back |
Security Checklist
- Verify domain before entering credentials
- Never store passwords in memory_store
- Check for HTTPS before submitting sensitive data
- Report suspicious redirects to user
- Never auto-approve financial transactions
- Warn about phishing indicators (misspelled domains, unusual URLs)
Version History
- acf2587 Current 2026-08-20 07:37


