agentscope-ai / agentscope-ai/QwenPaw

Give Agents Eyes and Hands on the Web: Built-in Browser Automation

Đang mở
#6,434 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement
Ngôn ngữ chính
Python
Star
34.9k
Fork
3.1k
Merge trung bình
1 ngày 15 giờ
Pull request đã merge (30 ngày)
225

Mô tả

Summary
Ship a first-party browser tool so agents can open pages, read rendered content, click, fill forms, and take screenshots — without the user wiring up external automation servers.

Component(s) Affected
done
Core / Backend (app, agents, config, providers, utils, local_models)
done
Console (frontend web UI)
not done
Channels (DingTalk, Feishu, QQ, Discord, iMessage, etc.)
done
Skills
not done
CLI
done
Documentation (website)
not done
Tests
not done
CI/CD
not done
Scripts / Deploy
Problem / Motivation
Agents today can fetch raw HTML or call a search API, but the modern web is rendered by JavaScript, gated by logins, and driven by clicks. Anything interactive — checking a price behind a filter, submitting a form, reading a dashboard — is out of reach unless the user finds, installs, and configures a third-party automation MCP server. Built-in tools are also dramatically cheaper: every external-MCP hop adds schema tokens and call overhead, while a native tool is one direct call.

Playwright is already bundled inside the desktop build (_internal/playwright/...) — the engine is literally shipping today with no feature attached to it.

Proposed Solution
Native agent tools: browser_open(url), browser_read() (rendered text/accessibility tree), browser_click(selector/ref), browser_type, browser_screenshot.
Headless by default; optional visible window so users can watch or take over (e.g., to log in once, with the session persisted).
Guardrails through the existing tool_guard: domain allow/deny lists, confirmation policy for form submissions.
Screenshots flow to vision-capable models for "look at this page" reasoning.
Alternatives Considered
External browser-automation MCP servers: heavy setup, extra token cost per call, and another process to babysit.
Fetch-only: fails on any JS-rendered or interactive page.
Additional Context
Playwright's browser driver is already present in the packaged backend — this request is mostly about exposing it as agent tools with a safety layer.

Willing to Contribute
not done
I am willing to open a PR for this feature (after discussion).

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.