Browser Use
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
作者提供的说明(英文原文)
Reconnect to local Chrome tabs, inspect application challenges, and look up submission receipts.
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
RUIN_AUTO_UPDATE你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"ruin-everything": {
"command": "uvx",
"args": [
"ruin-everything"
],
"env": {
"RUIN_AUTO_UPDATE": "your-value"
}
}
}
}在终端中运行这条命令
claude mcp add ruin-everything --env RUIN_AUTO_UPDATE=your-value -- uvx ruin-everything运行前请先填写空着的值。
粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"ruin-everything": {
"command": "uvx",
"args": [
"ruin-everything"
],
"env": {
"RUIN_AUTO_UPDATE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"ruin-everything": {
"type": "stdio",
"command": "uvx",
"args": [
"ruin-everything"
],
"env": {
"RUIN_AUTO_UPDATE": "your-value"
}
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
RUIN_AUTO_UPDATE env这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月9日
注册名称已通过 GitHub 账户 yuki4266 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(0.2.0)于昨天进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Python (uv)。
同一分类中有:Browser Use, Chrome DevTools MCP, MCP Server Browser
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
Browser agents and stealth cloud browsers for AI: run web tasks, fill forms, extract data.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
English · 简体中文 · 日本語 · Español
#
Pick up a browser task where the last agent left it. Ruin connects to Chrome on your machine. A new CLI run or MCP client can find the same open application tab, finish a supported verification step, and check what the site actually confirmed.
Set up Chrome · Connect an MCP client · See what has been tested · Try your first MCP call · Contribute
| In your browser | What Ruin can do |
|---|---|
| A Greenhouse application asks for an email code | Match a fresh Outlook message to the application and fill the code. |
| An Ashby tab closed after submission | Look up a previously captured receipt by the exact job URL. |
| A Workday tenant asks you to sign in | Use the local profile and follow a supported account activation back to the job. |
| You have phone numbers from several countries | Choose a default in the offline identity editor. |
Run ruin watch to scan open and newly opened shared Chrome tabs every 500 ms. The watcher follows institutional search on IEEE Xplore, the ACM Digital Library and Springer Nature Link. It selects Duke University and follows the publisher’s redirect. At Duke SSO, Chrome can offer a saved login. An existing trusted-auth rule can disable the password dropdown. Duo remains in the normal browser flow.
On macOS, run ruin watch --install from a persistent installation to start the user service at login. Use ruin watch --uninstall to remove it. The service waits for shared Chrome and reconnects after a disconnect. ruin watch --site URL still inspects one application challenge.
Live verification covered the IEEE institution lookup, the redirect to Duke, and a publisher PDF delivered with an existing Duke session. Isolated browser tests cover ACM and Springer discovery, newly opened tabs and duplicate suppression.
For a new task, start the shared browser and open the target site. For an interrupted application, choose the site-specific watcher and pass the original job URL. Generic click tasks open a new tab.
Install from the repository directory with Python 3.11+ and Google Chrome:
python3 -m venv .venv
source .venv/bin/activate python -m pip install -e . ruin browser
Run ruin browser to start or reconnect to the project browser. Every CLI task uses Python Playwright over CDP. The default endpoint is http://127.0.0.1:9222. The runner launches Chrome with a dedicated profile at ~/.ruin-everything/canvas-browser when this port is free. The CDP connection preserves the existing browser context settings, including its download behavior. Chrome stays open after the command exits. Other local clients can attach to the same endpoint and locate the job tab by its full URL. Give one client ownership of submission for each application.
Open Outlook Web in this profile and complete any required Microsoft sign-in before requesting a fresh email code. Closing the job tab, quitting Chrome or a site session expiring can still interrupt an application. A draft in a chat-specific browser must be recovered separately.
Install the optional dependencies with python -m pip install -e '.[agent]' and set OPENAI_API_KEY. Give the model an HTTPS starting page and a specific task:
ruin "Open the help page" --site https://example.org --channel chrome
The runner sends the task, page title and visible action labels to the selected model. It clicks the chosen control directly and observes the page again. A task can use one tab and up to 20 steps.
For example, if a visible button is labeled Open guide, the model can select its current ID. A changed URL or an ID missing from the snapshot stops that step. A blocked model decision leaves the page open for inspection.
Add --autofill to use the system keyring and Chrome’s sign-in form. For a form with one visible password field that submits to the selected HTTPS origin, the runner clicks the empty field so Chrome can offer credentials saved in that browser profile. Complete sign-in in the open tab. The runner waits up to three minutes for the credential fields to disappear, then resumes the task. Without trusted login options, it leaves account selection and form submission to the login UI. A Chrome fixture verifies same-tab continuation with a restrictive script policy.
Run ruin identity to choose phone regions by name, save multiple numbers, select a default and reveal the password while editing. The offline editor uses the browser’s native select control and the phonenumbers library for dialing codes and international formatting. python-phonenumbers
For manual setup of a browser task with --site, create ~/.ruin/identity.json with owner-only permissions (chmod 600). Set auto_signup to true and supply string values for first_name, last_name, email, phone and default_password. This file stores the password in plain text. The local runner checks the selected HTTPS origin before each model decision until it submits a registration. It recognizes one visible Create Account, Create an Account, Register or Sign Up submit button on a same-origin POST form, fills recognized fields, and checks labeled Terms of Service, Terms of Use and Privacy Policy boxes. On an ordinary same-origin form it can also fill one empty, editable contact phone field. A visible matching signup field with a missing profile value leaves the tab open for completion.
For a subsequent single one-time-code field, the runner checks macOS Messages for up to 30 seconds for an incoming text received since the submission and ending in @hostname #code. Read access to the Messages database is required. MCP challenge and receipt results include a signup_policy field reporting the local setting. Chrome and SQLite fixtures exercise form submission, ordinary phone inputs, cross-origin actions, message age, direction and domain matching.
With the rotation puzzle open, pass the exact Feishu Jobs login URL to ruin_auto_register and enable auto_signup in the local profile. As shown below, the tool matches the edges of the two rings and drags the slider once. On the live Learnings recruiting site, the widget accepted the drag and the resend button showed a 30-second countdown. The tool returns sms_requested when that countdown is visible. An unresolved puzzle returns slider_pending.
When the ZhongAn campus job page shows the NetEase Yidun jigsaw, pass its full URL, including the #/job/… fragment, to ruin_auto_register with local auto_signup enabled. As shown below, the tool matches the piece outline to the gap and drags it in the original tab. On the live site, the SMS button changed to a resend countdown. The tool returns sms_requested for that countdown and slider_pending for an unconfirmed puzzle.
Use ruin_action(site, button) for an authorized submission, or ruin action --site URL --button LABEL from the CLI. Give the exact open URL and visible button name. Ruin clicks once, starts scanning the original tab and visible frames at 1.5 seconds and watches for a late popup through six seconds. Calling the same tool with only the URL resumes an open challenge. A retry operates on the widget. Confirm submission from the site’s receipt.
The figure shows how a jigsaw moves from image to page coordinates. Ruin combines ddddocr and OpenCV, accounts for the initial piece position and checks the rendered position before releasing. Browser fixtures exercise a delayed cross-origin popup, an offset piece rendered at a different scale, canvas layers, a decorative profile banner and grid controls. Image grids and single-layer visual puzzles use a local Ollama vision model (default ollama pull qwen3-vl:2b-instruct). After three unresolved rounds the tool reports challenge_pending with the tab open. The live ZhongAn flow returned its official success page, and the application history confirmed initial screening.
On supported English Workday tenant forms, the CLI browser task tries the local email and password first. An explicit missing-account message opens registration. A generic sign-in failure leaves the original job open. After registration, Ruin checks the signed-in Outlook mailbox for a fresh activation message, follows a direct activation link
只显示了开头部分;其余内容请在仓库中阅读