skills/agent-browser/SKILL.md
Browser automation for AI agents via inference.sh. Navigate web pages, interact with elements using @e refs, take screenshots, record video. Capabilities: web scraping, form filling, clicking, typing, drag-drop, file upload, JavaScript execution. Use for: web automation, data extraction, testing, agent browsing, research. Triggers: browser, web automation, scrape, navigate, click, fill form, screenshot, browse web, playwright, headless browser, web agent, surf internet, record video
npx skillsauth add aifinlab/finclaw agent-browserInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Browser automation for AI agents via inference.sh. Uses Playwright under the hood with a simple @e ref system for element interaction.

# Install CLI
curl -fsSL https://cli.inference.sh | sh && infsh login
# Open a page and get interactive elements
infsh app run agent-browser --function open --input '{"url": "https://example.com"}' --session new
Install note: The install script only detects your OS/architecture, downloads the matching binary from
dist.inference.sh, and verifies its SHA-256 checksum. No elevated permissions or background processes. Manual install & verification available.
Every browser automation follows this pattern:
@e refs for elements# 1. Start session
RESULT=
SESSION_ID=
# Elements: @e1 [input] "Email", @e2 [input] "Password", @e3 [button] "Sign In"
# 2. Fill and submit
infsh app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "fill", "ref": "@e1", "text": "[email protected]"
}'
infsh app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "fill", "ref": "@e2", "text": "password123"
}'
infsh app run agent-browser --function interact --session $SESSION_ID --input '{
"action": "click", "ref": "@e3"
}'
# 3. Re-snapshot after navigation
infsh app run agent-browser --function snapshot --session $SESSION_ID --input '{}'
# 4. Close when done
infsh app run agent-browser --function close --session $SESSION_ID --input '{}'
| Function | Description |
|----------|-------------|
| open | Navigate to URL, configure browser (viewport, proxy, video recording) |
| snapshot | Re-fetch page state with @e refs after DOM changes |
| interact | Perform actions using @e refs (click, fill, drag, upload, etc.) |
| screenshot | Take page screenshot (viewport or full page) |
| execute | Run JavaScript code on the page |
| close | Close session, returns video if recording was enabled |
| Action | Description | Required Fields |
|--------|-------------|-----------------|
| click | Click element | ref |
| dblclick | Double-click element | ref |
| fill | Clear and type text | ref, text |
| type | Type text (no clear) | text |
| press | Press key (Enter, Tab, etc.) | text |
| select | Select dropdown option | ref, text |
| hover | Hover over element | ref |
| check | Check checkbox | ref |
| uncheck | Uncheck checkbox | ref |
| drag | Drag and drop | ref, target_ref |
| upload | Upload file(s) | ref, file_paths |
| scroll | Scroll page | direction (up/down/left/right), scroll_amount |
| back | Go back in history | - |
| wait | Wait milliseconds | wait_ms |
| goto | Navigate to URL | url |
Elements are returned with @e refs:
@e1 [a] "Home" href="/"
@e2 [input type="text"] placeholder="Search"
@e3 [button] "Submit"
@e4 [select] "Choose option"
@e5 [input type="checkbox"] name="agree"
Important: Refs are invalidated after navigation. Always re-snapshot after:
Record browser sessions for debugging or documentation:
# Start with recording enabled (optionally show cursor indicator)
SESSION=
# ... perform actions ...
# Close to get the video file
infsh app run agent-browser --function close --session $SESSION --input '{}'
# Returns: {"success": true, "video": <File>}
Show a visible cursor in screenshots and video (useful for demos):
infsh app run agent-browser --function open --session new --input '{
"url": "https://example.com",
"show_cursor": true,
"record_video": true
}'
The cursor appears as a red dot that follows mouse movements and shows click feedback.
Route traffic through a proxy server:
infsh app run agent-browser --function open --session new --input '{
"url": "https://example.com",
"proxy_url": "http://proxy.example.com:8080",
"proxy_username": "user",
"proxy_password": "pass"
}'
Upload files to file inputs:
infsh app run agent-browser --function interact --session $SESSION --input '{
"action": "upload",
"ref": "@e5",
"file_paths": ["/path/to/file.pdf"]
}'
Drag elements to targets:
infsh app run agent-browser --function interact --session $SESSION --input '{
"action": "drag",
"ref": "@e1",
"target_ref": "@e2"
}'
Run custom JavaScript:
infsh app run agent-browser --function execute --session $SESSION --input '{
"code": "document.querySelectorAll(\"h2\").length"
}'
# Returns: {"result": "5", "screenshot": <File>}
| Reference | Description | |-----------|-------------| | references/commands.md | Full function reference with all options | | references/snapshot-refs.md | Ref lifecycle, invalidation rules, troubleshooting | | references/session-management.md | Session persistence, parallel sessions | | references/authentication.md | Login flows, OAuth, 2FA handling | | references/video-recording.md | Recording workflows for debugging | | references/proxy-support.md | Proxy configuration, geo-testing |
| Template | Description | |----------|-------------| | templates/form-automation.sh | Form filling with validation | | templates/authenticated-session.sh | Login once, reuse session | | templates/capture-workflow.sh | Content extraction with screenshots |
SESSION=
# Get elements: @e1 [input] "Name", @e2 [input] "Email", @e3 [textarea], @e4 [button] "Send"
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "fill", "ref": "@e1", "text": "John Doe"}'
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "fill", "ref": "@e2", "text": "[email protected]"}'
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "fill", "ref": "@e3", "text": "Hello!"}'
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "click", "ref": "@e4"}'
infsh app run agent-browser --function snapshot --session $SESSION --input '{}'
infsh app run agent-browser --function close --session $SESSION --input '{}'
SESSION=
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "fill", "ref": "@e1", "text": "weather today"}'
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "press", "text": "Enter"}'
infsh app run agent-browser --function interact --session $SESSION --input '{"action": "wait", "wait_ms": 2000}'
infsh app run agent-browser --function snapshot --session $SESSION --input '{}'
infsh app run agent-browser --function close --session $SESSION --input '{}'
SESSION=
# Take full page screenshot
infsh app run agent-browser --function screenshot --session $SESSION --input '{
"full_page": true
}'
# Close and get video
RESULT=
echo $RESULT | jq '.video'
Browser state persists within a session. Always:
--session new on first callsession_id for subsequent calls# Web search (for research + browse)
npx skills add inference-sh/skills@web-search
# LLM models (analyze extracted content)
npx skills add inference-sh/skills@llm-models
development
# trust-valuation-engine ## 描述 信托资产估值引擎,支持非标债权估值、股权估值、净值计算、减值测试。 ## 功能 - 非标债权估值(现金流折现法) - 股权估值(市场法/收益法/资产基础法) - 净值计算与发布 - 减值测试与拨备 - 估值模型管理 ## 许可证 MIT License
development
# trust-risk-manager ## 描述 信托风险全流程管理工具,覆盖信用风险、市场风险、流动性风险、操作风险四大维度,提供实时监控、预警提示和风险处置建议。 ## 功能 - 信用风险评估(融资主体、担保措施、偿债能力) - 市场风险监控(利率、汇率、商品价格敏感性) - 流动性风险分析(期限错配、赎回压力、变现能力) - 操作风险检查(流程合规、系统安全) - 风险预警指标(VaR、CVaR、压力测试) - 风险限额管理(集中度、久期、杠杆) - 风险报告生成 ## 使用场景 - 风控部门日常监控 - 投后管理风险排查 - 新产品风险评审 - 监管报送数据准备 - 风险预警处置 ## 输入输出 ### 输入 ```json { "portfolio_id": "", "risk_type": "all|credit|market|liquidity|operation", "assets": [ { "asset_id": "", "asset_type": "非标债权|股票|债券|基金", "exposu
development
# trust-product-analyzer ## 描述 信托产品综合分析与筛选工具,支持产品信息抓取、风险评级、收益测算、合规检查和竞品对比。 ## 功能 - 信托产品信息智能抓取与解析(支持用益信托网、中国信托登记等平台) - 多维度风险评估(信用风险、市场风险、流动性风险) - 预期收益与实际收益对比分析 - 合格投资者适当性匹配 - 产品竞品横向对比 - 自动生成尽调报告 ## 使用场景 - 理财师为客户筛选合适信托产品 - 投资经理进行竞品分析 - 风控部门审查产品合规性 - 研究人员追踪市场产品发行情况 ## 输入输出 ### 输入 ```json { "action": "analyze|compare|screen", "product_code": "", "product_name": "", "filters": { "min_yield": 6.5, "max_duration": 24, "risk_level": ["R2", "R3"], "trust_type": "集合信托", "i
development
# trust-post-investment-monitor ## 描述 信托投后监控工具,提供预警指标追踪、风险事件监测、处置建议生成、定期报告输出。 ## 功能 - 融资主体监控(经营/财务/舆情) - 担保物监控(价值/权属/流动性) - 预警阈值管理 - 风险事件响应 - 处置方案建议 - 定期监控报告 ## 许可证 MIT License